fix(#3482): exclude vulnerability PRs from grouped patch updates - #3485
fullsend-ai-coder[bot] wants to merge 3 commits into
Conversation
Add packageRules entry to renovate.json that sets groupName and groupSlug to null for vulnerability alerts on gomod packages. This prevents Renovate from deduplicating standalone security PRs against grouped patch bundles that may have failing CI. Also add vulnerabilityAlerts config with security/renovate labels and unrestricted scheduling so security fixes are processed immediately. This addresses a recurring pattern where approved security PRs (e.g., #3473-3475 for CVE-2026-71556/CVE-2026-71557, and earlier #3250-3253 for go-git v5.19.1) were autoclosed by Renovate in favor of months-stale grouped PRs with failing checks. Note: pre-commit could not run in sandbox (network access restricted). No Go code changes — config-only change. Closes #3482
|
🤖 Finished Review · ✅ Success · Started 2:29 PM UTC · Completed 2:42 PM UTC Commit: |
Codecov Report✅ All modified and coverable lines are covered by tests.
Flags with carried forward coverage won't be shown. Click here to find out more. 🚀 New features to boost your workflow:
|
ReviewFindingsMedium
Next steps:
Previous runReviewConfig-only change (12 lines in
Security scan of the diff for injection / Unicode steganography / bidi overrides / permission-manifest changes found nothing — the only non-ASCII byte is a U+2014 em dash in the human-written comment. Net posture is a small improvement (faster surfacing + clear routing labels for CVE fixes). Remaining concerns are about PR-tracking hygiene rather than the diff itself, and should be addressed before merge. Prior-review provenance validation failed ( FindingsLow
Next steps:
Previous run (2)ReviewFindingsCritical
Medium
Low
Info
Next steps:
Previous run (3)ReviewFindingsMedium
Low
Labels: PR modifies Renovate configuration for vulnerability alert handling |
|
Important Review skippedBot user detected. To trigger a single review, invoke the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Advanced Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Comment |
cuipinghuo
left a comment
There was a problem hiding this comment.
Reviewed and adopting for EC-2084. Resolved the merge conflict against current main by keeping only the intended EC-2084 additions (packageRules vulnerability-ungroup rule + vulnerabilityAlerts labels/schedule); dropped the re-added helpers:pinGitHubActionDigests extends line since main removed it in 520e13c (EC-2080) as the org-wide config already provides it. Net diff vs main is exactly the two intended blocks.
|
🤖 Finished Review · ✅ Success · Started 1:50 PM UTC · Completed 1:59 PM UTC Commit: Runtime: claude · Model: opus → claude-opus-4-7 · Effort: high · Cost: $4.32 |
|
Risk Assessment: low (1/5) DetailsConfig-only PR touching a single non-protected, non-security-sensitive file (11 changed lines) authored by a bot — Tier 1 sub-scores are all 1. Linked issue slightly elevates Tier 3 (2.5) because the PR admits it does not satisfy the issue’s stated validation criterion, but Tier 1 dominates the weighted average. Previous runRisk Assessment: low (1/5) DetailsTiny additive renovate config change from a bot, fully scoped to a recent well-defined issue, on a low-churn config file that is trivially revertible. |
Resolve the renovate.json conflict against current main (drop the re-added helpers:pinGitHubActionDigests extends line, already provided by the org-wide config). Per review, drop the vulnerability-ungroup packageRule: Renovate already forces groupName: null on vulnerability alerts via its built-in force block, so the rule was a no-op. A comment documents this. Keep the vulnerabilityAlerts block (security label + immediate creation). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
203f75c to
04b2664
Compare
cuipinghuo
left a comment
There was a problem hiding this comment.
Re-approving after amending the Sep-15 merge commit: conflict resolved against current main, and per review the redundant vulnerability-ungroup packageRule was dropped (Renovate already forces groupName: null for vulnerability alerts) with a documenting comment. Kept the useful vulnerabilityAlerts block (security label + immediate creation). Net diff vs main is just those changes.
|
🤖 Finished Review · ✅ Success · Started 2:15 PM UTC · Completed 2:23 PM UTC Commit: Runtime: claude · Model: opus → claude-opus-4-7 · Effort: high · Cost: $3.90 |
Renovate always ignores `schedule` for vulnerability alerts (it forces immediate creation via its built-in `force` block), so the previous `"schedule": ["at any time"]` had no runtime effect and the comment claiming it bypassed the daily schedule was misleading. Keep only the `labels` override, which is honored, and correct the comment to explain that ungrouping and immediate creation already come from Renovate's force block for vulnerability alerts. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
🤖 Finished Review · ✅ Success · Started 3:31 AM UTC · Completed 3:38 AM UTC Commit: Runtime: claude · Model: opus → claude-opus-4-7 · Effort: high · Cost: $3.05 |
What:
Add a
vulnerabilityAlertsblock torenovate.jsonso Renovate security/vulnerability update PRs are labeledsecurity(andrenovate), making CVE-fix PRs easy to spot and route.Note: an explicit
packageRulesungrouping rule is intentionally not added, and neither is ascheduleoverride. Renovate already keeps vulnerability fixes as standalone PRs and creates them immediately — it forcesgroupName: nulland ignoresschedulefor vulnerability alerts via its built-inforceblock, which outranks user config, so both would be no-ops. A comment in the file documents this.Why:
Security update PRs should be clearly labeled so they surface and route quickly. Renovate's defaults already ungroup them from patch bundles and create them immediately; the remaining value here is the routing labels.
The recurring autoclose of standalone security PRs is not fixed by this change. It is caused by Renovate's update deduplication against the long-stalled grouped patch PR #3019, which carries the same bump — a separate root cause tracked in #3483 (EC-2085).
Tickets:
Refs #3482
Follow-up (dedup root cause): #3483