Skip to content

feat(codex): add WebSocket settings UI - #1965

Draft
WebMad wants to merge 1 commit into
Zoo-Code-Org:mainfrom
WebMad:experiment/codex-websocket-ui
Draft

WebMad wants to merge 1 commit into
Zoo-Code-Org:mainfrom
WebMad:experiment/codex-websocket-ui

Conversation

@WebMad

@WebMad WebMad commented Oct 8, 2026 •

Copy link
Copy Markdown
Contributor

Related GitHub Issue

Closes #1963 after all prerequisite PRs are merged.

Dependencies and merge order

Depends on provider activation #1967, which in turn requires transport #1964 and reasoning-history fix #1966.

#1966 and #1964 can merge independently → #1967 → this PR (#1965). Update this branch from the main branch after activation merges. Keep this PR as a draft until then so users never receive a checkbox that has no runtime effect.

Standalone type/build checks can fail before the prerequisites merge because the new shared provider setting and default are not yet present on the base branch.

Description

The webview-only portion of the original #1964: 28 files, all under webview-ui.

  • Add the per-profile Use WebSocket checkbox for OpenAI Codex authenticated through a ChatGPT subscription.
  • Keep edits buffered in Settings until the user clicks Save; default to off using the shared backend default.
  • Add provider-control and unsaved-Settings regression coverage.
  • Include translations for all 18 supported locales.
  • Preserve the Story Gallery fixture, Playwright type shim, and light/dark visual baselines for both checkbox states.

There are no backend, shared-package, or lockfile changes here. The webview subtree is byte-for-byte identical to the original unsplit PR. Combining #1966, #1964, #1967, and this PR reproduces the complete original Git tree exactly, including binary visual baselines.

Test Procedure

Validation rerun against the combined backend + UI state:

The original light/dark Playwright baselines are preserved unchanged and were not regenerated during either split. Standalone CI is not claimed until the prerequisites are merged and this branch is updated.

Manual verification after all parts are applied:

  1. Sign in to OpenAI Codex with a ChatGPT subscription.
  2. Enable Use WebSocket and verify that changing it does not immediately save Settings.
  3. Click Save, reopen Settings, and switch/import/export provider profiles; confirm the saved checkbox value survives.
  4. Verify requests use WebSocket when enabled. Disable the checkbox and Save to return to HTTP streaming.

Local validation used Node 24.7.0 / pnpm 10.8.1; the repository requests Node 22.23.1.

Pre-Submission Checklist

  • Scope: Webview changes only; backend responsibilities are reviewed separately.
  • Self-Review: Scope and exact preservation verified.
  • Testing: Focused regression tests and type check passed with prerequisites present.
  • Visual Snapshot: Story Gallery coverage and light/dark baselines retained unchanged.
  • Documentation Impact: Provider documentation should describe the opt-in checkbox when the full feature is released; documentation files remain outside these PRs.

No changeset or changelog entry is included. The original unsplit state is preserved on a backup branch in the source fork.

@coderabbitai

coderabbitai Bot commented Oct 8, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Auto reviews are limited based on label configuration.

🏷️ Required labels (at least one) (1)
  • coderabbit-review-active

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration
  • Configuration used: Repository: Zoo-Code-Org/Zoo-Code/.coderabbit.yaml
  • Review profile: ASSERTIVE
  • Plan: Advanced
  • Run ID: 9ad262b1-139f-4069-845c-0a9ee55c4424

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions

github-actions Bot commented Oct 8, 2026

Copy link
Copy Markdown
Contributor

Review status

Thanks for contributing. This comment tracks the review sequence and the next action.

Current step: Fix the failing required CI checks; awaiting-maintainer requires CI and automated review completion.

Review-state labels are managed by this workflow; do not edit them manually. community-approved is managed the same way — do not add or remove it manually. It signals a fresh community code approval for the current head as an advisory priority only; maintainer review is still required.

@WebMad WebMad changed the title feat(codex): add WebSocket settings UI (part 2) feat(codex): add WebSocket settings UI Oct 8, 2026
@WebMad

WebMad commented Oct 8, 2026

Copy link
Copy Markdown
Contributor Author

Dependency updated after the backend split: this UI PR now depends directly on provider activation #1967, which requires transport #1964 and reasoning fix #1966. Merge activation before this UI to avoid exposing a checkbox without runtime support. The UI branch and all visual baselines are unchanged.

This branch has not been deployed

No deployments
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.

[ENHANCEMENT] Add opt-in WebSocket mode for ChatGPT subscription Codex

1 participant