Safeguard
Security Guides•

What counts as triage history when you switch dependency scanners?

Triage history is the set of decisions, reasons, owners and dates attached to findings. Here is the field list to export before you leave a scanner.

Safeguard Security Team
4 min read

Triage history is every human decision attached to a finding: whether it was dismissed or accepted, why, by whom, when, and which ticket tracks the work. Scanner output alone is not history. Before you switch dependency scanners, export these decision records, because the new tool will rediscover the vulnerabilities but not your judgment about them.

Findings are cheap, decisions are expensive

A new scanner will re-find nearly every vulnerable package in a few minutes. What it cannot recreate is the afternoon an engineer spent proving that a library is only used in a test harness, or the exception a director signed for a legacy service. Those decisions are the asset. If they live only inside the old tool's database, they vanish the day the contract ends.

The first job in any migration is therefore to define what you are protecting. Many teams skip this and export a flat list of open findings, which is the one thing they can regenerate for free.

The fields worth keeping

Public schemas show what a decision record tends to contain. The GitHub REST API for dependency alerts, for example, exposes a state, a dismissed reason, an optional dismissed comment, who dismissed the alert, and timestamps for creation, dismissal and fix. The CycloneDX 1.6 schema carries an analysis block with a state, a justification, a response, free text detail, and first issued and last updated dates. Together they suggest a sensible minimum.

FieldWhy you need it later
Package identity and versionMatches the decision to the right component
Advisory ID and known aliasesSurvives a change of advisory source
Decision stateOpen, dismissed, accepted, fixed
Reason categoryLets you group and audit decisions
Free text commentThe actual reasoning, in the engineer's words
Decider and decision dateAccountability and audit trail
First detected dateKeeps age and SLA math honest
Expiry or review dateStops permanent exceptions by accident
Linked ticketConnects the finding to the work
Project or repositoryScope of the decision

If a field is missing from your old tool's export, note that now. It tells you which decisions you will have to re-confirm rather than import.

How to inventory what you actually have

Sample ten decided findings in the old tool and write down every attribute you can see in the screen, not just in the export. Then compare that list against the API or export format. Anything visible in the UI but absent from the export is at risk. Comments and attachments are the usual casualties.

Also look outside the scanner. Decisions often leak into pull request threads, chat messages and spreadsheets. Decide which of those you will mine and which you will treat as lost.

What not to carry across

Not everything deserves a seat in the new system. Findings tied to repositories that were archived, or exceptions that expired a year ago, should be left behind. A smaller, cleaner history is easier to trust and easier to audit.

Try it yourself

Open the demo and look at how a dependency inventory ties each package to its version and project. Those identity fields are the join key for every decision you will migrate.

Click through it at your own pace, or open it full screen.

A note on Safeguard

If you want an independent baseline of what a fresh scan reports on your repositories, Safeguard offers SBOM and dependency scanning, and a free scan at gold.safeguard.sh/scan. Compare it against your old tool's open list, not against its decisions.

Quick check

Is a CSV of open findings enough to migrate?

No. Open findings can be regenerated by any scanner. The CSV that matters holds closed and dismissed decisions with reasons, owners and dates.

What if the old tool does not export comments?

Screenshot or copy the comments for high risk exceptions, and mark the rest as needing re-review in the new tool.

Sources

Last reviewed: 19 October 2026.

Never miss an update

Weekly insights on software supply chain security, delivered to your inbox.

Self-healing security runs on Safeguard.

Your first fix PR is minutes away.

No sales call required, even your agent can complete the purchase over MCP.