Repository navigation
Closed
Labels
quality品質向上の Issue(棚卸しの品質の枠。.ndf/backlog.json の quality)品質向上の Issue(棚卸しの品質の枠。.ndf/backlog.json の quality)
Milestone
Description
経緯
スプリント s2089(#2089、開発ループのモード)の検査で、cross-review が上限(4 ラウンド)に達し、次の 2 件を「設計の変更が要る」として見送った(PR #2103 のレビューコメント)。どちらも sprint-state.py loop を明示して起動したときだけ通る経路で、ループを使わない起動の振る舞いは変わらない(#2089 の受け入れ条件 1・18)。
問題
- まとめへ渡す
--record-prが配布の記録の PR ではない(plugins/ndf/scripts/lib/sprint_loop.pyのgate2_pipeline)- 承認ゲート 2 の後の続きを組むとき、
--record-prに止まった記録のvalues.pr(判定に渡した検査のスプリント PR)を使っている - 雛形の経路では、まとめがスプリント PR を配布の記録として読む。配布済みでも課題が閉じられず、次の周回で同じ課題が選び直される
- 本番の配布の記録の PR は、承認ゲート 2 の時点ではまだ無い。設計文書
issues/issue-2089-design.mdの 742・787 行が今の形を決めている
- 承認ゲート 2 の後の続きを組むとき、
- manual ステージを含む配布経路で、まとめが手作業の前に走りうる
- 手で届ける本番や別のコマンドの承認ゲート 2 を終える前に、まとめの queue へ進み、周回を完了扱いにするおそれがある
直し方の候補(設計で決める)
- A: 本番の実行の後に配布の記録の PR を読み、まとめを組み直す手順を足す
- B: queue の
{queue_pr:<名>}の探し場所を周回の外のプランへ広げる(queue の契約の変更)
受け入れ条件
- 承認ゲート 2 の後のまとめが、本番の配布の記録の PR を
--record-prに受け取り、配布した課題を閉じる - manual ステージを含む経路では、手作業を終えるまでまとめを始めない
- ループを使わない起動の出力と終了コードは変わらない
#2089 のリリース後テスト(承認ゲート 2 を通る周回)で再現を確かめる。
再現の確認(#2089 のリリース後テスト、ndf 10.21.0、2026-10-25 12:55 JST)
承認ゲート 2 を通る実際の周回はまだ流していない。導入した 10.21.0 と同じ中身(タグ ndf--v10.21.0、導入物と diff -rq で一致)で、ループのテストの fixture(scripts/tests/test_sprint_loop.py の env・built_lap)を使い、gate2_pipeline を直接呼んで確かめた。
| 問題 | 結果 | 確かめたこと |
|---|---|---|
1. --record-pr が配布の記録の PR ではない |
再現した | 止まった記録の values.pr に 2103 を入れて gate2_pipeline を呼ぶと、まとめを組む build_close に record_pr=2103 が渡った。配布の記録の PR を読む経路は無い(plugins/ndf/scripts/lib/sprint_loop.py の gate2_pipeline) |
| 2. manual ステージを含む経路で、まとめが手作業の前に走りうる | 再現した(合成したマニフェスト) | 本番のプランが bump のステップを持ち、マニフェストの本番の後に {"name": "リリース", "manual": "/ndf:release"} を足すと、続きは supervise.py run <本番> --from bump && supervise.py queue <まとめ> ... && wait && loop lap の 1 行になり、手作業の /ndf:release が出てこない。stages_after(plugins/ndf/scripts/lib/sprint_loop_gate.py)が plans を持たないステージを落とすためである。本番のプランが続けるステップを持たない(gate-2 のプラン)ときは「手で行う本番のステージを終えてから」の文が先に付く。loop sprint が最初に組むパイプラインでは手作業が先に出る(test_manual_release_stage_holds_the_close_until_it_is_done) |
実際の周回での再現は、ループを有効にした検証用のリポジトリで承認ゲート 2 を通る周回を流すときに確かめる(#2089 のリリース後テストでは費用の理由で流していない)。
進行
モード: — / 進め方: auto
- 要求と受け入れ条件
- 作業場所の用意 — 2026-11-01 02:54
- 設計
- 素材の収集と出典の確定
- ドキュメント再構成
- ドキュメントレビュー
- 計画 — 2026-11-01 02:53
- 実装 — 2026-11-01 02:54
- 構造改善 — 2026-11-01 05:23
- 実装レビュー — 2026-11-01 06:24
- 完了判定 — 2026-11-01 04:58
- Pull Request — 2026-11-01 05:12
- 確定仕様化 — 2026-11-01 07:43
- 後片付け — 2026-11-01 07:42
- 配布 — 2026-11-01 07:24
- 体裁レビュー
- リリース後テスト — 2026-11-01 07:59
- 振り返り — 2026-11-01 08:08
- 棚卸し — 2026-11-01 08:21
振り返り: #2352 (comment)
Metadata
Metadata
Assignees
Labels
quality品質向上の Issue(棚卸しの品質の枠。.ndf/backlog.json の quality)品質向上の Issue(棚卸しの品質の枠。.ndf/backlog.json の quality)
Activity
takemi-ohama commentedon Nov 1, 2026
スプリント(スプリント m26-3の後片付け)を通りました