Repository navigation
Conversation
…on (#2618) ## Summary `pr_review.py` compared a Copilot round's preamble finding total against only the threads that round opened. A later round's total counts findings still open across rounds, and its `Open (N)` section links threads an earlier round opened. So the digest printed a standing `FINDINGS WITH NO THREAD` block about findings that already have threads. - `carried_open_threads` counts each open entry standing for a thread on this pull request that an earlier round opened, and the comparison counts it beside the round's own threads. `M` in `overview=T/M` still reads the threads the round itself opened. - An entry stands for its title anchor, its first link, and is carried only where that anchor is a known thread and the entry links none this round opened. So a back-reference cancels no shortfall, and two entries standing for one earlier thread count once. `read_overview` now keeps each section's thread ids per entry for this. - The block names how many threads it counted that way, so a reader sees why the comparison moved. - An entry linking no thread on the pull request is still `unthreaded_entries`'s to count, and a carried finding no entry links still reads as a shortfall. - `round_threads`, `read_overview`, the module docstring, and `scripts/README.md` now say the above. ## Tests Constructed fixtures cover: - a later round restating an earlier round's two open findings with no thread of its own, which prints no block - a mixed round where an entry linking the round's own thread is not counted twice - an entry linking no thread - a back-reference on the round's own finding - two entries standing for one earlier thread, with a back-reference id that sorts first - an entry whose title links no thread, beside a back-reference to an earlier one Reverting each fix fails the case written for it. ## Remaining Local Review Finding The first push's local strict-review budget ran out with one `introduced` finding open, listed here for this pull request's review loop to dispose of. - `introduced`: `carried_open_threads` keyed an entry by the first link matching a known thread rather than by its title anchor, so an entry whose title named no thread could count as carried while `unthreaded_entries` also counted it. Outcome: fixed in 5491dd4, with a test for that shape. Closes on promotion: #2481 🤖 Generated with [Claude Code](https://claude.com/claude-code) --------- Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars. ⚙️ Run configuration
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 |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #2619 +/- ##
==========================================
+ Coverage 59.25% 59.30% +0.05%
==========================================
Files 16 16
Lines 8263 8274 +11
==========================================
+ Hits 4896 4907 +11
Misses 3367 3367
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
🟢 Approval recommended
No unresolved review issues were identified.
0 open findings
What changed in this PR
Promotes develop to main and updates pr_review.py to correctly account for carried-over open findings.
Changes:
- Tracks thread links and carried-over findings.
- Adds regression tests.
- Documents the revised digest behavior.
| File | Summary |
|---|---|
tests/test_pr_review.py |
Adds regression coverage. |
scripts/README.md |
Documents updated behavior. |
scripts/pr_review.py |
Implements carried-over finding accounting. |
🧠 Review effort: Lite
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Summary
Promotes develop to main.
pr_review.pyno longer prints a standingFINDINGS WITH NO THREADblock for findings carried over from an earlier round.Fixes #2481
🤖 Generated with Claude Code