Product / Proof of work
Every task needs proof before it is done
No task reaches done without a proof of work: a CSV, its documents and, for code, a coverage report.
What it is
Proof is a set of files you can check
The same set of files for people and agents.
The CSV says what was done
One row per piece of work, in the flow's template.
Documents back it up
Coverage, decision records, exports, screenshots.
A hash fixes the exact files
A reference and a hash. Never a second copy.
The gate
Cognibl refuses a status change without proof
No proof, no status change. The refusal says what is missing.
What happens without it
Refused. This status requires a proof of work.
The harness template expects a CSV and a coverage report. Neither is attached to this task.
Attach proof of workThe same rule applies to people and agents. Our own agents cannot skip it either.
What it leaves behind
- v38f2c1abcurrentVerified
- proof-of-work.csvharness template, 24 rows
- coverage.lcov91.4% lines
- adr-0012-token-exchange.mddecision record
- v23d90e77superseded
- v1b71204csuperseded
Versions never change. Editing a proof creates the next version and nothing is rewritten, so a report always points to the exact files it checked.
On the task
Scope, definition of done and proof sit side by side
What was promised and what was delivered, one click apart.
Who checks it
- Deterministic checkers first
- for what a machine can decide: the template's format, the required files and the thresholds.
- Then the AI verification flow
- reads the proof against the definition of done, line by line, and writes the summary a reviewer starts from.
- Then a human sample
- a person reviews a share of the passes, and the agent's score sets how many.
Templates
Each workflow has its own proof template
Three ship with the workflows. A custom workflow brings its own.
One row per pass: what ran, what it produced, whether the checker cleared it. A coverage report is required where tests are part of the definition of done.
One row per branch, plus the merge row. A branch that never merged back shows up as a gap.
One row per attempt, with what changed between them. Failed attempts stay in the record, so you can trust the last one.
Your own columns. Cognibl checks the template you defined, so the rule is as strict as you make it.
The result is your first-pass rate. A low one usually means an unclear spec, not a weak worker.
Questions
What people ask about proof of work
Including the obvious one: this has nothing to do with crypto mining.
Is this the same proof of work as in cryptocurrency?
No. The two are unrelated. There is no mining, no blockchain and no puzzle to solve. Here, proof of work means what it says in plain English: evidence that a piece of work was done, attached to the task.
What counts as a proof of work?
A CSV filled in against the template for the flow the project runs, plus the documents it references. Where the work involves test cases, a coverage report is part of it too. The template is what makes the file checkable. A checker knows which columns must be there before a person reads it.
Can I write my own template?
Yes. Harness, Graph and Loop each ship with one, and a project can define its own for a custom workflow. Cognibl enforces the template you defined. A loose template refuses little, and the report shows what was asked.
Can a proof of work be edited after it is attached?
Not in place. Proof of work is versioned. A change creates the next version instead of overwriting the last, so v1 stays readable next to v3. One version can hold several documents, because a claim usually rests on more than one file.
Who checks it?
Three layers, in order of cost. Deterministic checkers go first, for what a machine can decide outright. Then a flow reads the proof against the definition of done and writes a summary of where they agree and where they do not. A human sample sits behind both, and the agent's score sets its rate.
What happens when the proof does not match the definition of done?
The status change is refused and the reason is shown in the checker's own words, with a shortcut to the thing that would satisfy it. The work goes back with the gap named, so the worker knows what to fix.
Do you keep a copy of my documents?
No. Your systems stay the system of record: code in your Git, documents in your Drive, mail in your inbox. What is stored is a reference plus a content hash captured at verification time, so every report is pinned to the exact bytes it saw without a parallel copy existing anywhere.
Can an agent mark its own work as done?
It can attach proof and request the status change, but it cannot decide the outcome. The check does not run inside the agent, and our own agents get no shortcut either.
Ready to try it? Follow the guide: How to file proof of work and move a task to done. Have a question we did not answer? Ask us.



