Fix Codex credential check 401 by disabling WebSocket transport - #55106
Conversation
Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Looked at the new failure. The original bug is actually fixed: the error changed from
This is a secret/account configuration issue, not a workflow bug — it matches the existing "insufficient quota" guidance in |
There was a problem hiding this comment.
Pull request overview
Forces the Codex credential check to use HTTPS, avoiding upstream WebSocket authentication failures.
Changes:
- Creates an isolated Codex configuration with WebSockets disabled.
- Loads the configuration through a scratch
CODEX_HOME.
Show a summary per file
| File | Description |
|---|---|
.github/workflows/credentials-check.yml |
Configures a direct HTTPS-only OpenAI provider for Codex. |
Review details
💡 Add a code-review agent skill for context-aware, tailored reviews. Learn more in the docs.
- Files reviewed: 1/1 changed files
- Comments generated: 0
- Review effort level: Balanced
|
🎉 This pull request is included in a new release. Release: |
The "Codex credential check" job failed with
401 Unauthorized: Missing bearer or basic authentication in headeronwss://api.openai.com/v1/responses, despite valid credentials.Root cause
openaimodel provider rejects-coverrides ofsupports_websockets(built-in provider IDs are reserved), so there's no CLI-flag escape hatch.Fix
.github/workflows/credentials-check.yml: thecodexjob now writes a minimalconfig.tomlto a scratchCODEX_HOMEdefining a customopenai-directprovider pointed athttps://api.openai.com/v1withsupports_websockets = false, forcing HTTPS transport and skipping the broken WebSocket path — mirroring the workaround already used bypkg/workflow/codex_mcp.gofor the firewall proxy provider.--ignore-user-configfrom thecodex execinvocation so the generated config is actually loaded.