Skip to content

fix(codex): reconcile stale Responses WebSocket profiles - #2006

Draft
Jonesxq wants to merge 1 commit into
jlcodes99:mainfrom
Jonesxq:fix/issue-1984-websocket-sync
Draft

fix(codex): reconcile stale Responses WebSocket profiles#2006
Jonesxq wants to merge 1 commit into
jlcodes99:mainfrom
Jonesxq:fix/issue-1984-websocket-sync

Conversation

@Jonesxq

@Jonesxq Jonesxq commented Aug 20, 2026

Copy link
Copy Markdown
Contributor

What changed

When Responses WebSocket is disabled, reconcile already-managed Codex profiles whose persisted capability metadata is stale. The repair updates both the provider capability in config.toml and every model's prefer_websockets value in the configured model catalog.

Why

Issue #1984 reports that new Codex conversations still retry WebSocket connections five times until the user manually edits config.toml. The routing toggle previously rewrote profiles only when the collection setting changed, so stale profiles survived restarts and repeated saves.

Validation

  • cargo test --manifest-path src-tauri/Cargo.toml --lib codex_local_access::tests -- --nocapture (232 passed)
  • cargo test --manifest-path src-tauri/Cargo.toml stale_profile_websocket_capabilities_trigger_reconciliation -- --nocapture (passed)
  • go test ./... -run 'TestCodexClientModelsResponse|TestResponsesWebsocketRoute' -count=1 in sidecars/cockpit-cliproxy (passed)
  • git diff --check (passed)
  • Frontend typecheck passed in the existing dependency-complete worktree; the clean PR worktree has no installed node_modules.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant