Skip to content

test(pr-monitor): companion helper の署名整合を compile-time で固定する (nightly-todo 順位 193) - #451

Merged
aloekun merged 2 commits into
masterfrom
claude/nightly-193
Aug 27, 2026
Merged

test(pr-monitor): companion helper の署名整合を compile-time で固定する (nightly-todo 順位 193)#451
aloekun merged 2 commits into
masterfrom
claude/nightly-193

Conversation

@nightly-todo-aloekun

@nightly-todo-aloekun nightly-todo-aloekun Bot commented Aug 26, 2026

Copy link
Copy Markdown
Contributor

台帳 (docs/claude-code-web-tasks.md) の無人可タスク 順位 193
夜間ループ (nightly-todo workflow) が無人で実装した PR です。

  • 内容: Companion helper group の署名整合を compile-time で検証するテスト(関数ポインタ cast による witness)を追加
  • 事前フィルタ: 夜間 workflow が ubuntu 上で cargo test --workspace +
    cargo clippy --workspace --all-targets -- -D warnings を回して green を確認済み
    (agent の自己申告ではなく workflow が回し直した結果)。これはコストフィルタで
    品質の保証ではありません — 単一 OS で --ignored も hooks smoke も含みません
  • 品質の保証: 本 PR に紐づく ci.yml (windows-latest + ubuntu-latest) のチェックを見てください
  • ゲート: cli-autonomy-gate --operation autonomous-pr (kill-switch + 背圧) を通過

マージ判断は人間が行います (ADR-052 の commitment 点)。CI が緑で内容が台帳の
意図に沿っていればマージしてください。ずれている場合はクローズを —
採用率は WP-18 の受け入れ基準の測定対象です。

close する場合の lane 操作 (ADR-072 決定 20): 人間が引き取るなら台帳の
無人可 へ変更してください。 のまま close すると、
決着済み PR のブランチ掃除の後にこの順位が再び選択されます (= 再投入の意思表示)。

run: https://github.com/aloekun/claude-code-hook-test/actions/runs/33000789454

Summary by CodeRabbit

  • テスト

    • 関連する補助機能のインターフェース整合性を、ビルド時に検証するテストを追加しました。
    • 将来の変更による不一致を早期に検出できるようになりました。
  • ドキュメント

    • 完了した検証タスクを、複数のタスク一覧から削除して整理しました。

nightly-todo and others added 2 commits August 26, 2026 18:41
実装完了は cli-ledger-cleanup が台帳の宣言と PR の変更を突き合わせて判定済み。マージと後始末を原子的にするため PR へ同梱する。
@aloekun

aloekun commented Aug 26, 2026

Copy link
Copy Markdown
Owner

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Aug 26, 2026

Copy link
Copy Markdown
✅ Action performed

Review finished.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@coderabbitai

coderabbitai Bot commented Aug 26, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: c945e9fc-4ae3-4153-a0f8-28e3ef2c66f2

📥 Commits

Reviewing files that changed from the base of the PR and between 158de78 and fd97d58.

📒 Files selected for processing (4)
  • docs/claude-code-web-tasks.md
  • docs/todo-summary.md
  • docs/todo12.md
  • src/cli-pr-monitor/src/fix_commit/sweep.rs
💤 Files with no reviewable changes (3)
  • docs/todo-summary.md
  • docs/todo12.md
  • docs/claude-code-web-tasks.md

Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review.


📝 Walkthrough

Walkthrough

3つの PR 範囲用テストヘルパーの関数シグネチャを compile-time test で検証します。対応するタスク記録を削除します。

Changes

署名整合性検証

Layer / File(s) Summary
compile-time 署名検証と台帳更新
src/cli-pr-monitor/src/fix_commit/sweep.rs, docs/claude-code-web-tasks.md
3つのテストヘルパーを期待される関数ポインタ型へキャストするテストを追加しました。対応する順位193のタスク行を削除しました。

Estimated code review effort: 1 (Trivial) | ~5 minutes

Merge Risk: ⚪ Minimal · up to fd97d

This PR adds compile-time signature-consistency coverage and related task-documentation updates; no actionable merge-blocking risk remains after normal checks and review.

Suggested reviewers: aloekun

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 50.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 2 functions across 1 files. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed タイトルは、sweep.rs に Companion helper の署名整合性を compile-time で検証するテストを追加した主要変更を正確に示しています。台帳項目の削除も順位 193 として明記されています。
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
  • Fix all pre-merge checks with AI
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch claude/nightly-193

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions

Copy link
Copy Markdown
Contributor

🤖 PR Monitor 分析 (GitHub Actions バックストップ)

  • トリガー: issue_comment (created) / 実行 run
  • CI: 未確定 — rust (ubuntu-latest) pending / rust (windows-latest) pending / request pass / CodeRabbit pending (レビュー処理中)。mergeStateStatus は BLOCKED
  • レビュー状況: 未実施 (陽性証拠なし) — pulls/451/reviews 0 件、pulls/451/comments (インライン) 0 件、CodeRabbit は head fd97d58 に対する walkthrough が「processing new changes... please wait」段階で未完了 (@coderabbitai review コマンドへの ack のみ)
  • Verdict: user_decision

Applicable Findings (Critical / High / Major)

該当なし (レビュー指摘 0 件)

次のアクション

  • CodeRabbit のレビュー完了を待ってから再確認する (本 backstop は待機・ポーリングを行わない方針のため、次回イベントでの再評価に委ねる)
  • CI (rust (ubuntu-latest) / rust (windows-latest)) の pending 解消を確認する
  • 診断参考: diff は src/cli-pr-monitor/src/fix_commit/sweep.rs に compile-time signature witness test を追加 (nightly-todo 順位193採用分)、docs/todo12.md / docs/todo-summary.md / docs/claude-code-web-tasks.md から完了済みエントリ (順位193) を削除する台帳クリーンアップ。変更の性質上リスクは低いが、CI・レビュー完了は別途必要

aloekun added a commit that referenced this pull request Aug 27, 2026
Phase 0 / Phase D の 8 PR (#442 / #445-450 / #452) の post-merge feedback を一括採否した。
全 55 提案のうち analyzer の採用候補は 24 件で、そこからルールを増やすだけの 10 件を
却下し 12 件を採用、PR 6 本に束ねた。

却下の根拠はユーザー決定 (2026-08-27):「これまでにもルールを追加して溜飲を下げ、
ルールを破るケースが多発した」。本計画 § 根因 の 3 番目 (「ルールを作らないルール」
自身が強制されていない) と同じ判断で、Phase 5 の撤1-③ が置くゲートの対象を自分で
増やさない運用でもある。却下 10 件のうち 3 件は採用側の機構が同じ問題を塞ぐ。

- F1 / F6 は Phase 1 の前に置く (軽い後始末)。F1 は D3 の takt fix step が作った
  重複定義の解消、F6 は既存機構の記述
- F3 / F4 / F2 / F5 は Phase 1 の後に置く。機1 が検出条件と allowlist を確定させ、
  F5 はその条件を実コードで検証・補強する側に回る

あわせて Phase D と PR T の実走確認を完了として記録した。夜間 run 33000789454 が
success で完走し順位 193 の PR #451 を作成したことで、Phase 0 の PR T で取れて
いなかった「完走 green」の観測が取れている。

取り下げ 1 件 (mutation 検査の CI 固定化) は既存起票の順位 36 / 38 と重複するため
起票しない。対応不要 1 件 (数値記述訂正) は PR #452 で実施済み。

CodeRabbit #453 の指摘 3 件を反映:
- 状態行が「実走確認 1 件のみ残」のままで、本文の観測完了記録と矛盾していた。
  bugfix-batch-plan.md 側の残観測トラッキングと PR T の状態も観測完了へ更新した
- **F5 の根拠と実行順が矛盾していた**。「F5 で得る形が機1 の検出条件を詰める材料に
  なる」と書きながら F5 を Phase 1 の後に置いていた。機1 は分離済みなら通すので
  F5 が塞ぐ穴 (繋ぎ目が未固定) は機1 の射程外である、という関係へ説明を正した
- F2 の対象パスが「CI」としか書かれておらず、`.github/workflows/` を触るなら
  Guard 禁止パス該当で auto lane 不可になる点が分類から漏れていた。置き場所を
  着手時に決めることと、決めた時点の分類を明記した
aloekun added a commit that referenced this pull request Aug 27, 2026
Phase 0 / Phase D の 8 PR (#442 / #445-450 / #452) の post-merge feedback を一括採否した。
全 55 提案のうち analyzer の採用候補は 24 件で、そこからルールを増やすだけの 10 件を
却下し 12 件を採用、PR 6 本に束ねた。

却下の根拠はユーザー決定 (2026-08-27):「これまでにもルールを追加して溜飲を下げ、
ルールを破るケースが多発した」。本計画 § 根因 の 3 番目 (「ルールを作らないルール」
自身が強制されていない) と同じ判断で、Phase 5 の撤1-③ が置くゲートの対象を自分で
増やさない運用でもある。却下 10 件のうち 3 件は採用側の機構が同じ問題を塞ぐ。

- F1 / F6 は Phase 1 の前に置く (軽い後始末)。F1 は D3 の takt fix step が作った
  重複定義の解消、F6 は既存機構の記述
- F3 / F4 / F2 / F5 は Phase 1 の後に置く。機1 が検出条件と allowlist を確定させ、
  F5 はその条件を実コードで検証・補強する側に回る

あわせて Phase D と PR T の実走確認を完了として記録した。夜間 run 33000789454 が
success で完走し順位 193 の PR #451 を作成したことで、Phase 0 の PR T で取れて
いなかった「完走 green」の観測が取れている。

取り下げ 1 件 (mutation 検査の CI 固定化) は既存起票の順位 36 / 38 と重複するため
起票しない。対応不要 1 件 (数値記述訂正) は PR #452 で実施済み。

CodeRabbit #453 の指摘 3 件を反映:
- 状態行が「実走確認 1 件のみ残」のままで、本文の観測完了記録と矛盾していた。
  bugfix-batch-plan.md 側の残観測トラッキングと PR T の状態も観測完了へ更新した
- **F5 の根拠と実行順が矛盾していた**。「F5 で得る形が機1 の検出条件を詰める材料に
  なる」と書きながら F5 を Phase 1 の後に置いていた。機1 は分離済みなら通すので
  F5 が塞ぐ穴 (繋ぎ目が未固定) は機1 の射程外である、という関係へ説明を正した
- F2 の対象パスが「CI」としか書かれておらず、`.github/workflows/` を触るなら
  Guard 禁止パス該当で auto lane 不可になる点が分類から漏れていた。置き場所を
  着手時に決めることと、決めた時点の分類を明記した
@aloekun
aloekun merged commit 4c11781 into master Aug 27, 2026
4 checks passed
@aloekun
aloekun deleted the claude/nightly-193 branch August 27, 2026 08:55
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.

1 participant