Aintworth
03477166f9
fix(gemini): wrap schema-bearing tool results as opaque text
...
Gemini 3 resolves JSON-Schema $ref/$defs pointers inside a
functionResponse.response payload and rejects unknown references with
HTTP 400 INVALID_ARGUMENT ('referenced name #/$defs/...' does not match
a display_name; see vercel/ai#14369 ).
tool_describe (and any tool whose result is itself a JSON Schema) returns
schema text that previously went back as a structured response, tripping
Gemini's pointer resolution. Detect such results with a $ref-pointer scan
and wrap them as opaque text instead.
Adds regression tests for the wrap path and the unchanged structured path.
2026-08-23 18:27:04 -07:00
..
2026-08-01 21:17:51 -04:00
2026-08-08 18:11:02 -07:00
2026-08-15 00:33:01 -07:00
2026-07-24 11:45:57 -07:00
2026-08-15 13:28:14 -07:00
2026-08-23 02:14:35 -07:00
2026-08-07 10:11:05 -07:00
2026-08-21 15:02:29 -07:00
2026-08-23 18:24:43 -07:00
2026-08-20 12:29:11 -05:00
2026-08-23 02:54:30 -07:00
2026-08-02 10:02:33 -07:00
2026-07-26 23:41:54 -07:00
2026-08-23 18:25:19 -07:00
2026-08-21 15:02:29 -07:00
2026-07-29 11:53:39 -07:00
2026-07-29 11:53:39 -07:00
2026-08-10 10:45:44 -07:00
2026-08-12 19:13:32 -07:00
2026-08-23 17:45:58 -07:00
2026-08-21 17:24:22 +05:30
2026-08-20 03:15:14 +05:30
2026-07-29 15:28:15 -07:00
2026-08-15 03:16:21 -07:00
2026-08-21 21:53:11 +05:30
2026-07-26 18:06:21 -07:00
2026-08-23 18:24:43 -07:00
2026-08-08 23:09:45 +05:30
2026-08-12 18:41:59 -07:00
2026-08-23 13:34:32 +05:30
2026-08-23 18:25:19 -07:00
2026-08-16 06:31:46 -07:00
2026-08-14 21:54:56 -07:00
2026-08-08 12:32:23 -07:00
2026-08-22 04:20:48 +05:30
2026-08-16 22:06:41 -07:00
2026-08-16 22:06:41 -07:00
2026-08-13 13:53:39 +05:30
2026-08-06 03:16:26 +05:30
2026-08-13 09:34:36 -07:00
2026-08-16 22:06:08 -07:00
2026-08-21 21:43:39 +05:30
2026-08-21 15:24:03 -07:00
2026-08-08 05:21:09 -07:00
2026-08-12 11:04:45 -07:00
2026-08-23 18:27:04 -07:00
2026-07-26 20:59:16 -07:00
2026-07-29 15:28:15 -07:00
2026-08-08 14:49:28 -07:00
2026-08-19 16:10:01 -07:00
2026-08-23 17:47:50 -07:00
2026-08-14 02:04:24 +05:30
2026-08-23 18:25:19 -07:00
2026-07-26 12:54:45 -07:00
2026-08-08 05:09:43 -07:00
2026-07-29 11:53:39 -07:00
2026-08-19 22:41:05 -07:00
2026-08-13 23:43:15 +05:30
2026-08-13 23:15:25 +05:30
2026-08-15 01:04:19 -07:00
2026-08-23 18:24:43 -07:00
2026-08-13 23:10:16 +05:30
2026-08-13 23:10:16 +05:30
2026-08-23 17:47:50 -07:00
2026-08-14 03:31:22 +05:30
2026-08-21 17:24:22 +05:30
2026-07-24 17:10:39 -07:00
2026-08-02 15:01:11 -07:00
2026-08-12 16:25:20 -07:00
2026-08-12 18:38:25 -07:00
2026-08-19 22:59:17 -07:00
2026-08-09 15:25:12 +05:30
2026-08-15 11:09:56 +05:30
2026-08-21 12:23:47 +05:30
2026-08-21 14:58:37 -07:00
2026-08-06 22:02:37 -05:00
2026-08-20 23:12:38 -07:00
2026-08-13 23:10:16 +05:30
2026-08-19 08:52:01 -07:00
2026-08-19 08:52:03 -07:00
2026-08-08 23:46:17 -07:00
2026-08-16 01:55:51 -07:00
2026-07-29 10:13:50 -07:00
2026-08-23 17:38:38 -07:00
2026-08-21 13:21:46 +10:00
2026-08-02 16:16:36 -07:00
2026-08-15 23:03:52 -07:00
2026-07-29 12:20:34 -07:00
2026-08-19 19:41:42 -07:00
2026-07-29 15:28:15 -07:00
2026-08-17 14:06:16 -07:00
2026-08-08 15:10:24 +05:30
2026-08-23 18:25:19 -07:00
2026-08-16 22:07:43 -07:00
2026-08-19 22:59:17 -07:00
2026-08-15 00:33:01 -07:00
2026-08-16 22:10:02 -07:00
2026-08-23 18:24:43 -07:00
2026-08-23 18:25:19 -07:00
2026-08-20 00:16:22 -07:00
2026-08-14 21:41:26 -07:00
2026-08-12 19:01:30 -07:00
2026-08-12 19:13:32 -07:00
2026-08-12 19:13:32 -07:00
2026-08-23 18:25:19 -07:00
2026-08-23 13:34:32 +05:30
2026-08-08 11:24:45 -07:00
2026-07-26 17:47:51 -07:00
2026-08-23 02:14:35 -07:00
2026-08-16 00:14:58 -07:00
2026-08-12 01:15:25 -07:00
2026-08-22 23:25:43 -07:00
2026-08-08 14:49:28 -07:00
2026-08-19 16:10:01 -07:00
2026-08-19 15:15:27 -07:00
2026-08-20 00:17:25 -07:00