draft-hopley-x402-composite-trust-query (POSTED on IETF datatracker 2026-05-25, Independent Submission, Informational), and published as a standalone reference implementation:
- Python:
algovoi-composite-trust-query(live on PyPI, v0.1.1)
algovoi-substrate / @algovoi/substrate for the JCS canonicalisation primitive. Apache 2.0.
Lifecycle position
chain_ref content-address.
Why a four-state enumeration
Operationally distinct trust outcomes drive distinct operator actions. The format pins:- TRUSTED — proceed under the asserted trust posture.
- PROVISIONAL — proceed cautiously; re-query after pending events finalise.
- INSUFFICIENT_EVIDENCE — gather more evidence; do not proceed under TRUSTED.
- UNTRUSTED — halt the action the query was framed to authorise.
Response shape
A CTQ response is a seven-field JSON object canonicalised under RFC 8785 (JCS). Field names are sorted lexicographically by JCS during canonicalisation.The closed enumeration: trust_outcome
Each value produces a byte-distinct
content_hash.
Two content-addressed references
The response carries twosha256:{hex} references:
chain_refpoints to the audit chain root. Resolving the chain itself is out-of-band (chain-by-content-address dereference, operator-side audit-log fetch, etc.). Consumers can independently walk the chain atchain_refto verify the verifier’s conclusion.query_refpoints to the canonical bytes of the query that was answered. The query format is opaque to the response shape; callers may use JSON-LD, JSON Schema, SQL-like predicates, or any structured-question encoding. The reference is what binds the response to the specific question.
sha256:) are part of the canonical bytes and MUST NOT be stripped.
Verifier-of-verifier composition
A CTQ response MAY itself be embedded as a row in a higher-level audit chain. A verifier-of-verifier reading the higher chain walks sequences of CTQ responses (a chain of verifier conclusions over chains of receipts) and emits a meta-CTQ response over the composite. This enables multi-party audit-chain composition: a regulator verifying an operator’s audit chain emits a CTQ response. A higher-level supervisor verifying multiple regulators’ CTQ responses emits a meta-CTQ response over those. Each level retains independent byte-deterministic verifiability.Conformance vectors
8 byte-level reference vectors + 7 pair invariants + 3 chain invariants atvectors/composite_trust_query_v1/.
Quick start
TypeScript
What this is NOT
- Not a receipt. Receipts record events that happened; a CTQ response records a verifier’s categorical conclusion over an event chain.
- Not the query itself. The query is identified by
query_ref(content-addressed); the query format is opaque to this response shape. - Not a chain-finality model. The verifier applies whatever finality semantics its risk model requires; the response records the categorical conclusion, not the evaluation discipline.
Companion IETF Internet-Draft
draft-hopley-x402-composite-trust-query (Independent Submission, Informational). AlgoVoi-authored. Normatively references draft-hopley-x402-canonicalisation-jcs-v1. Welcomes downstream-adopter contributions per the Appendix C “Known Adopters” pattern.
See also
- Canonicalisation substrate — the JCS discipline
- Compliance receipt — admission events
- Settlement attestation — per-execution settlements
- Cancellation receipt — mandate terminations
- Refund receipt — post-settlement refunds
- Conformance vectors — full vector corpus
- Substrate authorship and provenance — citable AlgoVoi authorship record