The audit record Shipped

The answer to "who approved this?" is a file, not a meeting

Every closed task leaves one record — on the branch it happened on when it closes from the CLI, by default, and on the board when the console or a merge closes it or the repository keeps its records there: what the work said it would touch, what the diff proves it touched, who opened anything that was shut, and what was overridden with whose name on it. A close over the connector carries the agent's reported file list, and the record says it was reported, not observed.

CC-58 · audit recordcycle export CC-58 --audits

## What was asked

A large board exports in one request instead of timing out.

## What it was not allowed to do

No change to the export format.

## How anyone would know it worked

A 2,000-task board exports without a timeout.

## What changed

apps/web/src/export.ts · apps/web/test/export.test.ts — from git

## The work went outside what was declared

No.

Every close leaves one record: what was asked, what was not allowed, what changed, and what went outside what was declared.

The unit is the whole argument

Durable provenance for AI-written code already exists and is good: there are tools that write the agent, the model and the prompt into Git Notes per line, surviving rebase and squash. If that is what you need, use one — this is a different object.

A record here is per task, not per line. It is not "who wrote this line" but "was this change authorised, and did it stay inside what was authorised" — a governance question that per-line authorship cannot answer no matter how complete it is.

What is in one

The census, including the part that is unflattering

At a count on 2026-08-21 this repository had 131 tasks closed, 112 of them with committed audit records — and in the first census of 77 closes, 34 were closed by a single signed override, a bulk close of work that predated the closing gate, recorded once with a reason rather than fabricated task by task. From 2026-10-06 (CC-1150) to 2026-10-10 (CC-1288) this repository kept its records on the board; since then they are committed here again.

That figure is on this page for the same reason it is in the trail: a product arguing that overrides are always recorded, which then hid its own largest override, would be arguing against itself. The record is only worth anything if it is allowed to say something you would rather it did not.

It outlives us, on purpose

By default a close from the CLI writes its record as markdown in .zones/audit/, in your repository, on your branch, written to be read by a person with no tooling. Uninstall CommitCycle and every one of them stays exactly where it is. The board keeps a copy of each, and the only copy of a record the console or a merge wrote, or of every record in a repository set to "records": "board"; cycle export --audits hands you those as the same Markdown — the exit is part of the product, and a compliance answer you cannot take with you is not an answer.

Where it stops

The record's shape is in the docs, the gate that writes it is the closing gate, and what it measures against is the zone map.

Questions this page answers

What happens to the audit trail if I stop using CommitCycle?

You keep it. By default a task closed from the CLI leaves its record as a markdown file in your own repository, on the branch the work happened on, written to be read without the tool that produced it. One closed from the console or by a merge, and every one in a repository set to keep its records on the board, is held by the board, and cycle export --audits prints it as Markdown. Uninstalling removes the gate, not the history.