Skip to content

Latest commit

 

History

History
56 lines (42 loc) · 1.81 KB

File metadata and controls

56 lines (42 loc) · 1.81 KB

Three-minute synthetic demo

This demo contains no real user data. It intentionally creates an inconsistent application package so the expected command exit code is 1.

Run

python3 -m venv .venv
.venv/bin/pip install -e .
.venv/bin/deliverable-guard check \
  --source examples/demo/source \
  --output examples/demo/output \
  --spec examples/demo/guard.toml \
  --report-dir build/demo-report

Expected summary:

PASS=3 FAIL=1 REVIEW=0

The failure proves that summary.md and submission.md contain different application IDs. Open build/demo-report/report.html to inspect the two file hashes, extracted values and machine-readable repair suggestion.

Discover the contract candidate

.venv/bin/deliverable-guard discover \
  --output examples/demo/output \
  --report build/discovery.json \
  --spec-output build/suggested-contract.toml

The generated contract contains confirmed = false. Review every candidate, then create a separate lock that is cryptographically bound to the reviewed file:

.venv/bin/deliverable-guard confirm build/suggested-contract.toml \
  --output build/contract.lock.json \
  --confirmed-by "reviewer-name"
.venv/bin/deliverable-guard check \
  --source examples/demo/source \
  --output examples/demo/output \
  --spec build/suggested-contract.toml \
  --contract-lock build/contract.lock.json \
  --report-dir build/confirmed-report

Editing the contract after confirmation invalidates the lock. This prevents a generated or modified rule file from silently claiming user approval.

Use the local interface

.venv/bin/deliverable-guard serve

Open http://127.0.0.1:8765/. The interface can discover field conflicts, create a review-required contract, confirm it and run checks with its lock. It binds only to localhost and uploads nothing.