Skip to content

docs(process): CLAUDE.md requires worked tickets, real-run proof, and delegation - #1429

Merged
dennisonbertram merged 1 commit into
mainfrom
docs/1428-claude-md-process
Sep 8, 2026
Merged

docs(process): CLAUDE.md requires worked tickets, real-run proof, and delegation#1429
dennisonbertram merged 1 commit into
mainfrom
docs/1428-claude-md-process

Conversation

@dennisonbertram

Copy link
Copy Markdown
Owner

Closes #1428

Three practices this session kept proving necessary were absent from CLAUDE.md, so each had to be re-established by instruction every time.

1. An issue is a ticket to work, not a place to park a problem

The existing discipline requires an issue before implementation but never says the issue must then be worked. The predictable failure happened twice this session: file the issue, then stop and ask whether to proceed — which turns a ticket into a question and leaves the work undone.

Added, quoting the file:

An issue is a ticket to work, not a place to park a problem. Filing it is the first step of the job, not the deliverable.

If a diagnosis turns out to be wrong after the issue is filed, correct the issue before implementing. Never build a fix against a story the evidence has already contradicted, and never close an issue whose stated cause was never confirmed — say what remains unproven and leave it open.

That last clause is written from #1422, where I filed a confident diagnosis, disproved it twice by measuring, and had to correct the issue mid-flight.

2. Green tests are not proof the change works

CLAUDE.md already warned that merging is not shipping and that binaries must be rebuilt. It said nothing about driving the real thing — which is the same class of mistake one step earlier.

Green tests are not proof the change works — drive the real thing. A change is not done until the actual binary, TUI, or CLI has been exercised on the path the user takes, and the observed result reported. Report what you saw, not that you ran something.

State plainly what you could not exercise and what therefore rests on unit tests alone. An honest gap is a result; a silent one is a false claim.

It names what counts (rebuilt binary, pty capture, end-to-end CLI, inspecting the file the change writes) and what does not (a passing test, a successful build, a subagent's assurance), and points at the existing runbooks rather than duplicating them.

The section closes with three cases from this session, so it reads as evidence rather than exhortation — every one was green and wrong:

3. /efficient-fable as the default for token-heavy work

New short section naming what to delegate (searches, regression sweeps, log reduction, docs drafting, live captures) and what to keep (architecture, diagnosis, resolving conflicting reports, final diff review, what to tell the user), plus:

Treat subagent reports as leads, not facts. Before acting on a finding, opening a PR, or telling the user something is done, reopen the cited files and confirm the line references and failures yourself.

Also from this session: one subagent reported a build failure that was pre-existing and unrelated to the branch, and another reported test failures caused by my own concurrent processes rather than the change under review.

Verification

Docs-only. No rebuild required — stated explicitly per the repo's own rule about not silently skipping that.

All seven pre-existing sections confirmed intact by diff: Session rewind, Git & Merge Discipline, Current Source Of Truth, Workflow Engine, Provider Note, Benchmarks, Operational Reminder. The additions extend two existing sections and add one new one; nothing was removed or reworded.

Both referenced runbooks confirmed to exist: docs/runbooks/harnesscli-live-testing.md, docs/runbooks/benchmark-smoke.md.

Each addition was checked against "what would an agent do differently tomorrow because of this line?" — anything that could not be answered concretely was cut rather than softened.

Note

CLAUDE.md is not in the minor-change form's allowed paths (docs/**/*.md plus the root README/CONTRIBUTING/SECURITY/CHANGELOG/LICENSE), so this used the full form. Whether it should be included there is a reasonable question, deliberately left out of scope.

🤖 Generated with Claude Code

https://claude.ai/code/session_01WJGxhoFhA8JjkwZFcLGdS5

@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

…egation

Three practices this session kept proving necessary were missing, so each
had to be re-established by instruction every time.

Issues are tickets to work. The discipline required an issue before
implementation but never said to then work it, and the predictable
failure — stopping after filing to ask whether to proceed — happened
twice. Also added: a wrong diagnosis must be corrected on the issue
before implementing, and an issue whose cause was never confirmed must
not be closed as if it were.

Green tests are not proof. The file already said merging is not shipping;
it said nothing about driving the real thing. Three green-and-wrong cases
from this session are recorded as evidence: a spinner label that ate the
cancel hint at 40 columns, colour detection that never coloured stdout
because the check ran inside a command substitution, and a persistence
change whose test suite wrote into the developer's real config.

/efficient-fable is named as the default for token-heavy work, with the
split written down and the reminder that subagent reports are leads to
verify rather than facts to repeat.

Docs-only: no rebuild required.

Closes #1428

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WJGxhoFhA8JjkwZFcLGdS5
@dennisonbertram
dennisonbertram force-pushed the docs/1428-claude-md-process branch from fa3bfb1 to b3a3230 Compare September 8, 2026 14:13
@dennisonbertram
dennisonbertram merged commit 8e3dcb6 into main Sep 8, 2026
2 checks passed
@dennisonbertram
dennisonbertram deleted the docs/1428-claude-md-process branch September 8, 2026 14:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

docs(process): CLAUDE.md should require working tickets, real-run verification, and /efficient-fable delegation

1 participant