fix(orchestrator): refresh control_refs on existing findings during re-scan #228

Merged
sharang merged 1 commits from fix/refresh-control-refs into main 2026-07-22 12:24:37 +00:00
Owner

The dedup loop only inserted first-seen findings; re-scans skipped existing fingerprints, so control_refs recomputed by the mapping passes were discarded. A finding first seen before control mapping was enabled/tuned never gained its mappings without a delete + re-add.

Fix: existing findings whose re-scan produced non-empty control_refs are now updated in place ($set control_refs). Guarded on non-empty so a run where mapping didn't happen (breakpilot unreachable) can't wipe existing refs. New-finding insert path unchanged.

Green locally (clippy -D warnings, fmt, full suite).

🤖 Generated with Claude Code

The dedup loop only **inserted** first-seen findings; re-scans skipped existing fingerprints, so `control_refs` recomputed by the mapping passes were discarded. A finding first seen *before* control mapping was enabled/tuned never gained its mappings without a delete + re-add. Fix: existing findings whose re-scan produced **non-empty** `control_refs` are now updated in place (`$set control_refs`). Guarded on non-empty so a run where mapping didn't happen (breakpilot unreachable) can't wipe existing refs. New-finding insert path unchanged. Green locally (clippy -D warnings, fmt, full suite). 🤖 Generated with [Claude Code](https://claude.com/claude-code)
sharang added 1 commit 2026-07-22 12:18:06 +00:00
fix(orchestrator): refresh control_refs on existing findings during re-scan
CI / Check (pull_request) Successful in 5m40s
CI / Detect Changes (pull_request) Skipped
CI / Deploy Agent (pull_request) Skipped
CI / Deploy Dashboard (pull_request) Skipped
CI / Deploy Docs (pull_request) Skipped
CI / Deploy MCP (pull_request) Skipped
CI / Check (push) Skipped
6af84c5216
The dedup loop only inserted first-seen findings; re-scans skipped existing
fingerprints entirely, so control_refs (re)computed by the mapping passes were
discarded. A finding first seen before control mapping was enabled/tuned would
therefore never gain its control mappings without being deleted + re-added.

Now: existing findings whose re-scan produced non-empty control_refs get updated
in place ($set control_refs). Guarded on non-empty so a run where mapping didn't
run (breakpilot unreachable) can't wipe existing refs. New findings unchanged.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
sharang merged commit 5bdc35ee92 into main 2026-07-22 12:24:37 +00:00
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: sharang/compliance-scanner-agent#228