Round 17 reviewer consensus on two extensions of the round 16 cap: 1. Direct GGUF stop forwarding (3/10 + sibling findings) — every llama_cpp.py payload builder and routes/inference.py direct-GGUF call site pass `stop` through unfiltered, while the external provider helper and `_build_passthrough_payload` already strip empty / non-string entries. Add a shared `_clean_local_stop_list` helper in the route layer for the two callers, mirror the same inline filter in `llama_cpp.py`'s three payload builders. Stops `stop=["", "END"]` from a stale client 400'ing llama-server. 2. Responses bridge tool-call cap (3/10 streaming + 1/10 non-streaming) — `_responses_stream` iterated every streamed `delta.tool_calls` index and `_responses_non_streaming` translated every returned `message.tool_calls` entry, even when `parallel_tool_calls=false`. Latch the first tool-call index in the streaming bridge and drop subsequent siblings; cap to one in the non-streaming bridge. Matches the GGUF agentic-loop / Anthropic-passthrough caps. Local-passthrough OpenAI paths (verbatim SSE / verbatim JSON) are left alone because the contract is "raw upstream forwarding"; clients calling /v1/chat/completions through Studio directly should still see llama-server's native output. |
||
|---|---|---|
| .. | ||
| data_recipe | ||
| export | ||
| inference | ||
| training | ||
| __init__.py | ||
| tool_healing.py | ||