algovoi-policy-binding
Additive policy-snapshot binding for the AlgoVoi substrate. Binds a
content-addressed policy snapshot over an existing AlgoVoi reference: a
settlement-action binding_ref (v1) or a retention_chain ref (v0/v1), making a
decision verifiable against the exact policy version in force and a policy
rotation detectable by recomputation. The canonicalisation base and the
underlying binding/chain are frozen and untouched; this layer only references them
by hash.
policy_ref = "sha256:" + SHA-256(JCS(policy_document))
policy_bound_ref = "sha256:" + SHA-256(JCS({policy_ref, subject_ref}))
Install
pip install algovoi-policy-binding==0.1.0
Use
from algovoi_policy_binding import policy_ref, policy_bound_ref
policy = {"policy_id": "aml.transfer", "version": 1, "max_amount": 1000, "deny_jurisdictions": ["XX"]}
pref = policy_ref(policy)
# subject_ref is any AlgoVoi reference: a binding_ref, or a retention_chain ref (v0/v1)
binding_ref = "sha256:7dc4a2bf62b3c5eabd10fc875ff7fc10f188666f15838c4a51464cc72e80f6ca"
pbr = policy_bound_ref(binding_ref, pref)
Version-agnostic: the same call binds over retention_chain v0, v1, or a
binding_ref; subject_ref is imported purely by hash.
Conformance
conformance/policy_binding_v1/ contains the canonical vectors and a standalone
verify.py (stdlib + rfc8785, no package import). Recompute is the test:
pip install rfc8785
python conformance/policy_binding_v1/verify.py
It checks positives byte-for-byte, the P→P' rotation negative on every subject,
key-order invariance, and subject-binding. The subjects are the published canonical
references from
chopmob-cloud/algovoi-jcs-conformance-vectors.
Adoption
This package is itself an adopter of the AlgoVoi substrate, and asks the same of
those who build on it. To qualify for a free v0 licence key for
algovoi-mandate-auditor, your project must pass four checks
(scripts/check_v0_adoption.py):
- Dependency:
algovoi-policy-bindingdeclared in your lockfile/manifest. - Vector hash anchor: at least one canonical
policy_ref/policy_bound_refhash from the conformance set appears in your project (you ran our vectors). - NOTICE: preserve the
NOTICEfile; it must name AlgoVoi andalgovoi-policy-binding. - Version pin: pin
algovoi-policy-binding==0.1.0(or a wheel--hash), not a bare range.
python scripts/check_v0_adoption.py /path/to/your/project
Contact chopmob@gmail.com with your import-by-hash evidence and a copy of the NOTICE.
License
Apache-2.0. (c) 2026 AlgoVoi. Preserve the NOTICE file in any distribution.
Metadata
Release files for algovoi-policy-binding 0.1.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| algovoi_policy_binding-0.1.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl | CPython 3.11 | CPython 3.11 | Linux glibc 2.17+ x86-64 | Details |
Release files / algovoi_policy_binding-0.1.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
| Download URL | algovoi_policy_binding-0.1.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl |
|---|---|
| Size | 148.8 kB |
| Tags | CPython 3.11 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
157cbce0881a36dfe9ce9727c5a3d246513c547b5ac86c7bd960a41ef3c3c6c9
|
|
BLAKE2b-256 checksum How to use checksums |
f17bb42f3ee20d71f4d7b1eee51c2b21c6129d7c908ce832a793af745bb92439
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.10
|
Security for algovoi-policy-binding 0.1.3
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.