2.2.0
GitHub Sync repensé, moteur de workflows renforcé et suppression de compte self-serve
GitHub Sync repensé `IMPROVED`
- Autodétection de la file structure + key format depuis l'arbre du repo et le contenu (`flat` vs `nested`)
- Carte de recommandation façon Cloudflare avec drapeaux et noms de langue, ancrée sur la langue source
- La modale d'édition expose File Structure et Key Format ; la sauvegarde préserve la structure existante
Quatre structures de fichiers — désormais avec Astro `NEW`
- Single file `locales/en.json` · Locale folders `locales/en/common.json` · Namespace folders `faq/en.json` *(nouveau)* · Locale-suffixed `faq.en.json`
- Détection, lecture et écriture symétrique end-to-end, y compris le manifest CDN v2
Connexion et re-sync plus fluides `IMPROVED`
- Bouton "Sync now" avec polling jusqu'à la fin
- Les repos déjà liés/orphelins sont réconciliés au lieu d'un 409
- Écran "You're all set" ; le flux GitHub Sync saute les étapes framework/SDK inutiles
Moteur de workflows de traduction — renforcé `IMPROVED`
- Traduction concurrente par langue ; contrat LLM key-keyed + chunking dual-limit + retry
- GPT-4.1 Mini pour les workflows batch ; les traductions en masse passent par le workflow
- Cancel end-to-end ; `translateBatch` corrigé (tournait en no-op, échoue maintenant clairement)
Apportez votre propre DeepL `NEW`
DeepL utilise désormais votre propre clé API au lieu d'un compte partagé. Chaque projet traduit sur son propre quota.
Cohérence read-after-write `IMPROVED`
- Éditeur, sync, statut de publish et activation du CMS lisent à jour
- Billing comble l'écart — le plan payant se reflète instantanément après Checkout
- **Sécurité**: l'état d'autorisation est toujours lu uncached
Suppression de compte self-serve `NEW`
- Suppression confirmée par email, page dédiée + email de clôture (aussi OAuth)
- Bouton Resend + modale de suppression renforcée ; FKs utilisateur à null
Content CMS — publication sûre, uploads & Trash `IMPROVED`
- Save-before-publish + gating dirty-state ; Trash, uploads média, états par langue plus clairs
- Champs de relation multivalués ; plus d'analytics inventées
Fiabilité et sécurité `IMPROVED`
- Fix du stuck-splash au cold-load + boot watchdog ; états error/not-found/empty redessinés
- Partner OAuth: CRUD de contenu, minting de clés API ; Chinois (`zh`) comme langue ; plus de stack traces en production