Skip to content

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:

  1. It produces the canonical form and digest for every case in canonical.json.
  2. It produces the expected verdict and failing checks for every case in bundles/.
  3. 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.

Released under the Apache License 2.0.