--- name: sdd-tdd-cycle description: "タスク一覧のタスクを、テスト先行(Red・Green・Refactor)で実装し、確認の結果をタスク一覧に残すときに使う。" user-invocable: true --- # テスト先行の実装 入力: 変更 ID、タスク(`tasks.md` の行)、承認済みの範囲。 1. タスクの状態を `doing` にする。関係するコードとテストだけを読む。 2. Red: 期待する動きのテストを書き、実行して、意図した理由で失敗することを確かめる。構文・依存・環境のエラーは直してからやり直す。バグ修正は、現象を再現するテストから始める。 3. Green: 最小の実装で成功させる。既存の書き方に合わせ、範囲外の整理や仕様の補完をしない。 4. Refactor: 振る舞いを保って整理し、同じテストと関連する回帰テストを再実行する。 5. 文書・設定のタスクは、タスクに書いた確認方法を使い、無理に Red を作らない。 6. `tasks.md` の結果に、実行したコマンドと結果の要点と、確認したときのコミットを書き、状態を `done` にする。実行できなかったら「未実施」と理由を書き、`blocked` にする。 7. コマンドは目的とともに示して実行する(ホストの確認に従う)。外部サービスへの書き込みや本番の資格情報は使わない。 停止: 仕様の変更が必要、意図しない失敗、範囲外の変更・削除・新しい依存が必要、環境が足りない。 出力: 変更したファイル、各タスクの状態と結果、未実施のこと、質問。