Skip to content
Public template

About

Template: record a signed agent action, check a claim about it offline, and replay the conformance vectors in CI.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

12 Commits

Folders and files

evidence-starter

A template project that records a signed agent action and checks a claim about it offline, with the packages pinned and the conformance Action already in CI.

It is for anyone wiring agent evidence into their own harness, evaluation pipeline or review process who wants a working base to change rather than a blank repository.

Use this template, or clone it and install the pinned packages (Python 3.12 or later):

git clone https://github.com/probityai/evidence-starter && cd evidence-starter
python3 -m venv .venv && .venv/bin/pip install ".[test]"

30-second example

.venv/bin/evidence-starter run
recorded /work/result.txt in run
decision: supported (assertion_matches_authenticated_history)

demo.py has two halves. The producer uses agent-evidence-observer: a broker writes one file, signs its history and seals a packet into run/. The consumer uses probity-verify: it reads only those retained bytes and a policy pinning the two public keys, and decides whether a report about the write holds. Run .venv/bin/evidence-starter run-false --claim false (the argument is the new directory it writes, so it must not exist yet) and the same evidence gives contradicted; change a byte of run/history.jsonl and the verifier refuses with exit 2. .venv/bin/python -m pytest checks all three.

What CI runs

job what it proves
demo the pins install, the example prints supported, the tests pass, and the README stays one screen
vectors builds the reference verifier pinned in tools/go.mod and replays the agent-evidence-vectors corpus against it with the project's GitHub Action

To test a verifier of your own, replace the verifier: line in ci.yml. Dependabot keeps the PyPI pins, the Go pin and the Action pin current, together.

Status

Version 0.1.0. The packages are pinned in pyproject.toml, the verifier in tools/go.mod and the vectors Action in ci.yml. Dependabot moves all of them in one weekly pull request, and a test fails if the Action and the verifier name different releases. Keys are generated per run on one host, so every record says witnessScope: PEER: it shows what this broker saw, not what an independent witness saw.

Links

page read it for
Observer docs brokered writes, workloads and the witness ledger
Brokered file write check every field of the report, case and policy this example writes
Vectors CI guide Action inputs, outputs and how to read the report
Verifier contract what your verifier must print for the corpus

License

Apache-2.0; see LICENSE.

About

Template: record a signed agent action, check a claim about it offline, and replay the conformance vectors in CI.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages