Skip to content

Commit 3cb39a6

Browse files
committed
transcript-policy: don't preserve thinking signatures for kimi-coding (#39798)
1 parent eb0758e commit 3cb39a6

File tree

2 files changed

+11
-1
lines changed

2 files changed

+11
-1
lines changed

src/agents/transcript-policy.test.ts

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -122,6 +122,15 @@ describe("resolveTranscriptPolicy", () => {
122122
expect(policy.preserveSignatures).toBe(false);
123123
});
124124

125+
it("does not preserve signatures for kimi-coding provider (#39798)", () => {
126+
const policy = resolveTranscriptPolicy({
127+
provider: "kimi-coding",
128+
modelId: "k2p5",
129+
modelApi: "anthropic-messages",
130+
});
131+
expect(policy.preserveSignatures).toBe(false);
132+
});
133+
125134
it("enables turn-ordering and assistant-merge for strict OpenAI-compatible providers (#38962)", () => {
126135
const policy = resolveTranscriptPolicy({
127136
provider: "vllm",

src/agents/transcript-policy.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,8 @@ export function resolveTranscriptPolicy(params: {
123123
(!isOpenAi && sanitizeToolCallIds) || requiresOpenAiCompatibleToolIdSanitization,
124124
toolCallIdMode,
125125
repairToolUseResultPairing,
126-
preserveSignatures: isAnthropic,
126+
// kimi-coding uses anthropic-messages API but cannot handle re-sent thinkingSignature blobs (#39798)
127+
preserveSignatures: isAnthropic && provider !== "kimi-coding",
127128
sanitizeThoughtSignatures: isOpenAi ? undefined : sanitizeThoughtSignatures,
128129
sanitizeThinkingSignatures: false,
129130
dropThinkingBlocks,

0 commit comments

Comments
 (0)