Skip to main content

probity-verify

An offline verifier that decides whether a claim holds against evidence bytes the consumer pinned, with adapters for source passages, operand lineage, authority captures, bounded absence and spend journals.

It's for auditors, incident reviewers and relying parties who receive a claim about an AI system and need a decision they can replay, not a report they have to trust.

Quick start

PyPI publishes probity-verify==0.1.0. Python 3.10 or newer and uv are needed. This source quick start retains its historical code and input snapshot; the installed-package recipe pins the released wheel separately:

git clone https://github.com/probityai/probity-verify && cd probity-verify
git checkout 588db582c50558f3e2a928be89ffc135188afcdb
uv run probity-verify examples/source-coverage/case.json \
  --policy examples/source-coverage/policy-june.json

It prints a decision packet that opens:

Probity decision packet v1
Case: "source-coverage-demo"
Claim: source_text_coverage/v1
Decision: contradicted
Reason: selected_span_missing_from_record
Policy SHA-256: dfda1551714f92702169d1411af6b0bfeee54732f934ce71265534af775fa388

A selected passage is in the source capture but missing from the stored report. The packet goes on to list every artifact binding and check. uv run pytest runs the test suite.

Use the decision in a check

All valid decisions exit 0, including contradicted and not_established. Exit 2 reports invalid input without a verdict. Require support for this claim by reading decision:

uv run probity-verify examples/source-coverage/case.json \
  --policy examples/source-coverage/policy-june.json --json > decision.json &&
uv run python - <<'PY'
import json

with open("decision.json") as stream:
    result = json.load(stream)
print(result["decision"], result["reason"])
raise SystemExit(0 if result["decision"] == "supported" else 1)
PY

This guard prints contradicted selected_span_missing_from_record and exits 1. supported means the stated claim passes the pinned policy's checks. Your application still owns authorization.

Status

PyPI version 0.1.0 contains the verifier. Version 0.1.1 adds packaged sample inputs; see release instructions for checked artifacts. Seven adapters ship: brokered_file_write/v1, source_text_coverage/v1, operand_lineage/v1, authority_anchor/v1, event_absence/v1, event_absence/v2 and spend_reservation/v1. Each decision is supported, contradicted or not_established. The verifier checks supplied bytes only: it does not fetch URLs or authenticate the authority a policy names.

Documentation

page read it for
Install a pinned version install outside the source checkout and replay three sample decisions
Choose a claim check select a task from checked recipes and retrieve exact commands and input digests
Select a consumer adapter supply exact adapter versions through adjudication, bundle creation and replay
Check a customer offer compare a draft with raw company records and an exact manager approval
Running the verifier every example command, the case and policy inputs, and what each decision means
Replayable decisions and the index ZIP bundles, replay, and the local index of decisions, challenges and supersessions
Adapters what operand lineage, authority anchor and event absence check, and what they leave to the consumer
Spend reservations replay a pinned budget journal, refuse dispatch without an affordable reservation, and keep pending calls charged
Observation vantage select the producer and observation scope, replay bounded absence, and operate a witness with separate keys and retained heads
Adapter plan the architecture and the adapters planned next
A2A server and client send raw case bytes to an operator-configured verifier, or read a pinned Lab record
Source coverage vectors and operand-lineage vectors conformance cases with pinned bytes and expected decisions

License

Apache-2.0.

Metadata

Release files for probity-verify 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for probity-verify 0.1.1
File Size Uploaded Provenance Actions
probity_verify-0.1.1.tar.gz 256.9 kB Without provenance Details for probity_verify-0.1.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for probity-verify 0.1.1
File Interpreter ABI Platform Actions
probity_verify-0.1.1-py3-none-any.whl Python 3 none any Details for probity_verify-0.1.1-py3-none-any.whl

Total release size: 316.8 kB

Release files / probity_verify-0.1.1.tar.gz

Download URL probity_verify-0.1.1.tar.gz
Size 256.9 kB
Tags Source
SHA-256 checksum
How to use checksums
ed745e2d5b07beaae5993399b1d551062c209efa5df8ae5961b39bf2d6ed3d16
BLAKE2b-256 checksum
How to use checksums
495853dc019ccfbbca461de6b6c090a2414eb429e64c188059cef09c02972c64
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.14

Release files / probity_verify-0.1.1-py3-none-any.whl

Download URL probity_verify-0.1.1-py3-none-any.whl
Size 59.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e5788644f64d4faf73d999f9b8371f761141493403f642659ba0ad36a15ef6cf
BLAKE2b-256 checksum
How to use checksums
9e57159e958d57a093d3aa99e363cd470d10cc614b4ffbdf694eb52cb200d3fe
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.14

Security for probity-verify 0.1.1

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.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page