{
  "currentSchemaVersion": "0.6.0",
  "versions": [
    {
      "version": "0.6.0",
      "date": "2026-07-12",
      "summary": "Adds approval-gated execution strategy recommendations, integrated task classification, model-agnostic routing, and analysis-ready execution telemetry without fragmenting each feature's single plan.",
      "changes": [
        "Keep one integrated plan per feature and divide it into detailed tasks classified by category, effort, risk, plan confidence, delegation confidence, dependencies, scope, verification, and STOP conditions.",
        "Have the planner recommend same-session, delegated, or hybrid execution, always offer same-session, show a custom assignment example, and require explicit user strategy approval before spawning subagents.",
        "Use model-agnostic capability profiles and reasoning effort for recommendations while recording the actual planner, executor, verifier, and reviewer models after execution.",
        "Add the design category alongside feature, bug, security, performance, tests, tech-debt, migration, DX, docs, and research.",
        "Add per-feature execution.json records plus a committed executions.jsonl ledger with actual models, tokens, duration, outcomes, revisions, verification, and user overrides.",
        "Add read-only analytics validation/export in summary, JSON, JSONL, and CSV formats plus local Codex session usage inspection.",
        "Require delegated writers to use isolated worktrees, review their diffs before executing changed code, and stop before merge.",
        "Keep commits, pull requests, deployment, monitoring, and review handling outside the active phase unless explicitly requested.",
        "Limit update prompt history to schema versions newer than the detected installation."
      ],
      "migrations": [
        {
          "from": "0.5.0",
          "steps": [
            "Preserve any explicit delegation policy; otherwise update AGENTS.md so planners may recommend delegation but cannot spawn subagents before the user approves the execution strategy.",
            "Keep each feature's single plan.html and expand it with classified task rows, dependencies, exact scope, verification, STOP conditions, capability recommendations, and user-selected assignments.",
            "Add execution-template.json, per-feature execution.json records, and data/executions.jsonl using execution schema 1.0.0.",
            "Add same-session as an always-available option; offer delegated and hybrid options only with planner rationale, plus a concrete custom assignment example.",
            "Use capability profiles and effort in durable recommendations; record actual model names, tokens, duration, outcomes, verification, and overrides after execution.",
            "Run analytics validation, rebuild executions.jsonl, and preserve old specs without inventing historical telemetry.",
            "Use isolated worktrees for delegated writers, inspect diffs before running changed code, and never merge automatically.",
            "Keep commits in same-session mode, merges, pull requests, deployment, monitoring, and review handling out of scope unless explicitly requested.",
            "Use only migration history newer than the installed schema when generating update instructions.",
            "Preserve all existing approval gates, explicit local delegation policies, and stricter execution rules."
          ]
        }
      ]
    },
    {
      "version": "0.5.0",
      "date": "2026-07-09",
      "summary": "Stops unconditionally installing the tdd skill and instead adapts the spec-library skill to the repository's resolved testing discipline (test-first skill, other defined testing approach, or intentional test-free stance).",
      "changes": [
        "Remove the unconditional `npx skills add ... --skill tdd -y` install step from init.",
        "Discover the testing discipline during inspection: explicit testing instruction, installed test-first skill, existing repo test setup, or none.",
        "Write the resolved testing discipline by name into the generated spec-library SKILL.md implement-and-verify step so future agents reuse it.",
        "Keep the tdd skill as one offered option when no discipline is discoverable; do not install any skill unprompted during update.",
        "Preserve the explicit spec-approval gate; the testing discipline governs only the implementation phase."
      ],
      "migrations": [
        {
          "from": "0.4.0",
          "steps": [
            "Discover the resolved testing discipline from AGENTS.md/CLAUDE.md/existing skills/repo test setup; do not reinstall a test-first skill if one is present.",
            "Update .agents/skills/spec-library/SKILL.md so the implement-and-verify step references the resolved discipline by name instead of always naming the tdd skill.",
            "Update AGENTS.md so the spec-driven workflow note says approved implementations follow the resolved testing discipline.",
            "If a tdd skill was installed only because 0.4.0 asked for it and the repo has another explicit testing instruction, keep both but let the existing instruction take precedence.",
            "If no discipline is discoverable, leave the skill test-discipline-agnostic and offer the init.md choice when the workflow next runs; do not install a skill unprompted during update."
          ]
        }
      ]
    },
    {
      "version": "0.4.0",
      "date": "2026-07-09",
      "summary": "Installs mattpocock's tdd skill as the implementation discipline and makes the spec-library skill drive implementations through it.",
      "changes": [
        "Init install the tdd skill with the skills CLI using preselected options: npx skills add https://github.com/mattpocock/skills --skill tdd -y.",
        "Update installs the tdd skill when it is missing so existing projects gain the implementation discipline.",
        "Update the generated spec-library SKILL.md so implementations run through the tdd skill after spec approval and before product code changes.",
        "Keep the explicit spec-approval gate; the tdd skill governs the implementation phase, not the spec phase."
      ],
      "migrations": [
        {
          "from": "0.3.0",
          "steps": [
            "Run `npx skills add https://github.com/mattpocock/skills --skill tdd -y` in the repository root to install the tdd skill with preselected options.",
            "Update .agents/skills/spec-library/SKILL.md so the implement-and-verify step tells the agent to use the tdd skill (red-green-refactor, agreed seams) after required spec approval and before changing product code.",
            "Update AGENTS.md so the spec-driven workflow note mentions that approved implementations follow the tdd skill discipline.",
            "Preserve the explicit spec-approval gate; the tdd skill only governs the implementation phase."
          ]
        }
      ]
    },
    {
      "version": "0.3.0",
      "date": "2026-06-18",
      "summary": "Frames the first workflow questions as request refinement and makes generated spec approval an explicit implementation gate.",
      "changes": [
        "Rename the feature workflow's first question round from general clarification to request refinement.",
        "State that the first questions exist to sharpen the request into an approvable spec, not to begin implementation.",
        "Require the agent to generate or update the feature spec after the request-refinement answers.",
        "Require the agent to stop after generating the spec and wait for explicit approval before implementation.",
        "Keep technical approval required for migrations, auth, billing, security, public contracts, infrastructure boundaries, and active decision changes."
      ],
      "migrations": [
        {
          "from": "0.2.0",
          "steps": [
            "Update AGENTS.md spec-driven workflow wording so the mandatory question round is described as request refinement.",
            "Update .agents/skills/spec-library/SKILL.md so the first questions explicitly refine the request into a generated spec.",
            "Ensure the skill requires the agent to stop after generating or updating the spec and wait for explicit approval before implementation.",
            "Preserve the existing technical approval gate for high-risk technical areas and active decision changes.",
            "Update templates or local examples only where they imply that implementation can begin immediately after clarification answers."
          ]
        }
      ]
    },
    {
      "version": "0.2.0",
      "date": "2026-06-18",
      "summary": "Adds a root spec-library index as the human and agent entry point for all internal specification documentation.",
      "changes": [
        "Create .agents/skills/spec-library/index.html as the top-level library index.",
        "Keep specs/index.html and decisions/index.html as focused supporting indexes.",
        "Make the root library index list all internal spec-library documentation while exposing latest documents by last-updated date.",
        "Allow small client-side filtering or search in the root library index while keeping artifacts static and readable without routing.",
        "Require close-out to update the root library index along with spec and decision indexes.",
        "Keep root library index links internal; internal documents may reference external URLs when useful."
      ],
      "migrations": [
        {
          "from": "0.1.0",
          "steps": [
            "Inspect the existing spec and decision indexes plus all generated spec-library artifacts before editing.",
            "Create .agents/skills/spec-library/index.html if it is missing, preserving any existing local library landing page if present.",
            "Populate the root library index with links to all internal specs, plans, decisions, templates only when useful, and supporting indexes.",
            "Add an accessible latest-documents section ordered by each artifact's last-updated metadata or the best available maintained date.",
            "Keep links in the root library index internal to the repository documentation; let linked internal documents cite external URLs as needed.",
            "Update SKILL.md so resolve-context and close-out steps require maintaining the root library index.",
            "Add or preserve small client-side filtering/search only when it improves reading the library and the page remains useful without routing."
          ]
        }
      ]
    },
    {
      "version": "0.1.0",
      "date": "2026-06-17",
      "summary": "Initial versioned simplest-sdd schema with npx CLI prompts and Claude import compatibility.",
      "changes": [
        "Record the simplest-sdd schema version in .agents/skills/spec-library/SKILL.md.",
        "Use AGENTS.md as the canonical agent instruction source.",
        "Use a regular CLAUDE.md file containing @AGENTS.md instead of making CLAUDE.md a symlink.",
        "Keep .agents/skills/spec-library as the canonical skill and .claude/skills/spec-library as a relative symlink for Claude skill discovery.",
        "Use clean static HTML for generated specs, plans, decisions, indexes, and templates.",
        "Document the HTML readability and focus-style contract inside the generated skill.",
        "Ship init, update, and remove agent-instruction prompts through an npx-friendly CLI."
      ],
      "migrations": [
        {
          "from": "unversioned",
          "steps": [
            "Inspect AGENTS.md, CLAUDE.md, .agents/skills/spec-library, and .claude/skills/spec-library before editing.",
            "Preserve every existing instruction by moving unique CLAUDE.md content into AGENTS.md before replacing CLAUDE.md.",
            "Replace a CLAUDE.md -> AGENTS.md symlink with a regular CLAUDE.md file that imports @AGENTS.md.",
            "Add the simplest-sdd schema marker to .agents/skills/spec-library/SKILL.md immediately after the skill frontmatter.",
            "Keep the existing spec library under .agents/skills/spec-library and keep or create .claude/skills/spec-library as a relative symlink to it.",
            "Convert generated Markdown templates, indexes, specs, plans, and decisions to clean static HTML when conversion is safe.",
            "Preserve old Markdown artifacts whenever ownership or conversion fidelity is unclear.",
            "Update stale documentation that still says CLAUDE.md should be a symlink or generated artifacts should be Markdown."
          ]
        }
      ]
    }
  ]
}
