Standalone Conformance Suite
This page describes how to use the standalone Universal Manifest conformance suite as an external adopter.
The conformance suite is implementation-neutral. You can run it against any runtime or language as long as your implementation can be invoked through the suite adapter contract.
Normative boundary (spec-first)
Section titled “Normative boundary (spec-first)”The specification remains the normative source of truth:
The standalone suite operationalizes those requirements into portable fixtures and expected outcomes so different implementations can prove equivalent behavior.
Suite package layout (repository paths)
Section titled “Suite package layout (repository paths)”After WO-0053, the suite is expected at these repository paths:
conformance/README.mdconformance/v0.1/expected.jsonconformance/v0.2/expected.jsonconformance/schema/conformance-report.schema.jsonconformance/schema/conformance-status.schema.jsonconformance/runner/(reference CLI runner)conformance/adapters/typescript/(reference adapter)
Adapter contract (language-neutral)
Section titled “Adapter contract (language-neutral)”Your implementation should expose a simple adapter that receives fixture input and returns an accept or reject decision with a reason.
Expected response shape:
{ "fixture": "v0.1/invalid/missing-context.jsonld", "result": "reject", "reason": "missing @context field"}You can implement this contract in any language and integrate it with the suite runner (or an equivalent internal runner that follows the same expected results).
Typical execution flow
Section titled “Typical execution flow”- Select the target version set (
v0.1,v0.2, or both). - Run all fixtures for each selected version.
- Compare results to the corresponding
expected.json. - Emit a conformance report JSON.
- Validate the report JSON against
conformance-report.schema.json.
Reference runner invocation (non-normative):
cd /path/to/universalmanifest/conformance/runnernode cli.mjs --adapter <adapter-path-or-endpoint> --report report.jsonConformance levels
Section titled “Conformance levels”v0.1-baseline— passes all v0.1 valid and invalid fixturesv0.2-baseline— passes all v0.2 valid and invalid fixtures (including signature profile checks)v0.2-extended— passes v0.2 baseline plus revocation-aware fixtures (when included by suite policy)