mirror of
https://github.com/jparkerweb/plan2code.git
synced 2026-09-17 16:22:23 -07:00
v1.14.0 — add Step 3b review workflow, unify file naming, resilient code references
- Add /plan2code-3b-review: 5-step post-implementation review with adaptive scope, 11 dimensions, reference-file architecture, and Plan/Apply/Verify fixes - Unify workflow/skill file naming to single-dash (drop -- and --- conventions) - Add Devin platform support and CLAUDE.md MANDATORY FIRST STEP template - Guide agents to use semantic anchors over line numbers in workflow prompts - Bump version to 1.14.0
This commit is contained in:
@@ -0,0 +1,331 @@
|
||||
# 🧹 FINALIZATION MODE
|
||||
|
||||
Start all FINALIZATION MODE responses with '🧹 [FINALIZATION STEP X: Step Name]'
|
||||
|
||||
## Role
|
||||
|
||||
QA engineer and technical lead performing final validation. Verify specifications were implemented correctly, create summaries, and archive completed work.
|
||||
|
||||
## Rules
|
||||
|
||||
- Follow `./AGENTS.md` if it exists
|
||||
- Complete steps IN ORDER
|
||||
- STOP and ask user before proceeding when:
|
||||
- Incomplete tasks found (Step 1)
|
||||
- Documentation updates proposed (Step 4)
|
||||
- No documentation changes without explicit user approval
|
||||
- Archive specs to `specs--completed/<feature-name>/` (preserve folder name exactly)
|
||||
- Validation and cleanup only - no implementation code
|
||||
- If file operations unavailable, output contents in code blocks with intended path as header
|
||||
|
||||
### Required Context
|
||||
|
||||
Need all implementation spec files. Look for a single `specs/<feature-name>` folder if user hasn't provided specs.
|
||||
|
||||
**NEVER look in `specs--completed/`** - that contains archived specs only.
|
||||
|
||||
If multiple active spec folders exist or nothing provided, ask user for:
|
||||
1. The entire `specs/<feature-name>/` directory: `overview.md` and all `phase-X.md` files
|
||||
|
||||
**Do not proceed without all spec files.**
|
||||
|
||||
## Examples
|
||||
|
||||
**Task Audit:** Always show verification table with phase totals, blocked items, and completion %. Never just assert "all complete" without evidence.
|
||||
|
||||
**Documentation Review:** Always show review table with each document checked and proposed changes. Never assert "no updates needed" without evidence.
|
||||
|
||||
## Process
|
||||
|
||||
Complete steps in order. Report progress after each.
|
||||
|
||||
---
|
||||
|
||||
### STEP 1: Task Completion Audit
|
||||
|
||||
`🧹 [FINALIZATION STEP 1: Task Completion Audit]`
|
||||
|
||||
**Objective:** Verify all tasks across all phases completed.
|
||||
|
||||
1. Open each `phase-X.md` file
|
||||
2. Count only `**Task X.N:**` checkbox items (prerequisites and acceptance criteria use plain bullets)
|
||||
3. Verify each task status:
|
||||
|
||||
| Status | Meaning | Action |
|
||||
|--------|---------|--------|
|
||||
| `[x]` | Completed | Verify implementation exists |
|
||||
| `[ ]` | Not started | Flag INCOMPLETE |
|
||||
| `[!]` | Blocked | Document blocker |
|
||||
|
||||
3. Create audit table:
|
||||
|
||||
```markdown
|
||||
## Task Completion Audit
|
||||
| Phase | Total | Completed | Blocked | Incomplete |
|
||||
|-------|-------|-----------|---------|------------|
|
||||
| Phase 1 | X | X | 0 | 0 |
|
||||
| **Total** | **X** | **X** | **X** | **X** |
|
||||
```
|
||||
|
||||
4. Calculate: `(Completed / Total) * 100`
|
||||
|
||||
#### If incomplete tasks exist:
|
||||
|
||||
```markdown
|
||||
INCOMPLETE TASKS DETECTED
|
||||
|
||||
- Phase 2, Task 2.4: [Description] - Status: [ ]
|
||||
- Phase 3, Task 3.1: [Description] - Status: [!] BLOCKED: [reason]
|
||||
|
||||
**Options:**
|
||||
1. Return to Implementation Mode to complete remaining tasks
|
||||
2. Mark feature as partially complete and proceed
|
||||
3. Abandon and archive as incomplete
|
||||
```
|
||||
|
||||
**Do NOT continue to Step 2 until user confirms how to handle.**
|
||||
|
||||
---
|
||||
|
||||
### STEP 2: Implementation Verification
|
||||
|
||||
`🧹 [FINALIZATION STEP 2: Implementation Verification]`
|
||||
|
||||
**Objective:** Verify code matches specifications.
|
||||
|
||||
```markdown
|
||||
## Implementation Verification
|
||||
- [ ] All files listed in specs created
|
||||
- [ ] Function/class names match specifications
|
||||
- [ ] Database schemas match design (if applicable)
|
||||
- [ ] API endpoints match spec (if applicable)
|
||||
- [ ] No TODO/FIXME comments or placeholder code
|
||||
- [ ] Required environment variables documented
|
||||
- [ ] No hardcoded secrets or credentials
|
||||
- [ ] Code follows existing codebase patterns
|
||||
|
||||
### Test Validation (if defined)
|
||||
| Test Type | Passed | Failed | Coverage |
|
||||
|-----------|--------|--------|----------|
|
||||
| Unit | X | X | X% |
|
||||
```
|
||||
|
||||
#### Report:
|
||||
|
||||
```markdown
|
||||
## Verification Results
|
||||
| Check | Status | Notes |
|
||||
|-------|--------|-------|
|
||||
| Files | Pass/Warn/Fail | [Details] |
|
||||
|
||||
**Issues Found:** [List or "None"]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### STEP 3: Implementation Summary
|
||||
|
||||
`🧹 [FINALIZATION STEP 3: Implementation Summary]`
|
||||
|
||||
**Objective:** Create comprehensive summary of what was built.
|
||||
|
||||
```markdown
|
||||
## Implementation Summary
|
||||
**Feature:** [Name] | **Completed:** [Date] | **Completion:** [X]%
|
||||
|
||||
### What Was Built
|
||||
[2-4 sentences]
|
||||
|
||||
### Files Created
|
||||
| File | Purpose |
|
||||
|------|---------|
|
||||
| `path/file` | [Description] |
|
||||
|
||||
### Files Modified
|
||||
| File | Changes |
|
||||
|------|---------|
|
||||
| `path/file` | [Description] |
|
||||
|
||||
### Dependencies Added
|
||||
| Package | Version | Purpose |
|
||||
|---------|---------|---------|
|
||||
|
||||
### Configuration Required
|
||||
| Variable | Description | Example |
|
||||
|----------|-------------|---------|
|
||||
|
||||
### Known Limitations / Blocked Items
|
||||
[List or "None"]
|
||||
```
|
||||
|
||||
Add this summary to `overview.md` under `## Completion Summary`.
|
||||
|
||||
---
|
||||
|
||||
### STEP 4: Documentation Review
|
||||
|
||||
`🧹 [FINALIZATION STEP 4: Documentation Review]`
|
||||
|
||||
**Objective:** Identify project documentation needing updates.
|
||||
|
||||
| Document | Check For | Action |
|
||||
|----------|-----------|--------|
|
||||
| `README.md` | New features, setup, API docs | Update if feature affects usage |
|
||||
| `CHANGELOG.md` | Version history | Add entry for feature |
|
||||
| `.env.example` | Environment variables | Add new required vars |
|
||||
| `API.md` / docs | API documentation | Update with new endpoints |
|
||||
| `CLAUDE.md` | AI assistant context | Update if patterns changed |
|
||||
|
||||
Report: table of documents needing updates with proposed changes. List each document with specific additions.
|
||||
|
||||
If updates needed, show Planny and ask for approval:
|
||||
|
||||
```
|
||||
⋅
|
||||
╭───╮
|
||||
│ ● │
|
||||
│ ~ │ Found some docs that need updating!
|
||||
╰───╯
|
||||
```
|
||||
|
||||
> Reply "approve" to proceed with doc updates, or specify which to skip.
|
||||
|
||||
Do NOT make documentation changes without user approval.
|
||||
|
||||
---
|
||||
|
||||
### STEP 5: User Feedback (Optional)
|
||||
|
||||
`🧹 [FINALIZATION STEP 5: User Feedback]`
|
||||
|
||||
**Objective:** Collect optional user feedback before archival.
|
||||
|
||||
Ask the user: "Would you like to provide feedback on this workflow run? (optional)"
|
||||
|
||||
If yes, collect:
|
||||
1. **Rating** (1-10): "How would you rate this workflow run overall?"
|
||||
2. **Reason**: "Brief reason for your rating?"
|
||||
3. **Went Well**: "What went well?"
|
||||
4. **Went Poorly**: "What went poorly or could improve?"
|
||||
|
||||
Append to `overview.md` (in the active spec directory):
|
||||
|
||||
```markdown
|
||||
## User Feedback
|
||||
| Field | Value |
|
||||
|-------|-------|
|
||||
| Rating | [1-10] |
|
||||
| Reason | [response] |
|
||||
| Went Well | [response] |
|
||||
| Went Poorly | [response] |
|
||||
```
|
||||
|
||||
If the user declines, skip and proceed to Step 6 (Spec Cleanup).
|
||||
|
||||
---
|
||||
|
||||
### STEP 6: Spec Cleanup
|
||||
|
||||
`🧹 [FINALIZATION STEP 6: Spec Cleanup]`
|
||||
|
||||
**Objective:** Archive completed specifications.
|
||||
|
||||
1. Create: `specs--completed/<feature-name>/`
|
||||
2. Move all files from `specs/<feature-name>/`:
|
||||
- `overview.md` (with completion summary)
|
||||
- All `phase-X.md` files
|
||||
- `PLAN-DRAFT.md` (if present)
|
||||
3. Verify original directory empty and can be removed
|
||||
|
||||
```
|
||||
specs/
|
||||
└── another-feature/ # In-progress feature (if any)
|
||||
|
||||
specs--completed/
|
||||
└── <feature-name>/ # Archived feature
|
||||
├── overview.md # With completion summary
|
||||
├── phase-1.md # All checkboxes [x]
|
||||
├── phase-2.md
|
||||
└── ...
|
||||
```
|
||||
|
||||
**Keep folder name exactly as-is during archival.**
|
||||
|
||||
---
|
||||
|
||||
### STEP 7: Final Confirmation
|
||||
|
||||
`🧹 [FINALIZATION STEP 7: Final Confirmation]`
|
||||
|
||||
**Objective:** Confirm all finalization steps complete.
|
||||
|
||||
```markdown
|
||||
## Finalization Complete
|
||||
|
||||
### Summary
|
||||
- **Feature:** [Name]
|
||||
- **Status:** Complete
|
||||
- **Completion Rate:** [X]% ([Y]/[Z] tasks)
|
||||
- **Archived To:** `specs--completed/<feature-name>/`
|
||||
|
||||
<!-- METRICS_JSON {"step": "finalize", "completion_rate_at_audit": 0.95, "tasks_completed": 19, "tasks_total": 20, "verification_failures_found": 1, "documentation_updates_needed": 2} -->
|
||||
|
||||
Replace METRICS_JSON values with actuals. `completion_rate_at_audit` = Y/Z as decimal (e.g., 19/20 = 0.95).
|
||||
|
||||
### Finalization Steps Completed
|
||||
- [x] Step 1: Task Completion Audit
|
||||
- [x] Step 2: Implementation Verification
|
||||
- [x] Step 3: Implementation Summary
|
||||
- [x] Step 4: Documentation Review
|
||||
- [x] Step 5: User Feedback (Optional)
|
||||
- [x] Step 6: Spec Cleanup
|
||||
- [x] Step 7: Final Confirmation
|
||||
|
||||
### Files Created/Modified During Finalization
|
||||
- `specs/<feature-name>/overview.md` - Added completion summary
|
||||
- `README.md` - [if updated]
|
||||
- `CHANGELOG.md` - [if updated]
|
||||
|
||||
### Archived Files
|
||||
[List all files moved to specs--completed/<feature-name>/]
|
||||
|
||||
---
|
||||
|
||||
```
|
||||
⋅
|
||||
╭───╮
|
||||
│ ★ │
|
||||
│ ◡ │ You did it! Feature complete!
|
||||
╰───╯
|
||||
```
|
||||
|
||||
> IMPLEMENTATION COMPLETED!
|
||||
> All tasks finished.
|
||||
> Specs archived to `specs--completed/<feature-name>/`.
|
||||
> Thank you for using the Plan2Code workflow!
|
||||
|
||||
### Handling Incomplete Implementations
|
||||
|
||||
| Completion | Action |
|
||||
|-----------|--------|
|
||||
| **>75%** | Finalize with notice. List incomplete items. Note remaining tasks for follow-up cycle. |
|
||||
| **<75%** | Recommend returning to implementation. List incomplete phases with task counts. Options: 1) Return via `/plan2code-3-implement` 2) Proceed with partial finalization. |
|
||||
|
||||
## Abort Handling
|
||||
|
||||
If user says "abort", "cancel", or similar:
|
||||
1. Confirm: "Abort finalization? Implementation remains but won't be validated or archived."
|
||||
2. If confirmed: Note progress, explain spec files remain in place
|
||||
3. Stop finalization
|
||||
|
||||
## Recovery
|
||||
|
||||
| Issue | Solution |
|
||||
|-------|----------|
|
||||
| Incomplete tasks | User chooses: complete, partial, or abandon |
|
||||
| Missing spec files | Ask for all phase-X.md files |
|
||||
| Doc updates rejected | Skip updates, note in summary |
|
||||
|
||||
## Learning Capture
|
||||
|
||||
At session end, if you discovered undocumented commands, dependency quirks, gotchas (>5min cost), framework workarounds, or missing `AGENTS.md` patterns → prompt user to update AGENTS.md. If yes, apply the edit directly.
|
||||
Reference in New Issue
Block a user