#214

fix(exa): strip only the top-level stream key from search bodies

OpenBortlesboatwants to merge intofrom

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 stream settings nested within output schemas and content, while continuing to omit the top-level stream field. This prevents nested configuration from being unintentionally removed when requests are sent.

Activity

2
coderabbitai[bot]3d ago

No actionable comments were generated in the recent review.

Recent review info
Run configuration
Commits

Reviewing files that changed from the base of the PR and between 09d54479142e36eff876383beacfbd37b33b5908 and 777ebd5f1ddae0fad85a63c2884e1ada218b1ff2.

Files selected for processing: 2
  • connectors/exa/endpoints/search/endpoint.test.ts
  • connectors/exa/endpoints/search/endpoint.ts

Included 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 stream field from the request body. A custom-transport test verifies that nested stream fields in outputSchema and contents remain in the sent request.

Priority: Normal

Merge Risk: Minimal · up to 777eb

Nested stream fields are preserved while the top-level flag is removed. No merge-blocking issue was identified.

Pre-merge checks: 4
Check nameStatusExplanation
Description CheckCheck skipped - CodeRabbit’s high-level summary is enabled.
Title checkThe title clearly and concisely describes the main change: removing only the top-level stream key from Exa search request bodies.
Linked Issues checkCheck skipped because no linked issues were found for this pull request.
Out of Scope Changes checkCheck skipped because no linked issues were found for this pull request.
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Comment @coderabbitai help to get the list of available commands.