CVE-2026-40198: perlPackages.NetCIDRLite, backport upstream fix (no version bump) - #41
Conversation
Comparison against the upstream fixTranscription lane (this PR's payload). The added and removed code lines of the embedded patch (lib/Net/CIDR/Lite.pm) are identical to the upstream fix commit Net-CIDR-Lite 25d65f85, normalized for whitespace. The cross-family Reviewer attested this; the check here was recomputed independently against the bundle's upstream-fix.patch. The Linux cert (trace run 33976732504) built perlPackages.NetCIDRLite at the pinned revision with and without the patch: the unpatched arm accepted the short uncompressed IPv6 address and fired the discriminator, the patched arm rejected it. Blind-authoring lane (separate measurement, not this payload). When the same CVE was given to claude-opus-4-8 with only the vulnerability description and the pre-fix source, never the upstream patch, the graded result against the human fix was GOLD: an equivalent group-count check written as a lower bound instead of an equality. Report: trace data/reports/authoring-accuracy-vs-human-2026-09-04.json. This is one of the cases where the blind lane got the fix right unaided. The PR ships the transcribed upstream fix because that is what the Reviewer can attest line by line. |
This PR authors the upstream fix as an in-tree patch against the current nixpkgs version (no version bump). An agent generated it; a cross-family reviewer verified it transcribes the upstream commit, and a cert proved the bundled reproducer goes red→green. A human maintainer must still confirm sufficiency before merging:
Opened as a draft deliberately — mark Ready-for-review only after the boxes above are checked.
Evidence: CVE-2026-40198 (human-review-required) trace bundle
72684a471d4de3b3https://github.com/Ad-Astra-Computing/trace/.github/workflows/steward.yml@refs/heads/mainhttps://token.actions.githubusercontent.comff166608d2eb81d041faf0e8d39ca6a02c9fb24bVerify locally
Generated by trace.