{"enrichment":{"faq":[{"a":"openspec-plus-tdd is a skill that enforces test-driven development discipline during OpenSpec change implementation. Activate it whenever you're implementing a task that modifies spec.md or production code. The skill ensures every test\u2014acceptance, unit, edge case, or helper\u2014fails for the right reason before you write production code to make it pass, and that Gherkin scenarios become mandatory acceptance tests with full coverage.","q":"What is openspec-plus-tdd and when should I use it?"},{"a":"openspec-plus-tdd enforces a strict per-test RED-GREEN-REFACTOR cycle. In RED, you write a single test that must fail for the correct reason. In GREEN, you write minimal production code to make only that test pass. In REFACTOR, you improve code quality without changing test behavior. You must complete this cycle one test at a time\u2014no batching\u2014and never write production code before observing a test failure.","q":"How does openspec-plus-tdd handle red green refactor test driven development?"},{"a":"Yes. openspec-plus-tdd mandates that production code only exists after you observe a failing test. Every line of production code must be justified by a test that failed first. This prevents speculative code and ensures all behavior is test-driven and intentional.","q":"Must I write tests before code implementation with this skill?"},{"a":"openspec-plus-tdd treats Gherkin scenarios in spec.md as the canonical acceptance contract. Every relevant scenario must translate into at least one acceptance test with mandatory coverage. Before you finish the task, verify that all scenarios have corresponding tests and that no test is skipped or batched with others.","q":"How do gherkin scenario acceptance testing and spec.md coverage work?"},{"a":"openspec-plus-tdd forbids running or writing multiple tests in parallel or as a batch. You must execute the RED-GREEN-REFACTOR cycle for one atomic test, complete it fully, then move to the next. This discipline prevents incomplete refactoring, hidden failures, and ensures each test's state machine is pristine before proceeding.","q":"What does 'test one at a time no batching' mean in openspec-plus-tdd?"},{"a":"openspec-plus-tdd treats skipping refactor assessment and shipping with uncovered scenarios as violations. Every GREEN phase must be followed by honest refactor assessment. Every Gherkin scenario in your task's scope must have at least one passing test before you mark the task complete. Violations break the atomic per-test workflow and undermine the skill's core discipline.","q":"What happens if I skip refactor assessment or ship without scenario coverage?"}],"shadow_tags":["test-first-discipline","atomic-test-cycles","gherkin-translation","red-green-refactor","acceptance-coverage","granular-testing","no-batching-rule","mandatory-refactor","slice-scoped-changes","spec-driven-development"],"summary_rewrite":"This skill activates during OpenSpec change implementation to enforce atomic test-driven development: every test\u2014acceptance, unit, edge case, or helper\u2014must fail for the right reason before production code is written to make it pass. Gherkin scenarios in spec.md are the canonical acceptance contract; every relevant scenario must become at least one test. The per-test state machine forbids batching, skipping refactor assessment, or shipping with uncovered scenarios."},"files":[{"bytes":18859,"path":"skills/openspec-plus-tdd/SKILL.md","sha256":"7eac3da809f101f567f17841fd8397d3721e0717d5926e12516be6dd8755c6cc","url":"https://skillfed.io/files/sudokar/openspec-plus/openspec-plus-tdd/7dea6470/SKILL.md"}],"id":"sudokar/openspec-plus/openspec-plus-tdd","links":{"html":"https://skillfed.io/sudokar/openspec-plus/openspec-plus-tdd","md":"https://skillfed.io/sudokar/openspec-plus/openspec-plus-tdd.md","repo":"https://github.com/sudokar/openspec-plus"},"meta":{"agents_supported":[],"first_seen":"2026-07-28","forks":6,"language":null,"last_updated":"2026-07-23","license":"MIT","name":"openspec-plus-tdd","publisher":"sudokar","stars":133},"relations":{"similar":[{"id":"sudokar/openspec-plus/openspec-plus-apply"},{"id":"sudokar/openspec-plus/openspec-plus-tasks"},{"id":"sudokar/openspec-plus/openspec-plus-spec"},{"id":"glebis/claude-skills/tdd"},{"id":"FerroxLabs/ijfw/ijfw-spec-phase"},{"id":"rpamis/comet/comet-classic-039-design"},{"id":"jabrena/plinth/523-frameworks-micronaut-testing-acceptance-tests"},{"id":"AliAkhtari78/SpotifyScraper/openspec-sync-specs"},{"id":"jabrena/plinth/323-frameworks-spring-boot-testing-acceptance-tests"},{"id":"getsentry/sentry-mcp/openspec-sync-specs"}]},"slug":{"owner":"sudokar","repo":"openspec-plus","skill":"openspec-plus-tdd"},"version":"7dea6470"}
