contracts: pin the CLI contract from InferenceInfra's live line (codex kept)
contracts: pin the CLI contract from InferenceInfra's live line (codex kept)
#198 re-synced this pin from InferenceInfra staging (release 2's contract
family and the codex harness). The CLI talks to inference.runanywhere.ai,
which runs InferenceInfra main (promoted from development), and that line
lacked codex. So every development change to control-plane-v1 now reports
"Wally main pin is stale" on InferenceInfra's release train (run
39342073419, "downstream contract freshness / Wally main vs this
control-plane").
InferenceInfra fix/codex-harness-live (3fb1fd00) ports the codex harness to
the live line. This re-syncs from it with
contracts/sync_from_inferenceinfra.py --from :
- Harness keeps codex (KCodex <-> "codex").
- Dropped relative to the staging pin, because the live API does not have
them: 30 staging-only ApiErrorCode values (organization, invitation,
partner and release-2 operator codes), thex-request-idheader on the
models listing response, and the cancel endpoint's 429. A grep of src/
outside the generated console_contract.rs finds no use of any dropped
variant. - sync_from_inferenceinfra.py --check: "Wally CLI lock OK (3fb1fd00,
fix/codex-harness-live)"; decisions_contract.rs matches its pin.
A local cargo check could not run: build.rs needs a CMake/Ninja native
toolchain this machine lacks. This change touches only the generated
binding; CI compiles it.
Merge this before the InferenceInfra PR (its consumer-impact gate compares
against this repo's main pin). When release 2 (staging) becomes production,
re-pin from that line again.
cc @sanchitmonga22: this supersedes #198's staging pin while the CLI talks to the live API.
š¤ Generated with Claude Code
Summary by cubic
Re-pins the CLI contract to InferenceInfra's live line instead of staging, silencing stale-pin reports on InferenceInfra's release train while keeping the codex harness.
The CLI talks to inference.runanywhere.ai, which runs InferenceInfra main, but #198's pin came from staging. This re-syncs from fix/codex-harness-live (3fb1fd00) and drops what the live API doesn't have: 30 staging-only ApiErrorCode values, the x-request-id header on the models listing response, and the cancel endpoint's 429. No code outside the generated console_contract.rs uses a dropped variant.
Migration
- Merge before the InferenceInfra PR, whose consumer-impact gate compares against this repo's main pin.
- Re-pin from staging once release 2 reaches production.
InferenceInfra PR (merge after this): https://github.com/RunanywhereAI/InferenceInfra/pull/5391
Summary by CodeRabbit
- API Contract Updates
- Removed 30 obsolete API error codes from the CLI contract.
- Unknown values for removed error codes now return parsing errors.
- Updated model reasoning documentation and clarified the console identity provider.
- Removed the documented request ID header from successful model-list responses.
- Updated cancellation documentation to describe direct node cancellation only.
- Removed the custom 429 response documentation for cancellation requests.