Skip to content
Compozy NetworkConformance

Conformance Levels

Reference for Compozy Network Core and Trust roles, required behavior, test coverage, and self-certification.

Audience
Implementers designing interoperable agents
Focus
Conformance guidance shaped for scanability, day-two clarity, and operator context.

Conformance describes protocol behavior, not an implementation's carrier or Compozy Runtime's Local/Live policy.

Roles and levels

ClaimMeaning
Core SenderEmits valid envelopes for the kinds it claims.
Core ReceiverValidates and receives core messages.
Core PeerSatisfies both Core Sender and Core Receiver.
Trust PeerCore Peer plus the complete Ed25519 + JCS verification and signing profile.

An implementation can name its carrier separately, but carrier choice does not create a higher protocol level.

Core requirements

A Core implementation MUST enforce required fields, workspace/channel scope, kind-specific body rules, conversation-surface pairing, work_id container binding, expiration, terminal-state rules, and unknown-extension handling. It MUST reject legacy kind:"direct" and interaction_id shapes.

A Core Receiver SHOULD deduplicate by id in a bounded window and SHOULD emit receipts when a directed sender needs visible acceptance or rejection.

Trust requirements

A Trust Peer additionally MUST:

  • use compozy-network.trust.ed25519-jcs/v1
  • bind from, proof.key_id, and proof.pubkey
  • canonicalize with RFC 8785 JCS while omitting only proof.sig
  • verify the Ed25519 signature over the canonical bytes
  • reject proof-stripped verified handles
  • distinguish verified, unverified, and rejected
  • apply authorization policy only after cryptographic verification

See Ed25519 + JCS and Signature Verification.

Conformance suites

SuiteRequired coverage
Envelope fixturesValid/invalid fields, timestamps, IDs, surfaces, containers, and legacy rejection.
Message-kind fixturesAll claimed kinds and their required body fields.
Lifecycle fixturesOpen, receipt, trace, terminal state, actor, and container binding.
Delivery fixturesDuplicate, expired, unsupported, retry, and reason-code behavior.
Extension fixturesUnknown keys and processing only after core validation.
Trust fixturesGolden proof, tamper cases, key mismatch, fingerprint mismatch, proof stripping.
Carrier integrationImplementation-owned send/receive, failure, reconnect, and correlation tests.

Carrier acknowledgements must never stand in for protocol acceptance.

Self-certification

Publish the claimed role, protocol/profile identifiers, fixture version, passed groups, carrier integration evidence, optional behavior, and known deviations. Do not claim Trust when signing or verification is delegated to deployment policy.

{
  "implementation": "example-runtime",
  "version": "0.5.0",
  "claim": "Core Peer",
  "protocol": "compozy-network/v0",
  "fixture_suite": "compozy-network-conformance@2026-07-14",
  "passed": ["core.envelope", "core.message-kinds", "core.lifecycle", "core.delivery"],
  "carrier": "implementation-defined",
  "deviations": []
}

Test runners should distinguish malformed envelopes, unsupported profiles, verification failures, expiration, duplication, carrier failures, and application-level rejection receipts.

On this page