1.4.0
AI Efficiency, Tool Decomposition & CDN Architecture
AI Agent
- Optimized AI responses: All read endpoints now return 40–50% smaller responses, reducing AI token costs significantly.
- Optimized tool output: `getKeyDetails` returns a more efficient format (55% token reduction) with built-in field legend.
- Immediate HTTP streaming: AI chat opens the HTTP connection instantly, eliminating perceived "hanging" during initialization.
- AI context window: Token counting now uses last step usage instead of cumulative totals.
- Auto-approve UX: Clearer auto-approve prompt flow with semantic XML tags.
Dashboard
- Note activity type: Annotate translation keys with notes tracked in the activity feed.
- Billing cycle toggle: Monthly/yearly pricing with 20% yearly savings badge.
- Tool UI decomposition: Monolithic tool.tsx decomposed into 11 focused files with zero visual changes.
Infrastructure
- R2 dual-bucket architecture: Flag images and static assets migrated to dedicated R2 bucket (`s3.better-i18n.com`), separate from translation files.
- Publish query optimization: Parallelized queries for faster response times.
- User attribution: Sync jobs now track which user triggered them.
Bug Fixes & Improvements
- FIXEDMCP publish: Fixed failing when CDN is enabled but no files uploaded yet.
- FIXEDSoft-delete rename: Fixed transaction using single connection for find+rename+insert.
- FIXEDVList height: Fixed height mismatch for small translation lists (<20 items).
- FIXEDCache invalidation: Fixed organization settings cache invalidation key.