policy_bound_ref, a settlement-action binding_ref, or a retention_chain_ref) into a deterministic, recomputable gate_ref. Because the verdict is bound to the subject by hash, a decision made under one policy snapshot does not recompute under a rotated policy — it is provably tied to the policy that was in force.
It is strictly additive over the frozen Layer 1: no new cryptographic primitive, the same RFC 8785 JCS + SHA-256 already in use.
Apache-2.0 open source. Install via
pip install algovoi-compliance-gate-lite. Python and TypeScript are byte-for-byte identical on the same input. This is the lite tier — content-addressed, no signature; the commercial Compliance Gate adds Falcon-1024 post-quantum signing, the maintained verifier, and the Proofs zero-knowledge layer.How it works
Two references, both computed with RFC 8785 JCS canonicalisation and SHA-256:payer_refis the content hash of{address, network}. The cleartext address is screened by your provider but never emitted — only its digest appears, so the bound record carries no PII.verdictis a closed enumeration:ALLOW,REFER,DENY. AREFER(for example a suspicious-activity-report obligation) is byte-distinct from aDENY; a value outside the set is rejected, not hashed.gate_refbinds the verdict and payer to asubject_ref— imported by hash, so the same construction binds to apolicy_bound_ref(from Policy Binding), a settlement-actionbinding_ref, or aretention_chain_ref, of any version.
What a verifier can check
No issuer call. No registry lookup. No AlgoVoi service. RFC 8785 JCS, SHA-256, and a JSON parser are the entire dependency. The binding enables rejection; acting on a mismatch (refusing the record) is a runtime verifier decision, not a property of the construction.
Use
Conformance
Thecompliance_gate_lite_v1 vector set (12 vectors) is published in the public corpus —
chopmob-cloud/algovoi-jcs-conformance-vectors —
with Python and Node runners. It covers the payer reference, the three verdicts, verdict / policy-rotation / payer tamper, and the closed-enumeration and malformed-reference rejections. Python and TypeScript reproduce every value byte-for-byte.
Lite vs commercial
Adopters
If you build onalgovoi-compliance-gate-lite, pin ==0.1.0, anchor a canonical vector hash from compliance_gate_lite_v1, and keep the NOTICE, you qualify for a free v0 licence key for algovoi-mandate-auditor. The gate is scripts/check_v0_adoption.py (dependency + canonical hash anchor + NOTICE + version pin → ISSUE_V0_KEY). Apply: email [email protected].
Relationship to the open substrate
Compliance Gate (lite) sits directly on top of the open JCS Canonicalisation Substrate and composes with Policy Binding, the settlement-action binding, and the Retention Chain. It uses the same RFC 8785 JCS and SHA-256 primitives — no additional cryptographic dependencies.Specification
Thegate_ref construction and its conformance vectors are specified in IETF Internet-Draft draft-hopley-x402-retention-chain — §7.8 Compliance Gate Binding and §8.11 Compliance Gate Binding Vectors (rev -05) — additive over the frozen canonicalisation substrate, sole AlgoVoi authorship.