mirror of
https://github.com/openai/codex.git
synced 2026-11-14 21:40:39 +00:00
Route response item IDs through a shared generator (#59312)
## What changed Introduce `ItemIdGenerator` and pass the runtime-owned generator through sessions, model clients, history, hooks, tool outputs, and memory requests. Keep UUIDv7 generation as the default and replace direct calls to `ResponseItemId::new` with the shared callable. Preserve existing item IDs and backfill missing or empty IDs through the same generator, including forked history before reconstruction and persistence. ## Testing Extend coverage for UUIDv7 IDs on user messages, agent messages, and additional tools, and assert that forked model context matches the backfilled items persisted to history. GitOrigin-RevId: 0dd9ccf0f46f0f1005a6acfc740133b03ce82259
This commit is contained in:
committed by
copyberry
parent
f2b94ef8b5
commit
d84c872464
@@ -342,6 +342,11 @@ impl CodexThread {
|
||||
&self.session.services.thread_extension_data
|
||||
}
|
||||
|
||||
/// Generator used for response items produced on behalf of this thread.
|
||||
pub fn item_id_generator(&self) -> &codex_protocol::ItemIdGenerator {
|
||||
&self.session.item_id_generator
|
||||
}
|
||||
|
||||
/// Returns tools from this thread’s ready, unshared Apps MCP client.
|
||||
/// Returns an empty list if the client is absent, still starting, or uses
|
||||
/// a shared catalog. Does not start or wait for discovery.
|
||||
|
||||
Reference in New Issue
Block a user