RED — Write failing test first. Run test suite (see Quality Gates in AGENTS.md) — must FAIL
GREEN — Minimal implementation. Run test suite (see Quality Gates in AGENTS.md) — must PASS
REFACTOR — Improve code. Run test suite (see Quality Gates in AGENTS.md) — still PASS
COMMIT — Save state
Exit When
All AC met
Test suite passes (see Quality Gates in AGENTS.md)
Static analysis passes (see Quality Gates in AGENTS.md)
Example (Go)
// RED: test first
func TestEmailValid(t *testing.T) {
v := NewValidator()
if !v.IsValid("a@b.com") { t.Error("expected valid") }
if v.IsValid("x") { t.Error("expected invalid") }
}
// Run: FAIL (undefined NewValidator)
// GREEN: minimal impl
func NewValidator() *V { return &V{} }
func (v *V) IsValid(s string) bool { return strings.Contains(s, "@") }
// Run: PASS
// REFACTOR: improve, tests still pass
For Go refactors, prefer modern stdlib idioms from @go-modern when they preserve behavior.
Converted and distributed by TomeVault — claim your Tome and manage your conversions.
1---2name: fall-out-bug-sdp-tdd3description: @tdd (INTERNAL)4---56# @tdd (INTERNAL)78TDD discipline. Called by @build, not users.910## Cycle11121. **RED** — Write failing test first. Run test suite (see Quality Gates in AGENTS.md) — must FAIL132. **GREEN** — Minimal implementation. Run test suite (see Quality Gates in AGENTS.md) — must PASS143. **REFACTOR** — Improve code. Run test suite (see Quality Gates in AGENTS.md) — still PASS154. **COMMIT** — Save state1617## Exit When1819- All AC met20- Test suite passes (see Quality Gates in AGENTS.md)21- Static analysis passes (see Quality Gates in AGENTS.md)2223## Example (Go)2425```go26// RED: test first27func TestEmailValid(t *testing.T) {28 v := NewValidator()29 if !v.IsValid("a@b.com") { t.Error("expected valid") }30 if v.IsValid("x") { t.Error("expected invalid") }31}32// Run: FAIL (undefined NewValidator)3334// GREEN: minimal impl35func NewValidator() *V { return &V{} }36func (v *V) IsValid(s string) bool { return strings.Contains(s, "@") }37// Run: PASS3839// REFACTOR: improve, tests still pass40```4142For Go refactors, prefer modern stdlib idioms from `@go-modern` when they preserve behavior.4344---45> Converted and distributed by [TomeVault](https://tomevault.io/claim/fall-out-bug) — claim your Tome and manage your conversions.46<!-- tomevault:4.0:skill_md:2026-04-11 -->
Run npx skillmds@latest add tomevault-io/fall-out-bug-sdp-tdd in your terminal (requires Node.js), paste this page's agent-chat prompt into Claude, Cursor, or any MCP-connected agent, or download the SKILL.md file and copy it into your agent's skills directory.
@tdd (INTERNAL) It is listed under Coding & Dev Tools on SkillMD.
This skill has not completed SkillMD's automated safety review yet. Independent scanners report: SkillSpector: PASS, Skill Scanner: PASS. SkillMD never runs a skill's scripts for you; review the SKILL.md before installing.
This skill is tagged as working with Claude Code, Claude.ai, OpenAI Codex. SKILL.md is an open format, so most agents that read a skills directory can load it too.
Yes. Installing skills from SkillMD is free, and the skill stays under its author's original license.
tomevault-io (@tomevault-io) published this skill. Their other Agent Skills are listed on their SkillMD profile.