mirror of
https://github.com/openai/codex.git
synced 2026-11-05 20:10:33 +00:00
## Why Workload identity authentication assumed every token exchange resolved to ChatGPT, preventing API service accounts from using the same flow. ## What changed - Accept `wif_product: "api"` responses with organization, project, and service account metadata. Preserve ChatGPT compatibility when `wif_product` is omitted. - Resolve API workload identity tokens as API key authentication and apply login restrictions to the resolved product. Read the actual login status during TUI startup instead of assuming ChatGPT. - Preserve auth ownership across token renewal for the same API identity, and reject product or identity changes during refresh. - Redact API keys from debug output. ## Testing Add coverage for both exchange products, malformed metadata, assertion rotation and unauthorized recovery, identity changes, login and workspace restrictions, and CLI login status under both forced login methods. GitOrigin-RevId: f4fc4da74b86e4a9ae47b28221d3e065500f5b6e