Back to skills
SkillHub ClubResearch & OpsFull StackDevOps

finalize-phase

Completes feature/epic workflows after deployment with comprehensive walkthrough generation for epics (v5.0+), roadmap updates, artifact archival, documentation, and branch cleanup. Use after /ship-prod, /deploy-prod, or /build-local completes, or when user asks to finalize. (project)

Packaged view

This page reorganizes the original catalog entry around fit, installability, and workflow context first. The original raw source lives below.

Stars
71
Hot score
93
Updated
March 20, 2026
Overall rating
A7.9
Composite score
6.2
Best-practice grade
B70.4

Install command

npx @skill-hub/cli install marcusgoll-spec-flow-finalize-phase

Repository

marcusgoll/Spec-Flow

Skill path: .claude/skills/finalize-phase

Completes feature/epic workflows after deployment with comprehensive walkthrough generation for epics (v5.0+), roadmap updates, artifact archival, documentation, and branch cleanup. Use after /ship-prod, /deploy-prod, or /build-local completes, or when user asks to finalize. (project)

Open repository

Best for

Primary workflow: Research & Ops.

Technical facets: Full Stack, DevOps.

Target audience: Development teams using structured workflows who need automated post-deployment cleanup and documentation, especially for managing large epics..

License: Unknown.

Original source

Catalog source: SkillHub Club.

Repository owner: marcusgoll.

This is still a mirrored public skill entry. Review the repository before installing into production workflows.

What it helps with

  • Install finalize-phase into Claude Code, Codex CLI, Gemini CLI, or OpenCode workflows
  • Review https://github.com/marcusgoll/Spec-Flow before adding finalize-phase to shared team environments
  • Use finalize-phase for development workflows

Works across

Claude CodeCodex CLIGemini CLIOpenCode

Favorites: 0.

Sub-skills: 0.

Aggregator: No.

Original source / Raw SKILL.md

---
name: finalize-phase
description: Completes feature/epic workflows after deployment with comprehensive walkthrough generation for epics (v5.0+), roadmap updates, artifact archival, documentation, and branch cleanup. Use after /ship-prod, /deploy-prod, or /build-local completes, or when user asks to finalize. (project)
---

<objective>
Complete feature/epic workflow, generate walkthrough (epics only), update roadmap, archive artifacts, and preserve knowledge after deployment. Ensures clean workflow closure with self-improving workflow system.

This skill orchestrates the /finalize phase, the final step after successful deployment to production, direct-prod, or local build.

**For Epic Workflows (v5.0+)**:

- Generate comprehensive walkthrough.md with velocity metrics, sprint results, lessons learned
- Run post-mortem audit with pattern detection (after 2-3 epics)
- Offer workflow healing with improvement recommendations
- Detect patterns for custom skills/commands generation

**For Feature Workflows**:

- Standard finalization (roadmap, artifacts, docs, branches)

Inputs: Deployed feature/epic, phase artifacts, ship report, state.yaml
Outputs: walkthrough.md (epics only), updated roadmap, archived artifacts, updated documentation
Expected duration: 10-15 minutes (features), 20-30 minutes (epics with walkthrough)
</objective>

<quick_start>
After deployment completes, finalize the workflow:

**Epic Workflows (NEW in v5.0)**: 0. Generate walkthrough - Comprehensive epic summary with velocity metrics, sprint results, lessons learned, pattern detection

1. Run post-mortem audit - Final effectiveness analysis with improvement recommendations
2. Offer workflow healing - Apply discovered improvements with user approval

**All Workflows** (features + epics):

1. Update roadmap - Move to "Shipped" with completion date, version, production URL
2. Archive artifacts - Verify all phase artifacts in specs/NNN-slug/ or epics/NNN-slug/
3. Update documentation - README, CHANGELOG, user guides (if applicable)
4. Clean up branches - Delete feature branch locally and remotely
5. Commit finalization - Small commit documenting workflow closure

Key principles:

- Clean closure preserves knowledge and enables learning
- Epic walkthroughs enable self-improving workflow system
- Pattern detection (after 2-3 epics) suggests custom automation
  </quick_start>

<prerequisites>
Before beginning finalization:
- Deployment completed successfully (/ship-prod, /deploy-prod, or /build-local done)
- Ship report generated (ship-summary.md exists)
- All phase artifacts present in specs/NNN-slug/
- Git working tree clean (all changes committed)

If deployment incomplete, return to /ship phase.
</prerequisites>

<workflow>
<step number="0">
**Epic Walkthrough Generation** (Epic workflows only - NEW in v5.0)

Detect epic vs feature workflow and generate comprehensive walkthrough for epics.

**Detection**:

```bash
if [ -f "epics/*/epic-spec.xml" ]; then
  WORKSPACE_TYPE="epic"
  EPIC_DIR=$(dirname "epics/*/epic-spec.xml")
else
  WORKSPACE_TYPE="feature"
  # Skip to Step 1 (standard finalization)
  continue
fi
```

**If feature workflow**: Skip this step entirely, proceed to Step 1

**If epic workflow**: Generate walkthrough before standard finalization

**Walkthrough Generation Pipeline**:

1. **Gather all epic artifacts**:

   - epic-spec.xml (epic specification)
   - research.xml (research phase output)
   - plan.xml (plan phase output with meta-prompting)
   - sprint-plan.xml (task breakdown with dependency graph)
   - state.yaml (state tracking across phases)
   - audit-report.xml (workflow effectiveness analysis)
   - preview-report.xml (manual testing decision)
   - Sprint results from epics/NNN-slug/sprints/\*/

2. **Calculate velocity metrics**:

   - Expected parallelization multiplier (from sprint-plan.xml)
   - Actual parallelization multiplier (from audit-report.xml)
   - Time saved in hours (parallel vs sequential execution)
   - Duration from start to completion

3. **Extract key information**:

   - Epic goal and success metrics
   - Phases completed with timestamps
   - Sprint execution results (status, tasks, duration, contracts, tests)
   - Validation results (optimization, preview decision)
   - Key files modified
   - Next steps (enhancements, technical debt, monitoring needs)

4. **Generate walkthrough.xml and walkthrough.md**:

   - Use template: `.spec-flow/templates/walkthrough.xml`
   - Populate with metrics, sprint results, lessons learned
   - Write both machine-readable (XML) and human-readable (Markdown) versions

5. **Run post-mortem audit**:

   - Invoke `/audit-workflow --post-mortem`
   - Analyze velocity accuracy (expected vs actual)
   - Detect bottlenecks and inefficiencies
   - Generate improvement recommendations

6. **Pattern detection** (if 2+ epics completed):

   - Analyze patterns across completed epics
   - Detect code generation patterns (service boilerplate repeated 3x)
   - Detect architectural patterns (all services use DI + Repository)
   - Detect workflow patterns (always clarify auth approach)
   - Suggest custom skills/commands if confidence ≄80%

7. **Offer workflow healing**:

   - Display immediate improvements from audit recommendations
   - Categorize by priority (immediate vs deferred)
   - Offer `/heal-workflow` to apply improvements
   - Save deferred improvements for pattern-based optimization

8. **Commit walkthrough**:

```bash
git add epics/*/walkthrough.xml
git add epics/*/walkthrough.md
git add epics/*/audit-report.xml

git commit -m "docs: generate epic walkthrough

[EPIC SUMMARY]
Epic: ${epic_slug}
Duration: ${duration_hours}h
Velocity: ${velocity_multiplier}x (saved ${time_saved}h)

[SPRINTS COMPLETED]
Total: ${total_sprints}
Execution: ${execution_strategy}
Tasks: ${tasks_completed}/${total_tasks}

[QUALITY METRICS]
Audit Score: ${audit_score}/100
Phase Efficiency: ${phase_efficiency}/100

[LESSONS LEARNED]
- What worked: ${what_worked_summary}
- What struggled: ${what_struggled_summary}

{IF recommendations > 0}
Improvement recommendations: ${recommendations_count}
Run /heal-workflow to apply improvements
{ENDIF}

šŸ¤– Generated with Claude Code
Co-Authored-By: Claude <[email protected]>"
```

9. **Present walkthrough summary** to user with:
   - Velocity metrics (expected vs actual, time saved)
   - Sprint results (status, tasks, duration, tests)
   - Quality metrics (audit score, phase efficiency, parallelization score)
   - What worked / what struggled / lessons learned
   - Improvement recommendations (if any)
   - Pattern detection results (if 2+ epics completed)

**After walkthrough complete**: Proceed to Step 1 (standard finalization)

**Validation**: For epics, walkthrough.xml and walkthrough.md exist in epics/NNN-slug/

See reference.md for epic walkthrough generation details.
</step>

<step number="1">
**Update Roadmap**

Move feature from "In Progress" to "Shipped" section in roadmap.

**Actions**:

1. Open `.spec-flow/memory/roadmap.md`
2. Find feature in "In Progress" section
3. Move to "Shipped" section with completion details

**Required information**:

- Completion date (deployment date)
- Version number (from CHANGELOG or ship report)
- Production URL (if applicable)
- Links to ship report and release notes

**Example**:

```markdown
## Shipped

### Student Progress Dashboard (v1.3.0) - Shipped 2025-10-21

- **Production URL**: https://app.example.com/students/progress
- **Ship Report**: specs/042-student-progress-dashboard/ship-summary.md
- **Release Notes**: CHANGELOG.md#v1.3.0
- **Impact**: Teachers can now track student progress with completion rates and time spent
```

**Validation**: Feature appears in "Shipped" section with all required details.

See reference.md for roadmap update checklist.
</step>

<step number="2">
**Archive Artifacts**

Verify all workflow artifacts archived in `specs/NNN-slug/` directory.

**Required artifacts checklist**:

- [ ] spec.md (feature specification)
- [ ] plan.md (implementation plan)
- [ ] tasks.md (task breakdown)
- [ ] optimization-report.md (quality gates results)
- [ ] preview-checklist.md (manual testing checklist - if applicable)
- [ ] ship-summary.md (deployment report)
- [ ] release-notes.md (user-facing release notes)
- [ ] state.yaml (workflow state tracking)

**Optional artifacts**:

- [ ] clarifications.md (if /clarify phase ran)
- [ ] analysis-report.md (if /validate phase ran)
- [ ] staging-ship-report.md (if staging deployment happened)

**Validation steps**:

```bash
# List all artifacts in feature directory
ls -la specs/NNN-slug/

# Should see all required files
# No temporary files (.tmp, .bak, etc.)
```

**If artifacts missing**:

- Check for artifacts in wrong locations (root directory, temp folders)
- Regenerate missing artifacts if possible
- Document missing artifacts in finalization commit message

See reference.md for complete artifact checklist.
</step>

<step number="3">
**Update Documentation**

Update user-facing documentation for shipped feature.

**README.md updates** (if user-facing feature):

```markdown
## Features

- **Student Progress Dashboard** - Track student completion rates and time spent
  - View individual student progress
  - Filter by class, subject, or time period
  - Export progress reports to CSV
```

**CHANGELOG.md updates**:

```markdown
## [1.3.0] - 2025-10-21

### Added

- Student progress dashboard with completion tracking
- CSV export for progress reports
- Filtering by class, subject, and time period

### Changed

- Improved dashboard load time from 3s to 1.2s

### Fixed

- Fixed timeout issue with large datasets (pagination added)
```

**User guides** (for complex features):

- Create docs/features/student-progress-dashboard.md
- Include screenshots, usage instructions, FAQs
- Link from README.md

**Validation**: Documentation accurately reflects shipped feature.

See reference.md for documentation standards.
</step>

<step number="4">
**Clean Up Branches**

Delete feature branch locally and remotely (if applicable).

**Local branch deletion**:

```bash
# Verify branch is merged
git branch --merged main | grep feature/042-student-progress-dashboard

# Delete local branch
git branch -d feature/042-student-progress-dashboard
```

**Remote branch deletion** (if pushed to remote):

```bash
# Delete remote branch
git push origin --delete feature/042-student-progress-dashboard

# Verify deletion
git branch -r | grep feature/042-student-progress-dashboard  # Should return nothing
```

**If branch not merged**:

- Verify feature deployed successfully
- If deployed, force delete: `git branch -D feature/...`
- Document why branch not merged in commit message

**Validation**: Feature branch no longer exists locally or remotely.

See reference.md for branch cleanup guidelines.
</step>

<step number="5">
**Commit Finalization**

Create small commit documenting workflow closure.

**Commit format**:

```bash
git add .spec-flow/memory/roadmap.md README.md CHANGELOG.md
git commit -m "chore: finalize student-progress-dashboard (v1.3.0)

Updated roadmap, README, and CHANGELOG
Archived artifacts in specs/042-student-progress-dashboard/"
```

**Commit message format**:

- Type: `chore` (finalization is housekeeping)
- Subject: `finalize [feature-name] ([version])`
- Body: List what was updated (roadmap, docs, etc.)

**Update state.yaml**:

```yaml
finalization:
  status: completed
  completion_date: 2025-10-21
  version: v1.3.0
  artifacts_archived: true
  documentation_updated: true
  branches_cleaned: true
```

**Validation**: Finalization commit pushed to main branch.

See reference.md for commit best practices.
</step>
</workflow>

<validation>
After finalization phase, verify:

- Roadmap updated (feature in "Shipped" section with completion date, version, URL)
- All artifacts archived (checklist 100% complete)
- Documentation updated (README, CHANGELOG, user guides if applicable)
- Branches cleaned up (feature branch deleted locally and remotely)
- Finalization committed (chore commit with workflow closure details)
- state.yaml updated (finalization.status = completed)

Workflow is now cleanly closed and ready for retrospective analysis.
</validation>

<anti_patterns>
<pitfall name="roadmap_not_updated">
**āŒ Don't**: Skip roadmap update, leave feature in "In Progress"
**āœ… Do**: Always move to "Shipped" with completion date and links

**Why**: Roadmap becomes stale and inaccurate. Team loses visibility into what shipped and when.

**Impact**:

- Historical tracking lost
- Roadmap doesn't reflect reality
- Hard to analyze velocity over time

**Example** (bad):

```
Feature deploys to production
/finalize skips roadmap update
Roadmap still shows feature "In Progress"
6 months later: "Did we ship this? When?"
```

**Example** (good):

```
Feature deploys to production
/finalize updates roadmap immediately
Roadmap shows "Shipped 2025-10-21, v1.3.0"
6 months later: Clear historical record
```

</pitfall>

<pitfall name="incomplete_documentation">
**āŒ Don't**: Skip README/CHANGELOG updates for "small" features
**āœ… Do**: Update all user-facing documentation for every shipped feature

**Why**: Knowledge loss compounds over time. Users can't discover features if not documented.

**Impact**:

- Feature discovery issues (users don't know feature exists)
- Onboarding friction (new team members confused)
- Version history unclear (what changed when?)

**Example** (bad):

```
Ship feature, skip README update
3 months later: User asks "Do we have progress tracking?"
Answer: "Yes, we shipped that 3 months ago" (not documented)
```

**Example** (good):

```
Ship feature, update README immediately
README: "Student Progress Dashboard - Track completion"
User discovers feature organically from README
```

</pitfall>

<pitfall name="branch_not_deleted">
**āŒ Don't**: Leave feature branches around "just in case"
**āœ… Do**: Delete merged feature branches immediately

**Why**: Branch clutter makes it hard to find active work.

**Impact**:

- Git branch list becomes unusable (100+ stale branches)
- Hard to identify active development
- Wastes storage (remote branches)

**Example** (bad):

```
git branch -a
# Shows 87 feature branches (only 3 active)
# Which branches are safe to delete? Unknown.
```

**Example** (good):

```
git branch -a
# Shows 3 feature branches (all active)
# Clear signal: current work only
```

</pitfall>

<pitfall name="no_finalization_commit">
**āŒ Don't**: Update files without committing finalization
**āœ… Do**: Create explicit finalization commit documenting closure

**Why**: Finalization changes should be tracked in git history.

**Impact**:

- Changes not backed up
- No clear signal when workflow closed
- Hard to audit finalization process

**Example** (bad):

```
Update roadmap, README, CHANGELOG
Git status: 3 modified files
Never commit (lose changes on machine wipe)
```

**Example** (good):

```
Update roadmap, README, CHANGELOG
git commit -m "chore: finalize feature (v1.3.0)"
Clear git history marker: finalization happened
```

</pitfall>

<pitfall name="artifacts_not_archived">
**āŒ Don't**: Delete or lose phase artifacts after deployment
**āœ… Do**: Archive all artifacts in specs/NNN-slug/ permanently

**Why**: Artifacts contain valuable context for future maintenance.

**Impact**:

- Context loss (why was feature built this way?)
- Hard to debug issues (no spec to reference)
- Can't analyze past decisions (no plan to review)

**Example** (bad):

```
Ship feature, delete spec.md and plan.md
6 months later: "Why did we implement it this way?"
Answer: Unknown (artifacts deleted)
```

**Example** (good):

```
Ship feature, archive all artifacts
6 months later: "Why did we implement it this way?"
Answer: Check specs/042-.../spec.md (clear rationale)
```

</pitfall>
</anti_patterns>

<best_practices>
<practice name="immediate_finalization">
Run /finalize immediately after deployment succeeds:

- Don't defer finalization "for later"
- Don't batch multiple finalizations
- Run while deployment fresh in memory

Result: Accurate documentation, fewer missed steps
</practice>

<practice name="complete_artifact_checklist">
Use complete artifact checklist from reference.md:

- Verify each artifact present
- Check for artifacts in wrong locations
- Document missing artifacts if any

Result: Complete archival, no lost context
</practice>

<practice name="user_facing_documentation">
Always update README and CHANGELOG for user-facing features:

- README: Feature list with one-line descriptions
- CHANGELOG: Version entry with Added/Changed/Fixed
- User guides: Detailed instructions for complex features

Result: Feature discoverability, clear version history
</practice>

<practice name="clean_branch_hygiene">
Delete merged branches immediately:

- Verify branch merged before deleting
- Delete local and remote branches
- Keep git branch list clean (active work only)

Result: Clear signal of active development, reduced clutter
</practice>

<practice name="explicit_finalization_commit">
Create explicit commit documenting workflow closure:

- Type: chore
- Subject: finalize [feature-name] ([version])
- Body: List updates (roadmap, docs, artifacts)

Result: Clear git history marker, auditable finalization
</practice>
</best_practices>

<success_criteria>
Finalization phase complete when:

- [ ] Roadmap updated (feature moved to "Shipped" with date, version, URL, links)
- [ ] All artifacts archived (100% checklist complete in specs/NNN-slug/)
- [ ] Documentation updated (README, CHANGELOG, user guides if applicable)
- [ ] Branches cleaned up (feature branch deleted locally and remotely)
- [ ] Finalization committed (chore commit documenting closure)
- [ ] state.yaml updated (finalization.status = completed)

Workflow is cleanly closed and ready for retrospective analysis.
</success_criteria>

<quality_standards>
**Good finalization**:

- Immediate (runs right after deployment)
- Complete (all artifacts archived, all docs updated)
- Clean (branches deleted, commit made)
- Documented (roadmap + README + CHANGELOG updated)

**Bad finalization**:

- Deferred (runs days/weeks later, details forgotten)
- Incomplete (missing artifacts, incomplete docs)
- Messy (branches not deleted, no commit)
- Undocumented (roadmap stale, README outdated)
  </quality_standards>

<troubleshooting>
**Issue**: Can't find feature in roadmap "In Progress" section
**Solution**: Check "Backlog" or "Planned" sections, or search entire roadmap file with grep

**Issue**: Missing artifacts (spec.md, plan.md, etc.)
**Solution**: Check root directory, temp folders, or regenerate if possible. Document missing in commit.

**Issue**: Feature branch won't delete (not merged)
**Solution**: Verify feature deployed successfully, then force delete with `git branch -D`. Document in commit.

**Issue**: Unclear what version to use
**Solution**: Check CHANGELOG for next version number, or use deployment date as version (v2025.10.21)

**Issue**: Don't know what to put in CHANGELOG
**Solution**: Review ship-summary.md and release-notes.md for user-facing changes. Focus on Added/Changed/Fixed.
</troubleshooting>

<reference_guides>
Finalization procedures:

- Roadmap Update Checklist (reference.md#roadmap-updates) - Required information and format
- Artifact Archival Guide (reference.md#artifact-archival) - Complete checklist and validation
- Documentation Standards (reference.md#documentation-updates) - README, CHANGELOG, user guide formats

Examples:

- Complete Finalization (examples.md#complete-finalization) - All steps done correctly
- Rushed Cleanup (examples.md#rushed-cleanup) - What happens when steps skipped

Workflow closure:
After finalization completes, feature workflow is closed. Retrospective analysis can begin to learn from past work.
</reference_guides>
finalize-phase | SkillHub