voltry-evidence-schema
The Voltry evidence bundle: the signed contract behind every Voltry Probe scan and certificate.
Note the naming: the PyPI distribution is voltry-evidence-schema, the Python
package you import is evidence_schema.
pip install voltry-evidence-schema
import evidence_schema
What it provides
- Typed pydantic v2 models (
EvidenceBundleand its blocks). Measured facts and modeled estimates are distinct types by construction; there is no single score anywhere in the schema, and no price field exists. - One canonical serializer: RFC 8785 (JCS) over the bundle minus its signature. This is the only path to signable bytes.
- ECDSA P-384 (secp384r1) with SHA-384 sign and verify over those canonical bytes.
- A generated JSON Schema for cross-language consumers.
Quick start
import json
from evidence_schema import EvidenceBundle, verify_bundle
bundle = EvidenceBundle.model_validate(json.load(open("bundle.json")))
print(verify_bundle(bundle)) # True only if the signature covers these exact bytes
Command line:
# Round-trip demo: build, canonicalize, sign, verify, tamper, verify fails
python -m evidence_schema.demo
# Emit the JSON Schema for non-Python consumers
evidence-schema-jsonschema -o evidence_bundle.schema.json
Stability
The schema is versioned semantically and the 1.x line is frozen wide: a bundle captured today remains valid and replayable indefinitely. Additive fields are minor versions; anything breaking is a major version with a migration path. Canonical bytes are covered by golden-vector tests on every supported Python version (3.10 through 3.13).
License
Apache-2.0.
Release files for voltry-evidence-schema 1.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| voltry_evidence_schema-1.2.0.tar.gz | 44.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| voltry_evidence_schema-1.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 73.1 kB
Release files / voltry_evidence_schema-1.2.0.tar.gz
| Download URL | voltry_evidence_schema-1.2.0.tar.gz |
|---|---|
| Size | 44.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
fdce193934b9f8cb4c562323b22b6f3f5b1ec593a2069855ac85c1b4b3ff6457
|
|
BLAKE2b-256 checksum How to use checksums |
3552b5cbdaaff217c366224ed4987c73c07c6becc02770535f66956aeb4ddfd4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 12, 2026.
Transparency logRelease files / voltry_evidence_schema-1.2.0-py3-none-any.whl
| Download URL | voltry_evidence_schema-1.2.0-py3-none-any.whl |
|---|---|
| Size | 28.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3943fcaff95595ffb94f228f1ec1128fa5fcca43c0f5721c1713648d0e8762d5
|
|
BLAKE2b-256 checksum How to use checksums |
093759bc4f2b962511930ae841991755b444039d6873d0dc341899dc548f4e7e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 12, 2026.
Transparency log