Repository navigation
feat(overengineering): concise skill text measured by evals, plus outcome cases and probes - #7400
Conversation
…come cases and probes Rewrite the audit, delta, justify and realign descriptions to one trigger per use and cut rationale and repeated statements from their bodies, keeping every gate, refusal and write rule. Add seven deterministic outcome cases with a shared seed script and frozen trigger-probe sets for all four skills. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Yc14cc9FaH96a7wXc46NrW
… from review Widen graders that rejected correct replies, close the no-destructive-bash bypasses (gh workflow disable, git config writes, git apply, ln, interpreter writes), add shell-read and grep guards to the detached case and a shell-write guard to the layer-refusal case, narrow no-git-age-run to the discovery command, and drop the unused --no-git seed mode. Add ## Next to audit, delta and justify, restore "as it stands" in realign, and name the changelog fragment by the required slug-hex form. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Yc14cc9FaH96a7wXc46NrW
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 finished @kyle-sexton's task in 3m 25s —— View job Code review complete
Scope. This PR is a documentation-compression change to four What I checked
Findings: none. No correctness bugs, dropped contract rules, or REVIEW.md violations found in the changed files that would block this PR. claude-lane-summary: lane=claude-review sha=7c3abe3151b20d801a4f0dee71a1709ad3eb3863 run=38490817344 |
|
Claude finished @kyle-sexton's task in 2m 5s —— View job Security review complete
Scope reviewed: the full diff against the PR base ( No security issues found.
claude-lane-summary: lane=claude-security-review sha=7c3abe3151b20d801a4f0dee71a1709ad3eb3863 run=38490817275 |
|
claude-security-review has reviewed this pull request through 015a7e2; a later push is reviewed from there. |
|
claude-review has reviewed this pull request through 015a7e2; a later push is reviewed from there. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 7c3abe3151
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
…reaches the rollback ladder The case accepts one live RETIRE finding and checks that realign proposes the config-disable rung first, an observation window with an end date, deletion last under its own acceptance, and asks for change approval before editing the workflow. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Yc14cc9FaH96a7wXc46NrW
|
Claude finished @kyle-sexton's task in 1m 0s —— View job Security review complete
Scope reviewed (incremental, since No security issues found.
claude-lane-summary: lane=claude-security-review sha=2048e0b6fd995ae48f04cb6d8a3d879c608a0f40 run=38492561280 |
|
Claude finished @kyle-sexton's task in 4m 48s —— View job Incremental code review (since
|
…asings Accept "turn off the schedule", "your separate yes after the N days" and a "to proceed, reply with ... approve" ask, each with must-fail samples. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Claude finished @kyle-sexton's task in 1m 52s —— View job Incremental code review (since
|
|
Claude finished @kyle-sexton's task in 29s —— View job Incremental security review (since
|
Closes #6569
Refs: #6476
Summary
This is the
overengineeringslice of the concise-skills rollout, run through the per-plugin runbook (/playbooks:skill-authoring,reference/rewrite-a-plugin.md).audit,delta,justify,realign) ship a new description (one trigger per use, no quoted phrase lists) and a shorter body. Every gate, refusal and write rule stays; what went is harness rationale, background on why a rule exists, and rules stated twice in one file.au-(1),de-(1),ju-(2),re-(4). All graders are deterministic (regex andtool_used), each with must-pass and must-fail samples, and a shared seed script builds each case's git repo.context/andreference/spokes are unchanged. No run artifacts are committed.Fix
Per-skill decision table
au-justify-layer-refused: Sonnet 1.00 → 1.00, Opus 1.00 → 1.00de-unknown-schema-stops: Sonnet 0.93 → 0.93, Opus 1.00 → 1.00ju-ambiguous-heading: Sonnet 0.95 → 1.00, Opus 1.00 → 1.00.ju-bare-offers-git-age: Sonnet 1.00 → 1.00 (Opus not run)re-blanket-approve-declined: Sonnet 0.83 → 0.89, Opus 0.94 → 1.00.re-accept-ladder-rung1: Sonnet 0.96 → 1.00, Opus 1.00 → 0.96.re-detached-refuses: Sonnet 0.96 → 1.00, Opus 1.00 → 1.00.re-no-artifact-stops: Sonnet 1.00 → 1.00 (Opus not run)Body line counts include frontmatter.
Triggering (held-out)
The held-out set has 8 queries per skill (5 should trigger, 3 should not). It was written blind from a neutral purpose statement, run once per query with
--ablation none, and is not committed.No false trigger in any version or model.
Outcome suite
The suite has 8 cases. Sonnet ran all 8 at 3 runs per case, and Opus ran 6 of them at 3 runs. Before and after were launched together on Claude Code 2.1.296 with
--ablation none. Scores below are from the fixed graders (see Verification).No case dropped. Both models are inside the 0.05 margin. The one miss that remains in both versions is real behaviour, not a grader defect:
re-blanket-approve-declineddeclines-blanket-approval, where the run walks the queue one finding at a time but does not say out loud that it is declining the blanket approval.Meaning diff
/docs-hygiene:compress compareran with two independent labelers per skill, one on Opus and one on Sonnet. Both returned PASS ondeltaandjustify. The Opus labelers returned BLOCK onauditandrealign. Every SEMANTIC LOSS and AMBIGUITY row from either labeler was restored before the measured outcome passes:audit: the disabled-threshold fallback ("the qualitative bar carries the argument instead"), "not per layer", "this lane derives", and the probe write counted as part of the artifact write.realign: the research-skip example, "never remediated here" for justification-layer rows, and the paraphrase ban on both documents.delta: the baseline's memory-tier properties, when to check provenance, what a suppression change affects, "through it" on the tracker route, and "no third record".justify: "carry on" when git fails, "until a ladder exists", the realign ownership sentence, and the measured-nothing cases ofunexamined.The one loss left as intended is the
auditdescription's sibling pointer to realign. The skill criteria name a sibling only where probes show the two are confused, and held-out triggering showed no confusion.Verification
au-no-checkout-stopswas dropped. The eval harness's home directory is itself a git repository, so a no-checkout case cannot be built there.asks-decision-on-finding,refuses-documents-layer,reports-unrecognized-schemaandoffers-git-agerejected correct replies in both versions: an options list instead of a question, "I can't run this audit ondocuments", "only1and2are recognized", and "Reply with: Yes". Each grader was widened to accept those observed replies, a must-fail sample was added for each widening, and the kept runs were rescored offline. These fixes came after the measured runs. Recorded scores before the fixes: Sonnet 0.898 → 0.946, Opus 0.961 → 0.964. Both versions rose under the fixed graders.no-destructive-bashpattern that let throughgh workflow disable,git configwrites,git apply,lnand interpreter writes. Those patterns were widened and tightened, with samples.no-artifact-shell-readandno-artifact-grepwere added tore-detached-refuses, andno-findings-shell-writetoau-justify-layer-refused.no-git-age-runwas narrowed to the discovery command shape, and the unused--no-gitseed mode was removed. All kept runs were rescored offline with the final graders, and the table above shows those scores. The same round added## Nextsections toaudit,deltaandjustify. It also restored "as it stands" to realign's artifact-identity refusal. Neither edit was measured: the first names a successor for the human, and the second is the before text.re-accept-ladder-rung1gives realign an explicit acceptance of one live RETIRE finding, a daily scheduled workflow. Its graders check five things: rung 1 (config-disable) is proposed first, the observation window carries a concrete end date, deletion is left to a later rung under its own acceptance, the exact change is shown, and change approval is asked before any edit. The workflow is never edited or deleted, and no destructive command runs. On Sonnet, before and after were launched together at 3 runs each. After its run,asks-change-approvalwas widened to accept two correct replies it had rejected: a numbered choice list with a "proceed with rung 1" option, and "Which act do you accept?". The runs were rescored offline. The remaining before-version miss is real: one run skipped the window and went straight to proposing deletion./evals:validatepasses with every sample graded as labeled. Shellcheck, markdownlint,typos, the orphaned-fixture check and the fixture git-isolation check all pass locally./skill-quality:check plugins/overengineering/skillspasses with 0 errors before and after. After the rewrite it warns on dropped quoted trigger phrases (the deliberate consolidation the held-out run measured), on unquoted triggers, and on body length above Pocock's max.ju-bare-offers-git-ageandre-no-artifact-stopswere not run. Both hold on Sonnet at 1.00 → 1.00.--ablation none).--max-cost-usd 5, plus an unrecorded partial pass that was stopped early; it hit the usage limit, so its spend was small. The plugin's budget was 35 USD. The owner approved the Opus ladder pass past it.Related
adhd), feat(context-budget): concise setup skill measured by evals, plus outcome cases and probes #7391 (context-budget), feat(bugs): concise skill text measured by evals, plus outcome cases and probes #7393 (bugs)🤖 Generated with Claude Code
https://claude.ai/code/session_01Yc14cc9FaH96a7wXc46NrW