Repository navigation
Recover Codex profile policy and measure input preprocessing - #716
seathatflowsinourveins wants to merge 2 commits into
Conversation
b969143 to
f104bc2
Compare
f104bc2 to
560433f
Compare
560433f to
b63381f
Compare
|
Folded into #770 by the PR triage of 2026-10-07 (the command center's ruling, item review-ns2604-coop-20261007T023012Z, section 3). Closed with a record, not merged. The co-op verified the fold at #770's head e4e1e60: 70/76 of this PR's files are byte-identical there, and the shared files (the registry, the client-config tool and its test, the decision records) are merged with this PR's added lines present except where the merge re-hashed or re-counted them; #770's description names this fold, its composition record (docs/decisions/2026-10-07-codex-profile-environment-content-fold.md) and the donor-byte ledger under evidence/artifacts/codex-profile-env-fold-20261007/. This branch |
### Scope - Qualify the current plan's Chrome DevTools MCP browser under the legacy `web-research/playwright-cli` slot: six unchanged upstream files pass 129 tests, and fresh Claude/Codex sessions return the required fixture URL, title and console marker, then clean up their created pages. Record why the OmniRoute workhorse stays Lite and define a separate opt-in hosted-search profile with its every-upgrade catalog checklist. - Add Q55's dated `auth_storage_failure = RING` decision for installed Claude Code2.1.291, preserving the exact host-only currency-gate failure. Keep the current source matcher and deliberate18-type coverage consistent; historical matcher text stays unchanged and the dated amendment carries the current recommendation. No live client configuration changes. - Address the GPT ACK_AFTER read at `92963dabc`: label the expanded matcher as the current source recommendation with live application pending CC action; date the earlier 17-type observation separately from the recorded 2.1.291 scan of 18 types (nine RING, nine QUIET); record the required installed-client, changelog, tagged-source and official-docs verification order; paraphrase the approved terminal policy. - Base commit: `3d7d4a4b2640c8583d8855670111ef5d023d3e03`. - Lane: `lane:foundation`, exactly one lane label. This PR remains a draft for command-center review. - Owned paths: the three new dated decisions and currency-upgrade checklist; browser qualification and notification scan artifacts; maintained DECISIONS reader, notification source overlay, its linked recipe/terminal decision and deliberate coverage count; evidence registry committed last. Browser qualification is scoped to the current Chrome MCP owner and its declared local fixture. Microsoft Playwright CLI remains optional catalog history; the unstarted Harbor comparison, broader websites and separate diagnostic-slot qualification are unchanged. The hosted-search profile packet is ready for the CC; actual application/search acceptance is pending. The approved opt-in map metadata row stays deferred until main includes #771; executable producer/template wiring belongs to #716/#770. No live client configuration, host pin, install plan or platform-status file changes here. ## SOTA sources - [native-agent-stack@0d5e6506: installed-client notification gate:166-176](https://github.com/seathatflowsinourveins/native-agent-stack/blob/0d5e6506434fab598dee861c749a22e628beb75a/tests/test_windows_terminal_defaults.py#L166-L176) and [single DECISIONS table:20-38](https://github.com/seathatflowsinourveins/native-agent-stack/blob/0d5e6506434fab598dee861c749a22e628beb75a/evidence/artifacts/notification-types-20260929/notification_types_scan.py#L20-L38): installed-client coverage and unchanged fail-closed reader; exact2.1.291 observation/failure is quoted in the new dated decision. Q55's operator ruling classifies a credential/sign-in event needing the user as an escalation. - [native-agent-stack@0d5e6506: install-plan.json:1425](https://github.com/seathatflowsinourveins/native-agent-stack/blob/0d5e6506434fab598dee861c749a22e628beb75a/evidence/artifacts/new-wsl-install-plan-20261002/install-plan.json#L1425): selected Chrome MCP1.10.1, legacy slot identity, exact browser and dual-client acceptance. - [ChromeDevTools/chrome-devtools-mcp@e52c6b59: native page creation](https://github.com/ChromeDevTools/chrome-devtools-mcp/blob/e52c6b59b476c5e04d8dd9fd4bd017ba3b3d65df/docs/tool-reference.md#L240-L248), [navigation](https://github.com/ChromeDevTools/chrome-devtools-mcp/blob/e52c6b59b476c5e04d8dd9fd4bd017ba3b3d65df/docs/tool-reference.md#L223-L235), [snapshot](https://github.com/ChromeDevTools/chrome-devtools-mcp/blob/e52c6b59b476c5e04d8dd9fd4bd017ba3b3d65df/docs/tool-reference.md#L462-L472) and [test runner](https://github.com/ChromeDevTools/chrome-devtools-mcp/blob/e52c6b59b476c5e04d8dd9fd4bd017ba3b3d65df/scripts/test.js#L19): supported interfaces and unchanged six-file test:no-build selection. - [microsoft/playwright-cli@74354ecc, v0.1.21: README:7-11](https://github.com/microsoft/playwright-cli/blob/74354ecc7a43da16d91a9bc54fa8db8283a3fcf5/README.md#L7-L11): browser automation; no text-only incapability or CLI-removal claim. - [openai/codex@a956835d, rust-v0.160.0: spec_plan:626-648](https://github.com/openai/codex/blob/a956835d/codex-rs/core/src/tools/spec_plan.rs#L626-L648), [standalone selection:1038-1046](https://github.com/openai/codex/blob/a956835d/codex-rs/core/src/tools/spec_plan.rs#L1038-L1046), [ordinary-turn reasoning context:863-882](https://github.com/openai/codex/blob/a956835d/codex-rs/core/src/client.rs#L863-L882), [developer input:902-938](https://github.com/openai/codex/blob/a956835d/codex-rs/core/src/client.rs#L902-L938) and [parallel calls:989-995](https://github.com/openai/codex/blob/a956835d/codex-rs/core/src/client.rs#L989-L995): confine the non-Lite change to opt-in discovery. - [Codex catalog loader:2143-2171](https://github.com/openai/codex/blob/a956835d/codex-rs/core/src/config/mod.rs#L2143-L2171), [model overrides:19-60](https://github.com/openai/codex/blob/a956835d/codex-rs/models-manager/src/model_info.rs#L19-L60), and [static manager:757-827](https://github.com/openai/codex/blob/a956835d/codex-rs/models-manager/src/manager.rs#L757-L827): startup catalog replacement and no-op static-manager refresh methods in this cited implementation. - [openai/codex@rust-v0.160.1: bundled-only export:2068-2095](https://github.com/openai/codex/blob/rust-v0.160.1/codex-rs/cli/src/main.rs#L2068-L2095), [upstream serialization:840-943](https://github.com/openai/codex/blob/rust-v0.160.1/codex-rs/protocol/src/openai_models.rs#L840-L943), and [masked environment formatter:3-24](https://github.com/openai/codex/blob/rust-v0.160.1/codex-rs/utils/cli/src/format_env_display.rs#L3-L24): native metadata generation/readback. - [OmniRoute v3.8.51](https://github.com/diegosouzapw/OmniRoute/releases/tag/v3.8.51), selected pin c1e30b76: [hosted tools:6-21](https://github.com/diegosouzapw/OmniRoute/blob/c1e30b7676975feb298b49eff6ff58923c04b89e/open-sse/executors/codex/tools.ts#L6-L21), [passthrough:194-206](https://github.com/diegosouzapw/OmniRoute/blob/c1e30b7676975feb298b49eff6ff58923c04b89e/open-sse/executors/codex/tools.ts#L194-L206), [404 fallback:16-42](https://github.com/diegosouzapw/OmniRoute/blob/c1e30b7676975feb298b49eff6ff58923c04b89e/src/app/api/v1/%5B...omnirouteCatchAll%5D/route.ts#L16-L42). [#13788](diegosouzapw/OmniRoute#13788) remains a reviewed-source lead, not a shipped route. ### Evidence-class table | Claim | Evidence class | Command / receipt | | --- | --- | --- | | Six unchanged selected upstream test files work with installed Chrome | native_proven, upstream subset | test:no-build exit0; 129 tests/27 suites/129 pass/0 failures/skips; qualification.json | | Fresh Claude and Codex return all three required MCP results and close their created page | native_proven, local integration with synthetic fixture | Both native CLI exit0, actual returned events retained; qualification.json | | Missing fixture fails the title/console predicate | local_integration, synthetic control | Actual about:blank snapshot/empty console rejected; original native MCP observation retained privately | | Browser/package source and both pinned MCP argument readbacks match | local_integration | Read-only package/Google apt origin and native registration checks, exit0; no credential values returned | | Public receipt matches original native streams and exact usage once per client | local_integration, independent observation | Read-only critic checks original results, cleanup, native totals and raw hashes; no material finding | | Opt-in catalog/profile preserves all other model/config fields | local_integration | 11 models, only 10 true Lite flags changed; exact TOML delta; exit0 | | Lite transport and static catalog behavior | source_review | Pinned Codex and OmniRoute source above | | Native hosted search succeeds through opt-in profile | pending | CC owns application and the single known-answer run; no such success claimed here | | Publication integrity | local_integration | python3 scripts/validate.py exit0 after registration | ### Local commands run ```text Native registration/browser/source checks exit0: both npx Chrome MCP1.10.1 registrations match required flags; Google Chrome154.0.8037.97-1 meets minimum and signed Google origin; installed source HEAD e52c6b59, tracked source clean, Node24.21.0. PUPPETEER_EXECUTABLE_PATH=/usr/bin/google-chrome-stable npm run test:no-build -- tests/index.test.ts tests/tools/pages.test.ts tests/tools/snapshot.test.ts tests/tools/console.test.ts tests/tools/network.test.ts tests/tools/performance.test.ts exit0: original native dot output retained. Same unchanged subset with NODE_TEST_REPORTER=spec exit0: 129 tests,27 suites,129 pass,0 fail/cancel/skip/todo. Fresh claude -p (Opus/max,max-turns8,no-session-persistence,stream-json) exit0 under required shared flock; required actual MCP results and cleanup pass. Fresh codex --no-daemon exec (Sol/max,ephemeral,read-only,non-Git,--skip-git-repo-check,--json) exit0; required completed MCP events and cleanup pass. Both raw-stream/receipt and negative/positive-control checks exit0; underlying native missing-fixture oracle is false as required. Native bundled export and exact profile/catalog comparisons exit0; earlier raw-source/native-export mismatch exit1 retained and corrected through upstream serializer. scripts/component_matrix.py --write exit0, no generated report diff. scripts/new_host_grand_list.py --write exit0, no generated report diff. python3 scripts/validate.py final exit0 after registration: 69 components,4 profiles,214 receipts,10342 hashed files; initial missing changed-test hash failure retained and corrected before push. python3 -m unittest discover -s tests -p test_validate.py exit0: 68 tests,OK. python3 -m unittest discover -s tests -p test_evidence_manifest.py exit0: 5 tests,OK; printed rejection messages belong to its negative fixtures. python3 -m unittest discover -s tests -p test_windows_terminal_defaults.py first exit1: operative matcher quotes were stale; retained and corrected. final exit0: 42 tests,OK, including the unchanged installed-client currency gate. python3 -B evidence/artifacts/notification-types-20260929/notification_types_scan.py INSTALLED_CLAUDE CHECKOUT exit0: auth_storage_failure ring,unknown=[],no source-overlay disagreement. ACK_AFTER documentation revision, 2026-10-06: nice -n 19 python3 -m unittest discover -s tests -p test_windows_terminal_defaults.py exit0: 42 tests,OK. nice -n 19 python3 scripts/validate.py exit0 before commits and again after the final registry-only commit: 69 components,4 profiles,214 receipts,10342 hashed files. git diff --cached --check exit0 before each commit. Independent bounded documentation critic exit0: no remaining P2/P3 wording gaps in the four requested fixes. ``` The complete exact invocation, original JSONL/stderr/test outputs and hashes remain privately retained; the public artifact sanitizes paths/conversations while preserving results and native usage. No new code or behavior suite is authored. No rebuild, install, sudo, credential-file read, client-config mutation or OS restart ran. All native heavy steps were serial and outside the paper window. Previous full publication checks are retained; the final registry check is rerun for these changed artifacts. ### Decision record - `docs/decisions/2026-10-06-auth-storage-failure-notification.md`: dated Q55 RING row, exact observed2.1.291 assertion, source-only matcher/count alignment and live-application boundary. - `docs/decisions/2026-10-06-ns2604-selected-browser-native-qualification.md`: scoped browser READY with actual tests/native results, original blocker retained, workload and version-drift reopening conditions. - `docs/decisions/2026-10-06-codex-omniroute-opt-in-search.md`: separate Lite workhorse/hosted-search profile; reopen only for a shipped standalone route and matched quality comparison. ### Host evidence No file under evidence/hosts or platform-status edit. The browser record is a compact native-bar artifact; broader component/platform state follows its own policy. Hosted-search application remains pending CC evidence. - [ ] Host-receipt validation: not applicable, no evidence/hosts change. - [x] Independent original-stream consistency check recorded; command-center review still required. - [x] No platform-status change inferred from one receipt. ### Checklist - [x] No Actions/workflow permission changes. - [x] No secrets read, printed or committed; no new required secret. - [x] No new paid hosting/subscription/billing surface. - [x] Peer-owned files, worktrees, queued branches and live templates preserved. - [x] Registry committed last; draft retained for review. ### A22 append-only decision correction Based on pinned main3d7d4a4b, restore terminal-experience.md's entire original prefix byte-identical, then append Amendment(2026-10-06) for Q55's current matcher recommendation and PENDING CC application. Historical measured/decided text stays unchanged. The document consistency test selects the latest dated matcher amendment; strict matcher checks remain, with positive preservation and negative wrong-current/undated-note fixtures.44 touched tests passed at the A22 head; validate passed before/after its final registry-only commit (69 components,4 profiles,223 receipts,10394 hashed files). Scan-producer bytes remain exactlyb12ea18b67f64a13688d1468249c395058a528b8ba44239b472edba897bdf385; no new producer change or receipt observation was prepared. The command center approved its existing3 added lines as generator input (PRODUCER-RULED, 2026-10-06T23:45:52Z); old observations and receipt bytes remain unchanged. Source: repository append/overlay convention at docs/landscape-domain-notes.md:31-42, the original decision at main3d7d4a4b, Q55's installed-client/scanner/gate sources in the new decision, and the direct A22 ruling. Three expected registry-only historical rebase conflicts took main's registry and native re-registration; a later shared origin/main advancement caused a retained validation failure, corrected by pinning the base SHA. No peer-file conflict was resolved. Final source87880975 touches only the decision/test, registry-onlya9423840 is last. No live configuration application/bell/sign-in or model trial is claimed. ### J790b: explicit paired receipts and selector negative control The immutable pair is [the old Claude Code 2.1.285 scan](https://github.com/seathatflowsinourveins/native-agent-stack/blob/118a0c852843acdde3f42ebfdd40db0aa783223e/evidence/artifacts/notification-types-20260929/recorded/notification_types_scan_2.1.285.json) (SHA-256 `eb2e772ebd9d0c83e7ec4aab1584c18cb66ccc2237b921c1dfe6165126f2cef8`) and [the new dated 2.1.291 scan](https://github.com/seathatflowsinourveins/native-agent-stack/blob/118a0c852843acdde3f42ebfdd40db0aa783223e/evidence/artifacts/notification-types-20261006/notification_types_scan_2.1.291.json) (`e43b95aab9f5f841c52edc7db700b159495fb211910247e83c5cd7c7f4bf983d`). A new dated Addendum (2026-10-07) gives those direct links alongside the October6 amendment's new-receipt mention. Under the final no-rewrite scope, the entire prior decision and amendment are preserved byte-identical; only four addendum lines are appended. No producer/receipt byte changes. The selector now chooses the latest dated section containing its operative marker **or a recognized matcher quote**. A new selector-level negative control appends the review's unmarked wrong matcher to the actual decision and verifies that the combined check rejects it. The strict validator stays unchanged. `python3 -B -m unittest tests.test_windows_terminal_defaults` returned0,45tests in5.194s. Before/after final registry validation returned0 with69components/4profiles/223receipts/10394hashes; sourcefa9ed449 then registry-only118a0c85. No rebase; explicit own-branch lease againsta9423840. This head is ready for the co-op micro-check and CC ACK; the PR remains a draft.
Scope
Repair missing-key recovery in existing Codex profile-v2 files and retain slot-bound Headroom/SocratiCode approval policy. Inventory token practice across native clients and SDK workers, and measure native gateway preview artifacts with promptfoo. RTK adoption remains PR #705; this PR removes its overlapping row/card changes.
Every preview/model/usage result is input-preprocessing evidence only. A3's native transformVars phase invokes the upstream preview CLI and direct inference; option 1's isolated integrated route/settings-hash/readback/retry evidence stays with the gateway owner. No integrated worker route or output-style acceptance claim.
f946c6d4ca988a17b6fa4392ecb488909f147883lane:foundationSOTA sources
Evidence-class table
Fresh qualification: 48/48 exact final answers, exit 0; raw/RTK/Caveman each 16 calls. Native input totals 17950/13150/17758, output 1575/1684/1535. The earlier failed pilot is retained; all 96 benchmark calls have terminal native usage, while preparation/recovery and backend retries remain unknown. This does not establish complete-task savings or global settings.
A3's separately frozen native-transform phase: 48/48 exact answers, exit 0, 300947ms, 24 distinct pre-repeat previews. Input totals remain 17950/13150/17758; output 1646/1588/1516. All 144 distinct calls retain terminal usage; preview counts and cached/reasoning subsets are separate. Masked exported hashes remain masked, with retained-text verification derived against frozen constants. Inference headers report gateway3.8.51 and compression off, separately from installed canary source metadata. Input preprocessing only; unknown preparation/recovery/backend retries remain unknown.
Local commands run
Decision record
docs/decisions/2026-10-05-codex-token-parity.mddocs/decisions/2026-10-05-gateway-token-features.mdRetain shared settings and the clean-default carrier holdout. Source capability, native preview, provider execution and complete-task acceptance remain distinct. Owner 99 triages hook gaps; gateway owner supplies isolated integrated evidence.
Host evidence
No files under
evidence/hosts/changed. Raw conversations and active configuration remain private; sanitized receipts retain hashes and failed conditions.Checklist