Skip to content

cruise: 周ごとに訊く判断を、親 Issue の線として起動時に確かめて台帳から各周へ渡す(#458) - #463

Merged
hdknr merged 9 commits into
mainfrom
issue/458-cruise-confirmed-lines
Oct 27, 2026
Merged

hdknr merged 9 commits into
mainfrom
issue/458-cruise-confirmed-lines

Conversation

@hdknr

@hdknr hdknr commented Oct 27, 2026

Copy link
Copy Markdown
Owner

Fixes #458

何を変えたか

親 Issue に cruise: <項目> = <値> の行(線)を書けるようにし、起動時に利用者が確かめた値だけを台帳に残して各周へ渡す。

  • parent-issue.py — 線の行を読む(コードフェンス・HTML コメント・引用の中は読まない)・指紋に含める・apply で台帳に残す・既存台帳との違いを名指しする(台帳は変えない)・「チェックリストが無い」と「全部済み」を分ける。本番反映 の行は無視し、「無視した行」として出す
  • ledger.py — 台帳に任意の lines(値・出所・更新時刻)と lines コマンド(--source 必須・本番反映 を拒む)、Issue ごとの decisions(要確認 Issue の番号)。線を持たない既存の台帳はこれまでどおり読む
  • 規範 — 原本は references/absent-lines.md(読み順: 台帳の確かめた値 → .claude/dev-loop.md → 既定/訊く。実機確認・マージ は --absent の周だけに効き、仕様の穴 は居る周でも効く)。SKILL.md 手順 3・cruise/SKILL.md・ledger.md・spec-gap.md は指し先を持つだけ
  • 版: dev-loop 1.57.1 → 1.58.0(能力の追加なので minor)
  • 公開ページ docs/plugins/dev-loop-cruise.md に、親 Issue に線を書く例と、戻ってきたら見るものを足した

受入基準(不変条件 A〜I × 経路)は docs/plans/issue-458.md にある。

検証

  • python3 scripts/check-all.py: 51/51 緑(main の取り込み d617221 の後)
  • 関門の結果と残課題は PR コメントに書く

🤖 Generated with Claude Code

hdknr and others added 9 commits October 27, 2026 11:31
- parent-issue.py: 親 Issue の cruise: の行(線)を読み、show で示して指紋に含め、apply で台帳に残す。
  本番反映は無視して示す。チェックリストが無いことと全部済んだことを分けて言う
- ledger.py: 確かめた線(lines)と、推奨で決めた要確認 Issue の番号(decisions)を持つ
- absent-lines.md: cruise で確かめた線の読み順(台帳 → .claude/dev-loop.md → 既定)と効く周。
  仕様の穴は利用者が居る周でも効き、要確認 Issue に印を付けて後で承認・修正できる
- dev-loop 1.58.0

Fixes #458

Skip-description-sync: dev-loop スキルの frontmatter は cruise・不在の線・直す線・仕様の穴に触れておらず、要約は変わらない
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- absent-lines.md: 居る周で `仕様の穴` が効くのは台帳の値だけで、`.claude/dev-loop.md` の `不在の線:` は不在の周だけ
- parent-issue.py の show/apply と cruise/SKILL.md §2・公開ページの「書いていない線」の説明を、直す線と居る周の扱いに合わせる
- 公開ページの「直す線も確認の Issue を立てる」という誤りを直す

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@hdknr

hdknr commented Oct 27, 2026

Copy link
Copy Markdown
Owner Author

レビュー結果(dev-loop 手順 6)

関門は 2 パスで打ち切った。採否の表は docs/plans/issue-458.md の「既知の限界・決着済みの論点」にある。

関門 結果
Verifier 1 パス目(dev-loop:dev-loop-verifier・sonnet) 反証 1 件(受入基準を破るものは 0 件。lines 失敗時の unlink が未テスト → 残課題 CR#5)
/code-review 1 パス目(high) 指摘 10 件。直した 2 件(CR#1 居る周に .claude/dev-loop.md の 不在の線: が効くと読める・CR#9 書いていない線の文言と公開ページの食い違い)、残課題 8 件
Verifier 2 パス目 反証 1 件(cruise/SKILL.md §3 の線の出所 → 直した)
/code-review 2 パス目(high) 指摘 8 件。直した 4 件(観測が時刻を含み、全変異が「殺せた」になる・等価変異・§3/§6 の線の出所・§2 の答えが返らないとき)、残課題 4 件
狭いパス(Verifier・sonnet・git diff 9c9556e 3f7f212) 反証 2 件。時刻を外した修正は陽性対照つきで確かめた(直す前の形では何もしない変異が「殺せた」になり、今の形では殺せない)

狭いパスの指摘(人間が「この PR で直す」を選んだ)

  • NP#1 dev-loop/SKILL.md の 2 箇所(マージの前の 1 文・待ち時間の節の不在の線)が、線の出所に台帳の確かめた線を含めていなかった(CR2#3 の直し残し)→ 982c805 で直した
  • NP#2 test-ledger.py の変異のコメント「片方だけ外しても挙動は変わらない」は、cmd_lines 側にしか当てはまらない → 982c805 で直した。直したコメントの主張は変異 2 本で当てて確かめた(validate だけ外す → 殺せる、cmd_lines だけ外す → 殺せない)
  • この 2 件の修正は、どちらの関門にも当て直していない(手順 6 の規定で、狭いパスの指摘は当て直さない)。レビューで見てほしい

未証明(人間レビューへ)

  • 実際に cruise を回したとき、利用者が居る周で、確かめた 仕様の穴 = 推奨で決めて起票 に従い訊かずに推奨で進むか(モデルの振る舞い)。この周では Eval を作っていない。規範の文面(references/absent-lines.md の「cruise で確かめた線」)を見てほしい

残課題(起票しない。手順 8 で人間が決めた)

  • CR#2 再開時の確かめ直しは手で ledger.py lines を打つことになり、指紋が残らない
  • CR#3/CR2#5 lines は全置き換えなので、起動時の 直す線 の書き込みが apply の線や出所(指紋)を落としうる(§2 には一緒に渡すと書いてある)
  • CR#4 decisions も読んでから足して書く形なので、番号を落としうる
  • CR#5 ledger.py lines が失敗したときの unlink を外してもテストが緑のまま(テストの穴)
  • CR#6 字下げしたコードブロックの中の cruise: 行も読む
  • CR#7 LINES を読めないときの終了コード 4 が未テスト
  • CR#8 apply が既存台帳の lines を検証せずに読む(各周は ledger.py show で 4 になる)
  • CR#10/CR2#6 引用の > cruise: や - cruise: が「線の形ではない」として出る(狭い側に倒れる)
  • CR2#7 全角コロンの cruise: の行は黙って読まれない(「書いていない」と出て、狭い側に倒れる)
  • CR2#8 decisions は文字列で、deps はリストのまま(形が揃っていない)

その他

  • 生成物: docs/plugins/dev-loop-design.md §8.2 の生成ブロック(skill-metrics.py --check 緑)
  • 交絡: 実験なし
  • この周の起票: 0 件
  • check-all.py: 51/51 緑(main の取り込み d617221 の後)

@hdknr
hdknr merged commit bd8fa53 into main Oct 27, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

cruise: 周ごとに訊く判断(直す線・仕様の穴の扱い)を、台帳を作るときに 1 回だけ訊いて各周へ渡す

1 participant