Changelog
- b3d292a Merge branch 'main' into plus
- f7bfa8a Merge branch 'upstream-main'
- bbb55a8 Merge pull request router-for-me#1170 from BianBianY/main
- 9e5b1d2 Merge pull request router-for-me#1276 from router-for-me/thinking
- 189a066 Merge pull request router-for-me#1296 from router-for-me/log
- da0bbf2 Merge pull request router-for-me#1298 from sususu98/fix/restore-usageMetadata-in-gemini-translator
- f0ac771 Merge pull request router-for-me#1300 from sususu98/feat/log-api-response-timestamp
- 3631fab Merge pull request #153 from router-for-me/plus
- a7dae6a Merge remote-tracking branch 'origin/dev' into dev
- c3b6f39 chore(git): stop ignoring .idea and data directories
- d7d54fa feat(ci): add cleanup step for temporary Docker tags in workflow
- 3164932 feat(ci): add multi-arch Docker builds and manifest creation to workflow
- 4eb1e60 feat(handlers): add test to verify no retries after partial stream response
- c8c2732 feat(thinking): enable thinking toggle for qwen3 and deepseek models Fix router-for-me#1245
- c8620d1 feat: optimization enable/disable auth files
- 8510fc3 fix(api): update amp module only on config changes
- a709e5a fix(config): ensure empty mapping persists for
oauth-model-aliasdeletions router-for-me#1305 - d0bada7 fix(config): prune oauth-model-alias when preserving config
- c41ce77 fix(logging): add API response timestamp and fix request timestamp timing
- 295f34d fix(logging): capture streaming TTFB on first chunk and make timestamps required
- 9dc0e6d fix(translator): restore usageMetadata in Gemini responses from Antigravity
- e93e05a refactor: consolidate channel send logic with context-safe handlers