Duplicate Bot: Switch to structured tool output for Claude (#59432)

Rather than continuing to try to persuade Claude to pretty please only
output json, or to parse json out of Claude's prose, switch to forced
tool calls with a json schema and hope this works better.

And bump the version of the bot to 4 since the model upgrade which was
shipped earlier today is evidently behaving differently enough.

Release Notes:

- N/A
This commit is contained in:
Lena authored and GitHub committed 2026-06-16 15:17:51 +00:00
1 parent 02b62a3d1f
commit e5966915e4
2 files changed
+115 -70

No files matched your search

@@ -54,6 +54,7 @@ TRANSIENT_HTTP_STATUSES = {429, 500, 502, 503, 504}
# keep track of (e.g. the prompt gets a rewrite or the model gets swapped).
# Newest first, please. The datetime is for the deployment time (merge to main).
BOT_VERSION_TIMELINE = [
("v4", datetime(2026, 6, 16, 12, 43, tzinfo=timezone.utc)),
("v3", datetime(2026, 5, 25, 14, 30, tzinfo=timezone.utc)),
("v2", datetime(2026, 2, 26, 14, 9, tzinfo=timezone.utc)),
("v1", datetime(2026, 2, 18, tzinfo=timezone.utc)),