Harden unattributed Codex cost handling - #2069
Conversation
|
Codex review: needs maintainer review before merge. Reviewed July 11, 2026, 2:53 PM ET / 18:53 UTC. Summary Reproducibility: yes. at source and fixture level: explicit blank turn-context fields after a previously attributed model exercise stale attribution, while an Review metrics: 3 noteworthy metrics.
Root-cause cluster Members:
Proposal only: this assessment does not dispatch repair, suppress jobs, mutate sibling items, close, or merge anything. Merge readiness Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch. Next step before merge
Security Review detailsBest possible solution: Keep unattributed usage visible but permanently unpriced, while omitted model fields preserve prior context and explicit blank fields clear it consistently across every Codex parser path. Do we have a high-confidence way to reproduce the issue? Yes at source and fixture level: explicit blank turn-context fields after a previously attributed model exercise stale attribution, while an Is this the best way to solve the issue? Yes. The patch narrowly extends the recently merged design with one shared field-presence resolver and one shared unattributed sentinel rather than adding parallel parsing or pricing behavior. AGENTS.md: found and applied where relevant. Codex review notes: model internal, reasoning high; reviewed against 0bb874930d6a. Label changesLabel changes:
Label justifications:
Evidence reviewedWhat I checked:
Likely related people:
What the crustacean ranks mean
Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics. How this review workflow works
|
|
Maintainer proof for exact head
No production CodexBar process or real provider credential was touched during QA. |
Summary
Follow-up hardening for #2061 after its contributor head landed.
Verification
make checkmake test— 610 selections, all 51 shards green, zero retries/timeoutsRisk
Low and parser-localized. The new distinction is covered through every Codex parsing path, cache collision behavior, and the packaged CLI. Claude behavior is unchanged.
Dependencies
No dependency changes; freshness not applicable.
Public model identifier gate
PASS. New test values are explicitly fictitious; the generic unattributed sentinel is not a provider model identifier. The sole real model family named in user-facing text is documented in the official OpenAI model catalog: https://platform.openai.com/docs/models