21. Conformance
Status: draft.
21.1 Conformance suite
The suite is in conformance/. It holds language-neutral JSON fixtures:
canonical.json: canonical encodings and digests, including required rejections.bundles/*.json: evidence bundles with the verdict and failing checks each must produce.manifest.json: the list of cases.
Fixtures contain public keys, signed records and expected results. They contain no private key material.
21.2 Requirements for an implementation
An implementation claims conformance to version 1.0 only if:
- It produces the canonical form and digest for every case in
canonical.json. - It produces the expected verdict and failing checks for every case in
bundles/. - It uses no code from the DIP reference implementation to do so.
The reference runner (packages/conformance, and dip conformance run) shows the shape of the required behaviour. A different implementation supplies its own functions and runs the same JSON.
21.3 Current status
The fixtures were generated by this project. No independent implementation has run them. The conformance claim is therefore limited to the reference implementation, until an independent implementation does. See implementation matrix row G-06.
21.4 Regeneration
The fixtures are regenerated with node packages/conformance/dist/generate-cli.js conformance. A test checks that the committed files match regeneration.