Skip to content

Promote develop to main: Count Carried-Over Open Findings in pr_review.py - #2619

Merged
ptr727 merged 1 commit into
mainfrom
develop
Oct 9, 2026
Merged

ptr727 merged 1 commit into
mainfrom
develop

Conversation

@ptr727

@ptr727 ptr727 commented Oct 9, 2026

Copy link
Copy Markdown
Owner

Summary

Promotes develop to main.

Fixes #2481

🤖 Generated with Claude Code

…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>
Copilot AI lite review requested due to automatic review settings October 9, 2026 04:38
@coderabbitai

coderabbitai Bot commented Oct 9, 2026

Copy link
Copy Markdown

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

⚙️ Run configuration
  • Configuration used: Repository: ptr727/ProjectTemplate/.coderabbit.yaml
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 4f2c3e2b-d688-4bde-a736-18b1069e4ebf
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

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.

@codecov

codecov Bot commented Oct 9, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 59.30%. Comparing base (127de64) to head (9099131).
⚠️ Report is 340 commits behind head on main.

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              
Flag Coverage Δ
python-3.13 59.30% <100.00%> (+0.05%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 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.

@ptr727
ptr727 merged commit 46dddb3 into main Oct 9, 2026
14 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.

Account for Carried-Over Open Findings in pr_review.py's Shortfall Comparison

2 participants