---
status: resolved
parent: "[[040-implement-skill-matt-skills-discovery-research]]"
claimed-by: "019fbb66-80d0-7a01-8ac9-01255adfc7b2"
claimed-at: "2026-07-31T23:47:59-04:00"
blocked-by:
  - "[[040-implement-skill-matt-skills-discovery-research]]"
tags:
  - ticket/research
---

# Implement skill Matt TDD research

## Question

What should the migrated local `implement` skill learn from Matt Pocock's `skills/engineering/tdd` testing workflow?

## Findings

Matt's TDD skill centers testing on public seams.
It says tests verify behavior through public interfaces, not implementation details, and that seams must be agreed before writing tests.
The migrated `implement` skill should preserve pre-agreed seams and should source them from the Wayfinder task when present instead of re-litigating them by default.
Source: `https://raw.githubusercontent.com/mattpocock/skills/main/skills/engineering/tdd/SKILL.md`.

Matt's TDD skill rejects implementation-coupled tests, tautological expected values, and horizontal slicing.
It requires red before green, one seam, one test, one minimal implementation per cycle, and no speculative features.
These rules align with the old local TDD dependency and Kun Chen's no-mistakes test-quality rule.
Source: `https://raw.githubusercontent.com/mattpocock/skills/main/skills/engineering/tdd/SKILL.md`.

Matt's TDD skill says refactoring belongs to the review stage, not the red-green implementation cycle.
The local old TDD skill allows refactoring after all tests pass.
The migrated `implement` skill should decide whether to keep local post-green refactoring or adopt Matt's stricter review-stage boundary.
Sources: `https://raw.githubusercontent.com/mattpocock/skills/main/skills/engineering/tdd/SKILL.md`, `/home/alexion/wrk/dotfiles/modules/agents/claude-code/skills/test-driven-development/SKILL.md`.

The packaged local skills repository does not currently contain a packaged `tdd` skill.
The available local counterpart is the old Claude Code `test-driven-development` skill in dotfiles, which is more prescriptive than Matt's skill: it uses a test-writer sub-agent, forbids the main agent from editing sub-agent-authored tests, and carries detailed anti-tautology and mocking guidance.
If `implement` is packaged before `tdd`, it cannot declare a packaged `tdd` dependency without also migrating that skill or inlining the necessary testing rules.
Sources: `/home/alexion/wrk/dotfiles/modules/agents/claude-code/skills/test-driven-development/SKILL.md`, `/home/alexion/wrk/skills/skills`.

## Conclusion

The migrated `implement` skill should preserve Matt's public-seam, anti-tautology, one-test-at-a-time TDD discipline.
The remaining decision is whether refactoring is allowed as a post-green implementation step or only after review.
