jouleclaw-compliance: EU Cyber Resilience Act Article 14 reporting as an auditable filing chain #282
Loading…
Reference in a new issue
No description provided.
Delete branch "feat/cra-art14-filing-chain"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
What this adds
The
cramodule injouleclaw-compliancerecords EU Cyber Resilience Act reporting as an auditable chain of filings. It covers both kinds of Article 14 case: an actively exploited vulnerability (Art. 14(2)) and a severe incident affecting the product's security (Art. 14(4)). Article 14 has applied since 11 September 2026 (Art. 71(2)).The chain. Each filing names the content id of the one it supersedes, and every accepted filing is a leaf in a Merkle log. Filing returns a receipt with the leaf index, the content id, an inclusion proof and the root. Tree heads can be signed, and consistency proofs show that nothing filed earlier was changed.
The chain refuses a filing that:
Deadlines follow the text of Article 14:
Each stage is reported as met, late, pending, overdue, or with its clock not yet started.
On the "unless the relevant information has already been provided" clause:
also_provides.Queries:
known_at(t): what had been filed by a given time, for example hour 24;revisions(): every change in a product's status across the chain;replay: rebuilds a chain from stored filings and re-checks every rule.Checked
On the build host:
cargo test -p jouleclaw-compliance: 76 passed, including the cra tests (the chain rules, every deadline state for both subjects, calendar-month arithmetic from 31 January,known_at, revisions, receipts, and tamper and replay checks);-D warningsis clean;Each of these mutations fails a test:
also_providesignored;The Article 14 wording was checked against a published copy of the regulation's text.
🤖 Generated with Claude Code