作業が止まらなければならないとき
スキップは借りであり、借りは書き留める。セキュリティクラスの理由は黙ってスキップせず、プランナーの決定にもならない。/flow auto は段階的だ:グリーンな作業は聞かずにマージでき、セキュリティクラスの作業は HALT する。
このページはそれらの規則のオペレータホームだ。メンテナファイルはリポジトリに正準として残し、フッターにだけリンクする。
セキュリティクラス停止規則
Section titled “セキュリティクラス停止規則”これらのクラスは「など」で黙った残りを残さない。すべて halt する。
- authentication / auth(認証)
- authorization(認可)
- admin-surface exposure(管理画面の露出)
- tenancy(テナンシ)
- payments(決済)
- data loss / data migration(データ喪失 / データ移行)
- removing or weakening validation(バリデーションの除去・弱体化)
いずれかに触れたら:
- オペレータが露出を
DEBT.mdに書面で受け入れる。あなたが代わりに決めない。 /flow autoではこれは Tier-C HALT だ。止まって聞く。進まない。- 未解決のセキュリティdebtを残したまま実行を閉じるには、オペレータの明示的な承認が要る。「一時的」は承認ではない。
debtでゲートをスキップする
Section titled “debtでゲートをスキップする”スキップは正当だ。黙ったスキップは正当ではない。
先に露出を記録し、それからスキップする:
/flow debt add "skip 01-research" "<露出を具体的に>" "<閉じる条件を名指し>"/flow skip 01-research --reason "…"ガードはこの順だ(上のクラスリストを参照する。それを短いものに置き換えない):
- ステージ 05(contract)は決してスキップできない。代わりに契約をプロジェクトタイプに適応させる。Contractが決してスキップできない理由 を参照。
- セキュリティクラスの理由は halt する。オペレータが露出を
DEBT.mdに書面で受け入れる。プランナーの決定には決してならない。 - 無関係な未解決debt行ではステージは開けない。
/flow skipが進むのは、未解決のdebt行がそのステージを正確に名指しし、理由がセキュリティクラスでないときだけだ。- 正当なスキップの後、
planning_completeはそのステージを許容し、カードが永遠に止まらないようにできる。debt行は未解決のまま残る。
DEBT.md
Section titled “DEBT.md”- 最初のスキップが
DEBT.mdを作る。 - 行の形:スキップしたもの、具体的な露出、名指しの閉鎖条件、日付、カード。
- [ ] DEBT: <スキップしたもの> -- <露出> -- close before: <名指しの条件> -- opened <日付> (cards: C-NNN...)- 未解決のセキュリティdebtを残したまま実行を閉じるには、オペレータの明示的な承認が要る。「一時的」は承認ではない。
- debtで止まったカードは、debtを名指すPARTIAL証拠付きで
todoのままにする。半端なdoneにしない。doneに切り上げない。
autoビルドを実行する
Section titled “autoビルドを実行する”/flow auto はプレフライトする。通過したら共有auto状態を書く。/flow auto stop で手動に戻る。隠しバイパスはない。
プレフライトは fail-closed だ:
- すべてのカードに分類済みリスクがある(
unknownなし) - セキュリティクラスのカードには
DEBT.md内の別人による承認が必要 - ステージ05が現行の
semantic_gate証跡を持つ
次にカードごとのループをオペレータ言語で言うと:tierを分類し、分離worktreeでスコープ付きサブエージェントでビルドし、レビューし、証跡を取り、check し、マージし、デプロイし、ライブ検証し、現実世界の証拠を貼り、doneにする。ジャーナルに穴を開けないよう /flow workspace 動詞を使う。素の git worktree add は何も記録しない。
| Tier | 内容 | 動作 |
|---|---|---|
| Tier-A | グリーン、セキュリティクラスなし | 聞かずに自動マージ。 |
| Tier-B | 修復可能 | freshなサブエージェントによる1回の修復(ツーストライク)。通常カードの最初の赤で課金系クロスベンダーエンジンは呼ばない。 |
| Tier-C | セキュリティクラスの接触 または debtスキップ | HALT。オペレータが DEBT.md に書面で受け入れる。プランナー決定は不可。 |
ハード上限(反復回数 / トークン / 実時間)は必須だ。いずれか超過 → HALT + 報告。上限のないループはアンチパターンだ。
すべてのゲートは機械的信号で決める(実exitコード、実 ## Verify、ライブチェック)。エージェントの自己評価では決してない。
並行マージ競合 → haltして再計画。重なりチェックが出し抜かれた。
実行が自ら止まるとき
Section titled “実行が自ら止まるとき”実行はHALTして報告する。黙って続行しない。以下いずれかで止まる:
- ハードストップ上限の超過(反復回数 / トークン / 実時間)。
- ツーストライクで修復できない赤のグラウンドトゥルース信号。
- Tier-Cセキュリティクラスの接触。
- 並行ビルド中のマージ競合(allowed-files重なりチェックが出し抜かれた:止まって再計画)。
- 追加コンテキストでも解決できないサブエージェントからの
BLOCKED/NEEDS_CONTEXT。
halt時:何が止めたか、何が終わったか、未解決のdebtやブロッカー、2〜4の具体的な選択肢を述べる。リグレッションを迂回パッチしない。オペレータに決めさせる。
メンテナのホーム(公開ページではない):skills/flow/references/debt-and-halts.md、skills/flow/references/auto-run.md、skills/flow/references/attestations.md。