Skip to content

feat(reports): findings-by-origin breakdown (trust corroborated first)#19

Merged
decksoftware merged 1 commit into
mainfrom
feat/report-origin-breakdown
Jun 3, 2026
Merged

feat(reports): findings-by-origin breakdown (trust corroborated first)#19
decksoftware merged 1 commit into
mainfrom
feat/report-origin-breakdown

Conversation

@decksoftware

Copy link
Copy Markdown
Owner

Findings-by-origin breakdown (trust corroborated first)

Closes the last open item from the user feedback (#3"separate findings by origin: semgrep, osv, npm audit, internal detector"). Both reports now make the corroboration story explicit: a finding seen by both a tool and the heuristic detector is CONFIRMED and should be trusted first; detector-only heuristics are lower confidence.

What changed

  • src/reports/summary.js (new): originBreakdown(findings) counts findings per originating source (Semgrep, OSV-Scanner, npm/pnpm/bun audit, Gitleaks, Trivy, Bandit, gosec, CSReview detector, subagent:<domain>) and a confirmed (multi-source) count; labelForSource() maps source ids to friendly names.
  • Markdown report: a new Findings by origin (trust corroborated first) line beside the existing confidence breakdown — e.g. 2 CONFIRMED (tool+detector), Semgrep 2, Gitleaks 1, CSReview detector (heuristic) 40.
  • HTML report: the same breakdown in the score-details summary.

DRY: one shared helper feeds both reports. No engine/detector change.

Tests: +5 (helper unit + MD/HTML integration). 181/181 · lint clean · typecheck 0.

🤖 Generated with Claude Code

… first)

Closes the last item from the user feedback (#3): separate findings by origin so
the report makes the corroboration story explicit. A finding seen by BOTH a tool
and the heuristic detector is CONFIRMED; detector-only heuristics are lower
confidence.

- New src/reports/summary.js: originBreakdown(findings) counts findings per source
  (Semgrep, OSV-Scanner, npm/pnpm/bun audit, Gitleaks, Trivy, Bandit, gosec,
  CSReview detector, subagent:<domain>) plus a `confirmed` (multi-source) count;
  labelForSource() maps source ids to friendly names.
- Markdown report: new "Findings by origin (trust corroborated first)" metadata
  line beside the confidence breakdown.
- HTML report: the same breakdown in the score-details summary.

Tests: +5 (originBreakdown/labelForSource unit + MD/HTML integration).
181/181 - lint clean - typecheck 0.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@decksoftware decksoftware merged commit 414a814 into main Jun 3, 2026
12 checks passed
@decksoftware decksoftware deleted the feat/report-origin-breakdown branch June 3, 2026 20:20
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.

1 participant