Roadmap item 6: Add inactive Codex CLI producer normalizer payload - #240
Conversation
First alternative harness. adapters/codex-cli-producer/v1/normalize.jq is the Claude Code producer normalizer with only the harness identity swapped: the snapshot kind and content id, the manifest id, the recorded snapshot fact, the adapter id, and the model provider the binding must name (openai). Every trust relation, snapshot relation, state, reason, and the generic observation are the same, so a profile can select either harness under one core contract. The test proves the two programs differ only in those six tokens (the Claude program with the tokens substituted is byte-identical to this one), runs the full producer contract suite against the new identity, and refuses a snapshot, recorded fact, or provider from the other harness. Inactive and unqualified: no Codex or model call, credential, network, target write, publish, or profile activation. No manifest ships here. Proof: scripts/test/default-codex-cli-producer-adapter.test.sh 46/46, shellcheck 0.11.0 clean. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Deploying ystack with
|
| Latest commit: |
1e1dc98
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://815cb4d3.fabrica-6yx.pages.dev |
| Branch Preview URL: | https://ystack-roadmap-6-codex-cli-p.fabrica-6yx.pages.dev |
Codex reviewer (cross-vendor, read-only)Reviewed-head: 7d4a0e4 Posted verbatim by The new inactive Codex CLI producer normalizer mirrors the existing Claude producer contract with the intended identity substitutions, is covered by a focused test, and is included in the required-files manifest. I did not find a discrete correctness issue introduced by this patch. |
Codex reviewer (cross-vendor, read-only)Reviewed-head: 1e1dc98 Posted verbatim by The added Codex CLI producer normalizer mirrors the existing Claude Code producer contract with the intended identity substitutions, and the new test covers the adapter states, provenance, stale/malformed inputs, and cross-harness rejection. I did not identify a discrete correctness issue in the changed files. |
Summary
adapters/codex-cli-producer/v1/normalize.jqis the Claude Code producer normalizer with only the harness identity swapped: snapshot kind and content id, manifest id, recorded snapshot fact, adapter id, and the model provider the binding must name (openai). Every trust relation, snapshot relation, state, reason, and the generic observation are the same, so a profile can select either harness under one core contract.main; not stacked.Inactive boundary
No Codex or model call, credential, network, target write, publish, or profile activation. Pure jq over the core modules.
Exact candidate
7d4a0e4mainata637451adapters/codex-cli-producer/v1/normalize.jq(new),scripts/test/default-codex-cli-producer-adapter.test.sh(new),README.md,ci/required-files.txtCurrent-head local proof
bash scripts/test/default-codex-cli-producer-adapter.test.sh— 46/46 checks passedFresh CI and a fresh independent review are required for this head.