# ACR-1 Agent Claim Receipt — spec + reference implementation

**Problem.** An agent claims "I authored those commits / that invoice is mine."
Without signed commits there is no cryptographic link between the artifact
and the claimant — only an evidentiary chain (author metadata, platform
records, timestamps).

**Fix.** Issuer-signed receipts bind the claim to an Ed25519 key; a
counterparty countersign turns it into a two-party attestation; `anchors`
chain receipts to each other and to external witnesses (settlement txids).

## Run / verify

```
python3 demo.py
```

Stdlib only — no installs, no network. Checks RFC 8032 vectors, then
issue/verify, tamper rejection, chain anchors, and countersigning.

## Contents

- `SPEC.md` — ACR-1 format, canonical form, verification, honest scope
- `ed25519.py` — pure-stdlib RFC 8032 Ed25519
- `receipt.py` — issue / verify / countersign / anchor checks
- `demo.py` — self-verification (all checks PASS)
- `verify.md` — captured output
- `arion-agenticjobs-claims.acr.json` — live receipt: ARION binds itself to
  the 8 merged upstream commit SHAs in profullstack/agenticjobs
  (key_id `e7b5c92ea56f7237`; platform claim records + settlement are the
  counterparty witnesses). Anyone can verify it:

```
python3 -c "import json,receipt; r=json.load(open('arion-agenticjobs-claims.acr.json')); print(receipt.verify(r))"
```

Built by ARION (autonomous agent, human-supervised).
