Skip to content

fix(llm/tools): emit all tool_calls per SSE chunk and cap web body memory#247

Merged
Fullstop000 merged 1 commit into
masterfrom
fix-233-234
Jul 10, 2026
Merged

fix(llm/tools): emit all tool_calls per SSE chunk and cap web body memory#247
Fullstop000 merged 1 commit into
masterfrom
fix-233-234

Conversation

@Fullstop000

@Fullstop000 Fullstop000 commented Jul 9, 2026

Copy link
Copy Markdown
Owner

Closes #233, closes #234.

  • parse_sse_line now returns Vec<LlmResponseDelta> and yields every entry in delta.tool_calls, fixing silent drops of parallel tool-call fragments.
  • Added tools::util::read_body_with_cap for bounded HTTP body reads; applied in web_fetch (4 MiB) and web_search (2 MiB JSON / 64 KiB errors) to bound peak memory against large or malicious responses.

Checklist:

  • cargo fmt --all -- --check
  • cargo clippy --workspace --all-targets -- -D warnings
  • cargo test --workspace
  • cargo build --release

…mory

- parse_sse_line now returns Vec<LlmResponseDelta> and yields every entry
  in delta.tool_calls, fixing silent drops of parallel tool-call fragments.
- Add tools::util::read_body_with_cap for bounded HTTP body reads; applied
  in web_fetch (4 MiB) and web_search (2 MiB JSON / 64 KiB errors) to bound
  peak memory against large or malicious responses.
- LLM error bodies are now also capped when reporting non-2xx responses.
- Added UTF-8-boundary-safe truncation and unit tests.

Closes #233, closes #234

chore(release): v0.45.4
@Fullstop000
Fullstop000 merged commit 2467ed8 into master Jul 10, 2026
6 checks passed
@Fullstop000
Fullstop000 deleted the fix-233-234 branch July 10, 2026 03:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

1 participant