[#313] refactor: trigger-oriented descriptions for all 35 skills (task T3)#328
Conversation
…k T3) Rewrite all 34 non-conformant frontmatter descriptions (next already conformant) per the T2 authoring standard: trigger branches over body-identity restatement, reach clauses for mostly-composed capabilities, assess-pm vs setup-pm and assess-stack vs verify-adoption disambiguated by verb (recommend/configure) and by already-written vs proposed. Sync skills-catalog.mdx description column. Eval before/after in packages/knowledge-hub/eval/results/2026-07-13-after-t3.md: 96.2% -> 100% (79/79), 0 regressions, all 3 baseline ambiguities resolved. Co-Authored-By: Claude Code <noreply@anthropic.com>
Code Review TemplateReview InformationPR Number: #328 Review SummaryOverall Assessment
Key Changes SummaryRewrites all 34 non-conformant frontmatter Business Value ValidationAC3 (trigger branches, Code Review ChecklistFunctionality Review
Code Quality Assessment
Technical Standards Compliance
Security ReviewN/A — no code, no secrets, no auth/authz surface touched. Testing ReviewTest Coverage Assessment / Gates (independently re-run in a detached worktree pinned to the pushed head, not the shared checkout)Size limits: computed name+description char length for every dataset+mirror SKILL.md Eval methodology — independently verified, not fabricatedRead both Independent eval spot-check (my own judgment, given ONLY the new name+description, not the
All 3 reach the same non-ambiguous result the PR claims. The eval genuinely validates AC7's gate. Disambiguation is real, not just moved: read both full pairs' descriptions plus 1-2 bodies each. Regression spot-check across the corpus (no code beyond the described tests to run)Spot-checked ~14 non-ambiguous skills across families (process orchestrators bootstrap/implement/ Mirror byte-consistency: wrote a small script against the actual Story checklist (#313): T3 shows Documentation Review
Detailed Review CommentsPositive Feedback
Issues to AddressMinor Issues 💡
Risk AssessmentTechnical Risks
Business RisksNone identified — description-only change, gated by a real before/after eval. Tech Debt
Adoption ComplianceLevel 4 (no Follow-up ActionsAuthor Action Items
Verdict: Approved with Comments. AC3 and AC7 are genuinely met; the eval is real and Independent review per |
… clause Review finding on PR #328 (T3): assess-stack's rewritten description dropped the "composed by /review for unlisted-dependency detection" branch without a reach-clause, unlike sibling verify-adoption which lists both its composers. Body's Review Mode is untouched and still real; only the description signal was missing. Adds the reach clause (dataset + mirror, byte-consistent), plus 2 new should-trigger prompts exercising the branch (AD-14b, AD-14c, both PASS) and an eval addendum documenting the fix. Co-Authored-By: Claude Code <noreply@anthropic.com>
Remediation — round 1 (commit
|
Code Review Template — Re-review of fix
|
Summary
What Changed
Task T3 of story #313 (own PR — each
#313task ships on its own branch/PR per thestory's established pattern, T1/T2/T7/T8). Rewrites all 34 non-conformant frontmatter
descriptionfields (of 35 total —nextalready satisfied principle 1 per the baseline)per the T2 authoring standard (
writing-skills.mdxprinciple 1, "Description = trigger"):checkpoint,estimate,write-issue,grill,map-subdomains,map-contexts,record-decision,analyze-debt,analyze-code-quality,verify-*,setup-*,manage-flagsnow lead with "Composed by X;invoke directly when Y" instead of a capability-summary paragraph.
assess-pmowns recommend/evaluate (toolchoice still open);
setup-pmowns configure/set up (tool being wired up, whichever way itwas chosen). Neither description says "selection" anymore — that overloaded word was the
baseline's AD-12/PB-N2 root cause.
assess-stack'sadd-a-dependency branch is now spelled out with the exact prompt phrasing ("should we add
Redis");
verify-adoptionnow explicitly scopes to "already-written code", disclaimingnew-choice prompts. Baseline's AD-14 root cause.
Why This Change
AC3 + AC7 of #313: descriptions were capability summaries carrying the trigger by accident
(noun overlap), not by design — the baseline eval (
2026-07-12-baseline.md) measured 96.2%strict pass with 3 ambiguities, all in the
assess-*family. This task fixes the standard's ownworked example: trigger branches instead of restating the skill's mechanism.
Story Context
Story: #313 — Skill corpus effectiveness. Task: T3 (checklist item in the story body).
Acceptance Criteria: AC3 (trigger branches, no synonym duplication,
assess-*differentiated,no body identity in descriptions), AC7 (before/after trigger-eval evidence, gated — this task's
own Edge Case rule: "if a rewritten description triggers worse, revert and iterate").
Eval before/after (gate for this task, per AC7 + Edge Cases)
Full run:
packages/knowledge-hub/eval/results/2026-07-13-after-t3.md. Baseline:2026-07-12-baseline.md.All 12 families held their baseline pass rate or improved — no regression on any of the 76
previously-passing prompts. The 3 baseline ambiguities (AD-12, PB-N2: assess-pm vs setup-pm;
AD-14: assess-stack vs verify-adoption) are all resolved (see the results file's "before → after"
section for the exact wording fix per ambiguity). No description was reverted — the rewrite
was designed against the baseline's documented root causes before running the eval, and the
single full-corpus run showed no regression, so the Edge Case revert-and-iterate loop was never
triggered.
Re-verified the note in the task brief about the
analyze-*rename (#327/T8): theassess-debt/assess-code-qualityhalf of the original ambiguity set was already fully resolvedby the rename (renamed skills, family renamed
assess-report→analyze-reportintrigger-prompts.json, all 6 prompts clean pre-T3) — confirmed unaffected by this task's changes.Changes Made
Implementation Details
SKILL.md+ 34.claude/skillsmirrors (68 files, description line only —no body changes):
analyze-code-quality,analyze-debt,assess-{ai,architecture, infrastructure,methodology,observability,pm,stack,testing},checkpoint,design-manual-tests,estimate,execute-manual-tests,grill,manage-flags,map-{contexts,subdomains},record-decision,setup-{gates,pm},verify-{adoption,done,quality},write-issue,bootstrap,implement,plan-{epics,initiatives,stories,tasks},refine-story,review,specify-prd.nextleftunchanged (already conformant per the baseline).
apps/website/content/docs/reference/skills-catalog.mdx(frozen path, content-only):description column updated for all 35 rows to match.
packages/knowledge-hub/eval/results/2026-07-13-after-t3.md(new): full 79-prompt after-runwith per-family before/after comparison, per-ambiguity resolution writeup, and per-prompt table.
/name→/pair-<type>-namerewrite (same regex asskill-reference-rewriter.ts) to the new descriptiontext before writing each mirror file, including the two forward-referenced not-yet-built skills
(
/brainstorm,/publish-pr) — matching the pre-existing convention where those planned refsare already pre-prefixed in the mirrors (
/pair-process-brainstorm,/pair-capability-publish-pr).Files Changed
SKILL.md+ 34.claude/skillsmirrors (description field only);skills-catalog.mdx(description column, all rows).packages/knowledge-hub/eval/results/2026-07-13-after-t3.md.Testing
Gates run natively in the worktree (node_modules installed;
@pair/content-opsbuilt):Dataset ↔ mirror byte-consistent under the name-prefix transform for all 34 changed pairs
(verified by diff — only the
nameline's existing prefix differs; the description's own/name→/pair-<type>-namesubstitutions match the install-time rewriter exactly).Quality Assurance
per the story: T3 is descriptions, not restructuring — that's T4/T5/T6).
assess-stackat 411 chars); mirror descriptions (longer due to the type-prefix expansion)checked too — largest is
reviewat 504 chars, still comfortably under 1024.Dependencies & Related Work
analyze-*rename) —merged, re-verified compatible (see eval note above).
per the story's own task ordering note.
Refs #313
🤖 Generated with Claude Code