openspec-change-closure

bacoco's avatarfrom bacoco

Archives completed L0-1 changes.

⭐1stars🔀0forks📁View on GitHub🕐Updated Nov 4, 2025

When & Why to Use This Skill

The OpenSpec Change Closure skill automates the finalization and archival of Level 0-1 technical changes. It streamlines the transition from implementation to completion by merging specification deltas, generating comprehensive archive documentation, and ensuring all quality gates are met. This tool is essential for maintaining a clean, documented, and synchronized codebase and specification repository.

Use Cases

  • Case 1: Automatically merging validated specification deltas from local change directories into the canonical project specs after a feature is implemented.
  • Case 2: Generating standardized 'archive.md' reports that capture implementation metrics, developer learnings, and validation evidence for project audits.
  • Case 3: Finalizing the documentation workflow by updating proposal statuses and capturing follow-up tasks once a change has been successfully deployed.
  • Case 4: Enforcing project quality standards by verifying closure conditions and checklists before allowing a change to be officially marked as complete.
nameopenspec-change-closure
descriptionArchives completed L0-1 changes.
allowed-tools["Read", "Write", "Grep", "Bash"]
auto-invoketrue

OpenSpec Archive Skill

When to Invoke

Automatically activate when user:

  • Says "Archive this change", "Close the change", "Finalize change"
  • Asks "Document this change", "Mark as complete", "Archive proposal [X]"
  • Has completed an OpenSpec change that needs closure
  • Mentions "archive", "close", "document", "finalize" with change context
  • Uses words like: archive, close, document, finalize, complete, wrap up

Specific trigger phrases:

  • "Archive this change"
  • "Close change [proposal-id]"
  • "Document the change"
  • "Finalize the implementation"
  • "Mark proposal [X] as complete"
  • "Wrap up this change"

Prerequisites:

  • OpenSpec change has been implemented
  • Tests pass and validation is complete
  • Deployment or rollout is done (or documented)

Do NOT invoke when:

  • Change not yet implemented (use openspec-change-implementation)
  • Tests failing or validation incomplete
  • Missing approvals or sign-offs
  • Change still in progress

Auto-document:

  • Learnings and deviations
  • Metrics (time, lines changed, tests added)
  • Follow-up tasks if any

Mission

Document the outcome of Level 0-1 work, ensuring artifacts, approvals, and follow-up actions are captured before closing the OpenSpec workflow.

Inputs Required

  • proposal: original proposal.md with approvals
  • implementation_log: execution notes or commits from implement skill
  • validation_evidence: test results or reviewer feedback

Outputs

  • Archive summary (archive.md) with outcomes, metrics, and learnings (template: assets/archive-template.md.template)
  • Updated proposal/tasks reflecting completion status
  • Deployment or rollback notes stored with project documentation
  • Canonical specs in openspec/specs/ synchronized with approved deltas

scripts/archive_change.py copies validated spec deltas from openspec/changes/<change-id>/specs/ into openspec/specs/.

Process

  1. Verify closure conditions using CHECKLIST.md.
  2. Gather final state: what shipped, what remains, and any deviations.
  3. Record metrics, approvals, and validation evidence in archive.md.
  4. Run scripts/archive_change.py <change-id> to merge spec deltas into openspec/specs/.
  5. Capture learnings and recommended follow-up actions, then update artifacts and communicate closure.

Quality Gates

All checklist items must pass before marking work as archived.

Error Handling

  • If validation evidence or approvals are missing, request them before closing.
  • Surface outstanding tasks and assign owners if work cannot be fully archived.