Repository navigation
base red: Takes back #28060: the provider capture fixture moves to CmuxNextCodeRouter (app_lines +67) - #29655
Conversation
…uxNextCodeRouter (app_lines) 2ba8429 (#28060, "test(auth): isolate native account capture fixtures") adds 67 CmuxNextApp Swift lines (AccountsService.swift +60, AppEnvironment +7) with no exception row; arch-ratchet's app_lines row refuses it alone (TIP RED, STATUS 2398). #28060's own provider-side capture code leaves the App for CmuxNextCodeRouter, which owns every type it uses (ProviderKeyStoring, FileReading, LocalServerProbing, KeychainProbing, AccountLabelSaltProviding, AccountLabeler, DetectionEnvironment): ProviderCaptureFixture holds the virtual provider home, the in-memory key store, the fixed label salt and labeler, the empty detection inputs (no environment, no file, no Keychain, no loopback server, no saved key), and the capture's terminal line and page URL. AccountsService keeps a thin use: it holds one only while the DEBUG-only authCaptureFixture flag is on (`capture`), and each of #28060's branches reads it (`capture?.home ?? ...`, `capture?.keys() ?? ...`, `if let capture { return capture.detectionEnvironment(...) }`, ...). Behavior is unchanged: the flag is false in a release build, so `capture` is nil there, as the removed `#if DEBUG` branches were. AuthCaptureFixtureTests reads the same names (AppEnvironment.authCaptureFixture, services.accounts.keys, detectionEnvironment()). CmuxNextApp -53.
|
cmux status (one comment, edited in place; each line is updated by the job that owns it) Review App of this head (app.zip, kept 1 day)
Shipped in:
|
|
Review (claude-review-subagent): SHIP at 6899341 Correctness first: the behavior is the same as the base (HEAD~1 = 2fed73b) on every branch.
Compile (read only, no local Swift build):
Gates:
PR body: the title starts with CI at review time: the fleet compile and the swift test were pending. Run 41239502362 ("linux-preflight", "ci-status" and others) was cancelled (superseded or concurrency). It is not a red from this PR. Nits (non-blocking):
Not run: Swift compile and tests (fleet only, per the repo rules). |
|
Fleet evidence at 6899341: compile with tests job 9337528bdf2c3ad00502f8b7 (CmuxNext, app, cmux-tui passed). AuthCaptureFixtureTests 3/3 passed (step d0d23ef4b4a03d5c3711c2df, aws-m4pro-6). |
Summary
Base red, priority zero (TIP RED, STATUS 2398). Since the last green arch tip 71f41a0, the repo rule (
arch-ratchet.py --base <c>^ --head <c>) refuses two commits:app_lines +67(AccountsService.swift +60, AppEnvironment.swift +7), no exception;+6.The current tip 2fed73b over 71f41a0 is
+73, refused.Takes back #28060: its own provider-side capture fixture code leaves CmuxNextApp, with the same behavior.
ProviderCaptureFixture(new, in CmuxNextCodeRouter, which owns every type it uses) holds:AccountsServicekeeps a thin use. It holds one fixture only while the DEBUG-onlyauthCaptureFixtureflag is on (capture), and each of test(auth): isolate native account capture fixtures (carries #26587) #28060's branches reads it:capture?.home ?? ...,capture?.keys() ?? ...,if let capture { return capture.detectionEnvironment(...) },capture?.terminalLine ?? line, and so on.captureis nil there, as the removed#if DEBUGbranches were. The in-memory key store type now compiles in release too, but nothing makes one there.AppEnvironment.authCaptureFixture(test(auth): isolate native account capture fixtures (carries #26587) #28060's other 7 lines) stays: it is the flag.AuthCaptureFixtureTestsreads the same names:AppEnvironment.authCaptureFixture,services.accounts.keys,detectionEnvironment().CmuxNextApp -53.
Testing
The watcher's command (
arch-ratchet.py --base 71f41a07dd39, rowapp_lines):+73, refused. The culprit alone (--base 2ba8429bdd3^ --head 2ba8429bdd3):+67, refused.+20, refused (cmux NEXT: cancel the update download; text left, a bigger cancel on the right, vertically centred #29653's +6 and the part of test(auth): isolate native account capture fixtures (carries #26587) #28060 that stays).app_lines -31,no architecture count rises.defaults_guard.py check: exit 0.check-app-size.sh --base origin/feat-cmux-next: ok. The namespace lint: OK.prepush-gate.py: no new violations.Observed / Not run
Observed:
app_lines -31, no rise. That covers cmux NEXT: cancel the update download; text left, a bigger cancel on the right, vertically centred #29653's +6.Not run: no local Swift build (fleet only). No tagged build: no behavior change.
Changelog
none
Proof
No capture: no visible change; fixture code moves between targets.