Skip to main content

Conformance

Conformance means independent ALX implementations produce the same protocol-defined results for equivalent supported inputs. Implementations can differ in language, architecture, dependencies, and execution strategy; only protocol-visible behavior is compared.

Conformance Model​

A conforming implementation produces identical protocol outputs for identical protocol inputs. The specification and the canonical conformance materials define those outputs; matching another implementation's internal behavior does not establish conformance. Cross-Language Requirements lists the behavior each implementation must match in every programming language.

Core conformance requires matching results for every required core suite in the required-suite manifest (protocol/suites.json):

  • Canonical bytes and canonicalization rejections
  • Raw JSON ingress decisions
  • contentHash and blockHash
  • Normalized parent sets and parent-limit rejections
  • Graph verification results, including status and issues
  • Attribution Trace output, including pathCount
  • Exact error identifiers for rejected inputs

Optional extension conformance is a separate claim, and extension results do not change core conformance:

ExtensionA conformance claim requires
SigningThe signing extension vectors: Signed Block envelopes, Ed25519 attestations, and P-256 attestations
MerkleThe Merkle extension vectors
Content profileSchema validation of content envelopes. The extension is provisional and has no vectors.

Conformance Testing​

The conformance vectors define protocol inputs, expected outputs, and expected failures with exact error identifiers. Conformance Vectors lists every suite and its coverage. A mismatch on any vector of a required or claimed suite is a conformance failure.

When to Test​

Run the required core suites, and the suites of each claimed extension, before claiming conformance and before each release. Run Conformance Tests lists the changes that require a rerun.