Changelog

Ultimi aggiornamenti e miglioramenti

GitHub Sync ripensato `IMPROVED`

  • Rilevamento automatico di file structure + key format dal tree del repo e dal contenuto (`flat` vs `nested`)
  • Card di raccomandazione stile Cloudflare con bandiere e nomi lingua, ancorata alla lingua sorgente
  • Il modal di modifica espone File Structure e Key Format; il salvataggio preserva la struttura esistente

Quattro strutture di file — ora con Astro `NEW`

  • Single file `locales/en.json` · Locale folders `locales/en/common.json` · Namespace folders `faq/en.json` *(nuovo)* · Locale-suffixed `faq.en.json`
  • Rilevamento, lettura e scrittura simmetrica end-to-end, incl. manifest CDN v2

Connessione e re-sync più fluidi `IMPROVED`

  • Pulsante "Sync now" con polling fino al completamento
  • Repo già collegati/orfani vengono riconciliati invece di un 409
  • Schermata "You're all set"; il flusso GitHub Sync salta gli step framework/SDK non necessari

Motore di workflow di traduzione — rafforzato `IMPROVED`

  • Traduzione concorrente per lingua; contratto LLM key-keyed + chunking dual-limit + retry
  • GPT-4.1 Mini per i workflow batch; le traduzioni di massa passano dal workflow
  • Cancel end-to-end; `translateBatch` corretto (girava come no-op, ora fallisce in modo evidente)

Porta il tuo DeepL `NEW`

DeepL ora usa la tua chiave API invece di un account condiviso. Ogni progetto traduce sulla propria quota.

Consistenza read-after-write `IMPROVED`

  • Editor, sync, stato di publish e attivazione CMS leggono freschi
  • Billing colma il divario — il piano a pagamento si riflette subito dopo il Checkout
  • Sicurezza: lo stato di autorizzazione è sempre letto uncached

Cancellazione account self-serve `NEW`

  • Cancellazione confermata via email, pagina dedicata + email di chiusura (anche OAuth)
  • Pulsante Resend + modal di cancellazione rafforzato; FK utente a null

Content CMS — pubblicazione sicura, upload & Trash `IMPROVED`

  • Save-before-publish + gating dirty-state; Trash, upload media, stati per lingua più chiari
  • Campi relazione multivalore; niente più analytics inventate

Affidabilità e sicurezza `IMPROVED`

  • Fix dello stuck-splash al cold-load + boot watchdog; stati error/not-found/empty ridisegnati
  • Partner OAuth: CRUD dei contenuti, minting di API key; Cinese (`zh`) come lingua; niente più stack trace in produzione

Agente AI v3 nativo Mastra

  • Migrazione a Mastra — `handleChatStream` è la route chat canonica; route AI SDK legacy rimossa.
  • Memoria semantica cross-thread — Mastra Memory + pgvector con adapter postgres.js (Path B), embedding a 768 dimensioni, HNSW riattivato.
  • HITL via `useChat` — `@ai-sdk/react` con suspend/resume nativo, niente endpoint snapshot custom.
  • Auto-Apply scritture — gli strumenti di scrittura applicano direttamente; conteggio onesto del successo parziale invece di numeri finti perfetti.
  • `webSearch` (Exa) — ricerca project-aware con quota mensile.
  • 70%+ riduzione contesto — scritture Memory snelle per tool read/workflow.

Workflow Engine su Cloudflare Workers `NEW`

`createPlan` + `startWorkflow` producono una pipeline live e sospendibile con progress SSE direttamente nell'UI chat. Mastra default engine con storage D1; idle timeout CF Workers risolto con SSE heartbeat. Due workflow: `translation-batch` (traduzione bulk con progress per lingua) e `content-creation` (DISCOVERY → plan → write → verify).

Supporto In-App Helpway `NEW`

Preview ancorata in sidebar per l'ultimo annuncio di supporto o conversazione non letta. Helpway è il primo prodotto esterno che usa OAuth partner di Better i18n in produzione.

Rinnovamento Navigazione Sidebar

  • Migrazione da top-navbar a sidebar collassabile (ispirata a ElevenLabs)
  • Sidebar impostazioni context-aware con navigazione last-context
  • Membri e Fatturazione esposti nella sidebar settings org
  • Card uso compatta nel footer sidebar
  • Editor contenuti con layout single-header e breadcrumb

Partner OAuth 2.0 `STABLE`

  • Onboarding MCP OAuth (senza key) per Claude Code e Cursor
  • Registrazione dinamica client RFC 7591 con dedup
  • Endpoint `GET /v1/installations` per discovery dei grant
  • Polish schermata consenso con auto-redirect
  • Revoca grant via `dbDirect` (effetto immediato)

Content CMS Analytics `NEW`

  • Sparkline per-voce in tabella (toggle 7g/30g)
  • TimeRangePicker stile Cloudflare con 10 preset
  • Sidebar analytics con breakdown per paese e referrer
  • Endpoint stats KV-cached su Cloudflare Analytics Engine
  • `publishEntry` rifiuta di pubblicare traduzioni con body vuoto

Telemetria, Affidabilità e Sicurezza

  • Migrazione a PostHog Managed Reverse Proxy + pipeline sourcemap
  • `no-cache` su index.html + recovery `vite: preloadError`
  • Workaround TanStack Router #7120 (`wrapInSuspense: true`)
  • `samlify` >= 2.13.0 (XML injection), `dompurify` >= 3.4.0 (XSS), `next` >= 16.2.6 (8 CVE)
  • CODEOWNERS + baseline sicurezza a livello org

Strumenti MCP per Agenti

  • Rilevamento duplicati semantici — `createKeys` avvisa quando lo stesso testo sorgente esiste in un altro namespace.
  • **Rilevamento chiavi fantasma** — `listKeys` segnala duplicati legacy (`p: true`) che corrompono i file CDN.
  • Contesto traduzione v2 — Recupero RAG per chiave con ricerca di similarità pgvector.
  • `setTranslations` — Scrittura bulk con ~60% meno payload.
  • `cancelSync` + attesa `getSync` — Annulla pubblicazioni in attesa.

Sistema OAuth `BETA`

Flusso OAuth 2.0 stile GitHub Apps per partner.

Pipeline CDN

  • Diff basato su hash — 99% in meno di scritture R2 per pubblicazione.
  • Consegna per namespace — Traduzioni per namespace anziché file unico.
  • Attribuzione autore sorgente — Le chiavi portano l'autore del commit Git.

Piattaforma

  • Applicazione quote unificata con UI fatturazione stile Vercel
  • Suggerimenti contestuali AI drawer
  • Eventi webhook Content CMS
  • Rilevamento collisioni percorsi in `createKeys`
  • Dashboard admin con analytics CDN reali

Editor di traduzione

  • Flusso di traduzione in blocco: Seleziona, approva, rifiuta o traduci più traduzioni contemporaneamente con la selezione a intervalli Shift+click e le operazioni batch.

Content CMS

  • Campi di relazione e modello Users integrato: I modelli di contenuto supportano ora i campi di relazione con rendering appropriato nell'editor e riferimenti agli autori integrati.
  • Chiavi Content API con guida all'integrazione: Sezione Quick Start con esempi cURL, comandi di installazione SDK e snippet di codice dopo la creazione di una chiave API.
  • Migrazione a Cloudflare AI e Content MCP: Traduzioni AI più veloci basate su Cloudflare AI con autorizzazione basata su modelli e endpoint llm.txt.

Dashboard

  • Chat AI interattiva nel Quick Start: Prova l'assistente AI direttamente dal flusso di onboarding senza uscire dalla procedura guidata di configurazione.
  • Ridisegno della navigazione del progetto: Struttura a schede più pulita con Languages unito a Overview e impostazioni riorganizzate con layout a barra laterale.
  • Flusso "Aggiungi lingue" ridisegnato: Sezione delle lingue più popolari, filtro durante la digitazione e raggruppamento delle varianti regionali.

Bug Fixes & Improvements

  • FIXEDPermessi dei membri del team: Gli amministratori non possono più assegnare il ruolo di Proprietario o rimuovere altri amministratori. Il conteggio degli inviti in sospeso ora viene visualizzato correttamente.
  • FIXEDPanoramica sull'utilizzo: I valori di Translation Keys e AI Usage ora recuperano dati reali dall'API.
  • FIXEDCrash dell'editor di contenuti: Corretto l'errore "Expected drag drop context" nelle pagine di dettaglio delle voci.

Content CMS

  • Contenuti per blog, changelog e roadmap: Crea e modifica voci di contenuto con supporto completo alla localizzazione.
  • Editor di testo ricco: Esperienza di scrittura basata su PlateJS con formattazione, blocchi di codice e altro ancora.
  • Traduzioni di contenuti multilingue: Gestisci le traduzioni per ogni voce di contenuto in tutte le lingue del progetto.
  • Controllo dello stato bozza/pubblicato: Controlla quando il contenuto viene pubblicato con la gestione degli stati.
  • Integrazione con Unsplash: Cerca e aggiungi immagini stock gratuite direttamente dall'editor.
  • Salvataggio automatico: Non perdere mai il tuo lavoro grazie al salvataggio automatico.

Traduzioni AI

  • Modalità di approvazione automatica: Completa l'intero processo di traduzione con un solo clic.
  • Suggerimenti di traduzione più veloci: I modelli AI migliorati forniscono traduzioni di qualità superiore.

Dashboard

  • Menu di aiuto: Accesso rapido al supporto e alle risorse.
  • Guida introduttiva: Procedura guidata di configurazione passo-passo con tempo stimato e note per ogni passaggio.
  • Indicatori di avanzamento visivi: Tieni traccia dei passaggi di onboarding completati a colpo d'occhio.
  • Ordinamento delle lingue tramite trascinamento: Disponi le lingue nell'ordine di visualizzazione preferito.
  • Reimpostazione dell'ordine delle lingue: Reimposta rapidamente all'ordine predefinito con l'inglese in cima.

Agente AI

  • Risposte AI ottimizzate: Tutti gli endpoint di lettura ora restituiscono risposte del 40–50% più piccole, riducendo significativamente i costi dei token AI.
  • Output degli strumenti ottimizzato: `getKeyDetails` restituisce un formato più efficiente (riduzione del 55% dei token) con legenda dei campi integrata.
  • Streaming HTTP immediato: La chat AI apre la connessione HTTP istantaneamente, eliminando il percepito "blocco" durante l'inizializzazione.
  • Finestra di contesto AI: Il conteggio dei token ora utilizza l'utilizzo dell'ultimo passaggio invece dei totali cumulativi.
  • UX di approvazione automatica: Flusso di prompt di approvazione automatica più chiaro con tag XML semantici.

Dashboard

  • Tipo di attività nota: Annota le chiavi di traduzione con note tracciate nel feed delle attività.
  • Interruttore del ciclo di fatturazione: Prezzi mensili/annuali con badge risparmio del 20% per la fatturazione annuale.
  • Scomposizione UI degli strumenti: Il monolitico tool.tsx scomposto in 11 file specializzati senza modifiche visive.

Infrastruttura

  • Architettura R2 a doppio bucket: Immagini di bandiere e asset statici migrati in un bucket R2 dedicato (`s3.better-i18n.com`), separato dai file di traduzione.
  • Ottimizzazione delle query di pubblicazione: Query parallelizzate per tempi di risposta più veloci.
  • Attribuzione utente: I job di sincronizzazione ora tracciano quale utente li ha avviati.

Correzioni e Miglioramenti

  • Pubblicazione MCP: Corretto il fallimento quando CDN è abilitato ma non sono stati ancora caricati file.
  • Rinomina con eliminazione definitiva: Corretta la transazione che utilizzava una singola connessione per trovare+rinominare+inserire.
  • Altezza VList: Corretta la discrepanza di altezza per piccoli elenchi di traduzioni (meno di 20 elementi).
  • Invalidazione della cache: Corretta la chiave di invalidazione della cache delle impostazioni dell'organizzazione.

Strumenti MCP

  • Strumenti di pubblicazione MCP: Due nuovi strumenti — `getPendingChanges` per visualizzare in anteprima i deployment e `publish` per distribuire le traduzioni al CDN, tutto dall'IDE.
  • Flusso di lavoro MCP completo: Gli assistenti AI possono ora seguire il ciclo completo: lettura → traduzione → verifica → pubblicazione → conferma.
  • Suggerimenti di pubblicazione in sospeso: Le operazioni di scrittura ora restituiscono suggerimenti che ricordano all'AI di chiamare publish quando le modifiche sono pronte.
  • Documentazione del router MCP: Documentazione completa degli strumenti con categorie e guida al flusso di lavoro consigliato.

CDN e pubblicazione

  • Formato CDN predefinito: Modificato da JSON_FLAT a JSON_NESTED per una migliore compatibilità con le librerie i18n.
  • Fallback CDN predefinito: I nuovi progetti ricevono automaticamente il supporto alla lingua di fallback abilitato.

Dashboard

  • Ricreazione delle chiavi più sicura: Corretta la rinomina con eliminazione definitiva con una singola transazione del database, prevenendo i conflitti.
  • Migliore compattazione della chat: Il comando `/compact` ora mostra il messaggio dell'utente e il contenuto effettivo della sintesi.
  • Ordinamento delle lingue: Le lingue sono ora ordinate per stato: attive → bozze → archiviate.

Correzioni e Miglioramenti

  • Invio automatico del comando slash: Corretto il problema di doppio invio.
  • Pulizia della sintesi: Rimosso lo strumento di sintesi deprecato lato server.

AI e MCP

  • Contesto dei namespace per AI: I modelli AI possono ora allegare contesto ricco (descrizione, team, dominio, prompt AI, tag) durante la creazione o l'aggiornamento delle chiavi.
  • Menzioni delle chiavi più intelligenti: Le chiavi menzionate nella chat AI ora includono il loro contesto di namespace per un targeting AI preciso.
  • Streaming Gemini più veloce: Prompt di sistema ottimizzati per uno streaming significativamente più veloce con i modelli Gemini.

SDK e piattaforma

  • Fallback di localizzazione: Quando si aggiunge una nuova lingua, le chiavi mancanti ereditano automaticamente dalla lingua di fallback.
  • Rilascio open source: Pacchetti, server MCP e landing page ora pubblici su github.com/better-i18n/oss.
  • Namespace relazionali: Le chiavi di traduzione hanno ora una connessione relazionale appropriata ai namespace per una migliore organizzazione.

Dashboard

  • Impostazioni del progetto ridisegnate: Interfaccia delle impostazioni del progetto completamente rinnovata per una migliore usabilità.
  • UI dei filtri migliorata: Esperienza di filtraggio migliorata nella dashboard delle traduzioni.
  • Supporto alla ripubblicazione CDN: L'eliminazione dei file CDN ora reimposta lo stato di pubblicazione, consentendo una ripubblicazione pulita.

Agente AI

  • Risposte AI più fluide: Aggiornato AI SDK alla v6.0.39 con smoothStream per uno streaming delle risposte fluido e naturale.
  • Caching intelligente del contesto: Cache di 30 secondi per le query del contesto del progetto riduce il carico sul database e velocizza le risposte AI.
  • Ragionamento AI più intelligente: Configurazione del ragionamento aggiornata per decisioni di traduzione più accurate.

MCP e strumenti per sviluppatori

  • Schemi degli strumenti MCP migliorati: Formato di input degli strumenti MCP ridisegnato per un'integrazione IDE più intuitiva.
  • Traduzioni MCP istantanee: Le chiavi create tramite MCP vengono ora approvate automaticamente.
  • Menzioni delle chiavi migliorate: Campo namespace aggiunto alle menzioni delle chiavi nella chat AI per una migliore consapevolezza del contesto.

Dashboard

  • Descrizioni delle visualizzazioni salvate: Aggiungi descrizioni e impostazioni di privacy alle visualizzazioni di traduzione salvate.
  • UI della chat più pulita: Design del pulsante di copia semplificato per meno disordine visivo.

Correzioni e Miglioramenti

  • Parsing dei messaggi: Corretto il parsing dei messaggi con rimozione dei console.log di debug.
  • Affidabilità della pubblicazione: Migliorata l'affidabilità del processore batch di pubblicazione.
  • Integrità dei dati: Migliorate le funzioni helper di eliminazione definitiva per una migliore integrità dei dati.

Agente AI

  • Strumento MCP per eliminare le chiavi: Eliminazione definitiva delle chiavi di traduzione direttamente dall'IDE tramite il server MCP.
  • Prestazioni dell'agente AI: Tempi di risposta più veloci e migliore gestione del contesto.
  • Sintesi della chat: Sintesi delle conversazioni migliorata per le sessioni lunghe.
  • Integrazione con Gemini: Migrato alla nuova API thinkingBudget per risposte AI migliori.

Dashboard

  • Modale degli strumenti per sviluppatori: Nuovi DevTools moderni con visualizzatore delle sessioni di chat e ispettore di rete.
  • Impersonazione dell'amministratore: Gli amministratori del team possono ora impersonare gli utenti per il debug.

Correzioni e Miglioramenti

  • Sicurezza RLS: Corretto il bypass di RLS con una gestione appropriata delle transazioni.
  • Policy di eliminazione definitiva: Risolte le policy RLS di eliminazione definitiva che non funzionavano correttamente.
  • Decrittografia delle chiavi API: Corretti i problemi di decrittografia delle chiavi API.