You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
perf: cut the bodies of the most-invoked skills through progressive disclosure - part 1 of 2 #12243
Part 1 of 2 of #12240, split at intake (owner Q93). The done-when below is copied from #12240 as written.
Done when
Each of the six skills has its body cut through progressive disclosure: action-specific detail moves to reference files read on demand, and the hub keeps routing and gates. Each cut ships with eval evidence of no loss, as the skill criteria require.
Proposed work class: work-class: scoped
Basis: automated intake triage; the lanes App applied this class.
Size: Medium
Complexity: Medium
Uncertainty: Knowable
Flags: none
Blocked by: none
Understood: this is part 1 of 2 of #12240, split at intake. It asks for the bodies of the most-invoked skills to be cut through progressive disclosure. Action-specific detail would move into reference files read on demand, and the hub would keep routing and gates. Each cut needs eval evidence of no loss.
Two things are missing from this issue. It says "the six skills" without naming them, and it doesn't say which skills belong to part 1 and which to part 2. The parent issue #12240 or the sibling #12244 may settle both. Neither #12240 nor #12244 is a duplicate; they are the parent and the sibling split.
The work-resolve-issue lane stopped on this issue (host-only): the run reports the work needs a host run the lane cannot make.
It added host-run and removed agent-ready: an agent run on a host builds it, and it waits on no decision from a person.
In the run's words:
host-only: each of the six body cuts must ship with eval evidence of no loss (docs/review/skills-and-agents.md:6-8; plugins/playbooks/skills/skill-authoring/reference/skill-criteria.md:24-28 and 278-285: run the skill's cases with and without the removed text via /evals:plugin-eval --baseline <before.json> --margin <m>, and ship only under the non-inferiority rule). /evals:plugin-eval runs billed claude plugin eval sessions under a sandbox host check (plugins/evals/skills/plugin-eval/SKILL.md), and this lane's Bash runs only the named wrappers, none of which runs an eval. Without that evidence a cut cannot ship, so no edit was made.
What the run says it did not do:
Progressive-disclosure cuts of the six skill bodies: not started, because the required no-loss eval evidence (/evals:plugin-eval --baseline per skill) needs a host run this lane cannot make.
Tidy, review and prep steps: skipped because there is no change to tidy or review.
Host run. I cut the /source-control:worktree skill body through progressive disclosure and showed no loss on an eval round that is VALID on both arms. This is cut 1 of the 6.
What ran
Claude Code 2.1.316, on the subscription login.
Scope: one skill. Each cut needs its own paired eval run, and this lane runs at most two suites at once.
The cut:
The section "The nesting invariant, dated measurement" moves verbatim to skills/worktree/reference/nesting-invariant.md. The SSOT test, hooks, scripts, context/create.md, the fixtures and the README now point at the new owner.
The quoted isolation-enforcement passage becomes our rules plus a docs pointer, with an as-of date and a recheck trigger.
/docs-hygiene:compress compare (fresh compare-labeler agent): VERDICT PASS, with no SEMANTIC LOSS. It raised two AMBIGUITY rows, and both were fixed before the evals ran.
Evals: 3 rounds. Each round ran the before and after copies at the same time with --case 'worktree-*' --ablation none --runs 2 -j 2 --scaffold, on Opus 5.5, in capped scopes with a short TMPDIR. The ~/.docker links were the same before and after.
Round 1 result: 8/8 cases at 1.000 in both arms. The noise report gives a paired change of +0.00 (interval +0.00 to +0.00), and its verdict is non-inferior at margin 0.05.
Rounds 2 and 3 each stayed INVALID on one arm: a with-arm Read of the sandbox settings.json was denied, and round 3 also had one unfired Skill call. Pooled over all 3 rounds, mean case score is 0.984 before and 0.979 after.
Ready phase:
origin/main merged into the branch.
Verify: check-affected.sh --tests passed on the merged head (14 passed, 2 skipped). pre_ready disables this step, but it was run anyway.
The code and security reviews were left to CI, because both lanes read ci healthy.
Holds were checked twice and none was found. The PR was flipped to ready, and a ready CI run was confirmed.
Review round 1 on the ready head:
Security lane: 0 findings.
Code lane: 2 findings, both VALID and fixed in the final head. Three owner citations still named SKILL.md. The reference file quoted the hooks docs and restated an upstream issue's state.
Both replies are posted, and the bot thread is resolved.
The fix touches no eval-read text, so the round-1 no-loss result still holds for the hub.
Final head: 68eba768ab. Lanes on that head were still pending at handoff to PR Lane Automation.
Rule that applies to every slice here (agent note, not an owner decision). Each slice is a skill-body cut, so plugins/playbooks/skills/skill-authoring/reference/rewrite-a-plugin.md:60-66 applies: copy the before plugin, delete only the changed skill's procedure steps, run it on one model against a before run launched together, and the suite detects a loss when the noise report calls a case drop or the mean case score falls by 0.15 or more. Line 79: "An unmeasurable part (step 4's negative control) ships its before text, whatever its own pass shows." Line 22: preregister that control in the draft PR body before the first paid run. #12387 shipped without a control and scored 8/8 in both versions, so its suite has not shown it can detect a loss. It needs the control after the fact, and the cut reverts if the control cannot detect. The slices' Done-when (#12655#12657#12659#12661#12666; draft #12704) names no control, but the protocol requires one. Basis: that file at origin/main; the owner's 2026-11-02 negative-control decision, which landed through #12222. The 2026-11-02 stop on #6476 lists only #6599-#6619.
Activity
github-actions commentedon Nov 2, 2026
Proposed work class: work-class: scoped
Basis: automated intake triage; the lanes App applied this class.
Size: Medium
Complexity: Medium
Uncertainty: Knowable
Flags: none
Blocked by: none
Understood: this is part 1 of 2 of #12240, split at intake. It asks for the bodies of the most-invoked skills to be cut through progressive disclosure. Action-specific detail would move into reference files read on demand, and the hub would keep routing and gates. Each cut needs eval evidence of no loss.
Two things are missing from this issue. It says "the six skills" without naming them, and it doesn't say which skills belong to part 1 and which to part 2. The parent issue #12240 or the sibling #12244 may settle both. Neither #12240 nor #12244 is a duplicate; they are the parent and the sibling split.
Automated triage, applied by the lanes App.
github-actions commentedon Nov 2, 2026
1 remaining item
melodic-automation-lanes commentedon Nov 2, 2026
The work-resolve-issue lane stopped on this issue (
host-only): the run reports the work needs a host run the lane cannot make.It added
host-runand removedagent-ready: an agent run on a host builds it, and it waits on no decision from a person.In the run's words:
What the run says it did not do:
Run: https://github.com/melodic-software/claude-code-plugins/actions/runs/41383383772
To hand it back to the lane, remove
host-runand addagent-readyagain.kyle-sexton commentedon Nov 2, 2026
Claim. Backlog HITL host-run worker is taking this now.
fix(source-control): point the last owner citations at the nesting re…
kyle-sexton commentedon Nov 2, 2026
Host run. I cut the
/source-control:worktreeskill body through progressive disclosure and showed no loss on an eval round that is VALID on both arms. This is cut 1 of the 6.What ran
skills/worktree/reference/nesting-invariant.md. The SSOT test, hooks, scripts,context/create.md, the fixtures and the README now point at the new owner./docs-hygiene:compress compare(freshcompare-labeleragent): VERDICT PASS, with no SEMANTIC LOSS. It raised two AMBIGUITY rows, and both were fixed before the evals ran.--case 'worktree-*' --ablation none --runs 2 -j 2 --scaffold, on Opus 5.5, in capped scopes with a short TMPDIR. The~/.dockerlinks were the same before and after.run-validity.py --runs 2 --scaffolded(with fix(evals): check case helper plugins per case and excuse plugin-data compound denials #12388) marks round 1 VALID on both arms.Readof the sandboxsettings.jsonwas denied, and round 3 also had one unfiredSkillcall. Pooled over all 3 rounds, mean case score is 0.984 before and 0.979 after.check-affected.sh --testspassed on the merged head (14 passed, 2 skipped).pre_readydisables this step, but it was run anyway.ci healthy.SKILL.md. The reference file quoted the hooks docs and restated an upstream issue's state.68eba768ab. Lanes on that head were still pending at handoff to PR Lane Automation.Acceptance criterion (#12243)
/source-control:worktree, in PR perf(source-control): move the worktree nesting measurement out of the skill hub #12387./source-control:pull-request,/session-flow:handoff,/discovery:research,/evals:plugin-eval,/source-control:commit.PR: #12387
Target labels: add none; remove none.
kyle-sexton commentedon Nov 3, 2026
Claim. Backlog HITL host-run worker is taking this now.
kyle-sexton commentedon Nov 3, 2026
Slice plan. The five remaining cuts are filed as one issue per skill.
/source-control:worktreeworktree-*/source-control:pull-requestpull-request-*(19)/session-flow:handoffho-*(4)/discovery:researchrs-*)/evals:plugin-evalpe-*and others naming it/source-control:commitcommit-*(6)Basis:
3bd42cabfe, the method perf(source-control): move the worktree nesting measurement out of the skill hub #12387 used (it reproduces perf(source-control): move the worktree nesting measurement out of the skill hub #12387's 31,615 for worktree).b1439e9809), so perf: cut the bodies of the most-invoked skills through progressive disclosure - part 2 of 2 #12244 should measure before and after with one stated method.skill-criteria.md, "Cutting text"), and perf(source-control): move the worktree nesting measurement out of the skill hub #12387 took about 3 h of host time for one.#12243 is done when the five slices merge.
kyle-sexton commentedon Nov 3, 2026
Rule that applies to every slice here (agent note, not an owner decision). Each slice is a skill-body cut, so
plugins/playbooks/skills/skill-authoring/reference/rewrite-a-plugin.md:60-66applies: copy the before plugin, delete only the changed skill's procedure steps, run it on one model against a before run launched together, and the suite detects a loss when the noise report calls acase dropor the mean case score falls by 0.15 or more. Line 79: "An unmeasurable part (step 4's negative control) ships its before text, whatever its own pass shows." Line 22: preregister that control in the draft PR body before the first paid run. #12387 shipped without a control and scored 8/8 in both versions, so its suite has not shown it can detect a loss. It needs the control after the fact, and the cut reverts if the control cannot detect. The slices' Done-when (#12655 #12657 #12659 #12661 #12666; draft #12704) names no control, but the protocol requires one. Basis: that file at origin/main; the owner's 2026-11-02 negative-control decision, which landed through #12222. The 2026-11-02 stop on #6476 lists only #6599-#6619.