OCPP-AI v1.0 conformance test vectors
This page hosts the conformance test vectors required by Annex C of the
OCPP-AI v1.0 Core Specification. Conforming implementations MUST pass all test vectors to claim OCPP-AI v1.0 conformance.
Planned test vector coverage
- Sample receipts for each content body profile defined in OCPP-AI Article 4 — ChatbotSession (Article 50(1)), GeneratedContent (Article 50(2)), HumanReview (Article 50(4))
- Canonical CBOR encoding round-trip vectors (input data → CBOR bytes → decoded structure must be byte-identical across implementations)
- Ed25519 signature vectors over the canonical CBOR encoding
- RFC 6962 Merkle tree construction vectors for receipt batches
- Sample Bitcoin OP_RETURN anchor records demonstrating the 36-byte payload format
"LPR1" || merkle_root_32
- Sample W3C VC 2.0 wrappings demonstrating lossless round-trip between OCPP-AI receipt format and the JSON-LD-contexted VC form
- Schema validation vectors — inputs that MUST be accepted and inputs that MUST be rejected (specifically inputs containing PII patterns, which the schema validation layer is required to reject)
- Negative test vectors — malformed receipts, signature failures, anchor format violations, Merkle proof failures
Status
Test vector generation is in progress. The first release will be tagged test-vectors-v1.0.0 in the source repository at github.com/vsdawkins-creator/ledgerproof-eu under spec/test-vectors-v1/ and mirrored to this URL. Publication target: 30 June 2026.
Implementers requiring earlier access for integration work may request a pre-release test vector bundle by emailing spec@ledgerproofhq.io with the subject OCPP-AI test vector pre-release request.
Conformance assertion
Implementations claiming OCPP-AI v1.0 conformance MUST publish a conformance statement listing the specific test vector set version they pass against. Conformance statements for the LedgerProof Foundation reference implementations (Python, TypeScript, Rust) are published in the source repository under the respective language directories.