Repository navigation
Add semantic Android scanner host, native authentication and device controls - #8
Draft
KofTwentyTwo wants to merge 26 commits into
Draft
KofTwentyTwo wants to merge 26 commits into
KofTwentyTwo wants to merge 26 commits into
Conversation
KofTwentyTwo
marked this pull request as ready for review
October 29, 2026 20:22
Co-Authored-By: OpenAI GPT-6 (Codex) <noreply@openai.com>
Co-Authored-By: OpenAI GPT-6 (Codex) <noreply@openai.com>
Discover compatible API versions, client channels and mobile extensions before login. Follow server process completion, metadata updates, form rules and cancellation, with isolated native OpenAPI conformance coverage. Co-Authored-By: OpenAI GPT-6 (Codex) <noreply@openai.com>
KofTwentyTwo
marked this pull request as draft
October 31, 2026 12:19
Add semantic session monitoring and leased app-screen viewing, optional record photo capture, device orientation, native navigation guards and TC22 acceptance. Bundle verified dependency and native notices with fail-closed packaging checks. Co-Authored-By: GPT-6.1 Codex <noreply@openai.com> Signed-off-by: James Maes <james@kof22.com>
Use one hamburger drawer for apps, Settings and Diagnostics while preserving guarded process Back, account access and approval restrictions. Negotiate native OAuth2 login through the explicit UI API 1.9 capability, server-advertised issuer/callback/prompt policy and AppAuth PKCE. Exchange codes through QQQ with deferred cookie adoption and bounded cleanup of known abandoned sessions. Keep TABLE_BASED and shared Auth0 behavior intact. Add protocol and native regressions, retain bundled AppAuth attribution, and pin the companion server heartbeat revocation correction in CI. Co-Authored-By: GPT-6.1 Codex <noreply@openai.com> Signed-off-by: James Maes <james@kof22.com>
Consume Back when the drawer targets Open so a quick hardware press does not exit the signed-out activity. Settle the native navigation test before Back and retain the successful TC22 rerun: all 20 selected cases passed, including seven synthetic AppAuth scenarios. Actual provider acceptance stays pending. Co-Authored-By: GPT-6.1 Codex <noreply@openai.com> Signed-off-by: James Maes <james@kof22.com>
Replace the permanent settled-scan navigation block with an explicit warning. Keep the original retry identity through failed cancellation, and provide a separate Leave anyway choice only after cancellation fails. In-flight work, pending photos and complete receipt checks remain protected. Add JVM and native regressions for lost or malformed acknowledgments, Stay, cancel retries and explicit local exit without replaying a scan. Co-Authored-By: GPT-6.1 Codex <noreply@openai.com> Signed-off-by: James Maes <james@kof22.com>
Replace the older official bootstrap with the checksum-verified8.7 JAR, keeping the configured distribution version and hash unchanged. Record upstream provenance and the distinction from a complete binary audit. Co-Authored-By: OpenAI GPT-6.1 (Codex) <noreply@openai.com> Signed-off-by: James Maes <james@kof22.com>
Bind password and legacy Auth0 responses to their initiating origin, metadata and generation. Defer cookie adoption, consume exchanges once, and revoke known abandoned sessions at their original server. Make local logout independent of provider callbacks and idempotent across overlapping calls, delayed storage and screen remounts. Exclude sample session storage from backup and transfer, and restrict sample cleartext environments to debug builds. Document the remaining trusted-scanner input finding and the real-provider acceptance boundary. Validation:109 JVM tests and scanner lint pass;32 selected TC22 native tests pass, including ten new authentication lifecycle regressions. Packaged unsigned sample release denies cleartext and backup, with all ten cloud/device-transfer exclusions. Operator installation is unchanged. Co-Authored-By: OpenAI GPT-6.1 (Codex) <noreply@openai.com> Signed-off-by: James Maes <james@kof22.com>
Use the optional device-provided EMDK service for normal scanner input, with exact compile-only SDK provenance and no shipped vendor classes. Keep synthetic scan broadcasts confined to the disposable E2E variant. Pause input behind overlays and lost focus, and share live drawer-first Back routing across every process/application handler and toolbar arrow. Replace inherited Auth0/Coil prereleases with reviewed stable versions. Invalidate standard generated notices on dependency graph changes and retain strict runtime/license checks. Pin hosted acceptance to the source-qualified API 1.9 core/server tuple with runtime provenance. Validation: 127 JVM tests, 34 TC22 shared native cases, eight-overlay native regression, and ordinary-UID/distinct-signer injection rejection pass. Eight forged broadcasts cause no process/record mutation; a real manual positive control saves through the API. All package/lint gates, four-APK notice/DEX/native/manifest inspection, focused independent source review, workflow syntax and staged secret checks pass. Actual hardware triggers, configured provider, optional files deployment and final signing/distribution remain separate documented release gates. No normal operator installation or data was changed by these tests. Co-Authored-By: OpenAI GPT-6.1 (Codex) <noreply@openai.com> Signed-off-by: James Maes <james@kof22.com>
Map accepted control values to compile-time QA/E2E package literals before constructing broadcasts. Unknown targets still return before any send, and marker validation/actions/permissions/counts remain unchanged. This makes the existing allowlist boundary explicit to static analysis without suppressing CodeQL or forwarding the caller's target string. Probe build/lint and the distinct-signer ordinary-UID device acceptance pass: eight forged broadcasts create no extra process steps or records, and the manual positive control saves. Production APKs are unchanged. Static triage and fresh hosted analysis remain separate evidence. Co-Authored-By: OpenAI GPT-6.1 (Codex) <noreply@openai.com> Signed-off-by: James Maes <james@kof22.com>
Report bounded own-window flags, focused-owner category, and network dialog visibility when the existing five-second focus guard fails. Keep real Back injection and its focus requirement unchanged. Sample instrumentation compilation passes. CircleCI's three failures remain unresolved pending a fresh diagnostic run. Record the completed data-preserving local API1.9 upgrade and unverified physical scan attempt. Co-Authored-By: OpenAI GPT-6.1 (Codex) <noreply@openai.com> Signed-off-by: James Maes <james@kof22.com>
Add an optional nonexported MediaProjection foreground service, one-time operator consent and session/lease/mode-bound frame upload. Preserve legacy app-content defaults and stop capture on bounded lifetime or host/session loss. Clarify physical scan polling deadline failures. Initial gates pass135 JVM tests, lint and all package builds. Paired server39 tests and six real-HTTP cases pass with historical API baselines preserved. Changed-client static review found no reportable findings. Actual consent/device acceptance and frame/UI refinements remain open; this is a source checkpoint, not a production release. Co-Authored-By: OpenAI GPT-6.1 (Codex) <noreply@openai.com> Signed-off-by: James Maes <james@kof22.com>
Drain ImageReader continuously while retaining only one latest image, release replaced buffers, snapshot acquisition time before encoding, and keep Share disabled until service binding finishes. Pin hosted acceptance to the verified additive server1.2 source1041693. Pass137 JVM tests, lint/all package builds, fresh APK inspection and TC22 ordinary-UID forged-input rejection. Independent follow-up review found no concrete issue. Paired server consumer/provenance and all15 browser cases pass. Actual OS consent/device capture remains unverified. Co-Authored-By: OpenAI GPT-6.1 (Codex) <noreply@openai.com> Signed-off-by: James Maes <james@kof22.com>
Wait for applied landscape configuration before explicit recreation and assert the barcode draft after both transitions. Retain focused unlocked input requirements while allowing brief physical-test focus changes. Add a manual-only QA device-screen acceptance path with three actual OS consent rounds, real Home-frame comparison, Stop, lease expiry and forced logout. Protect existing app IDs/ports and compile QA tests in CI. Use non-streaming physical installs and actionable timeout diagnostics. QA and E2E packages compile, runner syntax/actionlint and opt-in/protected port negative controls pass. Actual screen consent and synchronized native scenario execution remain pending; no production code changed. Co-Authored-By: OpenAI GPT-6.1 (Codex) <noreply@openai.com> Signed-off-by: James Maes <james@kof22.com>
Wait for the final signed-out message and enabled login action before clicking once. Retain fresh-login and new-session assertions in the real-server session scenario and opt-in device-screen acceptance. The previous PR native run passed all seven scenarios; its duplicate push run timed out after clicking the logout label. This test-readiness correction is independently reviewed and both native test packages compile. New hosted execution is required; no product fix is claimed. Record the independent release-automation review, external configuration gaps and current operator upgrade/projection acceptance boundaries. Co-Authored-By: OpenAI Codex <noreply@openai.com> Signed-off-by: James Maes <james@kof22.com>
Use Portrait when no valid orientation preference is saved; preserve all explicit user choices, including System default. Cover missing, invalid, explicit and platform orientation behavior in four focused tests. Focused tests, debug lint (zero errors/warnings) and debug assembly pass. A matching-signer in-place TC22 update preserved login/enrollment and Android reports the normal activity requested portrait. Record exact physical Code128 evidence and fully green prior native CI separately. Co-Authored-By: OpenAI Codex <noreply@openai.com> Signed-off-by: James Maes <james@kof22.com>
Co-Authored-By: Codex <noreply@openai.com>
Record passing portrait-default CI and physical Code128 evidence separately from pending provider, QR, camera and device acceptance. Preserve historical checkpoints and explicit dependency adoption limits. Co-Authored-By: Codex <noreply@openai.com>
Require negotiated original-nonce validation for native OAuth and add optional state-bound AppAuth provider logout. Preserve TABLE login and local QQQ sign-out. Verified 151 JVM tests, lint, APK builds and 28 disposable TC22 native tests; real-provider and paired-server acceptance remain pending. Co-Authored-By: Codex (GPT-6) <noreply@openai.com>
Replace the raw log dialog with readable full-screen status/activity, filtering and copy/share controls. Persist explicit location choices and request Android permission once for default-on foreground reporting. Verified 159 JVM tests, zero-warning lint, APK builds and the focused TC22 diagnostics interaction test; actual GPS fix and real-provider acceptance remain pending. Co-Authored-By: Codex (GPT-6) <noreply@openai.com>
Include diagnostics UI acceptance in the hosted suite. Pregrant location only for disposable E2E scenarios and preserve session-monitor denied telemetry with explicit revocation and a handled-request marker. Production and QA permissions are untouched; the actual Android prompt remains separate acceptance. Co-Authored-By: Codex (GPT-6) <noreply@openai.com>
Preserve ownership notices, replace wildcard imports, document source contracts, enforce source checks and strict Kotlin warnings, and apply the repository native formatter policy. Correct typed widget state and callback registration with regression coverage. Add bundled Query artwork, public Dogfooding and Query links, version and license access under Settings About. Validation:163 JVM cases,46 TC22 sample native cases, QA compilation, APK builds and lint0errors/0warnings. Full formatter CI and actual external-provider Android acceptance remain explicit. Co-Authored-By: Codex <noreply@openai.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds a shared Android scanner host that renders QQQ-defined apps, processes and forms through the versioned semantic UI API. Includes approved enrollment, server-driven branding, navigation and guarded exit, portrait defaults, diagnostics, trusted Zebra EMDK input, session controls, optional consent-based whole-device viewing and optional Record Files photos.
Native OAuth follows the configured provider through AppAuth. The new client requires API1.10, the original-nonce validation capability and REQUIRED metadata. Separately advertised company sign-out uses state-bound RP logout. TABLE login remains supported; ordinary scanner sign-out remains QQQ-only pending policy.
Validation at signed checkpoint
1c766bf06296bc10aa009995e5d1d8b5b3d7acc9:Preceding checkpoint8d8 passed all eleven hosted checks; fresh checks must qualify this head. Remaining release gates include paired server/current API contracts, real Authentik operator switching and exported native callback, current QR/retry/navigation walkthrough, actual camera/GPS/projection, coherent optional dependency adoption and final release reconciliation.
Normal demo remains API1.9/mobile1.1. Source publication and the development install are not a production release. Signing/distribution remains deferred to the owner's final decision. Keep this PR draft.