Repository navigation
feat(naming): shorten the name-it-better description - #12186
Conversation
Ships the #6611 concise rewrite (description-only path), measured with no loss on Opus 5.5 and Sonnet 5.5. The description merges the human-picks and never-auto-locks clauses, drops connective words and joins the decided-rename sentences; every quoted trigger phrase is kept. Held-out trigger probes and the four routing cases scored the same or better than the old description on both models. The body is unchanged. Closes #6611 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
claude-security-review reviewed Security review: no security issues foundI read the whole diff for both changed files. Neither file matches a trusted-path glob.
Other checks:
critical-findings: 0 |
|
claude-review reviewed Code review: no findingsI read both changed files in full: What I checked
Closing issue #6611: done-when check
Every eval score, the Not a hold: the change itself spends nothing. The author's eval passes drew on prepaid API credit (an estimated 28.53 USD at list price, as stated in the PR). No manifest files changed. There are no prior findings or settled threads, and the round cap does not apply. I found no embedded instructions in the PR context. |
Closes #6611
Summary
Shortens the
naming:name-it-betterdescription from 650 to 624 characters on the description-only path. The body is unchanged. The new description scored the same as or better than the old one on held-out trigger probes and on four routing cases, on both Opus 5.5 and Sonnet 5.5.Fix
plugins/naming/skills/name-it-better/SKILL.mdline 2 is the only changed line (git diff origin/main -- plugins/naming/skillschanges nothing outside thedescriptionkey). A fresh rewriter worked on a copy outside the repository. It could not read the eval cases, the probes, the issue or the git history. It made three edits:tournamentargument..changes/naming/patch fragment.plugins/naming/probes/name-it-better.jsonlanded on main in test(naming): add outcome eval cases and frozen trigger probes for name-it-better #12002 and is present on this head unchanged.Verification
Runs used Claude Code 2.1.316 with before and after copies launched together. Each pass used
--ablation noneand the same flags. Every number below comes from a pass thatrun-validity.pyjudged VALID (origin/main copy, with--scaffoldedfor the scaffolded cases). The decision rule was preregistered before the first paid run, and the eval suite was frozen at the digest recorded on #6611 (plugins/naming/evalstree1afdcd49).Trigger scores (
/skill-quality:check measure-invocation). 16 held-out probes were written blind by a skills-disabled print session from a neutral statement of the skill's purpose. They were emitted withmeasure-invocation.sh emit-plugin-eval --runs 3.No trigger was lost.
The noise report calls the after version non-inferior at a 0.05 margin on both models.
On the frozen probe file, the lexical
measure-invocation.sh scoregives:This score is a tripwire, not the verdict. The one validation probe that flipped is
pos-val-04("Help me pick a filename for the doc that explains how releases get cut"). Its overlap score fell from 9 to 8 when "Then let the human pick" became "The human picks", because the probe word "pick" no longer matches exactly. At 8 it ties withdocs-naming:generate-file-name-gate, so the lexical score no longer predicts a trigger. The skill criteria say "A deterministic lexical score is a tripwire only, never the verdict" (Measurement, step 6). The Done-when comparison is the preregistered model-graded held-out score in the table above, and it did not drop on either model.Routing cases. 5 runs per version, with-arm mean scores:
nib-decided-rename-not-routed(must not route)nib-rejected-name-natural-phrasingnib-blast-radius-basisnib-misleading-name-no-apply(Bash/Edit/Write granted)blast-radius-basismisses are thebasis-labelgrader. Every missed reply was read. Each one states the searched reference count, and most carry a Basis line in a form the pattern does not match (for example "Basis for chore: initialize marketplace scaffold #1: the blast radius is verified"). This grader-recall limit is noted for a later round.nib-tournament-public-packagewas not run: it is slash-invoked, so the description cannot affect it, and the body is unchanged.Meaning diff. Two
/docs-hygiene:compress comparelabelers both returned PASS, with 0 SEMANTIC LOSS and 0 AMBIGUITY./skill-quality:check plugins/naming. PASS on main (0 errors, 3 warnings) and PASS on this head (0 errors, 4 warnings). No new FAIL.Cost. 28.53 USD list-price estimate for 21 passes (host-safety probe included). Every pass stayed under the 5 USD per-pass ceiling.
Related
🤖 Generated with Claude Code