NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
Go modules · #2616 by repository stars
Last release 16 days ago
21 Sep 2026
Release timing varies
gaps range from 8 days to 5 months
Some releases are documented
notes for 9 of 17 stable releases
Nothing withdrawn
no release was ever pulled
3 years old
74 releases · first in 2023
All users are strongly encouraged to upgrade to pick up the security fixes below.
This release upgrades the embedded go-witness library from v0.10.0 to v0.12.0, pulling in two upstream releases at once. The most important of these is a large coordinated-disclosure security hardening release in go-witness v0.12.0 that strengthens policy verification, artifact tracing, and timestamp checks. On the Witness CLI side, this release adds first-class support for experimental attestors, unlocking the new networktrace attestor.
All users are strongly encouraged to upgrade to pick up the security fixes below.
go-witness v0.12.0 landed a consolidated set of coordinated-disclosure fixes (go-witness#784). Because Witness embeds go-witness for all attestation collection and policy verification, these fixes apply directly to witness run and witness verify.
| Advisory | Severity | Summary |
|---|---|---|
| GHSA-2v4r-xhmm-ghv8 | High | Policy-signature verification accepted certificates whose signature had actually failed, allowing a forged policy to be trusted. Verifiers with a failed signature are now rejected. |
| GHSA-v6px-jqx8-8xwj | Medium | The file attestor followed symlinks resolving outside the attested root and recorded out-of-tree files. Such symlinks are now refused for following and directory hashing. |
| GHSA-vmvj-p3hw-39q3 | Medium | An artifactsFrom edge could be satisfied with no genuine artifact flow. Zero-overlap edges are now rejected and failure reasons de-duplicated. |
| GHSA-5qp5-ph6r-qj9f | Low | RFC 3161 timestamp verification did not require the id-kp-timeStamping EKU. A sole critical timestamping EKU is now required on the TSA signer and its chain re-verified. |
| GHSA-r4fv-8r9j-vgcg | Low | With a duplicated attestor type, rego was evaluated only against the last instance, letting a malicious attestor shadow policy. Every attestor of a type is now evaluated. |
| GHSA-g9jx-rqhm-mj7g | Low | An empty collection name matched any step in validateAttestations. An exact collection-name match is now required. |
| GHSA-pgpm-j729-qcvh | Low | Cross-step artifact comparison could downgrade to the weakest shared hash (e.g. SHA-1), enabling collision-based substitution. Strongest-size hash ties are now resolved deterministically in DigestSet.Equal. |
These GHSA IDs were assigned but the reports were not accepted as vulnerabilities; the release still ships secure-default changes for each:
*, so trusting a CA effectively accepted any certificate it issued. Explicit-empty constraints are now distinguished from unset, and x509 policy signers must opt in to an identity.Policy.Verify merged step results across search depth without de-duplication, inflating quorum/coverage. Merged step results are now de-duplicated.rpm/dpkg-query by bare name off an untrusted $PATH. Package-manager binaries are now resolved from trusted directories.Witness now supports invoking and listing attestors that go-witness marks as experimental (#775, by @Vyom-Yadav):
witness run gains an --experimental flag. Experimental attestors are refused unless it is set:
attestor <name> is experimental and cannot be used without --experimental flag
witness attestors list gains -e/--experimental to include experimental attestors in the listing (shown with an (experimental) suffix).networktrace attestor (via go-witness v0.11.0)The first experimental attestor available through the flag above is networktrace (go-witness#629), which records network activity during a witness run using an invisible TCP proxy. Combine --experimental with -a networktrace to try it.
witness verify (go-witness#689).golang.org/x/crypto, golang.org/x/net (#786).go-git, opa, k8s.io/apimachinery, and grouped go-mod/gha/npm updates).Thanks to @Vyom-Yadav, @Jaydeep869, @fkautz, and @jkjell for their contributions to this release.
Full changelog: v0.11.0...v0.12.0 · go-witness: v0.10.0...v0.12.0
One column per month.
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
e4e91a6 : fix(policy): add public key validation in policy check command ( #749 ) ( @Jaydeep869 )
e10a919 : feat(policy): add policy check command ( #681 ) ( @manzil-infinity180 )
e10a919 : feat(policy): add policy check command ( #681 ) ( @manzil-infinity180 )
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
feat(schemagen): only update schema files when content changes by @colek42 in in-toto/go-witness#506
go-witness v0.9.12ad5fe1 : feat(test): added test for SignCmd ( #635 ) ( @manzil-infinity180 )
v0.9.2 Compare # Choose a tag to compare
v0.9.2
Compare
v0.9.1 Compare # Choose a tag to compare
v0.9.1
Compare
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
v0.9.0 Compare # Choose a tag to compare
v0.9.0
Compare
v0.8.1 Compare # Choose a tag to compare
v0.8.1
Compare
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →