* fix: ensure type:object in sanitized tool schemas for Antigravity API The sanitizeSchemaForGoogle function strips unsupported JSON Schema keywords like anyOf, but this can leave schemas with 'properties' and 'required' fields without a 'type' field. Both Google's Gemini API and Anthropic via Antigravity require 'type: object' when these fields exist. This fix adds a post-sanitization check that ensures type is set to 'object' when properties or required fields are present. Fixes errors like: - Gemini: 'parameters.properties: only allowed for OBJECT type' - Anthropic: 'tools.6.custom.input_schema.type: Field required' * fix: regenerate pi-ai patch with proper pnpm format The patch now correctly applies via pnpm patch-commit, fixing: - Thinking blocks: skip for Gemini, send with signature for Claude - Schema sanitization: ensure type:object after removing anyOf - Remove strict:null for LM Studio/Antigravity compatibility Tested with all Antigravity models (Gemini and Claude). * fix: strip thinking tags from block streaming output to prevent Gemini tag leakage
5.6 KiB
5.6 KiB