You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Lets `openant report -f sarif results_verified.json` emit a SARIF log
that GitHub Code Scanning and GitLab SAST can ingest without a
converter, matching what every other SAST in this category supports.
Renders Go-side via the same flow as -f html: Python's `report-data`
subcommand returns pre-computed JSON, and BuildSARIF turns ReportData
into a SARIF map. Findings become results, verdicts get synthesized
into a `rules` array (vulnerable+bypassable as level `error`,
inconclusive/unclear as `warning`, everything else as `note`). File
paths land as artifactLocation.uri without a startLine, since the
current Finding struct doesn't carry line numbers and emitting a
synthetic 1 would anchor alerts to the wrong row in Code Scanning.
Each result carries a partialFingerprints entry keyed
"openant/file/function/verdict/v1" so re-runs dedupe cleanly, and
versionControlProvenance is populated when ReportData.RepoURL is set
(including revisionId from CommitSHA when available).
15 unit tests cover envelope shape, rule dedup by verdict, level
mapping, path normalization, logical location, dynamic test
property propagation, fingerprint stability, VCS provenance
gating, the empty-AttackVector fallback that keeps message.text
non-empty per spec, the 4 KiB message cap, and an end-to-end
round-trip through json.Unmarshal.
0 commit comments