Conversation
… transient failure 明文化 (順位 82) + §A-2 P-4 ledger (§A-2 P-5) §A-2 Phase 5 dogfood P-5 (Bundle f-1 partial)。PR #120 で観測された rate-limit auto-retry の silent exit (RateLimitOutcome::Posted → polling 継続 → max_duration timeout) を構造的に解消。 順位 80 (Tier 1, T1-1) — finalize_posted_retrigger に park 予約を追加: - Before: 投稿後 write_state → None 返し → polling 継続 → timeout で silent exit - After: 投稿後 state.action = parked_review_recheck + next_wakeup_at_unix = now + review_recheck_wait_secs を設定 + format_park_signal で PARK 出力 → Some(park_poll_result) で必ず terminal を返す - handle_rate_limit_branch / dispatch_rate_limit_outcome / finalize_posted_retrigger 各関数に review_recheck_wait_secs 引数を thread - 2 unit tests 追加 (success 経路 + write_state 失敗 action_required 経路) 順位 82 (Tier 3, T3-2) — ADR-018 に追記: - 対象 transient failure pattern を表形式で 4 種列挙 (rate-limit 待機型/即時型 + CR 投稿エラー + wakeup 未予約 fallback) - 順位 80 fix の実装ポイント (Before/After) を明文化 - 順位 81 (CR 投稿エラー) を defer した理由を 3 観測閾値ルールで説明 順位 81 (Bundle f-1 残部、Tier 1 T1-2): - 1 観測のみ (PR #120) で systemic 性未確認のため defer - 同型 error が 2 件以上観測されたら再活性化 (re-trigger 条件を ADR-018 で規定) - 本セッションのユーザー方針 feedback_no_unenforced_rules と整合 §A-2 計測ログ P-4 結果記録: - P-4 (PR #128): 1 finding (CR Nitpick: cross_module_* 命名 misleading) - classifier: action=human_review / confidence=0.9 (P-2 の 0.0 から大幅改善) - normalized_issue: Japanese 50 chars (length contract pass) - latency: 6.6s/件、fallback: 0/1 (P-2 の 1/1 から改善) - agreement: 1/1 (100%、私評価=human_review と一致) 170 active tests pass (新 2 件追加)、regression なし。 build + deploy 済 (.claude/cli-pr-monitor.exe)。
|
Warning Rate limit exceeded
To continue reviewing without waiting, purchase usage credits in the billing tab. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (5)
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. Comment |
Summary
Posted経路で park 予約 → silent exit を構造的に防止Changes
src/cli-pr-monitor/src/stages/poll.rs(順位 80 fix)finalize_posted_retriggerを拡張: 投稿後 silent exit ではなく必ず park を返す。None(polling 継続)Some(park_poll_result)(terminal)"parked_review_recheck"now + review_recheck_wait_secs"rate_limit_post_retrigger"format_park_signalで stdout 出力call chain:
handle_rate_limit_branch/dispatch_rate_limit_outcome/finalize_posted_retrigger各関数にreview_recheck_wait_secs: u64引数を thread。新 unit tests (2 件):
finalize_posted_retrigger_schedules_park_after_post— success path で park action / wakeup time / wakeup_reason / dedup 用 last_retriggered_at が全て設定されることを assertfinalize_posted_retrigger_action_required_when_write_state_fails— write_state 失敗時は action_required で抜ける (sibling parity with finalize_parked)docs/adr/adr-018-pr-monitor-takt-migration.md(順位 82)## 追記 (2026-05-08): 順位 80 — auto-retry の transient failure scope 明文化セクション追加:docs/local-llm-offload-analysis.md(§A-2 計測ログ P-4)P-4 (PR #128) outcome 記録:
docs/todo.md/docs/todo5.mddocs(todo): 順位 80 + 82 ... 完了に伴い削除 + 順位 81 defer 注記) で分離§A-2 dogfood 全 5 PR 集計
観察:
ADR-038 昇格判定
§A-2 dogfood 完了時点での昇格判定:
→ 本 PR では昇格判断を保留。dogfood 完了報告は ADR-038 試験運用継続として別 PR (or 後続 session) で扱う。
Test plan
cargo test -p cli-pr-monitor finalize_posted_retrigger— 2/2 pass (新規)cargo test -p cli-pr-monitor— 170 active passed (regression なし).claude/cli-pr-monitor.exe)関連
docs/todo5.md詳細エントリ (順位 80 + 82 削除、81 defer 注記)docs/local-llm-offload-analysis.md計測ログ