中断と再開
途中で止まった作業をどこから再開できるのか、進捗はどのファイルに記録されているのか
長いパイプラインは、途中で止まります。セッションが切れることもあれば、 レビューでブロッカーが出て人の判断待ちになることもあります。 NexusArchitectは、進捗をファイルに書きながら進むので、同じコマンドをもう一度打てば続きから再開します。
進捗の記録場所は、productパイプラインとバックログ側で別々です。
| 記録ファイル | 誰が書くか | 何が入っているか |
|---|---|---|
work/pipeline-progress.json |
/product:startと各フェーズ |
フェーズごとの状態(pending / in_progress / completed / failed / skipped)、検証ゲートの判定、出力先 |
reports/backlog/backlog-manifest.json |
export-backlogと実装系スキル |
Epic・Sub-Epic・Issueごとのimpl.statusと、作成済みIssueのURL |
GitLab/GitHubのstatus::*ラベル |
実装系スキル | 各Issueの現在の段階。ステータスラベルの状態機械を参照 |
今どこにいるかを見る
/product:report-status --once
フェーズごとの状態、宣言された出力ファイルがいくつ存在するか、検証ゲートの判定、
そして次に打つべきスラッシュコマンドまで表示されます。
--onceを付けると1回だけ描画します(付けない場合は10秒ごとに更新されるライブ画面になります)。
productパイプライン以外の状況も、同じ画面のタブ切り替え(Tabキー)で見られます。 Architect(architectパイプライン)、Code Generation、Backlog Deliveryの3つです。 画面の詳しい読み方はライブダッシュボードを参照してください。
企画(product)を再開する
/product:start --profile=<前回と同じプロファイル>
pipeline-progress.jsonでcompletedになっているフェーズは飛ばされ、
止まったところから続きます。プロファイルは前回と同じものを指定してください。
違うプロファイルを渡すと、実行するフェーズの範囲そのものが変わります。
バックログを再開する
export-backlogは何度実行しても同じ結果になるように作られています。
すでにremote.url(作成済みIssueへのリンク)が記録されているアイテムは飛ばすので、
同じIssueが二重に作られることはありません。
実装から先は、Issueごとの段階を見て再開します。
/architect:deliver-backlog --epic=E1
完了したIssueは飛ばされ、途中のIssueはその段階から続きます。
どの段階から入るかはimpl.statusとstatus::*ラベルから判断されるので、通常は指定不要です。
判断を上書きしたいときだけ--fromを使います。
/architect:deliver-backlog --epic=E1 --from=review
ブロッカーで止まった場合
review-issueの自動修正ループが上限(既定3回)に達しても直らなかった場合、
Issueはstatus::blockedになり、判断を求めるコメントが書き込まれます。
これは異常終了ではなく、人が決めるべきところまで来たという合図です。
コメントの内容に対応したら、同じコマンドで再開できます。