Repository navigation
Require explicit providers in Codex execution tools - #887
Draft
seathatflowsinourveins wants to merge 4 commits into
Draft
seathatflowsinourveins wants to merge 4 commits into
seathatflowsinourveins wants to merge 4 commits into
Conversation
seathatflowsinourveins
force-pushed
the
codex/ns2604-codex-exec-route-20261008
branch
from
October 8, 2026 22:20
100fccb to
d86b6ec
Compare
This was referenced Oct 8, 2026
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Scope
Six repository caller categories now require an explicit provider before constructing
codex exec: native proof, blind convergence, adjudication, landscape sweep, token judging and the capability gate's SDK launcher. Missing choices refuse before setup; native and keyless loopback OmniRoute preserve the existing isolation, model/effort and stdin contracts. Constructors retain the existing fast service tier.This revision also repairs the hosted failures found on the initial draft: a verified source digest triggered
generic-api-key, older fixtures omitted the required provider or fast-tier argument, and the current lane source provenance was absent from its append-only registry.9f7b38b23d15e47ceb6f68c6651b86088f621797, reached by one rebase after fetching the corrected current-main target.lane:foundation; PR remains a draft for both co-op reads..gitleaks.tomlentry, explicit fixture updates and append-only lane provenance.manifests/evidence.jsonwas recovered and refreshed using the existingfreshness_propose.register_receipt,host_receipts.register_fileandevidence_manifesthelpers. Its registration is committed last.SOTA sources
979011409de0a60b52f179721948e65531d26144:codex-rs/model-provider-info/src/lib.rs,codex-rs/config/src/loader/mod.rsandcodex-rs/core/config.schema.json. This is the retained implementation reference for supported provider overrides, profiles and configuration isolation.tools/capability-gate/README.md.condition = "AND", exact path and whole-line matching. The binary archive was verified against the workflow's pin at the rebase base.Changed test expectations
The following six older test expectations changed to match the explicit-provider contract. Runtime routing was not weakened.
RunnerTests.test_codex_command_line_stdin_and_directory: strict argv includes the existing-c service_tier="fast"pair.RunnerTests.test_ultra_defaults_and_idle_refusal_precede_state_changesandRecoveryRunnerTests.test_default_budgets_clear_observed_healthy_silence_and_research_duration: direct staged fixtures declareprovider: native.ShellTests.test_staged_copy_needs_no_work_dir_argument: preserve generatedcodexmetadata while overriding polling intervals.SkillLaunchTestslive/missing-skill fixtures pass--provider native, a temporary Codex home and a mocked worker environment. The live fixture's strict expected argv includes the provider argument and checks the environment.Existing timeout, refusal, directory isolation, prompt, observed-route and six-versus-five run assertions remain. The two lane-vendoring expectations are unchanged; actual native source provenance was appended instead. New gitleaks tests cover the allowed source digest, rejection on other fields/paths/shared lines and equality with the named source digest.
Evidence-class table
local_integration/syntheticevidence/artifacts/codex-exec-explicit-provider-20261008/receipt.json: 327 passes and one optional Context Mode skip; bytes and dated source digests preservedsource_review/local_integrationlocal_integration/synthetictests.test_gitleaks_configmodulelocal_integration/syntheticremediation.jsonlocal_integrationlocal_integrationscripts/validate.pyexit 0: 70 components, 10,906 hashed files, four profiles, 241 receiptsLocal commands run
Every test command used
nice -n 10 ionice -c2 -n7 timeout 600and one named module:tests.test_landscape_sweep_harnesstests.test_codex_worker_skilltests.test_verdict_lane_vendoringtests.test_gitleaks_configtests.test_codex_worker_lanetests.test_codex_provider_routenice -n 10 ionice -c2 -n7 timeout 600 python3 scripts/validate.pypassed after registration. Root-relative nativegitleaks dir . --config .gitleaks.toml --max-target-megabytes 2 --redact --no-bannerpassed with no findings. Final committed-history scan is recorded in the publication receipt.Failure conditions remain recorded: the four assertions/four errors reproduced from the initial modules, the red allowlist regression, the initial new-receipt metadata/schema error and the absolute-subtree scan whose path format does not match the deliberately repo-relative allowance. Intermediate repeated runs are not summed.
These checks are offline integration, synthetic fixtures and source review. They do not establish a fresh live model/provider run, actual service-tier delivery or current hosted CI success. The historical receipt's
tests/test_codex_worker_lane.pydigest remains dated; the merged current module was tested separately. A transient subprocess warning was observed and the referenced child was independently confirmed exited.Decision record
docs/decisions/2026-10-08-codex-exec-explicit-provider.md; original and remediation receipts are underevidence/artifacts/codex-exec-explicit-provider-20261008/.Host evidence
No host receipt, account, service or active client configuration was changed.
Checklist