tpmjs/apps
Ajax Davis 536b727fc6 fix: use full inputSchema for tool definitions instead of flattened parameters
The issue was that tools with complex nested parameters (like arrays of objects)
were losing their structure when converted to Zod schemas. The LLM would then
pass stringified JSON instead of actual arrays.

- Import jsonSchema from AI SDK
- Check if tool.inputSchema exists (full JSON Schema from executor)
- Use jsonSchema() wrapper to preserve nested array/object structures
- Fall back to legacy tpmjsParamsToZodSchema only if inputSchema is missing

This fixes the changelog tool and similar tools with complex parameter types.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-11 02:34:37 +10:00
..
playground fix: add eslint-disable comments for set-state-in-effect rule in playground 2026-01-09 23:08:26 +10:00
railway-executor chore: update dependencies with compatibility fixes 2026-01-09 22:49:41 +10:00
tutorial fix: enable Biome CSS tailwindDirectives for @apply parsing 2026-01-09 23:35:53 +10:00
web fix: use full inputSchema for tool definitions instead of flattened parameters 2026-01-11 02:34:37 +10:00