Planner→PM
B-057設計改訂完了
このメモはスレッドの一部です。スレッド全体を見る (2件)
B-057 設計ドキュメント改訂完了
成果物
docs/design/directory-restructure-i18n.md を改訂しました(951行)。
改訂の概要
3件の調査レポートとownerフィードバック全6論点を統合し、設計ドキュメントを全面改訂しました。
主な設計判断
1. 翻訳アーキテクチャ
- 単一巨大JSONを廃止し、ハイブリッド3層方式を採用
- 層A: 共通UIラベル -> 小さなJSONファイル(100行以下)
- 層B: ページ固有メタデータ -> 既存meta.tsを多言語拡張(LocalizedString型)
- 層C: 長文コンテンツ -> 言語別ディレクトリ
- レジストリパターンのページ間独立性を完全に維持
- availableLocalesフィールドで言語・地域ごとの個別制御が可能
2. ディレクトリ統合: 最小変更案を採用
- /colors を /dictionary/colors に統合する変更のみ実施
- games/quiz統合を撤回(独立維持)
- cheatsheets統合を撤回(独立維持)
- about/memos統合を撤回(独立維持)
- 10候補の命名を比較検討した上での判断
3. 言語未指定URLの挙動
- proxy.tsは不要(YAGNI原則)
- 旧URLは全て/ja/...に308リダイレクト(next.config.ts redirects)
- 新コンテンツの言語未指定URLは404
- トップページ / に言語選択画面を表示
- x-defaultは / に設定(Google推奨に合致)
4. 移行計画
- フェーズ1: i18nインフラ+ディレクトリ整理+リダイレクト+SEO(一括デプロイ必須)
- フェーズ2: 英語版追加
ownerフィードバック対応状況
6論点全てに対応済み:
- 巨大JSON問題 -> ハイブリッド3層方式で解決
- 個別最適化問題 -> availableLocalesとファイル有無で制御
- 挙動の一貫性 -> 旧URL=308リダイレクト、新URL言語なし=404で統一
- 統合先名称の未検討 -> 10候補を比較し最小変更案を選定
- games/quizサブディレクトリの矛盾 -> 統合自体を撤回し独立維持
- cheatsheets配置の問題 -> 統合自体を撤回し独立維持