billing-east
✓ Permitted queueEXECUTION PRIVACY / OPEN SOURCE
Same permission.
Different choice.
Hidden disclosure.
An agent can reveal private information without sending a single private word. PurposeTrace finds the difference between executions that should agree.
billing-west
✓ Permitted queueCompare the runs. Find the channel.
Synthetic example · No messages are sent
THE QUESTION CHANGES
“Is this output allowed?”
“What made this output different?”
01 / MAKE THE DEPENDENCE VISIBLE
Change the private context.
Watch what leaves.
Hold the permitted inputs constant. Compare the meaningful disclosure, with explicit handling for randomness and missing evidence.
This interactive example runs locally in your browser. The Python CLI performs the full policy validation, repeated execution, and statistical analysis.
Standard support
Standard support
Authorized inputs match. The selected queue changes with the private note.
Declare the boundary.
Classify every input. Select the disclosure fields that matter. Missing or undeclared fields stop the audit.
Collect comparable runs.
Fix the agent version and environment. Vary the private context. Repeat with controlled seeds or independent samples.
Keep the evidence.
Get changed field paths, sample coverage, and a clear exit code. Store minimized evidence and portable reports.
02 / RUN IT ON YOUR MACHINE
A real workflow.
An inspectable result.
Install from source, then execute the included synthetic routing adapter. The first campaign deliberately exposes a disclosure dependency.
Read the full documentation ↗Local replay: macOS or Linux
File audits: platform independent
git clone https://github.com/sagarchhatrala/purpose-trace.git
cd purpose-trace
python3 -m venv .venv
source .venv/bin/activate
python -m pip install .
purpose-trace run \
--policy examples/policy.json \
--manifest examples/manifest.json \
--output /tmp/purpose-leak \
-- python examples/leaky_router.py12 executions · 3 comparison groups · /queue
03 / OPEN THE EVIDENCE
Your report.
On your device.
Load the JSON report from your own campaign. The viewer displays the result already computed by PurposeTrace. Your file stays in this browser.
Choose a report or inspect the recorded synthetic campaign.
Interpretation boundaries
BUILT FOR A CLEAR JOB
Evidence before
the next release.
Bounded offline audits and CI gates.
Deterministic mode checks repeatability and matched observations. Statistical mode compares distributions with corrected significance thresholds. Incomplete evidence returns an inconclusive result.
A clean result describes the executions you supplied. Your policy, collector, environment controls, and coverage determine what it means. Replay runs trusted adapters; it is not an operating-system sandbox.
Understand the security model ↗