fix(llm): stabilize anthropic tool result typecheck (#28909)

This commit is contained in:
Aiden Cline 2026-05-22 17:14:40 -05:00 committed by GitHub
parent 5ee0238c4a
commit 14c511e380
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -335,7 +335,9 @@ const lowerToolResultContent = Effect.fn("AnthropicMessages.lowerToolResultConte
// Text / json / error results stay as a string for backward compatibility
// with existing cassettes and provider expectations.
if (part.result.type !== "content") return ProviderShared.toolResultText(part)
return yield* Effect.forEach(part.result.value, lowerToolResultContentItem)
// Preserve the narrowed array element type when compiled through a consumer package.
const content: ReadonlyArray<ToolResultContentPart> = part.result.value
return yield* Effect.forEach(content, lowerToolResultContentItem)
})
const lowerMessages = Effect.fn("AnthropicMessages.lowerMessages")(function* (