Skip to main content

spec-to-code-tdd

(💛) Spec-Driven Development meets Test-Driven Development. Takes any SPEC.md generated by respec (speck) and orchestrates implementation in a dedicated repository/workspace using a strict RED -> GREEN -> REFACTOR cycle.

معلومات المصدر

المستودع
palladius/respec
آخر نشاط في المصدر
٨ أكتوبر ٢٠٢٦ في ١٢:٥١
لغة SKILL.md المكتشفة
الإنجليزية
النجوم
٠
التفرعات
٠

خيارات التثبيت

يُحدَّد Prompt الذي يراجع المصدر أولًا بشكل افتراضي. يمكنك التبديل إلى أمر مباشر أو تنزيل نسخة محلية.

مراجعة ملفات المصدر

اقرأ SKILL.md وأي ملفات مرافقة يعرضها SkillsMP قبل أن تقرر التثبيت.

عرض SKILL.md

SKILL.md
تعليمات المصدر · معاينة للقراءة فقط
name
spec-to-code-tdd
description
(💛) Spec-Driven Development meets Test-Driven Development. Takes any SPEC.md generated by respec (speck) and orchestrates implementation in a dedicated repository/workspace using a strict RED -> GREEN -> REFACTOR cycle.
compatibility
Gemini CLI, Antigravity, Claude Code
metadata
{"version":"0.1.0"}
# 💛 Spec-to-Code TDD — From `SPEC.md` to Verified Implementation > *"Specs are the durable artifact; code is increasingly just a rendering of them."* > — Re-SPEC philosophy This skill bridges the gap between a **Specification** (such as one generated by `respec` / `speck`) and a **Working Implementation**, using rigorous Test-Driven Development (TDD) while preventing repository boundary violations. --- ## 🛑 Rule 0: The Foundry Isolation Principle **NEVER implement the app or game inside the `respec` repository itself!** - `respec` is the **Spec Foundry**: it only produces and holds `SPEC.md`, `input_prompt.md`, notes, and concept assets. - All actual code (engines, servers, frontend, CLI binaries of the specified tool) **MUST live in a dedicated repository** or an isolated external workspace (e.g. `~/git/<project-slug>/` or a dedicated worktree/sandbox). If you are currently inside `respec`, HALT implementation and ask the user to switch to or initialize the target repository before writing code! --- ## The 4-Phase Execution Cycle ``` +-----------------------------------------------------------------+ | SPEC-TO-CODE TDD LIFECYCLE | | | | 1. SPEC Ingestion & Criteria Extraction | | v | | 2. Phase RED: Author Acceptance Tests (Must FAIL initially) | | v | | 3. Phase GREEN: Minimal Clean Implementation (Pass Tests) | | v | | 4. Phase REFACTOR & Drift Audit: Verify Against SPEC.md | +-----------------------------------------------------------------+ ``` ### Phase 1: Ingestion & Acceptance Criteria Mapping 1. Read the input `SPEC.md` thoroughly (including any user stories, data models, edge cases, and success metrics). 2. Decompose the spec into a prioritized checklist of testable capabilities: - **Core State & Data Models** (e.g. Tile rotation, Board representation, Entities). - **Game/Business Rules** (e.g. Win/Loss conditions, valid moves, constraints). - **Edge Cases & Error Handling** (e.g. loops, boundaries, unexpected inputs). 3. Confirm the tech stack and test runner in the target repository (e.g. `go test`, `pytest`, `vitest`). ### Phase 2: Phase RED (Test-First) 1. Write unit and integration tests strictly based on the Acceptance Criteria extracted in Phase 1. 2. Follow these testing rules: - **Test behavior, not implementation details**: Assert on public outputs and state transitions, not internal private helpers. - **Deterministic & Isolated**: Each test must execute independently without lingering state. - **Real logic over excessive mocks**: Use in-memory data structures or lightweight test fixtures. 3. **Execute the test runner and verify tests FAIL (RED)**: - Ensure the failure is due to missing feature logic, *not* a compilation/syntax error or bad import. ### Phase 3: Phase GREEN (Defensive Implementation) 1. Write the minimal clean production code necessary to make the failing tests pass. 2. Adhere to design patterns suited for the domain (e.g. `niccolo-game-design` manager patterns for games, or modular interfaces for CLIs/libraries). 3. Run the test suite: - Confirm all tests pass cleanly (**GREEN**). ### Phase 4: Phase REFACTOR & Drift Audit 1. Refactor and eliminate duplication while keeping tests 100% green. 2. **Drift Audit**: Compare the resulting implementation with `SPEC.md`: - Did the implementation reveal ambiguities in the spec? - Did any requirement change during development? 3. **Drift Reconciliation**: If drift is observed, alert the user and propose a concise 1-2 line clarification to the original `SPEC.md` in the spec foundry.
عرض على GitHub