Repository navigation
Description
Problem
The Fable 5.2 skill re-audit held 258 cut and rewrite rows that no eval suite measured ([D18]). The harness-ops pilot evaluated 24 of them (#15469). The other 234 were re-sorted without evals ([D27]):
| group | rows | outcome |
|---|---|---|
| resolved (main already says it) | 12 | closed |
| form-only (pointer, stamp or wording only) | 160 | 8 already tracked in #15513/#15514; 152 filed for the lanes as #15525-#15529 (the stamp sweep covers none of them) |
| fix-route (stale or wrong fact) | 8 | fixed with cited sources in #15517 |
| eval (changes what a skill tells the agent) | 54 | this issue |
These 54 rows cut a rule or change when a skill delegates, which steps it runs or what thresholds it uses. Under [D10] a cut ships only if it is non-inferior on both Opus 5.5 and Fable 5.2, and no suite measures these rows today.
Rows (findings-file row numbers per plugin)
| plugin | rows |
|---|---|
| ai-slop | 2, 5 |
| architecture | 4, 5 |
| attribution | 3, 5 |
| bugs | 4 |
| code-tidying | 2, 10, 15, 29 |
| codebase-health | 2 |
| coupling | 3 |
| debugging | 6 |
| discipline | 3 |
| discovery | 9, 11, 12, 22, 23 |
| disk-hygiene | 15 |
| docs-hygiene | 29 |
| education | 7 |
| evals | 13 |
| harness-config | 3, 14, 53 |
| implementation | 5 |
| instruction-placement | 2 |
| knowledge | 18 |
| machine-health | 5, 16 |
| overengineering | 1 |
| performance | 7, 8 |
| planning | 17, 20 |
| plugin-quality | 3 |
| repo-hygiene | 8 |
| session-flow | 1, 20, 22, 24, 26, 28, 35, 39, 42 |
| songwriting | 7, 27 |
| user-interface | 1, 10 |
| work-items | 6, 22 |
Each row on main (35a9e39): file:line and the text it would change
| plugin | id | group | evidence | |
|---|---|---|---|---|
| ai-slop | ai-slop-2 | eval | plugins/ai-slop/skills/audit/SKILL.md:105-106 "Coverage is uniform ... Make it affordable by fanning out instead" Adds inline path for a single batch | |
| ai-slop | ai-slop-5 | eval | plugins/ai-slop/skills/audit/context/rubric-fanout.md:81 "<verbatim quote, max 25 words>" -- <reason, max 20" Dropping a subagent output cap | |
| architecture | architecture-4 | eval | plugins/architecture/skills/improve/actions/deepening.md:37 "Dispatch one scan subagent per area the" Adds an inline-scan condition | |
| architecture | architecture-5 | eval | plugins/architecture/skills/improve/actions/conventions.md:42-43 "Name the count of scan subagents ... Walk the code through the Agent tool" Same delegation change | |
| attribution | attribution-5 | eval | plugins/attribution/skills/audit/context/gotchas.md:43 "intersecting them looks like free" Cutting the gotcha; the row predicts behavior holds without it | |
| attribution | attribution-3 | eval | plugins/attribution/skills/audit/SKILL.md:75-79 "Dispatch fresh-context subagents per ... accuracy.nomination_passes (default 2)" Inline nomination for small targets |
|
| bugs | bugs-4 | eval | plugins/bugs/skills/write/SKILL.md:115-116 "Using screenshots with arrows pointing out the issue is a great way" Cut; eval must show the screenshot request survives | |
| code-tidying | code-tidying-2 | eval | plugins/code-tidying/skills/audit-dead-code/context/adjudication.md:58 "Fan-out: batch the capped set to fresh-context subagents." Adds an inline condition | |
| code-tidying | code-tidying-10 | eval | plugins/code-tidying/skills/batch-simplify/SKILL.md:239 "Before spawning any agents, ground the run" Condition the grounding step on scope | |
| code-tidying | code-tidying-15 | eval | plugins/code-tidying/skills/remove-comments/SKILL.md:91 "is available, however small the scope: the point is a" Dispatch condition change | |
| code-tidying | code-tidying-29 | eval | plugins/code-tidying/skills/batch-simplify/context/repo-mode.md:74 "Hand the base grouping to one agent and have it merge undersized groups" Inline vs agent | |
| codebase-health | codebase-health-2 | eval | plugins/codebase-health/skills/audit/SKILL.md:204 "One agent per primary-source file**, NOT a single" Fan-out condition | |
| coupling | coupling-3 | eval | plugins/coupling/skills/reduce/SKILL.md:101 "Fan out fresh-context Explore subagents over the scope" Fan-out condition | |
| debugging | debugging-6 | eval | plugins/debugging/skills/analyze-profile/reference/formats/heapsnapshot.md:23-24 "run it, and the queries, in a subagent." Align to SKILL.md:47 size condition | |
| discipline | discipline-3 | eval | plugins/discipline/skills/do-your-research/SKILL.md:36 "Never act on ambiguity. Surface the unknown and resolve it" Narrows when to ask | |
| discovery | discovery-11 | eval | plugins/discovery/skills/research/context/deep-tier.md:83 "Return: your return block, under 4,096 bytes with persistence: written" Cut prompt line | |
| discovery | discovery-9 | eval | plugins/discovery/skills/report/SKILL.md:58,64 "at most 5 bullets ... must stay under 4,096" Test dropping caps | |
| discovery | discovery-12 | eval | plugins/discovery/skills/research/context/discipline.md:108 "12+ queries total (was 9+), 5+ distinct tool types" Threshold choice, not settled by a source | |
| discovery | discovery-22 | eval | plugins/discovery/skills/setup/SKILL.md:35 "subagent execution mode in 2.1.198, and below 2.1.218" Dropping versions changes the floor check; not proven wrong | |
| discovery | discovery-23 | eval | plugins/discovery/skills/setup/SKILL.md:44-47 "below 2.1.172 nesting does not exist ... fixed five" env-vars row (fetched) confirms 2.1.217-218 and 2.1.219 windows and "Requires Claude Code v2.1.217 or later"; pre-2.1.217 windows unsourced, not proven wrong; cutting them changes the check | |
| disk-hygiene | disk-hygiene-15 | eval | plugins/disk-hygiene/skills/clean/reference/scan-flags.md:122 "Before the scan, dispatch a read-only subagent."; making the subagent optional changes delegation | |
| docs-hygiene | docs-hygiene-29 | eval | plugins/docs-hygiene/skills/write-for-agents/SKILL.md:157 "Good: The summary is at most three sentences."; changes what the skill teaches authors | |
| education | education-7 | eval | plugins/education/skills/teach/context/lessons.md:77 "(none ships in this marketplace; ... frontend-design plugin)"; naming user-interface:design changes which skill gets delegated to |
|
| evals | evals-13 | eval | plugins/evals/skills/plugin-eval/SKILL.md:396-397 "set by three agents independently with the user settling every"; changes when to spawn | |
| harness-config | harness-config-3 | eval | plugins/harness-config/skills/audit-automation-gaps/SKILL.md:186 "Group related queries to minimize agent count"; adding inline route changes delegation | |
| harness-config | harness-config-14 | eval | plugins/harness-config/skills/audit-instructions/SKILL.md:210 "Run one fresh read-only subagent per lane"; inline case changes delegation | |
| harness-config | harness-config-53 | eval | plugins/harness-config/skills/unhobble/SKILL.md:436 "two blind decision agents that never see each other's answer"; changes when to spawn | |
| implementation | implementation-5 | eval | implementation/skills/report/SKILL.md:58,64 "at most 5 bullets" / "Aim for 3,400 bytes ... under 4,096" | |
| instruction-placement | instruction-placement-2 | eval | instruction-placement/skills/audit/SKILL.md:55 "each with the Read tool, one file per call, never through Bash cat" (no reason found; cut changes behavior) |
|
| knowledge | knowledge-18 | eval | knowledge/skills/video-digest/context/watch-pipeline.md:237 "Pass 1 contact-sheet triage: One subagent per sheet" | |
| machine-health | machine-health-5 | eval | machine-health/skills/audit/SKILL.md:99-100 "never list the plugin directory or read its files through Bash (ls, cat)" (wider than the known Glob/Grep reason) |
|
| machine-health | machine-health-16 | eval | machine-health/skills/setup/SKILL.md:269 "Never search, list or read files (manifests, the plugin cache, settings) to find it." (no reason recorded; cut is an option) | |
| overengineering | overengineering-1 | eval | overengineering/skills/audit/SKILL.md:15 "Run each as its own Bash call, never combined into one invocation" (no reason; may be cut) | |
| performance | performance-7 | eval | performance/skills/verify/SKILL.md:32-33 "30 turns, stop gathering and re-measuring by turn 22" | |
| performance | performance-8 | eval | performance/skills/verify/SKILL.md:38-39 "one verifier is the floor, not the target." | |
| planning | planning-17 | eval | planning/skills/interview/SKILL.md:151 "<2-3 sentences: why it beats the alternatives"; :230 "3-sentence budget" | |
| planning | planning-20 | eval | planning/skills/interview/SKILL.md:312 "gets a contradiction pass: a fresh-context non-fork sub-agent" | |
| plugin-quality | plugin-quality-3 | eval | plugin-quality/skills/report/SKILL.md:58,64 "at most 5 bullets" / "Aim for 3,400 bytes" | |
| repo-hygiene | repo-hygiene-8 | eval | repo-hygiene/skills/setup/SKILL.md:50 "no Glob, Grep, find, ls or cd ... no shell head or cat" (wider than known reason) |
|
| session-flow | 20 | eval | orchestrate/SKILL.md:44-45 "Our operating figure for a fan-out is 3–10× one agent's tokens" | |
| session-flow | 24 | eval | orchestrate/SKILL.md:256-257 "still aims to return roughly 1,000 to 2,000" | |
| session-flow | 26 | eval | orchestrate/context/sources.md:26 "operating cost figure for multi-agent work is 3–10× a single agent's tokens"; the record behind row 20, same cut | |
| session-flow | 28 | eval | orient/SKILL.md:86-88 "stays within ${user_config.orient_catch_up_word_cap} words... the cap is 250" |
|
| session-flow | 35 | eval | running-retro/SKILL.md:56 "write 2-3 lines of your own in-flight state" | |
| session-flow | 42 | eval | workflow/context/philosophy.md:16 "More tokens and more time are acceptable, even encouraged" | |
| session-flow | 1 | eval | audit-friction/SKILL.md:96,113 "### 2. Classify (one agent)" / "### 4. Plan (one agent)" | |
| session-flow | 22 | eval | orchestrate/SKILL.md:76 "hand it to a SEPARATE verifier; never self-audit" | |
| session-flow | 39 | eval | workflow/context/continuation.md:183 "Mid-phase, hand bulk work to subagents before compacting" | |
| songwriting | 27 | eval | suno/context/tips.md:120 "MEDIUM confidence. Works on 5/10 generations." | |
| songwriting | 7 | eval | suno/SKILL.md:249-251 "The 6-layer formula, structural and vocal tag names... are all HIGH". Not fix-route: no Suno source was read this session to prove the formula is not first-party. Downgrading the flag changes what the agent reports | |
| user-interface | 1 | eval | audit/SKILL.md:66-67 "These are almost always wrong. You don't need to deliberate." | |
| user-interface | 10 | eval | write-animation/SKILL.md:83 "Write the code, then at most a few lines:" | |
| work-items | 6 | eval | measure-delivery/SKILL.md:105 "Add two or three lines that read the trend" | |
| work-items | 22 | eval | work/SKILL.md:220 "Orchestrator-dispatch is the default." Row proposes no change; any attended-run tightening changes delegation |
Projected cost at the pilot's rates
The pilot spent $63.13 at list price (Opus 5.5 $32.73 over 102 runs, Fable 5.2 $30.40 over 48 runs) and about 90 minutes for 24 rows. It needed 9 new cases to cover 23 rows, 5 rows were detectable, and 3 shipped.
For 54 rows: about 20 new cases, about $142 at list price, about 3.4 hours of runs, and about 7 cuts expected to ship.
Decide
Whether to run this group (all, a subset by plugin, or none), and at what margin. Not run in the Fable 5.2 adoption effort, which ends with this issue.
Related
Metadata
Metadata
Assignees
Labels
Type
Fields
Work status
Priority
Activity
github-actions commentedon Nov 12, 2026
Size: Large
Complexity: Medium
Uncertainty: Known
Flags: intent
Blocked by: none
Understood: 54 held behavior-changing skill rows have no eval coverage, and the issue asks the owner whether to evaluate them. No duplicate or merged fix found. Related work is #15469 and #15468. The issue says its outcome is a decision, so these questions are open:
To answer, post a comment that starts with this line:
Automated triage. A maintainer reviews it.
melodic-automation-lanes commentedon Nov 12, 2026
The triage verdict left this issue at
needs-owner-decision:Reason:
intentmelodic-automation-lanes commentedon Nov 12, 2026
Refinement. A read-only run explored this repository, searched its issues and pull requests, and read the allowed docs to draft what follows. On an issue a listed human filed, it counts as the issue's spec once posted, while unedited; it is still model text, so check it.
Intended outcome: Run the eval suite on the 54 held rows (all, a subset, or none) under the D10 non-inferiority rule on Opus 5.5 and Fable 5.2, then ship only the cuts that pass.
Related work
Open questions
RECOMMENDED: Run all 54 rows in one pass, since about 20 new cases cost about $142 and give one comparable result set. Rows with no source and no reason can be dropped from the run first and left unchanged. Basis: judgment: the issue's projected cost of about $142 and about 3.4 hours, in the issue body's cost section
RECOMMENDED: Reuse the margin the #15469 pilot used so the results stay comparable. This run could not read that margin, so the owner must confirm it. Basis: #15469
RECOMMENDED: Evaluate them, since D10 requires measured non-inferiority for any change to when a skill delegates. Rows that propose no change (work-items-22) should be dropped. Basis: judgment: the issue body states that D10 gates cuts and that work-items-22 proposes no change
RECOMMENDED: Recheck the bugs, planning and architecture rows against main before running, and drop any that those PRs already settled. Basis: #15288
To answer, post a comment that starts with this line:
Automated refinement by the lanes App. Answer with a comment whose first line is
**Decision recorded.**.