The gap
Every JSON schema under crates/dpp-domain/schemas/ carries description fields, and those descriptions make regulatory assertions — act numbers, adoption dates, effective dates, product-class scope, annex references. None of them has been checked against primary text.
This is not hypothetical. Two electronics schema description fields once asserted an adoption date, an effective date, three named priority product classes and a phase-two date for an act that does not exist. They shipped to crates.io. A released crate version cannot be unpublished.
Why prose specifically
Every gate step this repo runs reads Rust. cargo doc, clippy, the test suite, cargo audit — none of them reads a description string. Every recorded instance of this failure class has been in prose or data: a module doc, a schema description, a README paragraph, a JSON source field.
So the defect is not that someone was careless. It is that the one part of the crate making the most load-bearing regulatory claims is the one part nothing checks.
Scope
Mechanical, and that is the appeal:
- Extract every
description from all schema files (28 today, across 11 sectors).
- For each, identify whether it makes a checkable regulatory assertion — an act number, a date, a threshold, a scope claim, an annex citation.
- Verify each against primary OJ text. CELEX PDF plus text extraction is more reliable than the EUR-Lex HTML, which truncates under JS.
- Correct what is wrong; mark what is secondary-sourced rather than encoding it as fact.
What would make this stick
A description that cites its basis is checkable by the next reader; one that asserts a bare fact is not. Worth considering whether descriptions carrying regulatory claims should be required to name the instrument and article they come from — which turns a future check from research back into a lookup.
Not in scope
The Rust-side constants. Those have a separate provenance story and several trace to verified research already. This is specifically about the prose that ships beside them.
The gap
Every JSON schema under
crates/dpp-domain/schemas/carriesdescriptionfields, and those descriptions make regulatory assertions — act numbers, adoption dates, effective dates, product-class scope, annex references. None of them has been checked against primary text.This is not hypothetical. Two electronics schema
descriptionfields once asserted an adoption date, an effective date, three named priority product classes and a phase-two date for an act that does not exist. They shipped to crates.io. A released crate version cannot be unpublished.Why prose specifically
Every gate step this repo runs reads Rust.
cargo doc, clippy, the test suite,cargo audit— none of them reads adescriptionstring. Every recorded instance of this failure class has been in prose or data: a module doc, a schema description, a README paragraph, a JSONsourcefield.So the defect is not that someone was careless. It is that the one part of the crate making the most load-bearing regulatory claims is the one part nothing checks.
Scope
Mechanical, and that is the appeal:
descriptionfrom all schema files (28 today, across 11 sectors).What would make this stick
A description that cites its basis is checkable by the next reader; one that asserts a bare fact is not. Worth considering whether descriptions carrying regulatory claims should be required to name the instrument and article they come from — which turns a future check from research back into a lookup.
Not in scope
The Rust-side constants. Those have a separate provenance story and several trace to verified research already. This is specifically about the prose that ships beside them.