16 Commits

Author SHA1 Message Date
Noe
3177d0b8e3 chore: snapshot local changes before logging cleanup merge 2026-02-20 17:26:46 +00:00
Noe
19e65a5b49 pr fixes 2026-02-18 21:34:11 +00:00
Noe
2f273fd07d docs: update MODEL-VARIANTS and TROUBLESHOOTING for model naming conventions; refine test models 2026-02-18 20:45:19 +00:00
Noe
24d2645eca hive: merge 05-update-scripts-e2e-and-cross-model (squashed) 2026-02-18 13:10:02 +00:00
Noe
ca3e8d8cf6 Add Claude Sonnet 4.6 model + deprecated 4.5 fallback resolver
- Phase 1: Add claude-sonnet-4-6 model definition, alias, docs, and test entries
- Task 01: Add MODEL_FALLBACKS map for 4.5→4.6 redirects with deprecation warnings
- Task 01: Add DEPRECATED_MODELS set (10 entries) covering all legacy alias keys
- Task 01: Wire logToast deprecation warning in resolveModelWithTier
- Task 01: Update model-resolver tests (44/44 pass) with 4.6 fixtures and fallback tests
2026-02-18 13:00:07 +00:00
Noe
9fd7c40533 fix: sync JSON schema with Zod schema, add missing properties (#422)
The JSON schema (with additionalProperties: false) was missing 8 properties
present in the Zod config schema, causing IDE validation errors for valid
config keys: scheduling_mode, max_cache_first_wait_seconds,
failure_ttl_seconds, toast_scope, request_jitter_max_ms,
soft_quota_threshold_percent, quota_refresh_interval_minutes,
soft_quota_cache_ttl_minutes.

Also adds descriptions for quota_fallback, cli_first, and all new properties
to the build script so they survive future regenerations.
2026-02-11 11:59:02 +00:00
Noe
1a8284cabf feat: add support for Claude Opus 4.6 model (not yet available in antigravity) 2026-02-05 20:37:48 +00:00
tctinh
814709c8e6 fix: v1.3.1 bugfixes - Zod v4 upgrade, keep_thinking, tool params, auth headers, quiet_mode
Changes:
- Upgraded to Zod v4 and adjusted schema generation for compatibility
- Fixed keep_thinking=true failing without debug mode (signature validation)
- Fixed tool calls failing for tools with no parameters (default args to {})
- Aligned auth headers with official Gemini CLI to reduce account issues
- Fixed quiet_mode not suppressing all toast notifications
2026-01-19 11:13:02 +07:00
tctinh
902b5bf91a fix: correct output redirection in E2E test scripts and update model testing options 2026-01-01 09:55:28 +07:00
tctinh
219069a2a3 feat: add legacy Gemini 3 model support for Antigravity quota and implement E2E test suite 2026-01-01 09:25:15 +07:00
tctinh
2455a7d4a3 fix: cross-model signature sanitization for Gemini-Claude session switching
Fixes 'Invalid signature in thinking block' error when switching models mid-session.

Root cause: Gemini stores thoughtSignature in metadata.google on tool call parts,
but existing strippers only checked top-level signatures. When switching to Claude
with a tool call, the foreign signature caused validation errors.

Changes:
- Add cross-model-sanitizer module for bi-directional sanitization (Gemini<->Claude)
- Integrate sanitizer into request pipeline for Claude models
- Add 42 new tests (28 unit + 14 integration)
- Add E2E test scripts for 5-model verification

Tested with: Gemini, Claude (Anthropic), Claude (Google), OpenAI, all passing.
2025-12-30 11:15:38 +07:00
tctinh
802dfe1fdb Refactor rate limit handling and improve error responses
- Deleted the RATE_LIMIT_ROUTING_ANALYSIS.md document as it is no longer needed.
- Enhanced the regression test to provide detailed failure information, including the first failure's stderr output.
- Updated the plugin to handle 400 errors ("Prompt too long") with a synthetic response instead of returning a session-locking error.
- Introduced createSyntheticErrorResponse function to generate a synthetic SSE response for error messages, allowing continued session usage.
- Added tests for createSyntheticErrorResponse to ensure correct behavior and structure of the synthetic SSE events.
2025-12-28 18:28:56 +07:00
tctinh
457b3ac12b fix: improve rate limit handling and add prompt-too-long toast
- Add 2s deduplication window to prevent rate limit counter inflation from concurrent 429s
- Separate cooldown system from rate limits for non-429 errors (auth failures, 5xx)
- Add quota_fallback config option for automatic quota switching on rate limit
- Add toast notification for 400 'Prompt is too long' errors guiding users to /compact
- Add 5 new cooldown unit tests
- Enhance regression test suite with concurrent test infrastructure
- Add comprehensive rate limit analysis documentation
2025-12-28 16:09:52 +07:00
tctinh
7f069c8a96 Merge remote-tracking branch 'origin/dev' into feature/gemini-cli-routing 2025-12-28 00:36:30 +07:00
tctinh
16f4bb07a1 feat: add E2E testing scripts and simplify Gemini Flash model config
- Add test-models.ts for validating all supported model endpoints
- Add test-regression.ts for multi-turn regression testing (Issue #50)
- Consolidate Gemini 3 Flash variants (low/medium/high) into single model
- Fix schema structure by flattening nested signature_cache properties
- Extract streaming transformer utilities to dedicated module
2025-12-28 00:04:57 +07:00
tctinh
e4cb087ee9 refactor: remove medium tier models and update model resolution logic 2025-12-26 17:49:43 +07:00