#214
fix(exa): strip only the top-level stream key from search bodies
exa#search removed stream with utils.json.omit, which walks the whole body, so a stream property inside a caller's outputSchema or contents.summary.schema was deleted too. Exa then got a schema whose required list names a property that no longer exists. This switches to utils.json.pluck(body, "$.stream").rest so only the top-level flag is dropped.
Added a test that sends both a top-level stream and nested stream schema properties and checks what goes over the wire. It fails on main and passes here: deno test --allow-read --allow-env --allow-write connectors/exa/ (7 passed). deno lint, deno fmt --check, deno check and deno task version:check are clean.
Summary by CodeRabbit
- Bug Fixes
- Search requests now preserve
streamsettings nested within output schemas and content, while continuing to omit the top-levelstreamfield. This prevents nested configuration from being unintentionally removed when requests are sent.
- Search requests now preserve
No actionable comments were generated in the recent review.
34ed1c72-5626-486b-bfa4-075a4da06e69Reviewing files that changed from the base of the PR and between 09d54479142e36eff876383beacfbd37b33b5908 and 777ebd5f1ddae0fad85a63c2884e1ada218b1ff2.
connectors/exa/endpoints/search/endpoint.test.tsconnectors/exa/endpoints/search/endpoint.tsIncluded review availability: This review used your included allowance. Your plan provides up to 8 included reviews per hour; 7 remain after this review.
Walkthrough
The Exa search endpoint now removes only the top-level
streamfield from the request body. A custom-transport test verifies that nestedstreamfields inoutputSchemaandcontentsremain in the sent request.Priority: Normal
Merge Risk: Minimal · up to
777ebNested stream fields are preserved while the top-level flag is removed. No merge-blocking issue was identified.
Pre-merge checks: 4
streamkey from Exa search request bodies.Comment
@coderabbitai helpto get the list of available commands.