Day 2 D2 — Reference / Framing

The Canonical Vocabulary of Spec-Driven Development

The Structure of Spec-Driven Development

Constitution · Specification · Plan · Tasks

Day 2 · shared vocabulary before we build

We've used "spec," "constitution," and "feature" loosely. Let's define them precisely — using the canonical SDD vocabulary the industry has converged on.


The One Sentence

In spec-driven development, intent is the source of truth. You write what and why as durable, executable artifacts; the agent generates the how (the code) from them.

GitHub's framing of the shift:

from "code is the source of truth""intent is the source of truth." AI is what makes a specification executable — so the spec determines what gets built.


The Layered Structure (top to bottom)

SDD artifacts form a hierarchy of decreasing scope, increasing detail:

CONSTITUTION   ── project-wide, persistent, non-negotiable principles
    │            (applies to every feature, forever)
    ▼
SPECIFICATION  ── one feature: the WHAT and WHY (no tech)
    │            (user journeys, requirements, success criteria)
    ▼
PLAN           ── one feature: the HOW (stack, architecture, constraints)
    │            (technical decisions, data models, contracts)
    ▼
TASKS          ── one feature: small, reviewable, testable units of work
    │            ("create endpoint X that validates Y")
    ▼
IMPLEMENTATION ── the generated code, one task at a time

Each layer constrains the one below it. The constitution outranks everything.


Artifact 1 — The Constitution

WHY — some principles must hold across every feature, or the project drifts as it grows.

WHAT — the project's non-negotiable principles: core values, technical constraints, team conventions, governance rules.

HOW — written once, versioned, lives at the project root (.specify/memory/constitution.md in Spec Kit). Re-read on every spec, plan, and generation.

WHEN — first, before any feature. Updated rarely — when the project's rules change.

The constitution trumps all other instructions. If anything conflicts with it, the constitution wins. Examples: "Security-first — validate all inputs." "Every feature is a standalone library." "All code documented."


Constitution — How to Recognise It

A good constitutional principle is:

"Use Tailwind for styling" → constitution (project-wide convention). "This button is teal"not constitution (that's a feature detail).

This is the same idea as Day 1's CLAUDE.md — ambient, always-on rules — scaled to the whole project.


Artifact 2 — The Specification

WHY — the agent can't read your mind; the what and why must be explicit before any how.

WHAT — one feature's requirements: user journeys, experiences, what success looks like. Deliberately no tech stack.

HOW — generated from a high-level prompt, then refined. A living artifact that evolves as you learn.

WHEN — per feature, first. The "Specify" phase.

Questions it answers: Who uses this? What problem does it solve? How do they interact with it? What outcomes matter? It is not about frameworks or architecture — that's the next layer.


Artifact 3 — The Plan

WHY — once the what is fixed, the agent needs the how before it can build well.

WHAT — the technical plan: stack, architecture, data models, API contracts, constraints, NFRs, compliance.

HOW — generated from the spec + your technical direction; checked against the constitution.

WHEN — per feature, after the spec. The "Plan" phase.

This is where you say "we standardise on X," "integrate with legacy Y," "hit performance target Z." "A coding agent needs to understand the rules of the game before it starts playing."


Artifact 4 — The Tasks

WHY — a whole plan is too big to generate or review in one shot; small units stay correct and checkable.

WHAT — small, reviewable, independently testable chunks of work, each tied to a spec/plan section.

HOW — the agent decomposes spec + plan into a task list; each task is implementable and verifiable in isolation.

WHEN — per feature, after the plan. The "Tasks" phase.

Not "build authentication" → but "create a user-registration endpoint that validates email format." Small tasks give the agent a way to validate its own work — like TDD for the AI.


The Workflow (GitHub Spec Kit's four phases)

Specify → Plan → Tasks → Implement

Each phase has one job and a checkpoint. You don't advance until the current artifact is validated.

Your role isn't just to steer — it's to verify at each gate. The AI generates the artifacts; you ensure they're right.


What Is a "Feature"?

The unit of work in SDD. Worth pinning down because it scopes everything:

StackLog features: entry feed · tag filtering · full-text search · weekly summary. Each is a feature with its own spec → plan → tasks. The constitution applies to all.


Three Frameworks, One Vocabulary

Spec Kit, BMAD, and AI-DLC describe the same shift with different names. Don't let the terms confuse you:

Concept GitHub Spec Kit BMAD (our method) AI-DLC
Project-wide rules Constitution (config / standards) principles / guardrails
What & why Specify → spec PRD Inception
How (technical) Plan Tech Spec Inception → Construction
Units of work Tasks Story Map → Task List Construction (bolts)
Build Implement Developer persona codes Construction
Check against intent Analyze / Checklist Reviewer persona Human checkpoints

Same pipeline every time: principles → what → how → units → build → verify. We use BMAD hands-on; Spec Kit gives the cleanest names; AI-DLC gives the lifecycle framing.


The Extra Spec Kit Gates (worth knowing)

Beyond the four core phases, Spec Kit adds quality gates — useful concepts even if we don't use the tool:

These map onto BMAD's Reviewer thinking — catching drift before code, not after.


Where SDD Shines

The canonical three sweet spots:

The core benefit: separate the stable "what" from the flexible "how" — so you can iterate without expensive rewrites.


Anchor This

Constitution — project-wide, non-negotiable principles. Outranks everything. Specification — one feature's what & why. No tech. Plan — that feature's how. Stack, architecture, contracts. Tasks — small, testable units the agent builds one by one.

Principles → What → How → Units → Build → Verify. Intent is the source of truth. The code is its output.


References