2.2.0

GitHub Sync を再構築、堅牢化されたワークフローエンジン、セルフサーブのアカウント削除

GitHub Sync を再構築 `IMPROVED`

  • リポジトリツリーとファイル内容から file structure と key format を自動検出(`flat` と `nested` の判別)
  • ソース言語に固定された、フラグと言語名付きの Cloudflare スタイル推奨カード
  • 編集モーダルが File Structure と Key Format を公開。保存は既存構造を保持

4 つのファイル構造 — Astro 対応 `NEW`

  • Single file `locales/en.json` · Locale folders `locales/en/common.json` · Namespace folders `faq/en.json` *(新規)* · Locale-suffixed `faq.en.json`
  • 検出・読み取り・対称的な書き込みパスを end-to-end で接続。v2 CDN マニフェスト含む

接続と再同期がスムーズに `IMPROVED`

  • 完了までポーリングする "Sync now" ボタン
  • 既存/孤立リポジトリは 409 ではなく reconcile
  • "You're all set" 画面。GitHub Sync フローは不要な framework/SDK ステップをスキップ

翻訳ワークフローエンジン — 本番堅牢化 `IMPROVED`

  • 言語ごとの並列翻訳。key-keyed LLM 契約 + dual-limit チャンキング + リトライ
  • バッチワークフローに GPT-4.1 Mini。一括翻訳はワークフロー経由
  • Cancel が end-to-end。`translateBatch` 修正(no-op だったが実行され、死んだプロバイダーで明示的に失敗)

自分の DeepL を使う `NEW`

DeepL は共有アカウントではなく自分の API キーを使用。各プロジェクトは自分のクォータで翻訳。

read-after-write 一貫性 `IMPROVED`

  • エディタ、sync、publish ステータス、CMS 有効化が最新を読む
  • Billing がギャップを橋渡し — Checkout 後に有料プランが即時反映
  • セキュリティ: 認可ステートは常に uncached で読み取り

セルフサーブのアカウント削除 `NEW`

  • メール確認による削除。専用確認ページ + クローズメール(OAuth も)
  • 確認待ち状態に Resend ボタン + 強化された削除モーダル。ユーザー FK を null に

Content CMS — 安全な公開、アップロード & Trash `IMPROVED`

  • Save-before-publish + dirty-state ゲーティング。Trash、メディアアップロード、言語ごとの状態が明確に
  • 多値リレーションフィールド。データ無しの偽アナリティクスを廃止

信頼性とセキュリティ `IMPROVED`

  • スタックスプラッシュのコールドロード修正 + ブートウォッチドッグ。error/not-found/empty 状態を再設計
  • パートナー OAuth: コンテンツ CRUD、API キー発行。中国語 (`zh`) を言語追加。本番でスタックトレースを漏らさない