Repository navigation
Preserve parent cache affinity for ephemeral forks - #44862
Merged
copyberry[bot] merged 1 commit intoSep 11, 2026
Merged
copyberry[bot] merged 1 commit into
copyberry[bot] merged 1 commit into
Conversation
## Why ChatGPT derives Responses cache affinity from the `session-id` header. Ephemeral forks need to reuse their parent's cache routing while retaining their own session and thread identities. ## What changed - Inherit the parent session ID as the `prompt_cache_key` for ephemeral root forks. - Use the prompt cache key for root-agent Responses `session-id` headers, including WebSocket handshakes. Preserve the actual session identity in turn metadata and leave non-root-agent routing unchanged. - Keep enabled goal tool definitions visible on ephemeral threads, but reject execution with `Goal tools require a persistent thread.` and disable automatic goal continuation without persistent state. ## Testing Add regression coverage for inherited cache routing with distinct fork identities, matching parent and fork tool definitions, WebSocket session headers, and rejection of ephemeral goal tool execution. GitOrigin-RevId: d235e97630068b27f7ebd562dd23ac6266ebc1b9
copyberry
Bot
force-pushed
the
copyberry/codex-internal-to-codex-oss/d235e97630068b27f7ebd562dd23ac6266ebc1b9
branch
from
September 11, 2026 16:42
88ad1e1 to
bc5957e
Compare
copyberry
Bot
deleted the
copyberry/codex-internal-to-codex-oss/d235e97630068b27f7ebd562dd23ac6266ebc1b9
branch
September 11, 2026 16:42
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Preserve parent cache affinity for ephemeral forks
Why
ChatGPT derives Responses cache affinity from the
session-idheader. Ephemeral forks need to reuse their parent's cache routing while retaining their own session and thread identities.What changed
prompt_cache_keyfor ephemeral root forks.session-idheaders, including WebSocket handshakes. Preserve the actual session identity in turn metadata and leave non-root-agent routing unchanged.Goal tools require a persistent thread.and disable automatic goal continuation without persistent state.Testing
Add regression coverage for inherited cache routing with distinct fork identities, matching parent and fork tool definitions, WebSocket session headers, and rejection of ephemeral goal tool execution.