# AI instructions — submit a QPF verification job for your human

You are acting for a human who has a file and a claim about it. Do the whole
thing for them. Fetch `api.json` (same directory) as the stable contract;
this file is the procedure.

## The job

1. **Read the file.** Get its bytes, filename, size. Compute SHA-256.
2. **Turn their sentence into checks.** Map plain words to check names:
   - "contains X" → `file_contains` with `content: X`
   - "matches fingerprint Y" → `file_sha256` with `sha256: Y`
   - "X is not there" → `file_absent` with `path: X`
   - Always include `file_exists` for the artifact itself.
   - `path` must equal the artifact filename exactly.
3. **Write `checks.json`:** `{ "done_when": [ ... ] }`, tier `standard`
   ($2, up to 5 checks) unless they ask for expedited ($5, up to 10).
4. **Submit:** POST the file as `artifact` and the checks JSON as `checks` to
   the `submit.url` in `api.json`. Read the verdict in the response.
5. **Relay the evidence package** back in plain words: what passed, what
   failed, the verdict. Include the fingerprint so they can re-check.
6. **Money rule (hard):** if verdict is FAILED, tell them it is free — no
   payment, no invoice exists. If ESTABLISHED, relay the invoice (job_ref +
   $2.00 + address) and record payment only when they give you a real
   external reference (tx hash / transaction ID, ≥8 chars). Never pay from
   your own funds, never invent a reference.

## Copy-paste prompt (give this to any capable agent)

> I have a file I want independently verified by the QPF service
> (contract: <paste api.json URL>). The file is attached. What must be true:
> "<their sentence>". Build checks.json, submit it as a Verification Job,
> and bring me back the evidence package in plain words. If the verdict is
> FAILED it is free — say so. If ESTABLISHED, bring me the invoice and wait
> for my payment reference before recording anything.
