Anthropic API rejects requests with duplicate tool_use IDs across messages.
This can happen when:
1. Session transcripts have multiple assistant messages with the same tool_use ID
2. IDs contain special characters that weren't being sanitized for Anthropic
Changes:
- Add deduplication logic in repairToolUseResultPairing() to detect and rename
duplicate tool_use IDs in assistant messages (e.g., call_1 -> call_1_2)
- Update corresponding toolResult IDs to match the remapped tool_use IDs
- Enable sanitizeToolCallIds for Anthropic provider (was only Google/Mistral)
- Add tests for deduplication scenarios
Fixes error: "messages.X.content.Y: tool_use ids must be unique"