Preserve installed Local AI runtime controls - #1206
Conversation
|
🦞👀 Pull request received. I will update this pull request when review starts. |
|
Codex review: needs maintainer review before merge. Reviewed August 23, 2026, 4:34 AM ET / 08:34 UTC. ClawSweeper reviewWhat this changesThe PR separates Local AI hardware eligibility for fresh setup from controls that manage an existing Companion-managed Local AI runtime. Merge readinessKeep open. This is a correct, focused stacked follow-up: it preserves installed-runtime controls while retaining hardware gating for fresh setup, with strong exact-head native UI evidence. Priority: P2 Review scores
Verification
Live VerificationCommand: Result: FAIL (failed) — execution before step 1 Assertions:
How this fits togetherThe Tray Local AI page combines hardware eligibility, managed-runtime state, and gateway state into setup and management controls. Its view model feeds the WinUI page, which then enables the appropriate runtime actions. flowchart LR
A[Hardware eligibility] --> C[Local AI view model]
B[Managed runtime and gateway state] --> C
C --> D[Fresh setup retry]
C --> E[Installed runtime actions]
D --> F[Tray Local AI page]
E --> F
Before merge
Agent review detailsSecurityNone. Review metrics
Merge-risk optionsMaintainer options:
Technical reviewBest possible solution: Land the unavailable-state UX change and this follow-up together, preserving the fresh-setup block while leaving installed-runtime actions governed by ownership, health, and gateway state. Do we have a high-confidence way to reproduce the issue? Yes. The parent availability implementation globally gates every control, while this branch's focused tests and exact-head native UI Automation scenario directly exercise the installed-runtime exception. Is this the best way to solve the issue? Yes. Restricting hardware eligibility to fresh setup while preserving each action's established runtime and gateway predicate is the narrowest maintainable solution. AGENTS.md: found and applied where relevant. Codex review notes: model internal, reasoning high; reviewed against ccd64bbb7d68. LabelsLabel changes:
Label justifications:
EvidenceWhat I checked:
Likely related people:
Rating scale
Overall follows the weaker of proof and patch quality. Workflow
HistoryReview history (4 earlier review cycles)
|
|
Exact-head native proof and cleanup evidence are now in the PR body. @clawsweeper re-review |
Summary
This is a narrow follow-up for the ClawSweeper P1 on #1204.
Hardware eligibility now gates only fresh setup retry. It no longer disables management of an already installed Companion-managed Local AI runtime.
See whydiagnostics.This preserves #1204's UX work and does not change Core, WSL, credentials, or package trust behavior.
Validation
./build.ps1: PASS for Shared, CLI, WinNodeCli, SetupEngine, and WinUI.git diff --check: PASS.Exact-head native behavior proof
Fresh isolated Windows proof passed on exact PR head
2887846627225b2486ce297ba952e08ab439ef3dwith candidate executable SHA-256FAF6E425B7B5A6CAB92C9E65250A37FCC78810690F7DA20EF4C9DB3F0BA366AF.A fresh real host probe classified new Local AI setup as unavailable (
DriverTooOld). Before candidate launch, the harness prepared a previously qualified install through the production start → health → persist → stop route, retained its verified endpoint receipt, and proved the preparatory runtime and listener were absent. The exact candidate then background-started its managed runtime.Native UI Automation showed:
Pairing used only a disposable Core. Final cleanup removed the candidate Tray, managed llama runtime, disposable Gateway processes/data, listener, and WSL distro.
Allowlisted evidence contained only the redacted native screenshot, UIA state, and proof provenance; no raw logs were included. Artifact SHA-256 values:
77F588CC316A8AF51ADB736B0B1A06FE6E0765CE7AF6811BB6B01D30E52ED9A4BE5A57019137AB7F2CAE5A8EE58D9DAF471418E4F42012479A1774FDD329EAB6B51C58AE017184BE501C3077B28492ACCA0BAE4A343B78301FB34FF9C5EC896F0A788DB0D24135014A894B1E710DD5D6E5A00CDFC5A0ED324CE1AD385C7AE62AProof level:
runtime_provenand scopedend_to_end_provenfor preserving healthy existing installed-runtime controls when fresh setup is unavailable.This does not prove fresh installation on unsupported hardware, Details/Open chat action completion or inference, the stopped-state Start action, or #1208's null-endpoint first-start path.