Evidence and limits

What the evidence says about the main parts of /gc, the study behind it, and the behaviour checks.

The full report of the replay study, with every figure traced to its source, can be downloaded: the final report (Markdown, about 185 KB). In it the earlier kit is called GuidedCoding Plus (GC+); the cited source files are available on request.

What the evidence says about /gc as now written

/gc version 1.4 keeps the steps the replay study found to help, drops or makes optional those that showed no clear benefit, narrows the one that probably hurt (estimated, not tested), and keeps a few safety steps that were not measured. Figures are major errors left in the code per run on 18 harder jobs (jobs where the earlier kit's own checks had caught errors, not a random sample), unless stated otherwise; the study is described below.

StepWhat the study foundIn /gc 1.4
One review pass (Claude Code's code-review skill)Helps: 0.90 → 0.79 major errors per run; across all 37 jobs, missed program errors fell from 0.81 to 0.47 per jobKept, on every job
An outside review by another AI assistantHelps on the 18 harder jobs, narrowly: 1.00 → 0.83 under /gc (round 6b, below); for plain Claude Code with one review, 0.85 → 0.76, not a clear difference. The net gain came from 4 of the 18 jobs, and the reviews also brought in a few new errorsStandard for hard changes (new trigger H), for triggers R, D and Q, and for consequential work; offered on any other job
A proving test (fails on the old code, passes on the new)More runs produced a proving test: about 1 in 7 plain runs ended without one, against 1 of 37 jobs for the earlier kit, which required it. Its effect on errors left was not measuredKept, required
A second ordinary review passNo clear additional benefit found over one review passNot included
The independent reviewer (REVIEWER.md)Not clearly better than a second ordinary review, at about three times the timeOptional, on request
The strict scope rule (revert every review fix beyond the literal task, ask first)Probably cost errors: in round 6, fixes the review found were undone and left as questions, and /gc left more major errors than plain + review (0.97 against 0.79). Estimated from those cases, not measured directlyNarrowed: real defects in the code the job changes are fixed without asking; /gc asks before changing public interfaces, defaults, file formats, behaviour callers rely on, or the project's scope, and when the task leaves the intended behaviour open

Two scorings of the same arms. Plain Claude Code with one review appears as 0.79 (round 6) and as 0.85 (before the outside review, round 6b); /gc 1.3 appears as 0.97 and 1.00. Round 6b's instruments found further errors that the earlier versions also had, which raised those figures. Each comparison uses figures from one scoring.

Kept for safety and clarity, not measured: the short final report (what changed, what was checked, what is open); a real call to a live service where a fix depends on it; exact commands for another platform; an outside review for changes that touch existing user files or credentials; asking before any commit, push or installation; a plan, a checked recovery step and an outside review before an irreversible step in consequential work; /gc batch; the review fallback when the code-review skill is missing.

Not known: /gc 1.4 has not itself been replayed (it was checked in a small trial, below), and the narrower scope rule was adopted without a test. Also not known: whether /gc 1.4 as a whole leaves fewer errors than plain Claude Code with one review and an outside review; how much of the developer's own time an outside review takes; and whether an outside review helps on routine fixes (it is optional there). The effects found are small (about 0.1 to 0.2 major errors per run) next to the variation between runs.

The replay study (October 2026)

37 past bug-fix jobs in PHENIX and cctbx, done with the earlier GuidedCoding kit, were replayed with plain Claude Code: alone (P), and with one review pass using Claude Code's code-review skill (P+R). Every result was scored for program errors left, with errors tagged major or minor without knowing which method produced them.

per job, over all 37 jobsearlier kitPP+R
program errors left (missed)0.510.810.47
major errors left (missed)0.160.330.24

What it shows:

What it does not show:

The replay of /gc itself (round 6, October 2026)

/gc version 1.3 was replayed on the 18 harder jobs, those where the earlier kit's layers had caught something: 38 fresh runs, with the same Claude Code versions, inputs and sandbox as the plain runs, and a fixed paragraph standing in for the developer ("keep to the task"). In 4 runs /gc wrote an outside review; it was sent to a model from another family and the session continued with the reply. Every run was scored at the same depth as the others, and the reading rule was fixed before any result was seen.

major errors left in the code, per run (missed or disclosed)earlier kitPP+R/gc with its outside reviews
the 18 harder jobs0.440.900.790.90

The round-6 report is part of the final report above (Part F).

What an outside review adds (round 6b, October 2026)

Every counted run of round 6, both /gc and plain Claude Code with one review, was resumed once with an outside review of its final change by a model from another family (gpt-6.1-sol), built by one script for both, and scored again at the same depth. The reading rule was fixed before any run.

major errors left in the code, per runbefore the outside reviewafter
plain Claude Code + one review (38 runs)0.850.76
/gc 1.3 (38 runs)1.000.83

The round-6b report is part of the final report above (Part G).

Use since

The procedure, as an earlier version, was used on three real jobs on 2026-10-23, and the developer judged it worked well. Evaluation continues on 10 to 15 jobs, each checked for later defects about four weeks after the job.

Trial of version 1.4 (2026-10-26)

An implementation check, not a measurement. Fresh /gc 1.4 runs on replayed jobs:

runresult
three hard jobs (a consistency check, process polling, a model-default update)trigger H applied in each, with a one-line reason; each wrote an outside review file with the task, why the change is hard, the full diff, and the tests on the old and new code
a routine one-line fixno trigger: "one clear defect on one path"; the outside review was offered, not required
the three hard jobs, after the outside review came backevery finding was handled (1, 3 and 2 findings), each fix with a test; each report opened with "Ready to use: no" and named the remaining platform or live check with its commands

One fix in the trial was narrower than it might have been: on the model-default job, the no-temperature handling was given to the two new default models only, and the report presented this as a design choice rather than an open point.

What the first runs changed: a session must finish (or stop) any long test before writing the review file and the report, and leave nothing running; and the narrowed scope rule replaced the strict one before the second runs.

Behaviour checks of revision 22

Before release, each of these was run in Claude Code (claude -p) against a scratch repository, and the output was kept: the final message, and for the runs that change things, the Git state, the diff and file hashes before and after.

First round (version 1.2, 2026-10-23):

runresult
/gcan introduction; no job started
/gc setuplooked first, showed the card, saved nothing
/gc stop, /gc help, /gc auto resumeno job started
bounded fix (clamp upper bound)proving test failed on the old code and passed on the new; code-review skill ran; short report
installation taskedited the script but did not run it: asked for a plan, a checked backup and an outside review first. But it kept a review fix (set -e) that changed the script's failure behaviour, and only reported it
two-task batchseparate patches; checkout restored after each job; reported that the patches conflict when combined
batch with a file already modifiedstopped before either job; nothing changed

Second round (version 1.3, after the outside reviews). The first runs below used an intermediate 1.3 text; the final rows (marked final) used the published text:

runresult
/gc autosol GUI: ...a normal job started; only auto as a word is an old-kit command
/gc stop with no earlier kit installedno job started, but it called /gc batch "unattended". The wording was fixed
/gc stop and /gc auto resume (final)"the earlier GuidedCoding kit ... has been retired"; no job started; /gc batch described as supervised, not unattended
installation task, with an existing shared folder (final on the second try)the folder stayed byte-identical (hashes before and after); a backup was made; it asked for a plan, an outside review and a go. On the first try it still kept set -e; after the rule was made concrete, it reverted set -e and a working-directory change as behaviour changes, raised them as a decision, and kept only a refactor with no behaviour change
batch, one job adding a new test filethe new file was in that job's patch; each patch was re-applied in a fresh copy and compared byte for byte before reverting; out-of-scope review fixes were reverted; the checkout ended where it started; the two patches apply together

What these runs changed:

Later check (2026-10-23, after the on-request line was added to SKILL.md §3):

runresult
bounded fix, with "also prepare an outside review file for a second opinion"fixed the bug with a proving test run on the old and new code; ran the code-review skill; wrote OUTSIDE_REVIEW.md with the task, the diff, the tests and the standard request; reported "Ready to use: no" until the outside review comes back; committed nothing

Built from cctbx/guided_coding 17e6bb8 (2026-10-26).

Back to installation and use · All documentation · Back to top