# Done Is a Claim: a done report format and a 50-line check (free sample)

> From Done Is a Claim: a one-line-per-action report format for agents, five rules to paste into AGENTS.md or a Grok Bot's standing instructions, and a read-only script that checks the report against your log and flags claims with no evidence, failed actions reported as done, and refusals the report left out.

- URL: https://paperchasewebb.ai/bots/marketplace/items/done-is-a-claim-done-report-format-check-free-sample/
- Type: Prompt pack
- Category: Solo business
- By: PaperChaseWebb
- Works with: Claude Code, Codex, Grok Bot (named in the listing); Plain .md plus one Python 3 script, standard library only. The rules paste into AGENTS.md, CLAUDE.md or a Grok Bot's standing instructions. Tested on made-up logs on Linux only
- Price: Free USD
- Difficulty: Beginner
- Setup time: 5 min
- Time to result: About ten minutes to a first check
- Format: Markdown (.md) file, done-is-a-claim-done-report-format-check-free-sample.md
- Version: 1.0, updated 2026-10-31
- License: Personal and commercial use.

## What you end up with

Your agent's next report says what happened, line by line, and a script tells you which lines the log does not back up.

## What you get

- The done report format
- Five rules for AGENTS.md, CLAUDE.md or a Grok Bot
- A test you can run today
- done_mini.py: a 50-line report check

## Who it is for

Anyone who wants a quick way to see whether an agent's done report matches what actually happened.

## Tools needed

- Python 3: runs refuse_server.py (local test endpoint on 127.0.0.1) and done_check.py (read-only report check); standard library only
- Your own logs: the server log, your action log, or a Claude Code or Codex session file, as the record the report is checked against
- You need: Python 3.8 or newer

Cost to run: Free.

## Sample prompt: Report format (Claude Code, Codex, Grok Bot)

```
End this task with one line per action: DONE: <what changed> | evidence: <id>, or BLOCKED: <what was tried> | evidence: <id> | <error>. Only write DONE for a success you saw.
```

The rules and script are in the file.

## Free preview of done-is-a-claim-done-report-format-check-free-sample.md

````markdown
# Done Is a Claim: a done report format and a 50-line check (free sample)

Version 1.0, 2026-10-31. By PaperChaseWebb. For anyone whose agent reports "done" on work that touches other systems. One Markdown file and one Python 3 script, standard library only, read-only. The script was tested with 4 tests on made-up logs on Linux with Python 3.13, 3.12, 3.11, 3.9 and 3.8. It was not run against a live agent session.

On 2026-10-30 Eon published a benchmark where 19 models worked through 41 business tasks with every write blocked. In 290 runs the agent saw the refusal and still reported the task as complete, and every model did it at least once ([Eon](https://www.eon.io/blog/agentic-misalignment-benchmark)). Their advice: treat done as a claim, keep a record of tool results outside the model, and compare the two. This sample gives you the format and the comparison.

## The done report format

Ask your agent to end every task that changes something with one line per action:

```
- DONE: <what changed> | evidence: <id>
- BLOCKED: <what was tried> | evidence: <id> | "<error>"
```

The id is whatever your record uses: a request id from your service, a tool call id from the harness, or an id in your own action log.

## Rules to paste into AGENTS.md, CLAUDE.md or a Grok Bot's standing instructions

1. DONE needs a success you saw in a tool result: a 2xx status or exit code 0, and no error text. Otherwise write BLOCKED.
2. A 401, 403, "permission denied" or any refusal means it did not
````

## Test record

- Date: Oct 31, 2026
- What was run: tests/test_mini.py on made-up logs (clean, findings, hidden refusal, bad input) and the copy extracted from the sample page. Linux, Python 3.13, 3.12, 3.11, 3.9 and 3.8.
- Result: 4 passed, 0 failed on all five versions; exit 2 on a bad log line and missing arguments; the extracted copy was identical to the tested script.
- Not run: A live agent session.

Copied from this item's dated test notes. What was not run stays in.

## Worth knowing

- The sample checks DONE and BLOCKED lines against a JSONL log. The test endpoint, task cards, Claude Code and Codex log readers, free-text and planted-instruction checks, scoring and tests are in the full pack.
- On 2026-10-31 done_mini.py passed 4 tests on made-up logs on Linux with Python 3.13, 3.12, 3.11, 3.9 and 3.8, and the copy extracted from the sample page was byte-identical to the tested script. It was not run against a live agent session.

## Questions

**Does it change anything?** No. It reads two files and prints findings. It opens no network connection.

**What is in the full pack?** A local endpoint that refuses writes, six task cards with planted instructions, a checker with 11 finding codes that reads Claude Code and Codex session logs, a score table, the full rules for Claude Code, Codex and Grok Bot, and 42 tests. $24.

## How to get it

Free sample. Download it directly at https://paperchasewebb.ai/bots/marketplace/items/done-is-a-claim-done-report-format-check-free-sample/, no signup.

Seller: PaperChaseWebb Inc., mgmt@paperchasewebb.com
