SarifReporter

Renders a Report as a SARIF 2.1.0 log for IDEs and third-party SARIF dashboards (design §9). Pure and dependency-free (hand-rolled JSON via JsonStrings), so core stays free of the kotlinx-serialization runtime.

Findings carry a serial name but no source file/line, so results use logicalLocations and never physicalLocation. GitHub code scanning requires physical locations, so it is out of scope (#122); SARIF here targets consumers that accept logical locations.

Functions

Link copied to clipboard
fun render(report: Report, toolVersion: String? = null): String

Renders report as a SARIF 2.1.0 log. toolVersion populates tool.driver.version when non-null; it is omitted otherwise (optional in SARIF, and null under dev/TestKit runs where no jar manifest is present).