breakdown-gate · git:20260710.670b61e · 2026-07-10 · sha256 0c61db0da9ea28ba
breakdown-gate git:20260710.670b61eA
Immutable. This exact content never changes and is served at /api/v1/blob/0c61db0da9ea28ba.
--- name: breakdown-gate description: "PlanGate 起動前の intake 判定(mode-classification にかける前の分割要否)。実装着手前にタスク粒度を5要素で判定し、必要なら分割候補を提示する。Use when: PlanGate を起動すべきか迷う軽量タスクの判定時、PBI 化の前に分割要否を確かめたい時、「タスクを分割して」「粒度が大きすぎる」「1 PRに複数目的が入っている」。出典: growth-core task-breakdown-gate 由来(#799)。" --- # Breakdown Gate > **Provenance(出典・vendoring 規約)**: growth-core `task-breakdown-gate` > (upstream: Growth-Teams-Agent@5219642 / 2026-07-03 時点)を PlanGate 向けに > 汎用化して取り込み(#799)。上流への自動追従はしない — 上流更新の反映は > **意図的に** diff をレビューして行う(provenance 追跡 + 意図的更新の vendoring 標準)。 実装着手**前**にタスクの粒度を判定し、粗すぎる場合は分割候補を提示する intake ゲート。growth-core `task-breakdown-gate` から蒸留。 ## Iron Law `ONE TASK = ONE PURPOSE, ONE PR-SIZED DIFF, ONE VERIFIABLE OUTCOME` 目的・差分・検証結果のどれか 1 つでも複数に見えたら分割を検討する。 ## 役割分界(オーガナイザー設計 / issue #799) | 段階 | 担当 | 本スキルとの関係 | |---|---|---| | 起動前 intake | **breakdown-gate(本スキル)** | 5 要素 + 粒度判定 → 分割候補提示 | | 起動後の規模判定 | `.claude/rules/mode-classification.md`(正本・不変) | 本スキルは **mode を決めない**(判定基準は参照のみ) | | plan 生成後の粒度検査 | C-1 ToDo チェック「タスク粒度」(不変) | 本スキルは plan 生成**前** | | 規模 L 以上の MVP scoping | `codex-mvp-split`(既存・`.agents/skills/codex-mvp-split/`) | 本スキルは**分割要否の判定**まで。規模 L 以上と判明したら codex-mvp-split で最小 MVP(Phase 1)分割へ | | plan 生成後の品質スコア | `plan-quality-check`(既存・`.claude/skills/` 専用) | 5 要素は同系だがタイミングが異なる(本スキル=plan **前** / plan-quality-check=plan **後**)。チェックリストの正本は各自 — 変更時は相互参照 | 本スキルは PlanGate の Mode 判定・C-1 レビューを代替しない。あくまで「PlanGate を起動する前に、そもそも 1 タスクとして扱ってよい粒度か」を判定する前段ゲート。 ## Common Rationalizations | こう思ったら | 現実 | |---|---| | 「まとめて実装した方が速い」 | 大きいタスクほど迷走する | | 「DB 変更と API 変更は一緒じゃないと意味がない」 | migration+API+test 同梱は最多の失敗パターン | | 「テストは後で」 | 後でとは永遠のこと | | 「Rollback は考えなくていい」 | 書けないなら設計が固まっていない証拠 | ## 手順 ### Phase 1: タスク一覧の確認 判定対象のタスク一覧を取得する。`docs/working/TASK-XXXX/todo.md` が既に存在する場合はそれを読み、記載されたタスクを入力とする。存在しない場合はユーザーの依頼文から判定対象タスクを列挙する。 ### Phase 2: 5 要素チェック 各タスクについて以下 5 要素を判定する。いずれかが「書けない」または「複数になる」場合は分割候補へ回す。 - □ **目的**(1 文・複数動詞なし) - □ **変更対象**(file / module / API / DB を限定可) - □ **完了条件**(観測可能・検証可能) - □ **検証方法**(unit / integration / manual / lint+typecheck+build) - □ **Rollback**(1 手順で書ける) ### Phase 3: 粒度サイズ判定 | 目安 | 判定 | |---|---| | 30 分〜2 時間 | 理想 | | 半日〜1 日 | 許容 | | 2 日以上 | 分割必須 | | DB + API + UI + テスト同梱 | 分割必須 | | 目的が複数(「〜して、さらに〜」) | 分割必須 | ### Phase 4: 分割候補の提示 分割が必要と判定したタスクについて、各分割候補が Iron Law(1 目的・1 PR 規模・1 検証)を満たす形で列挙し、依存順を明示する。分割後の各タスクは個別に PlanGate(`.claude/rules/mode-classification.md`)の Mode 判定にかける導線を示す。 ## 出力フォーマット タスクごとに以下を出力する: ```markdown ### タスク: <タスク名> | 要素 | 判定 | |---|---| | 目的 | OK / NG(理由) | | 変更対象 | OK / NG(理由) | | 完了条件 | OK / NG(理由) | | 検証方法 | OK / NG(理由) | | Rollback | OK / NG(理由) | **粒度判定**: 理想 / 許容 / 分割必須 **分割要否**: 不要 / 必要 **分割候補**(分割必要の場合): 1. <候補1>(依存: なし) 2. <候補2>(依存: 候補1完了後) ... ``` ## 関連 - `.claude/rules/mode-classification.md` — 規模判定の正本。本スキルは mode を決めない - `codex-mvp-split`(`.agents/skills/codex-mvp-split/`) — 規模 L 以上の最小 MVP(Phase 1)選定。本スキルの分割要否判定の後段 - `plan-quality-check`(`.claude/skills/plan-quality-check/`) — plan 生成後の品質スコアリング(本スキルは plan 生成前。変更時は相互参照) - [`subagent-driven-development`](../subagent-driven-development/SKILL.md) — 分割後の各タスクをサブエージェントへ委譲する際に使用 - [`brainstorming`](../brainstorming/SKILL.md) — 要件そのものが曖昧な場合はこちらを先に使う(本スキルは要件確定後の粒度判定)