Skip to content

Doctor: stream raw evidence and execute refreshed safe actions - #262

Draft
papi-ux wants to merge 14 commits into
masterfrom
fix/v1.3.9-launch-policy-recreate
Draft

Doctor: stream raw evidence and execute refreshed safe actions#262
papi-ux wants to merge 14 commits into
masterfrom
fix/v1.3.9-launch-policy-recreate

Conversation

@papi-ux

@papi-ux papi-ux commented Aug 29, 2026

Copy link
Copy Markdown
Owner

Summary

  • sample and send raw streaming evidence continuously, independent of whether the HUD is visible
  • show raw counters in Doctor diagnostics without making Nova the diagnosis or policy authority
  • refresh the current host-authored action payload when the player taps a safe action, verify its intent and exact stream scope, then execute that payload
  • preserve deterministic launch-policy state across Activity recreation
  • present the gamer flow as Launch Preset before streaming, Live Tuning during streaming, and Doctor for measured diagnosis and reversible fixes

This keeps the player flow simple: Doctor explains the current problem, presents the host-approved fix, and reports verification or rollback. AI may explain the evidence, but it cannot supply settings, confidence overrides, or action definitions.

Exact automated verification

Exact head: 79c638de3e133e2fd6435b30a8f2952ed1db4201

  • public hygiene passed
  • CodeQL Java/Kotlin analysis passed
  • release lint passed
  • 1,499 JVM tests passed
  • helper/onboarding tests passed
  • ARM64 release APK assembly passed
  • the PR workflow intentionally skipped emulator smoke

Release gate still open

Physical acceptance on the matched Polaris host and RP6 is still pending for this exact head. The required run must prove the player-visible diagnosis, one-tap safe action, host verification or rollback, clean follow-up, and restored public device baseline. Private evidence from earlier candidates is retained but is not claimed as proof for this head.

Matched Polaris implementation: papi-ux/polaris#558 (merged into protected master; physical pair acceptance remains a separate gate).

Boundaries

No changes to pairing, certificate handling, discovery, exported Android components, input handling, or Moonlight-core privilege boundaries. Nova cannot submit arbitrary settings; Polaris remains the deterministic action authority.

No merge, release, tag, package publication, deployment, or device activation is implied by this PR.

@papi-ux

papi-ux commented Aug 29, 2026

Copy link
Copy Markdown
Owner Author

Matched Polaris host companion: papi-ux/polaris#558 (exact tested head 40bc7765c1227845477cce1ec918c992beb94c3d). Please review and gate the pair together.

@papi-ux

papi-ux commented Aug 30, 2026

Copy link
Copy Markdown
Owner Author

Implementation update at exact head ee7e767:\n\n- Clarified the player flow as Launch Preset before streaming, Live Tuning during streaming, and Doctor for measured diagnosis and safe fixes.\n- Replaced ambiguous stable/checking labels with Stream Ready, Checking Stream, Launch Ready, and Applying Launch Preset.\n- Kept optional AI visibly secondary as an informational explanation. The deterministic Doctor verdict, capability, and Auto Fix action remain authoritative even when AI suggests different wording.\n- Added focused UI/source-guard coverage for the terminology and AI authority boundary.\n\nThe local Mac has no Android SDK, so Gradle stops during configuration at SDK discovery. Exact-head Android lint, JVM tests, and release assembly are therefore left to GitHub CI.\n\nPhysical RP6/host acceptance is still pending. No merge, release, package publication, deployment, or pc-papi activation was performed.

@papi-ux

papi-ux commented Aug 30, 2026

Copy link
Copy Markdown
Owner Author

Final implementation head: 79c638de3e133e2fd6435b30a8f2952ed1db4201.

Exact-head CI run 33289106745 is green: public hygiene, CodeQL Java/Kotlin analysis, lint, 1,499 JVM tests, helper/onboarding tests, and release APK assembly all passed. The PR workflow intentionally skipped emulator smoke.

This head keeps AI informational, preserves deterministic Doctor action authority, and clarifies Launch Preset vs Live Tuning vs measured Doctor diagnosis. Physical host/RP6 acceptance is still pending; no merge or release action has been taken.

@papi-ux
papi-ux marked this pull request as draft August 30, 2026 23:25
@papi-ux papi-ux added enhancement New feature or request observability labels Aug 30, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request observability

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant