fix(security): bind repository scanners to exact PR head - #799
fix(security): bind repository scanners to exact PR head#799seonghobae wants to merge 7 commits into
Conversation
|
Warning Review limit reached
Next review available in: 16 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (6)
Comment |
Purpose
Restore exact-head security evidence for organization-required repository scanners. DiskSage PR #137 exact head
87ac0e08cceed3d1a766da13a8f8123912178192exposed that Security Scan run31070907732checked out GitHub's synthetic pull-request merge ref for Trivy instead of the literal contributor head, so the green result could not satisfy exact-head authorization policy.Implemented boundary
refs/pull/<number>/headand the same exact head SHA;TDD evidence
3a1f49a6d5e07b2a3aedd42627579d3e4d3213ce: quality run31078988647, job92543220656, failed inExecute dependency-free exact-head contractbecause the three affected jobs still relied on the synthetic merge checkout.aee317b3ecbfaad7cdb3898e603dfe5e69b8f7ae: quality run31079215588, job92543948287, passed both checkout and SARIF contracts.31079215609passed dependency-review, OSV, Trivy, and Scorecard. Trivy job92544007320checked outaee317b3ecbfaad7cdb3898e603dfe5e69b8f7aeand uploaded SARIF asrefs/pull/799/headwith the same SHA.Documentation
docs/doctoring/security-scan-exact-head.mdrecords the authorization boundary, fail-closed behavior, rollback contract, initiating DiskSage evidence, and APA 7th references to current authoritative GitHub documentation.CHANGELOG.mdrecords the repair.Merge gate
Keep Draft until the exact current head passes complete central tests, Python Security, Security Scan, CodeQL, Semgrep, Secret Scan, OSV, Scorecard, SBOM, current-head automated review, independent non-author approval, zero unresolved valid findings, and branch protection without bypass.