Skip to content

Conversation

@emi-dm
Copy link

@emi-dm emi-dm commented Jan 28, 2026

Summary

Adds a new /speckit.retrospective command for post-implementation analysis that measures spec drift - the deviation between what was specified and what was actually built.

Motivation

The Spec-Driven Development workflow currently covers the full lifecycle from specification through implementation, but lacks a critical feedback loop: learning from completed features. Without retrospective analysis, teams lose valuable insights that could improve future specifications and reduce rework.

The Problem

  • Teams often don't know how much their implementation diverged from the original spec
  • Lessons learned are informal and rarely documented
  • Specification quality issues repeat across features
  • There's no objective metric for "how well did we spec this feature?"

The Solution

The /speckit.retrospective command provides:

  1. Quantified Spec Drift Score - An objective metric showing what percentage of requirements were implemented as specified
  2. Root Cause Analysis - Understanding why deviations occurred (spec gaps, tech constraints, scope evolution, etc.)
  3. Structured Lessons Learned - Actionable improvements categorized by specification, planning, process, and technical domains
  4. Traceability - File-level mapping of what was built vs. what was specified

Expected Impact

  • Improved specification quality over time through documented learnings
  • Reduced rework by identifying common specification gaps
  • Better estimates by understanding where scope typically expands
  • Team alignment through shared understanding of what "done" looks like vs. the spec

Design Decisions

  • Read-only by default: The command analyzes but doesn't modify files, making it safe to run at any time
  • Severity classification: Uses CRITICAL/SIGNIFICANT/MINOR/POSITIVE to prioritize findings (POSITIVE captures improvements over spec)
  • Completeness gate: Warns if less than 50% of tasks are complete, as early analysis may be misleading
  • Reuses existing script infrastructure: Uses check-prerequisites.sh for consistency with other commands

Usage

Run after implementation is complete (or at a significant milestone):

Add /speckit.retrospective command template that performs post-implementation
analysis measuring spec drift - the deviation between specification and
actual implementation.

Features:
- Calculates Spec Drift Score (% of requirements implemented as specified)
- Classifies deviations: CRITICAL, SIGNIFICANT, MINOR, POSITIVE
- Requirement coverage matrix (FR/NFR tracking)
- Success criteria assessment against actual values
- Architecture drift analysis (data model, tech stack, APIs)
- Root cause analysis (when/why deviations occurred)
- Structured lessons learned by category
- Actionable recommendations for future features
- Read-only analysis mode (non-destructive)
Copilot AI review requested due to automatic review settings January 28, 2026 17:10
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request adds a new /speckit.retrospective command that performs post-implementation analysis to measure spec drift - the deviation between what was specified and what was actually built in a feature. This creates a feedback loop in the Spec-Driven Development workflow by quantifying implementation deviations and generating actionable lessons learned.

Changes:

  • Adds a comprehensive retrospective analysis command with read-only operation
  • Implements spec drift scoring based on requirement adherence
  • Provides structured root cause analysis for deviations with severity classification (CRITICAL/SIGNIFICANT/MINOR/POSITIVE)
  • Generates detailed retrospective reports with traceability and actionable recommendations

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

…nts and rename spec drift score to spec adherence score
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant