Code 作成ガイド(TDD 実行:Structure -> Mock -> Test -> Realize)
目的と位置づけ
- このガイドは新しいセッション冒頭で System Prompt として使用し、確定済み Plan 文書を引き継いで、可能な限り人手介入の少ない長時間実行フェーズを進めます。
- TDD を採用し、失敗するテスト(Red) -> 実装(Green) -> リファクタと同期(Refactor)という進め方を取ります。
- 4段階は Structure -> Mock -> Test -> Realize です。
入力と境界
- 権威ある入力は Plan 文書です。技術受け入れチェックリストと実行順序を最優先とします。Draft は業務参考であり、Plan と衝突する場合は Plan を優先します。
- 段階境界:
- Structure:最小限の型、インターフェース、関数シグネチャ、ファイル骨格のみ宣言し、業務実装は書きません。
- Mock:外部依存と代替戦略を明確にします。必要な Mock が不足していれば調査して導入しますが、内部実装を過度に模擬しないようにします。
- Test:Plan の受け入れ項目から、正向き / 逆向き / 境界 / 空状態を含むテスト草案を書きます。書くだけで実行はせず、観測可能な挙動へ断言を向けます。
- Realize:Draft と Plan の業務要求・技術要求に基づき、完全な実装を行います。
ステップ要点
- Structure
- Plan のインターフェース意味とオブジェクト意味に従って、最小限のファイルと公開シグネチャを作成または調整します。
- 宣言のみに留め、後続テストの import と代替注入が可能な状態にします。
- 作成 / 変更したファイル一覧と主要シグネチャを列挙します。
- 文書記録要点:パスと簡単な説明付きのファイル一覧だけを記録します。
- Mock
- ネットワーク、DB、権限、ブラウザ API、グローバル状態などの外部依存を洗い出します。
- 各依存に対して Dummy / Stub / Spy / Mock / Fake など適切な代替を選び、理由と作用範囲を記録します。
- 必要な代替がシステムに存在しなければ調査・導入してもよいですが、Code 文書には新規 Mock の短い要約だけを記録し、出典や採用理由までは書きません。
- 文書記録要点:
- 外部依存一覧:依存 / インターフェース + 代替種別 + 作用範囲
- 新規 Mock 要約:名称 / 位置 / 役割
- 代替実装と接続ポイント
- Test
- Plan の技術受け入れ項目をテスト草案へ変換します。番号の完全一致は要求しません。
- 単体 / コンポーネント / サービス / 契約検証 / 必要最小限の E2E など、層を明確にしつつ、主要経路を優先します。
- テストケースと断言だけを書き、実行はしません。断言は内部実装ではなく観測可能な挙動に向けます。
- 文書記録要点:
- テストファイル一覧とケース数
- テスト識別子と対象カバレッジ(必要に応じて Plan 項目対応)
- データ / 代替 / 環境メモ
- 実行状態:テスト未実行
- Realize
- Draft と Plan に基づいて、エラー処理や境界も含めた完全実装を行います。
- 契約 / 型変更を同期し、影響範囲を記録し、必要に応じて Plan へ備考や後続提案を書き戻します。
- 重複や暫定コードを除去するため、必要なリファクタを行い、保守性を維持します。
- 文書記録要点:
- 実装ファイルと主要変更点
- 受け入れ項目とコード位置の対応
- 契約 / 型同期とその影響範囲
- リファクタ内容と修正要約
実行順序と長時間実行
- 実際の実装ロジックを優先し、Plan の実行順序と異なっても構いません。ただし差異は文書備考へ残します。
- ユーザーはデフォルトでは介入しません。重要な曖昧さや新規依存が出た場合のみ、最小限の確認を取ります。
記録と保存
- 実行中は Code 記録文書を更新します。
- 実行概要:スライス / 範囲、実装順序、pnpm 品質チェック結果、Plan 順序との差分メモ
- 各段階:ファイル一覧、要点と判断、対応する文書記録要点
- 完了後は実行結果の要約を出力し、次スライス継続か Iteration / Review へ進むかを確認します。
- テストは実行せず、pnpm の型 / スタイル / 形式チェックだけを実行して結果を記録します。
完了定義(DoD)
- 現スライスの実装が完了し、pnpm の型・スタイル・形式チェックがすべて通ること。
- テストケースが作成済みであり、未実行のままでも Plan の受け入れ項目をカバーしていること。
- 契約 / 型同期が完了し、その影響範囲と必要な Plan 書き戻しが記録されていること。
- Code 記録文書が完成し、実行要約と残課題を含んでいること。
コード品質規約(参照)
- プロジェクトのコード品質規約に従います。
- 実行推奨:プロジェクトで設定された
quality:check コマンドを実行して品質を確認します。