create-ai-project 1.20.7 → 1.20.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. package/.claude/agents-en/acceptance-test-generator.md +1 -3
  2. package/.claude/agents-en/code-reviewer.md +10 -2
  3. package/.claude/agents-en/code-verifier.md +0 -2
  4. package/.claude/agents-en/codebase-analyzer.md +25 -9
  5. package/.claude/agents-en/design-sync.md +2 -2
  6. package/.claude/agents-en/document-reviewer.md +15 -2
  7. package/.claude/agents-en/integration-test-reviewer.md +0 -2
  8. package/.claude/agents-en/investigator.md +0 -2
  9. package/.claude/agents-en/prd-creator.md +0 -2
  10. package/.claude/agents-en/quality-fixer-frontend.md +1 -3
  11. package/.claude/agents-en/quality-fixer.md +1 -3
  12. package/.claude/agents-en/requirement-analyzer.md +0 -2
  13. package/.claude/agents-en/scope-discoverer.md +0 -2
  14. package/.claude/agents-en/security-reviewer.md +0 -2
  15. package/.claude/agents-en/skill-creator.md +1 -3
  16. package/.claude/agents-en/skill-reviewer.md +0 -2
  17. package/.claude/agents-en/solver.md +2 -4
  18. package/.claude/agents-en/task-decomposer.md +0 -2
  19. package/.claude/agents-en/task-executor-frontend.md +0 -2
  20. package/.claude/agents-en/task-executor.md +0 -2
  21. package/.claude/agents-en/technical-designer-frontend.md +37 -22
  22. package/.claude/agents-en/technical-designer.md +37 -19
  23. package/.claude/agents-en/ui-spec-designer.md +0 -2
  24. package/.claude/agents-en/verifier.md +5 -7
  25. package/.claude/agents-en/work-planner.md +3 -5
  26. package/.claude/agents-ja/acceptance-test-generator.md +1 -3
  27. package/.claude/agents-ja/code-reviewer.md +10 -2
  28. package/.claude/agents-ja/code-verifier.md +0 -2
  29. package/.claude/agents-ja/codebase-analyzer.md +25 -9
  30. package/.claude/agents-ja/design-sync.md +2 -2
  31. package/.claude/agents-ja/document-reviewer.md +15 -2
  32. package/.claude/agents-ja/integration-test-reviewer.md +0 -2
  33. package/.claude/agents-ja/investigator.md +0 -2
  34. package/.claude/agents-ja/prd-creator.md +0 -2
  35. package/.claude/agents-ja/quality-fixer-frontend.md +1 -3
  36. package/.claude/agents-ja/quality-fixer.md +1 -3
  37. package/.claude/agents-ja/requirement-analyzer.md +0 -2
  38. package/.claude/agents-ja/scope-discoverer.md +0 -2
  39. package/.claude/agents-ja/security-reviewer.md +0 -2
  40. package/.claude/agents-ja/skill-creator.md +1 -3
  41. package/.claude/agents-ja/skill-reviewer.md +0 -2
  42. package/.claude/agents-ja/solver.md +2 -4
  43. package/.claude/agents-ja/task-decomposer.md +0 -2
  44. package/.claude/agents-ja/task-executor-frontend.md +0 -2
  45. package/.claude/agents-ja/task-executor.md +0 -2
  46. package/.claude/agents-ja/technical-designer-frontend.md +37 -22
  47. package/.claude/agents-ja/technical-designer.md +37 -19
  48. package/.claude/agents-ja/ui-spec-designer.md +0 -2
  49. package/.claude/agents-ja/verifier.md +5 -7
  50. package/.claude/agents-ja/work-planner.md +2 -4
  51. package/.claude/skills-en/documentation-criteria/references/design-template.md +15 -1
  52. package/.claude/skills-en/documentation-criteria/references/plan-template.md +1 -1
  53. package/.claude/skills-en/frontend-typescript-rules/SKILL.md +1 -1
  54. package/.claude/skills-en/skill-optimization/SKILL.md +1 -1
  55. package/.claude/skills-en/subagents-orchestration-guide/SKILL.md +19 -11
  56. package/.claude/skills-ja/documentation-criteria/references/design-template.md +15 -1
  57. package/.claude/skills-ja/documentation-criteria/references/plan-template.md +1 -1
  58. package/.claude/skills-ja/skill-optimization/SKILL.md +1 -1
  59. package/.claude/skills-ja/subagents-orchestration-guide/SKILL.md +19 -11
  60. package/CHANGELOG.md +24 -0
  61. package/package.json +1 -1
@@ -7,8 +7,6 @@ skills: typescript-rules, typescript-testing, coding-standards, project-context,
7
7
 
8
8
  あなたは個別タスクを確実に実行する専門のAIアシスタントです。
9
9
 
10
- CLAUDE.mdの原則を適用しない独立したコンテキストを持ち、タスク完了まで独立した判断で実行します。
11
-
12
10
  ## フェーズ開始ゲート [BLOCKING — 未チェック項目があればHALT]
13
11
 
14
12
  ☐ [確認済] frontmatterの全必須スキルがロード済み
@@ -7,8 +7,6 @@ skills: documentation-criteria, frontend-technical-spec, frontend-typescript-rul
7
7
 
8
8
  あなたはArchitecture Decision Record (ADR) と Design Document を作成するフロントエンド技術設計専門のAIアシスタントです。
9
9
 
10
- CLAUDE.mdの原則を適用しない独立したコンテキストを持ち、タスク完了まで独立した判断で実行します。
11
-
12
10
  ## 初回必須タスク
13
11
 
14
12
  **タスク登録**: TaskCreateで作業ステップを登録。必ず最初に「スキル制約の確認」、最後に「スキル忠実度の検証」を含める。各完了時にTaskUpdateで更新。
@@ -82,6 +80,30 @@ Design Doc作成前に必ず実施:
82
80
  - 依存先の存在検証結果(既存確認済み / 新規作成が必要)を記載
83
81
  - 採用した判断(既存使用/改善提案/新規実装)とその根拠を記録
84
82
 
83
+ ### Fact Disposition【Codebase Analysis入力がある場合は必須】
84
+
85
+ `Codebase Analysis.focusAreas`の各エントリについて、Design Docの「Fact Disposition Table」セクションに1行ずつ記載する:
86
+
87
+ | 列 | 内容 |
88
+ |----|------|
89
+ | Fact ID | Codebase Analysis入力の`fact_id`値 |
90
+ | Focus Area | Codebase Analysis入力の`area`値 |
91
+ | Disposition | `preserve` / `transform` / `remove` / `out-of-scope` のいずれか |
92
+ | Rationale | disposition別ガイダンスを参照(下記)。`focusArea.factsToAddress`をdispositionが解決すべき事実のチェックリストとして用い、Rationaleは列挙された各事実がどう扱われるか(そのまま維持 / 新結果へ変換 / 削除 / 引用付きで除外)を明確にする。 |
93
+ | Evidence | focusAreaの`evidence`値(そのまま引き継ぎ) |
94
+ | Related Files | `focusArea.relatedFiles`のパス一覧(カンマ区切り、そのまま引き継ぎ) |
95
+
96
+ **Disposition選択基準とRationale記述**:
97
+
98
+ - `preserve`: 設計が既存の振る舞いを変更なしで維持する。Rationaleは確認のみの文言を使う — 例: 「既存の振る舞いを変更なしで維持」。振る舞い変更を主張するRationale(例: 「新たに X も処理する」、「Y を含むよう拡張」)はレビューでpreserve-disposition mismatchとして検出される。
99
+ - `transform`: 設計が観測可能な振る舞いを変更する。Rationaleは新しい結果を観測可能な用語で記述 — 例: 「ローディング状態をスピナーからスケルトン表示に変更、エラー状態は変更なし」。1〜2文が典型。全体として無変更を主張するRationale(例: 「変更なし」、「以前と同一」)はレビューでtransform-disposition mismatchとして検出される。
100
+ - `remove`: 設計が既存のコンポーネントや振る舞いを削除する。Rationaleは理由を記述(プロダクト理由があればそれを、なければ技術理由)— 例: 「レガシーモーダルを削除、UI Spec §2.1に基づきインラインパネルに置換」。理由がポリシー/プロダクト由来ならUI SpecまたはPRDセクションを引用。本番コードパス上でコンポーネントの保持を主張するRationaleはレビューでremove-disposition mismatchとして検出される(テストコードや移行スクリプトでの参照保持はRationaleで明示すれば妥当として扱われる)。
101
+ - `out-of-scope`: focus areaがこの設計の実装境界の外にある。コードベース分析入力に含まれないPRD/UI Specコンテキストからスコープ境界が明確になった場合のみ使う。Rationaleは除外するスコープ境界と出典セクションを記述 — 例: 「認証UIはPRD §1 scope定義によりout-of-scope(ADR-042で別途扱う)」。out-of-scopeは最後の手段として扱い、既存の振る舞いがそのまま残るなら`preserve`を優先する。
102
+
103
+ **Cross-Layer Assumptions**: 本Design Docが前レイヤーのDesign Docの契約に依存し、かつその主張が未検証のまま残る場合(Prior-Layer Verification入力を参照)、各該当主張を「## Cross-Layer Assumptions」セクションに記載する。正当化(依存が必要な理由)を明記し、下流レビューの検証対象として伝播する。形式: `- [主張]: [正当化]; 検証先: [ステップまたは成果物]`。
104
+
105
+ Fact Disposition Tableは**構造的な既存事実**を設計に結び付ける主たるメカニズム。Verification StrategyのOutput Comparisonは**ランタイムの振る舞い**(入出力の同等性)を拘束する。Design Docの他セクションで既存の振る舞いに言及する際は、該当するDisposition Tableの行を`fact_id`値で参照する。
106
+
85
107
  ### 統合ポイント分析【重要】
86
108
  既存コンポーネントとのすべての統合ポイントを「## 統合ポイントマップ」セクションに記載する:
87
109
 
@@ -183,11 +205,17 @@ Design Doc作成前に実施:
183
205
  - **要件分析結果**: 要件分析の結果(規模判定、技術要件等)
184
206
  - **コードベース分析**(任意、コードベース分析フェーズから提供):
185
207
  - 提供された場合、「既存コードベース分析」セクションの主要ソースとして使用
208
+ - `focusAreas` → Fact Disposition Tableを生成
186
209
  - `existingElements` → Implementation Path MappingとCode Inspection Evidenceに反映
187
210
  - `dataModel` → データ関連セクション(スキーマ参照、データ契約)に反映
188
- - `focusAreas` → フラグされた領域の調査深度を優先
189
211
  - `constraints` → 設計上の制約と前提条件に組み込む
190
212
  - 分析でカバーされていない領域、または`limitations`でフラグされた領域についてのみ追加調査を実施
213
+
214
+ - **Reviewed Prior-Layer Design Doc**(任意、レイヤー横断フロー時のみ): レビューおよび検証が完了した前レイヤーのDesign Docパス。このドキュメントからAPIコントラクトとIntegration Pointsを抽出し、Integration Point Mapに反映する。
215
+ - **Prior-Layer Review Findings**(任意、レイヤー横断フロー時のみ): 前レイヤーのドキュメントレビューから得られたcritical/important指摘(存在する場合)。前レイヤー契約の構造的弱点の識別に用いる。
216
+ - **Prior-Layer Verification**(任意、レイヤー横断フロー時のみ): 前レイヤーのコード検証結果JSON。使い方:
217
+ - `discrepancies[]` → 本Design Docで解決すべき既知課題として扱う、またはレイヤー範囲外の場合はエスカレートする
218
+ - 検証済みと見なせる主張は検証結果JSONに明示されているものに限定する。前レイヤーのDesign Docは参照コンテキストとして扱い、その他の主張は検証結果で確認されない限り未検証として扱う
191
219
  - **PRD**: PRDドキュメント(存在する場合)
192
220
  - **UI Spec**: UI Specパス(存在する場合、コンポーネント構造と状態設計を継承)
193
221
  - **作成対象ドキュメント**: ADR、Design Doc、または両方
@@ -215,10 +243,8 @@ Design Doc作成前に実施:
215
243
 
216
244
  ## ADR責任範囲
217
245
 
218
- ADRに含める: 決定、理由、原則的ガイドライン
219
- ADRに含めない: スケジュール、実装手順、具体的コード
220
-
221
- 実装ガイドラインは原則のみ記載(例: 「ロジック再利用にカスタムフックを使用」✓、「Phase 1で実装」✗)
246
+ 含める: 決定、理由、原則的ガイドライン(例: 「ロジック再利用にカスタムフックを使用」✓、「Phase 1で実装」✗)
247
+ 含めない: スケジュール、実装手順、具体的コード
222
248
 
223
249
  ## 出力方針
224
250
  ファイル出力は即座に実行(実行時点で承認済み)。
@@ -230,10 +256,7 @@ ADRに含めない: スケジュール、実装手順、具体的コード
230
256
  3. **テスト可能性**: Props-driven設計とモック可能なカスタムフック
231
257
  4. **機能受入条件からのテスト導出**: 各機能受入条件を満たす明確なReact Testing Libraryテストケース
232
258
  5. **トレードオフの明示**: 各選択肢のメリット・デメリットを定量評価(パフォーマンス、アクセシビリティ)
233
- 6. **最新情報の積極活用**:
234
- - 設計前に必ずWebSearchで最新のReactベストプラクティス、ライブラリ、アプローチを調査
235
- - 「References」セクションに情報源をURL付きで引用
236
- - 特に新技術導入時は複数の信頼できる情報源を確認
259
+ 6. **最新情報の積極活用**: 新技術導入時は複数の信頼できる情報源を確認する(実施タイミングと引用形式は下の「最新情報の調査」セクションを参照)
237
260
 
238
261
  ## 実装サンプル基準準拠
239
262
 
@@ -324,6 +347,7 @@ class Button extends React.Component {
324
347
  **全モード共通**:
325
348
  - [ ] **基準特定ゲート完了**(必須)
326
349
  - [ ] **コード調査エビデンス記録済み**(必須)
350
+ - [ ] **Fact Disposition TableがCodebase Analysisの全focusAreaをカバーしていること**(Codebase Analysis入力がある場合は必須)
327
351
  - [ ] **統合ポイントをコントラクト付きで列挙**(必須)
328
352
  - [ ] **Props型コントラクトの明確化**(必須)
329
353
  - [ ] コンポーネント階層とデータフローが図で明確に表現されているか
@@ -349,15 +373,6 @@ class Button extends React.Component {
349
373
 
350
374
  ## 受入条件作成ガイドライン
351
375
 
352
- **原則**: ブラウザ環境で検証可能な具体的条件を設定。曖昧な表現を避け、React Testing Libraryテストケースに変換可能な形式で文書化。
353
- **例**: 「フォームが動く」→「有効なメールとパスワードを入力後、送信ボタンをクリックするとAPIが呼ばれて成功メッセージが表示される」
354
- **網羅性**: ハッピーパス、アンハッピーパス、エッジケースをカバー。非機能要件は別セクションで定義。
355
- - 期待動作(ハッピーパス)
356
- - エラーハンドリング(アンハッピーパス)
357
- - エッジケース(空状態、ローディング状態)
358
-
359
- 4. **優先度**: 重要な受入条件を上位に配置
360
-
361
376
  ### 自律実装のためのACスコーピング(フロントエンド)
362
377
 
363
378
  **含める**(自動化ROI高い):
@@ -373,7 +388,7 @@ class Button extends React.Component {
373
388
  - 実装詳細 → ユーザーが観察可能な振る舞いに焦点
374
389
  - ピクセルパーフェクトなレイアウト → コンテンツの有無に焦点、位置の正確性は不要
375
390
 
376
- **原則**: AC = 隔離されたCI環境でブラウザ上で検証可能なユーザー観察可能動作
391
+ **原則**: AC = 隔離されたCI環境でブラウザ上で検証可能なユーザー観察可能動作。ハッピーパス、アンハッピーパス(エラー)、エッジケース(空状態・ローディング状態)をカバーし、重要な受入条件を上位に配置、非機能要件は別セクションで定義する。
377
392
 
378
393
  ## 最新情報のリサーチ
379
394
 
@@ -399,7 +414,7 @@ class Button extends React.Component {
399
414
 
400
415
  1. **更新スコープからリテラル識別子を抽出**: 更新対象セクション内のすべての具体的な識別子(パス、エンドポイント、コンポーネント名、hook名、型名、設定キー)を収集
401
416
  2. **コードベースに対して検証**: createモードと同じDependency Existence Verificationプロセスを更新スコープの識別子に適用
402
- 3. **Accepted ADRに対して検証**: `docs/adr/`のDecision/Implementation Guidelinesセクションで各識別子を検索。同じ識別子に異なる値や定義がある場合はフラグする。(Design Doc間のクロスチェックは後続パイプラインのdesign-syncが担当)
417
+ 3. **Accepted ADRに対して検証**: `docs/adr/`のDecision/Implementation Guidelinesセクションで各識別子を検索。同じ識別子に異なる値や定義がある場合はフラグする。(ドキュメント間の整合性チェックは後続パイプラインで実施される。本エージェントのスコープ外)
403
418
 
404
419
  **出力形式**(識別子ごと):
405
420
  ```yaml
@@ -7,8 +7,6 @@ skills: documentation-criteria, technical-spec, typescript-rules, coding-standar
7
7
 
8
8
  あなたはArchitecture Decision Record (ADR) と Design Document を作成する技術設計専門のAIアシスタントです。
9
9
 
10
- CLAUDE.mdの原則を適用しない独立したコンテキストを持ち、タスク完了まで独立した判断で実行します。
11
-
12
10
  ## 初回必須タスク
13
11
 
14
12
  **タスク登録**: TaskCreateで作業ステップを登録。必ず最初に「スキル制約の確認」、最後に「スキル忠実度の検証」を含める。各完了時にTaskUpdateで更新。
@@ -46,7 +44,7 @@ ADR/Design Docの作成閾値はdocumentation-criteriaスキルに準拠。判
46
44
  - 各基準を分類: **Explicit**(文書化済み)または **Implicit**(観察されたパターンのみ)
47
45
 
48
46
  2. **品質保証メカニズムの特定**
49
- - codebase-analyzerの出力がある場合: その`qualityAssurance`セクションを一次情報源として使用
47
+ - `Codebase Analysis`入力が提供された場合: その`qualityAssurance`セクションを一次情報源として使用
50
48
  - 出力がない場合: CIパイプライン、linter設定、pre-commitフック、プロジェクト設定から変更対象領域をカバーするツールとチェックをスキャン
51
49
  - 設定ファイルやCIからドメイン固有の制約(命名規約、文字数制限、フォーマット要件)を特定
52
50
  - 各メカニズムの種別を分類: `executable_check`(コマンドとして実行可能 — 例: linter、ビルド、テスト、スキーマバリデータ)または `passive_constraint`(出力を検査して確認 — 例: 命名規約をGrepで検証、文字数制限を手動確認)
@@ -98,6 +96,30 @@ Design Doc作成前に必ず実施:
98
96
  - 調査したすべてのファイルと主要関数をDesign Docの「コード調査エビデンス」セクションに記録
99
97
  - 各エントリの関連性(類似機能 / 統合点 / パターン参照)を明記
100
98
 
99
+ ### Fact Disposition【Codebase Analysis入力がある場合は必須】
100
+
101
+ `Codebase Analysis.focusAreas`の各エントリについて、Design Docの「Fact Disposition Table」セクションに1行ずつ記載する:
102
+
103
+ | 列 | 内容 |
104
+ |----|------|
105
+ | Fact ID | Codebase Analysis入力の`fact_id`値 |
106
+ | Focus Area | Codebase Analysis入力の`area`値 |
107
+ | Disposition | `preserve` / `transform` / `remove` / `out-of-scope` のいずれか |
108
+ | Rationale | disposition別ガイダンスを参照(下記)。`focusArea.factsToAddress`をdispositionが解決すべき事実のチェックリストとして用い、Rationaleは列挙された各事実がどう扱われるか(そのまま維持 / 新結果へ変換 / 削除 / 引用付きで除外)を明確にする。 |
109
+ | Evidence | focusAreaの`evidence`値(そのまま引き継ぎ) |
110
+ | Related Files | `focusArea.relatedFiles`のパス一覧(カンマ区切り、そのまま引き継ぎ) |
111
+
112
+ **Disposition選択基準とRationale記述**:
113
+
114
+ - `preserve`: 設計が既存の振る舞いを変更なしで維持する。Rationaleは確認のみの文言を使う — 例: 「既存の振る舞いを変更なしで維持」。振る舞い変更を主張するRationale(例: 「新たに X も処理する」、「Y を含むよう拡張」)はレビューでpreserve-disposition mismatchとして検出される。
115
+ - `transform`: 設計が観測可能な振る舞いを変更する。Rationaleは新しい結果を観測可能な用語で記述 — 例: 「`status === 'archived'`の分岐は410でなく404を返す、他の分岐は変更なし」。1〜2文が典型。全体として無変更を主張するRationale(例: 「変更なし」、「以前と同一」)はレビューでtransform-disposition mismatchとして検出される。
116
+ - `remove`: 設計が既存の振る舞いを削除する。Rationaleは理由を記述(業務理由があればそれを、なければ技術理由)— 例: 「レガシーexportパスを削除、ユーザーはv2 API endpointへ移行(PRD §3.2 deprecation)」。理由がポリシー/業務由来ならPRDセクションを引用。本番コードパス上で振る舞いの保持を主張するRationaleはレビューでremove-disposition mismatchとして検出される(テストコードや移行スクリプトでの参照保持はRationaleで明示すれば妥当として扱われる)。
117
+ - `out-of-scope`: focus areaがこの設計の実装境界の外にある。コードベース分析入力に含まれないPRDコンテキストからスコープ境界が明確になった場合のみ使う。Rationaleは除外するスコープ境界と出典セクションを記述 — 例: 「認証フローはPRD §1 scope定義によりout-of-scope(ADR-042で別途扱う)」。out-of-scopeは最後の手段として扱い、既存の振る舞いがそのまま残るなら`preserve`を優先する。
118
+
119
+ **Cross-Layer Assumptions**: 本Design Docが前レイヤーのDesign Docの契約に依存し、かつその主張が未検証のまま残る場合(Prior-Layer Verification入力を参照)、各該当主張を「## Cross-Layer Assumptions」セクションに記載する。正当化(依存が必要な理由)を明記し、下流レビューの検証対象として伝播する。形式: `- [主張]: [正当化]; 検証先: [ステップまたは成果物]`。
120
+
121
+ Fact Disposition Tableは**構造的な既存事実**を設計に結び付ける主たるメカニズム。Verification StrategyのOutput Comparisonは**ランタイムの振る舞い**(入出力の同等性)を拘束する。Design Docの他セクションで既存の振る舞いに言及する際は、該当するDisposition Tableの行を`fact_id`値で参照する。
122
+
101
123
  ### データ構造の採用判断【必須】
102
124
  設計で新規データ構造の導入や大幅な変更を行う場合:
103
125
 
@@ -219,12 +241,16 @@ Design Doc作成前に実施:
219
241
  - **要件分析結果**: 要件分析の結果(規模判定、技術要件等)
220
242
  - **コードベース分析**(任意、コードベース分析フェーズから提供):
221
243
  - 提供された場合、「既存コードベース分析」セクションの主要ソースとして使用
244
+ - `focusAreas` → Fact Disposition Tableを生成
222
245
  - `existingElements` → Implementation Path MappingとCode Inspection Evidenceに反映
223
246
  - `dataModel` → データ関連セクション(スキーマ参照、データ契約)に反映
224
- - `focusAreas` → フラグされた領域の調査深度を優先
225
247
  - `constraints` → 設計上の制約と前提条件に組み込む
226
- - `dataTransformationPipelines` → 検証戦略の出力比較セクションに反映(各パイプラインステップが比較手法でカバーされていること)
248
+ - `dataTransformationPipelines` → 検証戦略の出力比較セクションに反映
227
249
  - 分析でカバーされていない領域、または`limitations`でフラグされた領域についてのみ追加調査を実施
250
+
251
+ - **Prior-Layer Verification**(任意、レイヤー横断フロー時のみ): 本Design Docが前レイヤーのDesign Docの契約を参照し、かつそのDDが検証ステップを通過している場合、検証結果のJSONが提供される。使い方:
252
+ - `discrepancies[]` → 本Design Docで解決すべき既知課題として扱う、またはレイヤー範囲外の場合はエスカレートする
253
+ - 検証済みと見なせる主張は検証結果JSONに明示されているものに限定する。前レイヤーのDesign Docは参照コンテキストとして扱い、その他の主張は検証結果で確認されない限り未検証として扱う
228
254
  - **PRD**: PRDドキュメント(存在する場合)
229
255
  - **作成するドキュメント**: ADR、Design Doc、または両方
230
256
  - **既存アーキテクチャ情報**:
@@ -250,10 +276,8 @@ Design Doc作成前に実施:
250
276
  - ADRは既存番号を確認して最大値+1、初期ステータスは「Proposed」
251
277
  ## ADR責務境界
252
278
 
253
- ADRに含む:決定事項、根拠、原則的な指針
254
- ADRに含まない:スケジュール、実装手順、具体的コード
255
-
256
- 実装ガイドラインには原則のみ記載(例:「依存性注入を使用」)。スケジュールや手順は含めない。
279
+ 含む:決定事項、根拠、原則的な指針(例:「依存性注入を使用」)
280
+ 含まない:スケジュール、実装手順、具体的コード
257
281
 
258
282
  ## 出力方針
259
283
  ファイル出力は即座に実行(実行時点で承認済み)。
@@ -265,10 +289,7 @@ ADRに含まない:スケジュール、実装手順、具体的コード
265
289
  3. **テスタビリティ**: 依存性注入とモック可能な設計
266
290
  4. **機能受入条件からのテスト導出**: 各機能受入条件を満たすテストケースが明確
267
291
  5. **トレードオフの明示**: 各選択肢の利点・欠点を定量的に評価
268
- 6. **最新情報の積極的活用**:
269
- - 設計前に必ずWebSearchで最新のベストプラクティス、ライブラリ、アプローチを調査
270
- - 参考にした情報源は必ず「参考資料」セクションにURLを記載
271
- - 特に新技術導入時は複数の信頼できる情報源を確認
292
+ 6. **最新情報の積極的活用**: 新技術導入時は複数の信頼できる情報源を確認する(実施タイミングと引用形式は下の「最新情報の調査」セクションを参照)
272
293
 
273
294
  ## 実装サンプルの規約準拠
274
295
 
@@ -301,6 +322,7 @@ ADRに含まない:スケジュール、実装手順、具体的コード
301
322
  - [ ] **基準特定ゲート完了**(必須)
302
323
  - [ ] **品質保証メカニズムをadopted/notedステータス付きで特定**(必須)
303
324
  - [ ] **コード調査エビデンス記録済み**(必須)
325
+ - [ ] **Fact Disposition TableがCodebase Analysisの全focusAreaをカバーしていること**(Codebase Analysis入力がある場合は必須)
304
326
  - [ ] **統合ポイントをコントラクト付きで列挙**(必須)
305
327
  - [ ] **データ契約の明確化**(必須)
306
328
  - [ ] アーキテクチャとデータフローが図で明確に表現されているか
@@ -330,13 +352,9 @@ ADRに含まない:スケジュール、実装手順、具体的コード
330
352
 
331
353
  ## 受入条件の作成ガイドライン
332
354
 
333
- **原則**: 具体的で検証可能な条件を設定。曖昧な表現を避け、テストケースに変換可能な形式で記述。
334
- **例**: 「ログインが動作する」→「正しい認証情報で認証後、ダッシュボード画面に遷移」
335
- **網羅性**: 正常系・異常系・エッジケースをカバー。非機能要件は別セクションで定義。
336
-
337
355
  ### 測定可能なACの書き方
338
356
 
339
- **原則**: AC = 独立した環境で検証可能かつユーザーが観測可能な振る舞い
357
+ **原則**: AC = 独立した環境で検証可能かつユーザーが観測可能な振る舞い。正常系・異常系・エッジケースをカバーし、非機能要件は別セクションで定義する。
340
358
 
341
359
  **含めるべき**(自動化可能で高ROI):
342
360
  - ビジネスロジックの正確性(計算、状態遷移、データ変換)
@@ -388,7 +406,7 @@ ACの出力に以下のいずれかが含まれる場合、Property注釈を付
388
406
 
389
407
  1. **更新スコープからリテラル識別子を抽出**: 更新対象セクション内のすべての具体的な識別子(パス、エンドポイント、型名、設定キー、コンポーネント名)を収集
390
408
  2. **コードベースに対して検証**: createモードと同じDependency Existence Verificationプロセスを更新スコープの識別子に適用
391
- 3. **Accepted ADRに対して検証**: `docs/adr/`のDecision/Implementation Guidelinesセクションで各識別子を検索。同じ識別子に異なる値や定義がある場合はフラグする。(Design Doc間のクロスチェックは後続パイプラインのdesign-syncが担当)
409
+ 3. **Accepted ADRに対して検証**: `docs/adr/`のDecision/Implementation Guidelinesセクションで各識別子を検索。同じ識別子に異なる値や定義がある場合はフラグする。(ドキュメント間の整合性チェックは後続パイプラインで実施される。本エージェントのスコープ外)
392
410
 
393
411
  **出力形式**(識別子ごと):
394
412
  ```yaml
@@ -7,8 +7,6 @@ skills: documentation-criteria, frontend-typescript-rules, project-context
7
7
 
8
8
  あなたはUI Specを作成する専門のAIアシスタントです。
9
9
 
10
- CLAUDE.mdの原則を適用しない独立したコンテキストを持ち、タスク完了まで自律的に実行します。
11
-
12
10
  ## 初回必須タスク
13
11
 
14
12
  **タスク登録**: TaskCreateで作業ステップを登録。必ず最初に「スキル制約の確認」、最後に「スキル忠実度の検証」を含める。各完了時にTaskUpdateで更新。
@@ -7,8 +7,6 @@ skills: project-context, technical-spec, coding-standards
7
7
 
8
8
  あなたは調査結果の検証を専門とするAIアシスタントです。
9
9
 
10
- CLAUDE.mdの原則を適用しない独立したコンテキストを持ち、タスク完了まで独立した判断で実行します。
11
-
12
10
  ## 初回必須タスク
13
11
 
14
12
  **タスク登録**: TaskCreateで作業ステップを登録。必ず最初に「スキル制約の確認」、最後に「スキル忠実度の検証」を含める。各完了時にTaskUpdateで更新。
@@ -59,13 +57,13 @@ CLAUDE.mdの原則を適用しない独立したコンテキストを持ち、
59
57
  - 調査で参照されていない技術ドキュメント
60
58
 
61
59
  ### ステップ4: 調査カバレッジチェック
62
- investigatorのpathMapの完全性を検証する:
60
+ 入力の`pathMap`の完全性を検証する:
63
61
 
64
- 1. **未トレースパス**: 症状が到達しうるのにinvestigatorがトレースしていないコードパスはないか(例: エラーハンドリング分岐、非同期フォーク、フォールバックパス)
62
+ 1. **未トレースパス**: 症状が到達しうるのに調査でトレースされていないコードパスはないか(例: エラーハンドリング分岐、非同期フォーク、フォールバックパス)
65
63
  2. **未チェックノード**: トレース済みパス上でチェックされていないノードはないか
66
64
  3. **追加の障害点**: 未トレースパスや未チェックノードから新たな障害が見つかった場合は記録する
67
65
 
68
- 目的は、investigatorのパスカバレッジが十分であるかを検証すること。
66
+ 目的は、調査のパスカバレッジが十分であるかを検証すること。
69
67
 
70
68
  ### ステップ5: Devil's Advocate評価と批判的検証
71
69
  各障害点について批判的に評価:
@@ -134,7 +132,7 @@ investigatorのpathMapの完全性を検証する:
134
132
  }
135
133
  ],
136
134
  "coverageCheck": {
137
- "missingPaths": ["investigatorがトレースしていないパス"],
135
+ "missingPaths": ["調査入力でトレースされていないパス"],
138
136
  "uncheckedNodes": ["トレース済みパス上の未チェックノード"],
139
137
  "additionalFailurePoints": [
140
138
  {
@@ -161,7 +159,7 @@ investigatorのpathMapの完全性を検証する:
161
159
  {
162
160
  "failurePointId": "FP1またはAFP1",
163
161
  "description": "障害点の記述",
164
- "originalCheckStatus": "investigatorのcheckStatus(verifier発見のAFPはnull)",
162
+ "originalCheckStatus": "調査入力のcheckStatus(検証段階で発見されたAFPはnull)",
165
163
  "finalStatus": "supported|weakened|blocked|not_reached",
166
164
  "statusChangeReason": "ステータスが変更された理由(変更があった場合)",
167
165
  "remainingUncertainty": ["残る不確実性"]
@@ -7,8 +7,6 @@ skills: documentation-criteria, project-context, technical-spec, implementation-
7
7
 
8
8
  あなたは作業計画書を作成する専門のAIアシスタントです。
9
9
 
10
- CLAUDE.mdの原則を適用しない独立したコンテキストを持ち、タスク完了まで独立した判断で実行します。
11
-
12
10
  ## 初回必須タスク
13
11
 
14
12
  **タスク登録**: TaskCreateで作業ステップを登録。必ず最初に「スキル制約の確認」、最後に「スキル忠実度の検証」を含める。各完了時にTaskUpdateで更新。
@@ -55,11 +53,11 @@ IF E2Eテストスケルトンファイルが提供されていない
55
53
  THEN 作業計画書ヘッダーに追記:
56
54
  ⚠ E2E Gap: この機能にはユーザー向けマルチステップジャーニーが含まれますが、
57
55
  E2Eテストスケルトンが提供されていません。最終フェーズ前に
58
- acceptance-test-generatorでE2Eテスト候補を評価することを検討してください。
56
+ 受入テスト生成へ差し戻してE2Eテスト候補を評価する。
59
57
  検出されたジャーニー: [ジャーニーの説明とAC参照のリスト]
60
58
  ```
61
59
 
62
- `e2eAbsenceReason`が提供されている場合(acceptance-test-generatorのGeneration Reportで生成される。例: `no_multi_step_journey`, `below_threshold_user_confirmed`)、E2E不在は意図的 — このギャップチェックをスキップする。
60
+ `e2eAbsenceReason`が提供されている場合(受入テストのGeneration Reportで生成される。例: `no_multi_step_journey`, `below_threshold_user_confirmed`)、E2E不在は意図的 — このギャップチェックをスキップする。
63
61
 
64
62
  このチェックは戦略AまたはBのどちらが選択されていても適用される。統合テストスケルトンのみの提供はE2Eカバレッジを意味しない。サービス内部ジャーニー(非同期パイプライン、サービス間saga)はここではフラグしない — 通常のROIパスでE2Eが必要な場合はそちらで対応。
65
63
 
@@ -110,6 +110,20 @@ Each AC is written in EARS format. Keywords determine test type.
110
110
  ### Code Inspection Evidence
111
111
  - [path:function] — [relevance: similar functionality / integration point / pattern reference]
112
112
 
113
+ ### Fact Disposition Table
114
+
115
+ One row per codebase analysis `focusAreas` entry. This table is the primary binding between structural existing-behavior facts and the design (Verification Strategy's Output Comparison binds runtime behavior separately). Other sections that describe existing behavior reference the row by `fact_id` value.
116
+
117
+ | Fact ID | Focus Area | Disposition | Rationale | Evidence | Related Files |
118
+ |---------|------------|-------------|-----------|----------|---------------|
119
+ | [fact_id from focusAreas] | [area name from focusAreas] | preserve / transform / remove / out-of-scope | [preserve: confirmation-only language, e.g., "existing behavior retained without modification" — Rationale asserting a behavior change is flagged as preserve mismatch; transform: state new observable outcome, e.g., "branch X now returns 404 instead of 410" — Rationale asserting no change at all is flagged as transform mismatch; remove: state reason with PRD/UI Spec citation when policy-driven — Rationale asserting production-code retention is flagged as remove mismatch (test/migration retention stated explicitly is acceptable); out-of-scope: cite the scope-defining section and prefer preserve when behavior continues unchanged] | [evidence value carried verbatim from focusAreas] | [comma-separated path list carried verbatim from focusAreas.relatedFiles, e.g., `src/auth/createUser.ts, src/api/routes/users.ts`] |
120
+
121
+ ### Cross-Layer Assumptions (cross-layer flow only)
122
+
123
+ When this Design Doc depends on unverified claims from a prior-layer Design Doc (see Prior-Layer Verification), list each with justification and downstream verification target:
124
+
125
+ - [claim]: [justification]; verify at [step or artifact]
126
+
113
127
  ## Design
114
128
 
115
129
  ### Change Impact Map
@@ -299,7 +313,7 @@ Mark as N/A with brief rationale when the feature has no data layer dependencies
299
313
 
300
314
  ## Verification Strategy
301
315
 
302
- Verification Strategy defines what correctness means and how to prove it at design time. L1/L2/L3 (from implementation-approach skill) define completion verification granularity at task execution time.
316
+ Verification Strategy defines what correctness means and how to prove it at design time. L1/L2/L3 (verification granularity tiers) define completion verification granularity at task execution time.
303
317
 
304
318
  ### Correctness Proof Method
305
319
 
@@ -69,7 +69,7 @@ Maps each Design Doc technical requirement to the covering task(s). One row per
69
69
 
70
70
  Select ONE phase structure based on implementation approach from Design Doc.
71
71
  See documentation-criteria skill for detailed Phase Division Criteria.
72
- All quality checks follow Quality Check Workflow from coding-standards skill.
72
+ All quality checks follow the project's standard Quality Check Workflow.
73
73
  **Delete the unused Option entirely from the final plan.** For hybrid approach, use Option C.
74
74
 
75
75
  ### Option A: Vertical Slice Phase Structure
@@ -7,7 +7,7 @@ description: Applies React/TypeScript type safety, component design, and state m
7
7
 
8
8
  ## Frontend-Specific Anti-patterns
9
9
 
10
- In addition to universal anti-patterns in coding-standards skill, watch for these Frontend-specific issues:
10
+ In addition to universal anti-patterns, watch for these Frontend-specific issues:
11
11
 
12
12
  - **Prop drilling through 3+ levels** - Should use Context API or state management
13
13
  - **Massive components (300+ lines)** - Split into smaller components
@@ -136,7 +136,7 @@ Measurable quality criteria for skill content. Each principle includes a pass/fa
136
136
  | # | Principle | Pass Criteria | Fail Example |
137
137
  |---|-----------|---------------|--------------|
138
138
  | 1 | Context efficiency | Every sentence contributes to LLM decision-making. No filler. | "This is an important skill that helps with..." |
139
- | 2 | Deduplication | No concept explained twice at the same abstraction level within the skill or across skills. Mentions at different structural roles (e.g., classification framework vs execution detail) are not duplicates, provided the re-mention adds new constraints or criteria | Same error handling rules in both coding-standards and typescript-rules |
139
+ | 2 | Deduplication | No concept explained twice at the same abstraction level within the skill or across skills. Mentions at different structural roles (e.g., classification framework vs execution detail) are not duplicates, provided the re-mention adds new constraints or criteria | Same error handling rules restated at the same abstraction level in multiple related skills |
140
140
  | 3 | Grouping | Related criteria in single section (minimize read operations) | Scattered error handling rules across 4 sections |
141
141
  | 4 | Measurability | All criteria use if-then format or concrete thresholds | "Write clean code" without definition of clean |
142
142
  | 5 | Positive form | Instructions state what to do (BP-001 applied) | "Don't use any" instead of "Use only X" |
@@ -40,7 +40,7 @@ When receiving a new task, pass user requirements directly to requirement-analyz
40
40
  2. **task-decomposer**: Appropriate task decomposition of work plans
41
41
  3. **task-executor**: Individual task execution and structured response
42
42
  4. **integration-test-reviewer**: Review integration/E2E tests for skeleton compliance
43
- 5. **security-reviewer**: Security compliance review against Design Doc and coding-standards after all tasks complete
43
+ 5. **security-reviewer**: Security compliance review against Design Doc and project coding standards after all tasks complete
44
44
 
45
45
  ### Document Creation Agents
46
46
  6. **requirement-analyzer**: Requirement analysis and work scale determination (WebSearch enabled, latest technical information research)
@@ -200,17 +200,19 @@ Replace the standard Design Doc creation step with per-layer creation:
200
200
  | Step | Agent | Purpose |
201
201
  |------|-------|---------|
202
202
  | 8 | codebase-analyzer ×2 | Codebase analysis per layer (pass req-analyzer output, filtered to layer) |
203
- | 9a | technical-designer | Backend Design Doc (with backend codebase-analyzer context) |
204
- | 9b | technical-designer-frontend | Frontend Design Doc (with frontend codebase-analyzer context + backend Integration Points) |
205
- | 10 | code-verifier ×2 | Verify each Design Doc against existing code |
206
- | 11 | document-reviewer ×2 | Review each Design Doc (with code-verifier results as code_verification) |
207
- | 12 | design-sync | Cross-layer consistency verification **[Stop]** |
203
+ | 9 | technical-designer | Backend Design Doc (with backend codebase-analyzer context) |
204
+ | 10 | code-verifier | Verify Backend Design Doc against existing code (its result JSON becomes `prior_layer_verification` for step 12) |
205
+ | 11 | document-reviewer | Review Backend Design Doc (pass step-10 result as `code_verification` and backend codebase-analyzer JSON as `codebase_analysis`). **[Stop on critical issues]** — structural defects here block step 12. |
206
+ | 12 | technical-designer-frontend | Frontend Design Doc (with frontend codebase-analyzer context + reviewed Backend Design Doc + `prior_layer_verification` from step 10 + UI Spec) |
207
+ | 13 | code-verifier | Verify Frontend Design Doc against existing code |
208
+ | 14 | document-reviewer | Review Frontend Design Doc (pass step-13 result as `code_verification` and frontend codebase-analyzer JSON as `codebase_analysis`). **[Stop on critical issues]** — structural defects here block step 15. |
209
+ | 15 | design-sync | Cross-layer consistency verification **[Stop]** |
208
210
 
209
- Steps marked with ×2 invoke the agent once per layer. These invocations are independent and can run in parallel when the orchestrator supports concurrent Agent tool calls.
211
+ The `codebase-analyzer ×2` invocations can run in parallel. The backend path (steps 9-11) runs sequentially before step 12 so that the frontend designer reads a backend Design Doc whose structural defects (AC gaps, Fact Disposition Table issues, Verification Strategy defects) have already been surfaced by document-reviewer, and whose code/doc discrepancies have already been enumerated by code-verifier. The frontend designer can then identify which backend contracts have known issues via `prior_layer_verification.discrepancies[]` and the step-11 review feedback, and design around those unstable surfaces (route integration points to stable contracts, or record the dependency in `## Cross-Layer Assumptions`).
210
212
 
211
213
  **Layer Context in Design Doc Creation**:
212
214
  - **Backend**: "Create a backend Design Doc from PRD at [path]. Codebase analysis: [JSON from codebase-analyzer for backend layer]. Focus on: API contracts, data layer, business logic, service architecture."
213
- - **Frontend**: "Create a frontend Design Doc from PRD at [path]. Codebase analysis: [JSON from codebase-analyzer for frontend layer]. Reference backend Design Doc at [path] for API contracts and Integration Points. Focus on: component hierarchy, state management, UI interactions, data fetching."
215
+ - **Frontend**: "Create a frontend Design Doc from PRD at [path]. Codebase analysis: [JSON from codebase-analyzer for frontend layer]. Reviewed Backend Design Doc at [path] extract API contracts and Integration Points from this document to populate the frontend Integration Point Map. Backend review findings: [critical/important issues from step-11 document-reviewer, if any]. prior_layer_verification: [JSON from code-verifier on backend Design Doc]. Identify unstable backend contracts via `prior_layer_verification.discrepancies[]` and the review findings; limit verified-claim inference to what the verifier output states explicitly. For contracts you must depend on that remain unverified, list them in the `## Cross-Layer Assumptions` section with justification and verification target. Reference UI Spec at [path] for component structure. Focus on: component hierarchy, state management, UI interactions, data fetching."
214
216
 
215
217
  **design-sync**: Use frontend Design Doc as source. design-sync auto-discovers other Design Docs in `docs/design/` for comparison.
216
218
 
@@ -292,12 +294,18 @@ Construct the prompt from the agent's Input Parameters section and the deliverab
292
294
  #### codebase-analyzer → technical-designer
293
295
 
294
296
  **Pass to codebase-analyzer**: requirement-analyzer JSON output, PRD path (if exists), original user requirements
295
- **Pass to technical-designer**: codebase-analyzer JSON output as additional context in the Design Doc creation prompt. The designer uses `focusAreas`, `dataModel`, `dataTransformationPipelines`, and `qualityAssurance` to inform the Existing Codebase Analysis, Verification Strategy, and Quality Assurance Mechanisms sections.
297
+ **Pass to technical-designer**: codebase-analyzer JSON output as additional context in the Design Doc creation prompt. Required downstream uses:
298
+ - `focusAreas` → canonical disposition-target list for the Fact Disposition Table (one row per focusArea, carrying through `fact_id` and `evidence` verbatim)
299
+ - `dataModel`, `dataTransformationPipelines`, `qualityAssurance` → Existing Codebase Analysis, Verification Strategy, and Quality Assurance Mechanisms sections
296
300
 
297
301
  #### code-verifier → document-reviewer (Design Doc review)
298
302
 
299
- **Pass to code-verifier**: Design Doc path (doc_type: design-doc). `code_paths` is intentionally omitted — the verifier independently discovers code scope from the document.
300
- **Pass to document-reviewer**: code-verifier JSON output as `code_verification` parameter.
303
+ **Pass to code-verifier**: Design Doc path (doc_type: design-doc). Omit `code_paths`; the verifier independently discovers code scope from the document.
304
+ **Pass to document-reviewer**: code-verifier JSON output as `code_verification` parameter, **and** the same codebase-analyzer JSON previously given to the designer as `codebase_analysis`. The reviewer uses `codebase_analysis.focusAreas` to verify Fact Disposition Table coverage.
305
+
306
+ #### code-verifier + document-reviewer → next-layer technical-designer (cross-layer flow only)
307
+
308
+ **Pass to next-layer technical-designer**: reviewed prior-layer Design Doc path plus `prior_layer_verification` (the JSON from the prior-layer code-verifier). See Cross-Layer Orchestration section for sequencing. Use `prior_layer_verification.discrepancies[]` plus prior-layer review findings to identify unstable contracts. Limit verified-claim inference to what the verifier output states explicitly; when the design must depend on a claim not confirmed by the verifier, record it in the frontend Design Doc's `## Cross-Layer Assumptions` section with justification and a verification target (escalation uses the same section with `verify at: escalation to user` — choose escalation only when the dependency cannot be bounded by a downstream verification step).
301
309
 
302
310
  #### technical-designer → work-planner
303
311
 
@@ -110,6 +110,20 @@ unknowns:
110
110
  ### コード調査エビデンス
111
111
  - [パス:関数] — [関連性: 類似機能 / 統合点 / パターン参照]
112
112
 
113
+ ### Fact Disposition Table
114
+
115
+ コードベース分析の`focusAreas`の各エントリに対して1行ずつ記載する。この表は**構造的な既存事実**と設計を結び付ける主たるテーブル(Verification StrategyのOutput Comparisonは**ランタイムの振る舞い**を別途拘束する)。既存の振る舞いに言及する他セクションはこの表の行を`fact_id`値で参照する。
116
+
117
+ | Fact ID | Focus Area | Disposition | Rationale | Evidence | Related Files |
118
+ |---------|------------|-------------|-----------|----------|---------------|
119
+ | [focusAreasのfact_id] | [focusAreasのarea] | preserve / transform / remove / out-of-scope | [preserve: 確認のみの文言、例「既存の振る舞いを変更なしで維持」 — 振る舞い変更を主張するRationaleはレビューでpreserve mismatchとして検出される、transform: 新しい観測可能な結果を記述、例「分岐Xは410でなく404を返す」 — 全体として無変更を主張するRationaleはtransform mismatchとして検出される、remove: 理由を記述、ポリシー由来ならPRD/UI Specセクションを引用 — 本番コードパスでの保持を主張するRationaleはremove mismatchとして検出される(テスト/移行スクリプトでの保持を明示した場合は妥当)、out-of-scope: スコープ定義セクションを引用、既存の振る舞いがそのまま残るならpreserveを優先] | [focusAreasのevidence値をそのまま引き継ぎ] | [focusAreas.relatedFilesのパス一覧をそのまま引き継ぎ、カンマ区切り、例: `src/auth/createUser.ts, src/api/routes/users.ts`] |
120
+
121
+ ### Cross-Layer Assumptions(レイヤー横断フロー時のみ)
122
+
123
+ 本Design Docが前レイヤーのDesign Docの未検証主張に依存する場合(Prior-Layer Verification参照)、各主張に正当化と下流検証先を記載する:
124
+
125
+ - [主張]: [正当化]; 検証先: [ステップまたは成果物]
126
+
113
127
  ## 設計
114
128
 
115
129
  ### 変更影響マップ
@@ -305,7 +319,7 @@ unknowns:
305
319
 
306
320
  ## 検証戦略
307
321
 
308
- 設計時に「正しさとは何か」「どう証明するか」を定義する。L1/L2/L3(implementation-approachスキル)はタスク実行時の完了検証の粒度を定義する。
322
+ 設計時に「正しさとは何か」「どう証明するか」を定義する。L1/L2/L3(検証粒度の階層)はタスク実行時の完了検証の粒度を定義する。
309
323
 
310
324
  ### 正しさの証明方法
311
325
 
@@ -69,7 +69,7 @@ Design Docの各技術要件をカバーするタスクへのマッピング。
69
69
 
70
70
  Design Docの実装アプローチに基づいてフェーズ構成をひとつ選択する。
71
71
  詳細はdocumentation-criteriaスキルのフェーズ分割基準を参照。
72
- 全品質チェックはcoding-standardsスキルの品質チェックワークフローに従う。
72
+ 全品質チェックはプロジェクト標準の品質チェックワークフローに従う。
73
73
  **未使用のOptionは最終計画書から削除すること。** ハイブリッドの場合はOption Cを使用する。
74
74
 
75
75
  ### Option A: 垂直スライスのフェーズ構成
@@ -136,7 +136,7 @@ description: スキルファイルの品質を8つのコンテンツパターン
136
136
  | # | 原則 | 合格基準 | 不合格例 |
137
137
  |---|------|----------|----------|
138
138
  | 1 | コンテキスト効率 | 全文がLLMの判断に寄与する。冗長な記述なし | 「これは〜に役立つ重要なスキルで...」 |
139
- | 2 | 重複排除 | スキル内・スキル間で同じ抽象レベルにおける概念の重複説明なし。異なる構造的役割(例: 分類体系と実行詳細)での言及は、新たな制約や判断基準を伴う場合に限り重複に該当しない | coding-standardsとtypescript-rulesに同じエラーハンドリング規則 |
139
+ | 2 | 重複排除 | スキル内・スキル間で同じ抽象レベルにおける概念の重複説明なし。異なる構造的役割(例: 分類体系と実行詳細)での言及は、新たな制約や判断基準を伴う場合に限り重複に該当しない | 関連する複数スキルで同じエラーハンドリング規則が同じ抽象レベルで繰り返される |
140
140
  | 3 | 関連内容の集約 | 関連する基準を1セクションに集約(読み込み回数最小化) | エラーハンドリング規則が4セクションに散在 |
141
141
  | 4 | 測定可能性 | 全基準がif-then形式または具体的閾値 | 「きれいなコードを書く」の定義なし |
142
142
  | 5 | 肯定形 | 指示は「何をするか」を記述(BP-001適用済み) | 「一切使わないこと」→「Xのみ使用する」 |
@@ -40,7 +40,7 @@ description: サブエージェントのタスク分担と連携を調整。規
40
40
  2. **task-decomposer**: 作業計画書の適切なタスク分解
41
41
  3. **task-executor**: 個別タスクの実行と構造化レスポンス
42
42
  4. **integration-test-reviewer**: 統合テスト/E2Eテストのスケルトン準拠レビュー
43
- 5. **security-reviewer**: 全タスク完了後のDesign Docおよびcoding-standardsに対するセキュリティ準拠レビュー
43
+ 5. **security-reviewer**: 全タスク完了後のDesign Docおよびプロジェクトのコーディング規約に対するセキュリティ準拠レビュー
44
44
 
45
45
  ### ドキュメント作成エージェント
46
46
  6. **requirement-analyzer**: 要件分析と作業規模判定(WebSearch対応、最新技術情報の調査)
@@ -195,17 +195,19 @@ requirement-analyzerが複数レイヤー(backend + frontend)にまたがる
195
195
  | ステップ | エージェント | 目的 |
196
196
  |---------|-----------|------|
197
197
  | 8 | codebase-analyzer ×2 | レイヤー別コードベース分析(要件分析結果をレイヤーでフィルタして入力) |
198
- | 9a | technical-designer | バックエンドDesign Doc(バックエンドcodebase-analyzerコンテキスト付き) |
199
- | 9b | technical-designer-frontend | フロントエンドDesign Doc(フロントエンドcodebase-analyzerコンテキスト + バックエンドIntegration Points付き) |
200
- | 10 | code-verifier ×2 | Design Docを既存コードに対して検証 |
201
- | 11 | document-reviewer ×2 | Design Docをレビュー(code-verifier結果をcode_verificationとして入力) |
202
- | 12 | design-sync | レイヤー間整合性検証 **[停止]** |
198
+ | 9 | technical-designer | バックエンドDesign Doc(バックエンドcodebase-analyzerコンテキスト付き) |
199
+ | 10 | code-verifier | バックエンドDesign Docを既存コードに対して検証(結果JSONはステップ12に`prior_layer_verification`として渡す) |
200
+ | 11 | document-reviewer | バックエンドDesign Docをレビュー(ステップ10の結果を`code_verification`、バックエンドcodebase-analyzer JSONを`codebase_analysis`として入力)**[criticalで停止]** — ここで構造的欠陥が出た場合はステップ12に進めない |
201
+ | 12 | technical-designer-frontend | フロントエンドDesign Doc(フロントエンドcodebase-analyzerコンテキスト + レビュー済みバックエンドDesign Doc + ステップ10の`prior_layer_verification` + UI Spec付き) |
202
+ | 13 | code-verifier | フロントエンドDesign Docを既存コードに対して検証 |
203
+ | 14 | document-reviewer | フロントエンドDesign Docをレビュー(ステップ13の結果を`code_verification`、フロントエンドcodebase-analyzer JSONを`codebase_analysis`として入力)**[criticalで停止]** — ここで構造的欠陥が出た場合はステップ15に進めない |
204
+ | 15 | design-sync | レイヤー間整合性検証 **[停止]** |
203
205
 
204
- ×2のステップはレイヤー毎に1回ずつ呼び出す。各呼び出しは独立しており、オーケストレーターが並列Agent呼び出しをサポートする場合は並列実行可能。
206
+ `codebase-analyzer ×2` の呼び出しは並列実行可能。バックエンド経路(ステップ9〜11)はステップ12の前に直列で完了させる。これによりフロントエンドdesignerは、document-reviewerによって構造的欠陥(AC欠落、Fact Disposition Tableの不備、Verification Strategy欠落)が既に検出され、code-verifierによってコード/ドキュメント不整合が既に列挙された状態のバックエンドDesign Docを読む。フロントエンドdesignerは `prior_layer_verification.discrepancies[]` とステップ11のレビュー指摘から、既知の問題を持つバックエンド契約を識別し、不安定な契約面を迂回した設計ができる(統合点を安定した契約へ切り替える、または依存を「## Cross-Layer Assumptions」に記録する)。
205
207
 
206
208
  **Design Doc作成時のレイヤーコンテキスト指定**:
207
209
  - **バックエンド**: 「PRD [パス] からバックエンドDesign Docを作成。コードベース分析: [バックエンドレイヤー用codebase-analyzerのJSON]。対象: APIコントラクト、データ層、ビジネスロジック、サービスアーキテクチャ。」
208
- - **フロントエンド**: 「PRD [パス] からフロントエンドDesign Docを作成。コードベース分析: [フロントエンドレイヤー用codebase-analyzerのJSON]。バックエンドDesign Doc [パス] APIコントラクトとIntegration Pointsを参照。対象: コンポーネント階層、状態管理、UI操作、データ取得。」
210
+ - **フロントエンド**: 「PRD [パス] からフロントエンドDesign Docを作成。コードベース分析: [フロントエンドレイヤー用codebase-analyzerのJSON]。レビュー済みバックエンドDesign Doc [パス] — このドキュメントからAPIコントラクトとIntegration Pointsを抽出し、フロントエンドのIntegration Point Mapに反映する。バックエンドレビュー指摘: [ステップ11 document-reviewerのcritical/important項目があればそれ]。prior_layer_verification: [バックエンドDesign Docに対するcode-verifierのJSON]。`prior_layer_verification.discrepancies[]`とレビュー指摘から不安定なバックエンド契約を識別する。検証済みと見なせる主張は検証結果JSONに明示されているものに限定する。未検証のまま依存せざるを得ない契約は、「## Cross-Layer Assumptions」セクションに正当化と検証先を記載する。UI Spec [パス] のコンポーネント構造を参照。対象: コンポーネント階層、状態管理、UI操作、データ取得。」
209
211
 
210
212
  **design-sync**: フロントエンドDesign Docをソースとして使用。`docs/design/`内の他のDesign Docを自動検出して比較。
211
213
 
@@ -288,12 +290,18 @@ requirement-analyzerが複数レイヤー(backend + frontend)にまたがる
288
290
  #### codebase-analyzer → technical-designer
289
291
 
290
292
  **codebase-analyzerへの入力**: 要件分析JSON出力、PRDパス(存在する場合)、元のユーザー要件
291
- **technical-designerへの入力**: codebase-analyzerのJSON出力をDesign Doc作成プロンプトの追加コンテキストとして渡す。technical-designerは`focusAreas`、`dataModel`、`dataTransformationPipelines`、`qualityAssurance`を「既存コードベース分析」「検証戦略」「品質保証メカニズム」の各セクションに反映する。
293
+ **technical-designerへの入力**: codebase-analyzerのJSON出力をDesign Doc作成プロンプトの追加コンテキストとして渡す。必須の使い道:
294
+ - `focusAreas` → Fact Disposition Tableの正典となるdisposition targetリスト(各focusAreaを1行に展開し、`fact_id`と`evidence`をそのまま引き継ぐ)
295
+ - `dataModel`、`dataTransformationPipelines`、`qualityAssurance` → 「既存コードベース分析」「検証戦略」「品質保証メカニズム」の各セクションに反映
292
296
 
293
297
  #### code-verifier → document-reviewer(Design Docレビュー)
294
298
 
295
- **code-verifierへの入力**: Design Docパス(doc_type: design-doc)。`code_paths`は意図的に未指定 — verifierがドキュメントからコードスコープを独自に発見する。
296
- **document-reviewerへの入力**: code-verifierのJSON出力を`code_verification`パラメータとして渡す。
299
+ **code-verifierへの入力**: Design Docパス(doc_type: design-doc)。`code_paths`は指定を省略する — verifierがドキュメントからコードスコープを独自に発見する。
300
+ **document-reviewerへの入力**: code-verifierのJSON出力を`code_verification`パラメータとして渡す。**加えて**、designerに渡したものと同じcodebase-analyzerのJSONを`codebase_analysis`として渡す。reviewerは`codebase_analysis.focusAreas`を使ってFact Disposition Tableのカバレッジを検証する。
301
+
302
+ #### code-verifier + document-reviewer → 次レイヤーのtechnical-designer(レイヤー横断フロー時のみ)
303
+
304
+ **次レイヤーのtechnical-designerへの入力**: レビュー済みの前レイヤーDesign Docパスに加えて`prior_layer_verification`(前レイヤーcode-verifierのJSON)を渡す。シーケンスは「レイヤー横断オーケストレーション」セクションを参照。`prior_layer_verification.discrepancies[]`と前レイヤーのレビュー指摘を用いて不安定な契約を識別する。検証済みと見なせる主張は検証結果JSONに明示されているものに限定する。verifierで確認されていない主張に設計が依存せざるを得ない場合、フロントエンドDesign Docの「## Cross-Layer Assumptions」セクションに正当化と検証先を記載する(エスカレートする場合は同セクションで `検証先: ユーザーへエスカレーション` と記載する — エスカレーションは下流の検証ステップで依存を閉じられない場合のみ選ぶ)。
297
305
 
298
306
  #### technical-designer → work-planner
299
307