Repository navigation
Conversation
|
Fresh cross-check on 2026-07-23 at One provider-neutral gap remains outside the current suite: route-wide restoration of a synthetic The fail-closed contract is small: // Unique declaration: restore the known synthetic alias.
declared = ["emit_probe"];
providerName = "emit_probe_ide";
expect(clientName).toBe("emit_probe");
// Ambiguous declaration: preserve the provider name.
declared = ["emit_probe", "emit_probe_ide"];
providerName = "emit_probe_ide";
expect(clientName).toBe("emit_probe_ide");The same mapping should apply to Anthropic |
|
Added GitHub Copilot Tests:
|
|
Updated in
Public compatibility references:
Verification:
|
|
Updated with Claude refusal history closure ( |
|
Updated with post-refusal continuation repair ( A completed synthetic Claude refusal is still shown to the client, but its exact generated Verification:
|
8f0a4de to
f705201
Compare
v0.5.45 split and recutThe prior 17-commit head mixed nine independent behaviors. It has been replaced by one reviewable output-index commit.
Displaced commit map:
Each retained behavior needs its own PR and focused tests. Refusal-history deletion and silent model fallback remain blocked on maintainer policy decisions; they are not part of this recut. |
Keep unique funcOutputIndexes and custom-tool Responses events.
Summary
Allocate one monotonically increasing Responses
output_indexfor every reasoning, assistant-message, and function-call item, then reuse that index across added, delta, done, and terminal events.The fix covers both callable conversion paths:
open-sse/translatorcreateResponsesApiTransformStreamimplementationOpenAI Chat choice indexes and tool-call indexes are separate source namespaces. Reusing them directly can assign index
0to reasoning, text, and the first function call in one response, producing an invalid item stream.Scope
This recut contains output-index allocation only. Custom tools, deferred tool search, terminal payloads, cache details, Claude schema normalization, refusal-history repair, and model fallback are separate review surfaces documented in the split comment.
Verification
Tested on pristine
v0.5.45(6fcd2733):git diff --checkpassedFixes #2611.