🧬 2026-08-30 skill distillation
Historical record — 2026-08-30
Preserved as observed. This is the standing reason the bench carries its own two skills; a later choice creates a new dated record naming this one rather than editing this page. Current work state: Program masterplan.
Decision
QuizWizz bench work needs a written change discipline and a shared vocabulary that survives a fresh agent. Two bench-local skills, qwizz-shared-language and qwizz-fix-loop, were distilled from excerpts of github.com/mattpocock/skills (MIT) into .omp/skills/, instead of installing the upstream set verbatim. The reason is that upstream skills assume mainstream trackers and present TypeScript-flavored stack examples, while this bench needs its own vocabulary, TAP and browser gates, stage-and-install protocol, and releaseEligible: false framing.
Considered options
- Verbatim plugin install (
claude plugins install mattpocock-skills): the upstream README describes this path as a managed, read-only bundle that updates when upstream ships. Rejected: bench laws cannot be written into a read-only bundle, and an upstream update could change a gate without a bench record. - Full editable install (
npx skills@latest add mattpocock/skills): copies the chosen skill files into the repo as editable files. Rejected: it imports a large surface — the upstreamskills/engineering/andskills/productivity/families — where two named skills are needed, and each installed skill still assumes the setup interview was answered. - Research only, no skill files: read the upstream material and carry the discipline in conversation. Rejected: the discipline then does not survive a session boundary, which is the failure the vault exists to prevent.
- Chosen: two distilled skills that carry the bench anchors inline, so no setup interview and no upstream update sits between an agent and a gate.
Evidence
Upstream, read 2026-08-30 from github.com/mattpocock/skills:
- licence MIT, reported by the GitHub repository API; primary language Shell.
- the README documents both install paths above and a
/setup-matt-pocock-skillsrun, once per repo, that asks which issue tracker to use (GitHub, Linear, or local files), which labels triage applies, and where docs are saved. .out-of-scope/mainstream-issue-trackers-only.mdstates that “Every issue-tracker backend hard-codes a CLI shape into the skills (commands, flags, output parsing)”, that first-class support is limited to mainstream trackers, and that the escape hatches for anything else arelocal markdownorother/custom.skills/engineering/tdd/tests.mdpresents every good and bad test example in atypescriptfence and uses Jest-styletest(...)andexpect(...); that advice is useful, but its examples do not encode this PHP/WordPress bench’s shell, container, and browser gates.
Bench facts that make those three answers pre-decided, read 2026-08-30:
- mirror and tracker:
scripts/qwgit.shoperates theloca/quizwizzmirror atgit.omp.loca.zonethrough a detached git dir, so the tracker is a self-hosted Gitea rather than an upstream first-class backend. - shell gate:
scripts/quizwizz-probe.sh:8,14accepts--wave 1|2|3|4|5|6|7|8|9|10|alland nothing else; the standing full-run result is TAP1..76withassertions=76 failures=0(probe harness:35,:266). - browser gate:
scripts/quizwizz-browser-smoke.js, run with cache disabled. - versions the skills pin:
QUIZWIZZ_VERSION1.10.0atwp/wp-content/plugins/quizwizz/quizwizz.php:22, schema1.6.8atincludes/Installer.php:20. - docs location:
q5vault/audits/qwizz/, validated only with/home/loca/dev/wikis/build.sh wrdp --check-only.
The two distilled skills, as installed:
.omp/skills/qwizz-shared-language/SKILL.md, 168 lines — authority map at:10-16, bench anchors at:18-32, the CONTEXT-style page format at:79-104, the seeded glossary at:106-117, and the three-test decision-record threshold at:119-144..omp/skills/qwizz-fix-loop/SKILL.md, 180 lines — five gated phases: diagnose:21, specify:47, implement:80, verify:109, review and handoff:133.
Provenance
Provenance stays in the skills. Each file ends with a Provenance section listing the upstream skill files its rules were drawn from: qwizz-shared-language/SKILL.md:159-168 names eight, including skills/engineering/domain-modeling/CONTEXT-FORMAT.md and ADR-FORMAT.md; qwizz-fix-loop/SKILL.md:171-180 names eight, including skills/engineering/diagnosing-bugs/SKILL.md and skills/engineering/tdd/SKILL.md. Those footers carry upstream paths only, so the repository, its MIT licence, and the reason for distilling rather than installing are recorded here.
Not verified: the full upstream skill corpus was not read line by line for this record. The stack claim is limited to the directly inspected TDD skill and its all-TypeScript companion examples; the choice does not claim every upstream rule is TypeScript-specific.
Consequences
Vocabulary now has one authority: QuizWizz shared language, created the same day and seeded from the glossary at .omp/skills/qwizz-shared-language/SKILL.md:106-117. The fix loop’s evidence still lands in the existing places — current scope in the masterplan, executable proof in the probe harness, point-in-time findings in dated pages. This record changes no plugin file and authorises no release; bench patches remain releaseEligible: false.