mirror of
https://github.com/openai/codex.git
synced 2026-11-13 06:45:07 +00:00
Expose structured standalone web search results (#32898)
## Why Standalone web search can return structured result DTOs separately from its model-facing text output. App-server clients need access to that data without coupling Codex to every result type or field. ## What changed - Preserve the optional `results` array from `/v1/alpha/search` as opaque JSON through web-search completion events, thread history, and app-server `webSearch` items. - Keep responses from older endpoints compatible when `results` is absent, and allow clients to ignore result types and fields they do not understand. - Regenerate the protocol schemas and TypeScript definitions for the optional field. ## Testing - Cover responses with missing, empty, and forward-compatible result payloads. - Verify standalone web-search results round-trip through app-server item notifications and thread-item conversion. GitOrigin-RevId: 739ef5694ece5733f7b8749ec41d6bfa3f33c8c5
This commit is contained in:
1 parent
090f4de37b
commit
2ca20d5224
38 files changed
+329
-4
No files matched your search
@@ -46,6 +46,7 @@ fn web_search_item_preserves_stable_wire_shape() {
|
||||
query: Some("docs".to_string()),
|
||||
queries: None,
|
||||
}),
|
||||
results: None,
|
||||
});
|
||||
let value = serde_json::to_value(&item).expect("serialize extension item");
|
||||
|
||||
@@ -60,12 +61,27 @@ fn web_search_item_preserves_stable_wire_shape() {
|
||||
"query": "docs",
|
||||
"queries": null,
|
||||
},
|
||||
"results": null,
|
||||
})
|
||||
);
|
||||
assert_eq!(
|
||||
serde_json::from_value::<ExtensionItem>(value).expect("deserialize extension item"),
|
||||
item
|
||||
);
|
||||
assert_eq!(
|
||||
serde_json::from_value::<ExtensionItem>(json!({
|
||||
"kind": "web.search",
|
||||
"id": "search-1",
|
||||
"query": "docs",
|
||||
"action": {
|
||||
"type": "search",
|
||||
"query": "docs",
|
||||
"queries": null,
|
||||
},
|
||||
}))
|
||||
.expect("deserialize legacy extension item without results"),
|
||||
item
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
|
||||
Reference in new issue
Block a user