Niro v0.1.58
Summary
This release makes the customer penetration-test PDF a standard output of
niro find, publishes it from the supplied CI workflows, and simplifies
finding review around two explicit outcomes: delete findings that should no
longer count, or dispute a verdict that needs attacker agent reconsideration.
Changes
niro findnow generates exactly one customer-facing penetration-test PDF by
default. Use--generate-report=falseto opt out.niro fixcontinues to
generate a PDF only when--generate-reportis supplied.- Niro prints the generated PDF's absolute path as
niro: report: <path>and
writes it to a Niro-owned temporary directory outside the Git checkout. The
supplied GitHub Actions and GitLab CI examples publish the current PDF as the
niro-pentest-reportjob artifact. - Reports are built from the final agreed finding set. Findings covered by
accepted-behaviors.yamlare deleted and disputes are completed before
generation; creating or verifying a fix does not remove an agreed finding
from the report. - Finding acceptance is no longer stored as mutable finding state. The
manage_findingtool now supportsdeleteanddispute; the former
permanently removes a finding that should no longer affect reports, gates,
comments, or reruns. - Pentest status, notifications, and generated reports now read current
findings from the canonical attack-tool sandbox store, so deleted findings
do not survive through stale completion snapshots.
Security
Generated reports are confined to a Niro-owned directory outside the project.
Niro rejects report output inside the checkout, detects copied or renamed PDF
snapshots introduced during generation, and publishes only the PDF created by
the current run.
Finding deletion is exposed only through the developer agent MCP surface and
uses an authenticated host-controlled route to remove the finding, its
duplicate rows, and their history. The attacker agent cannot invoke deletion
through its own MCP tool registry.
Compatibility and upgrade
Automations that call manage_finding must stop using the removed accept and
revoke actions. Use delete when a finding should no longer count, or
dispute with a reason when the attacker agent must reconsider its verdict.
The version-controlled accepted-behaviors.yaml policy remains supported; it
is not replaced by mutable acceptance state.
niro find now performs report generation by default and fails when the
requested PDF is missing or invalid. Pass --generate-report=false where a PDF
is intentionally not wanted. Existing niro fix behavior is unchanged unless
--generate-report is added. CI users adopting the supplied workflow updates
should retain the new niro-pentest-report artifact when a durable customer
copy is required.
Known issues
checksums.txtcovers the platform archives but does not yet include
niro.mcpb.- Release artifacts do not yet include detached signatures, a public binary
provenance attestation, or an SBOM. niro upgradefollows stable rather than dev or RC, and Windows users must
rerun the installer to change versions.