Validate keystone execution evidence (recompute, decision-binding, tamper) with structured error logging -- the verifier companion to the keystone connectors (keystone-only edition, Apache-2.0)
Project description
algovoi-keystone-validate
Validate a batch of keystone execution_ref records -- recompute each offline, check
decision-binding, detect tampering -- and log what failed and why. The verifier companion to the
keystone connectors. Open, keystone-only edition, Apache-2.0. Available on request -- see
https://docs.algovoi.co.uk/keystone-connectors
keystone-validate records.jsonl --log errors.jsonl --decision-ref sha256:...
# keystone-validate: 14 records | 12 ok | 1 integrity | 1 operational | 0 malformed | trustworthy=False
from algovoi_keystone_validate import validate_records
report = validate_records(connector_records, expected_decision_ref="sha256:...")
report["trustworthy"] # False if any integrity / malformed error
It separates two failure classes operators must not confuse:
- Integrity error -- the recorded fields do not recompute to the claimed
execution_ref(tampering / corruption); the evidence cannot be trusted. - Operational error -- the
execution_refis valid, but it records an operation whose outcome wasFAILED(a real runtime failure the connector captured -- trustworthy evidence of a failure).
Plus malformed (missing fields / bad outcome / bad timestamp). The validator never trusts the
claimed hash; it always recomputes. Exit 0 unless an integrity/malformed error is present
(--strict also fails on operational failures).
License
Apache-2.0. Copyright AlgoVoi.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file algovoi_keystone_validate-0.2.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: algovoi_keystone_validate-0.2.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 263.3 kB
- Tags: CPython 3.13, manylinux: glibc 2.17+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
df63f2610edafd915f171c2aaf6454ec49a61f429d1d278f1d7aac4e45a67079
|
|
| MD5 |
a242da75008c521de14e115a16dc150d
|
|
| BLAKE2b-256 |
44d225661f37760cffd48f427b55114c8227d4a7fd797ce86f6f5cfd1e3d30d7
|
File details
Details for the file algovoi_keystone_validate-0.2.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: algovoi_keystone_validate-0.2.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 272.1 kB
- Tags: CPython 3.12, manylinux: glibc 2.17+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2fb7d8ea09656a9bbb27f3dbb1f7be1d269887af70310d23516f8578cd7ee9c4
|
|
| MD5 |
6c70f27a88f10bde844fdf0df3a3bb87
|
|
| BLAKE2b-256 |
f84e3b3d6a29668871624f7c604f0113fbce357cc51bb9693a20d2d6f03453d2
|
File details
Details for the file algovoi_keystone_validate-0.2.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: algovoi_keystone_validate-0.2.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 256.8 kB
- Tags: CPython 3.11, manylinux: glibc 2.17+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3669d2659af2a3ee424870f0071966cd7cc1e7847dd7762b1a339997b3bcfc79
|
|
| MD5 |
13bdf5577646fd0ed6d0c37cc8e3db5d
|
|
| BLAKE2b-256 |
d93aff31a41144d0041ed54c439c162290d1f9ac04b3bfc6a7a11285c9244186
|
File details
Details for the file algovoi_keystone_validate-0.2.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: algovoi_keystone_validate-0.2.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 237.9 kB
- Tags: CPython 3.10, manylinux: glibc 2.17+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
260668d4767eef54de82d5270bd35581671ab78992f4994de9226de3310cdb08
|
|
| MD5 |
618a041a7ed7fd2c1fe6b62e75665c15
|
|
| BLAKE2b-256 |
3aab76d6c9aa8885727343669139293ebaaae1776e4483fb206dd69f354e495b
|