algovoi-cancellation-receipt-lite
Open, content-addressed cancellation references for the AlgoVoi substrate. The lite, Apache-2.0 origination tier of the commercial AlgoVoi Cancellation Receipt.
cancellation_ref = "sha256:" + SHA-256(JCS({ cancellation_reason, mandate_ref }))
It content-addresses the cancellation of a spend authority into a deterministic, recomputable reference:
mandate_ref: the spend authority being cancelled, imported by hash. This is the samemandate_refPayment Mandate (lite) produces and Spend Guardrail (lite) binds, so the cancellation composes onto the open pre-payment decision chain.cancellation_reason: a closed enum:USER_REQUESTED,MERCHANT_REQUESTED,COMPLIANCE_TERMINATED,EXPIRED.
Both fields are byte-load-bearing: change the mandate or the reason and the cancellation_ref diverges, so a cancellation cannot be silently re-pointed to another authority and the reason cannot be swapped. A reason outside the enum, or an empty mandate_ref, is rejected, not hashed.
Use
from algovoi_cancellation_receipt_lite import cancellation_ref
ref = cancellation_ref(
mandate_ref="sha256:a4f8cb5ee09b29478ac1cc2f468d66e16d3d25f7a229a31d22ad521e11d04d35",
cancellation_reason="USER_REQUESTED",
)
Lite vs commercial
| Lite (this package) | Commercial Cancellation Receipt | |
|---|---|---|
| Licence | Apache-2.0, open | Commercial OEM |
| Reference | content-addressed cancellation_ref |
the same, Falcon-1024 signed receipt |
| Carries | reason + mandate (by hash) | + effective-from timing, provider, jurisdiction |
| Propagation | bring your own | across settlement + retention chains |
| Verifier | recompute offline | maintained verifier |
Adopters (pin → key)
If you build on algovoi-cancellation-receipt-lite, pin ==0.1.0, anchor a canonical cancellation_ref vector hash from cancellation_receipt_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. Apply: email chopmob@gmail.com with your import-by-hash evidence and a copy of the NOTICE.
Conformance
The cancellation_receipt_lite_v1 vector set is published in the public corpus,
chopmob-cloud/algovoi-jcs-conformance-vectors,
with Python and Node runners. Python and TypeScript reproduce every value byte-for-byte. cn-001, cn-002 and cn-003 cancel mandate_1, the mandate_ref in spend_guardrail_lite_v1.
Apache-2.0. Additive over the frozen canonicalisation substrate; sole AlgoVoi authorship.
Metadata
Release files for algovoi-cancellation-receipt-lite 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_cancellation_receipt_lite-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_cancellation_receipt_lite-0.1.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
| Download URL | algovoi_cancellation_receipt_lite-0.1.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl |
|---|---|
| Size | 134.4 kB |
| Tags | CPython 3.11 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
8980c1046ff0c691c3c3e8ad75282eb2082b18bcbaccbc05a8558306944a6ea9
|
|
BLAKE2b-256 checksum How to use checksums |
b68e6667e178a30c0bcf3cfe71d16a9cc9c9c3be511a4e3af0284cea40bbcb28
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.10
|
Security for algovoi-cancellation-receipt-lite 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.