Skip to content

Add completion-aware realtime attachment and session-scoped detach - #51539

Merged
copyberry[bot] merged 1 commit into
mainfrom
copyberry/codex-internal-to-codex-oss/23aee6f70522f0b17e6aa9349dbbcc2ea985f233
Oct 7, 2026
Merged

copyberry[bot] merged 1 commit into
mainfrom
copyberry/codex-internal-to-codex-oss/23aee6f70522f0b17e6aa9349dbbcc2ea985f233

Conversation

@copyberry

@copyberry copyberry Bot commented Oct 7, 2026 •

Copy link
Copy Markdown

Add completion-aware realtime attachment and session-scoped detach

Why

A delayed detach or cleanup from an older realtime conversation must not close its replacement or end the replacement's history segment. Realtime start parameters can also contain credentials in text and transport endpoints, so diagnostics should avoid exposing them.

What changed

  • Add RealtimeConversationAttach to report the connection attempt's result through a reply channel, using the sequential start path.
  • Add RealtimeConversationDetach to close only the matching realtime_session_id after earlier starts finish. Detaching an older session leaves the replacement connected.
  • Emit the previous conversation's close event before starting its replacement, and prevent stale fanout cleanup from closing or clearing the replacement's context.
  • Limit ConversationStartParams debug output to output modality, initial item count, and protocol version.

Testing

Add coverage for attachment completion after the handshake, stale detaches, failed replacement and retry, natural-close ordering, handoff history after replacement, and debug redaction for existing-call and WebRTC transports.

…51539)

## Why

A delayed detach or cleanup from an older realtime conversation must not close its replacement or end the replacement's history segment. Realtime start parameters can also contain credentials in text and transport endpoints, so diagnostics should avoid exposing them.

## What changed

- Add `RealtimeConversationAttach` to report the connection attempt's result through a reply channel, using the sequential start path.
- Add `RealtimeConversationDetach` to close only the matching `realtime_session_id` after earlier starts finish. Detaching an older session leaves the replacement connected.
- Emit the previous conversation's close event before starting its replacement, and prevent stale fanout cleanup from closing or clearing the replacement's context.
- Limit `ConversationStartParams` debug output to output modality, initial item count, and protocol version.

## Testing

Add coverage for attachment completion after the handshake, stale detaches, failed replacement and retry, natural-close ordering, handoff history after replacement, and debug redaction for existing-call and WebRTC transports.

GitOrigin-RevId: 23aee6f70522f0b17e6aa9349dbbcc2ea985f233
@copyberry
copyberry Bot force-pushed the copyberry/codex-internal-to-codex-oss/23aee6f70522f0b17e6aa9349dbbcc2ea985f233 branch from a87b40e to 4aaee87 Compare October 7, 2026 01:29
@copyberry
copyberry Bot merged commit 4aaee87 into main Oct 7, 2026
1 check failed
@chatgpt-codex-connector

Copy link
Copy Markdown
Contributor

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review 🔄 Running since 2026-10-07T01:29:12.241799Z a87b40e PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@github-actions

github-actions Bot commented Oct 7, 2026

Copy link
Copy Markdown
Contributor


Thank you for your submission, we really appreciate it. Like many open-source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution. You can sign the CLA by just posting a Pull Request Comment same as the below format.


I have read the CLA Document and I hereby sign the CLA


You can retrigger this bot by commenting recheck in this Pull Request. Posted by the CLA Assistant Lite bot.

@copyberry
copyberry Bot deleted the copyberry/codex-internal-to-codex-oss/23aee6f70522f0b17e6aa9349dbbcc2ea985f233 branch October 7, 2026 01:29
@github-actions github-actions Bot locked and limited conversation to collaborators Oct 7, 2026
@kirisue
kirisue deployed to issue-triage October 7, 2026 01:45 — with Image GitHub Actions Active
@kirisue
kirisue deployed to issue-triage October 7, 2026 01:45 — with Image GitHub Actions Active
@kirisue
kirisue deployed to issue-triage October 7, 2026 01:45 — with Image GitHub Actions Active
@patdeachilla
patdeachilla deployed to issue-triage October 7, 2026 01:45 — with Image GitHub Actions Active
@patdeachilla
patdeachilla deployed to issue-triage October 7, 2026 01:45 — with Image GitHub Actions Active
@patdeachilla
patdeachilla deployed to issue-triage October 7, 2026 01:45 — with Image GitHub Actions Active
@kirisue
kirisue deployed to issue-triage October 7, 2026 01:45 — with Image GitHub Actions Active
@kirisue
kirisue deployed to issue-triage October 7, 2026 01:45 — with Image GitHub Actions Active
@kirisue
kirisue deployed to issue-triage October 7, 2026 01:45 — with Image GitHub Actions Active
@kirisue
kirisue deployed to issue-triage October 7, 2026 01:46 — with Image GitHub Actions Active
@kirisue
kirisue deployed to issue-triage October 7, 2026 01:46 — with Image GitHub Actions Active
@kirisue
kirisue deployed to issue-triage October 7, 2026 01:46 — with Image GitHub Actions Active
@kirisue
kirisue deployed to issue-triage October 7, 2026 01:46 — with Image GitHub Actions Active
@kirisue
kirisue deployed to issue-triage October 7, 2026 01:47 — with Image GitHub Actions Active
@kirisue
kirisue deployed to issue-triage October 7, 2026 01:47 — with Image GitHub Actions Active
@kirisue
kirisue deployed to issue-triage October 7, 2026 01:47 — with Image GitHub Actions Active
@kirisue
kirisue deployed to issue-triage October 7, 2026 01:47 — with Image GitHub Actions Active
@kirisue
kirisue deployed to issue-triage October 7, 2026 01:48 — with Image GitHub Actions Active
@kirisue
kirisue deployed to issue-triage October 7, 2026 01:49 — with Image GitHub Actions Active

This branch was successfully deployed

1 active deployment
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants