opencode-goopspec 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (92) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +650 -0
  3. package/agents/goop-debugger.md +265 -0
  4. package/agents/goop-designer.md +244 -0
  5. package/agents/goop-executor.md +217 -0
  6. package/agents/goop-explorer.md +252 -0
  7. package/agents/goop-librarian.md +197 -0
  8. package/agents/goop-orchestrator.md +224 -0
  9. package/agents/goop-planner.md +231 -0
  10. package/agents/goop-researcher.md +246 -0
  11. package/agents/goop-tester.md +245 -0
  12. package/agents/goop-verifier.md +266 -0
  13. package/agents/goop-writer.md +293 -0
  14. package/agents/memory-distiller.md +226 -0
  15. package/commands/goop-accept.md +183 -0
  16. package/commands/goop-amend.md +175 -0
  17. package/commands/goop-complete.md +206 -0
  18. package/commands/goop-debug.md +318 -0
  19. package/commands/goop-discuss.md +138 -0
  20. package/commands/goop-execute.md +137 -0
  21. package/commands/goop-help.md +82 -0
  22. package/commands/goop-map-codebase.md +501 -0
  23. package/commands/goop-memory.md +66 -0
  24. package/commands/goop-milestone.md +213 -0
  25. package/commands/goop-pause.md +61 -0
  26. package/commands/goop-plan.md +78 -0
  27. package/commands/goop-quick.md +165 -0
  28. package/commands/goop-recall.md +48 -0
  29. package/commands/goop-remember.md +71 -0
  30. package/commands/goop-research.md +98 -0
  31. package/commands/goop-resume.md +57 -0
  32. package/commands/goop-setup.md +208 -0
  33. package/commands/goop-specify.md +145 -0
  34. package/commands/goop-status.md +153 -0
  35. package/dist/index.js +31017 -0
  36. package/dist/memory/index.js +48752 -0
  37. package/package.json +73 -0
  38. package/references/agent-patterns.md +334 -0
  39. package/references/boundary-system.md +141 -0
  40. package/references/deviation-rules.md +80 -0
  41. package/references/dispatch-patterns.md +176 -0
  42. package/references/model-profiles.md +109 -0
  43. package/references/orchestrator-philosophy.md +280 -0
  44. package/references/security-checklist.md +163 -0
  45. package/references/subagent-protocol.md +393 -0
  46. package/references/tdd.md +231 -0
  47. package/references/ui-brand.md +261 -0
  48. package/references/workflow-accept.md +325 -0
  49. package/references/workflow-execute.md +315 -0
  50. package/references/workflow-plan.md +179 -0
  51. package/references/workflow-research.md +234 -0
  52. package/references/workflow-specify.md +278 -0
  53. package/skills/README.md +362 -0
  54. package/skills/accessibility/skill.md +41 -0
  55. package/skills/accessibility-testing/skill.md +47 -0
  56. package/skills/api-docs/skill.md +50 -0
  57. package/skills/architecture-design/skill.md +168 -0
  58. package/skills/atomic-commits/skill.md +53 -0
  59. package/skills/code-review/skill.md +59 -0
  60. package/skills/codebase-mapping/skill.md +54 -0
  61. package/skills/convention-detection/skill.md +68 -0
  62. package/skills/debugging/skill.md +59 -0
  63. package/skills/deviation-handling/skill.md +187 -0
  64. package/skills/documentation/skill.md +213 -0
  65. package/skills/goop-core/skill.md +383 -0
  66. package/skills/memory-usage/skill.md +208 -0
  67. package/skills/parallel-planning/skill.md +170 -0
  68. package/skills/pattern-extraction/skill.md +73 -0
  69. package/skills/performance-optimization/skill.md +188 -0
  70. package/skills/playwright/skill.md +69 -0
  71. package/skills/playwright-testing/skill.md +93 -0
  72. package/skills/progress-tracking/skill.md +155 -0
  73. package/skills/readme-generation/skill.md +87 -0
  74. package/skills/research/skill.md +161 -0
  75. package/skills/responsive-design/skill.md +76 -0
  76. package/skills/scientific-method/skill.md +67 -0
  77. package/skills/security-audit/skill.md +152 -0
  78. package/skills/task-decomposition/skill.md +153 -0
  79. package/skills/task-delegation/skill.md +127 -0
  80. package/skills/technical-writing/skill.md +69 -0
  81. package/skills/testing/skill.md +202 -0
  82. package/skills/ui-design/skill.md +73 -0
  83. package/skills/ux-patterns/skill.md +82 -0
  84. package/skills/verification/skill.md +178 -0
  85. package/skills/visual-regression/skill.md +86 -0
  86. package/templates/blueprint.md +141 -0
  87. package/templates/chronicle.md +156 -0
  88. package/templates/milestone.md +131 -0
  89. package/templates/research.md +117 -0
  90. package/templates/retrospective.md +188 -0
  91. package/templates/spec.md +103 -0
  92. package/templates/summary.md +202 -0
@@ -0,0 +1,178 @@
1
+ ---
2
+ name: verification
3
+ description: Verify implementations against specifications
4
+ category: review
5
+ triggers:
6
+ - verify
7
+ - check
8
+ - validate
9
+ - audit
10
+ version: 0.1.0
11
+ requires:
12
+ - goop-core
13
+ ---
14
+
15
+ # Verification Skill
16
+
17
+ ## Verification Philosophy
18
+
19
+ Task completion ≠ Goal achievement
20
+
21
+ Verify that the implementation:
22
+ 1. Does what the spec says
23
+ 2. Handles edge cases
24
+ 3. Meets quality standards
25
+ 4. Is maintainable
26
+
27
+ ## Verification Levels
28
+
29
+ ### Level 1: Syntax
30
+ - Code compiles/transpiles
31
+ - No linting errors
32
+ - Types check
33
+
34
+ ### Level 2: Unit
35
+ - Individual functions work
36
+ - Edge cases handled
37
+ - Errors thrown appropriately
38
+
39
+ ### Level 3: Integration
40
+ - Components work together
41
+ - Data flows correctly
42
+ - State managed properly
43
+
44
+ ### Level 4: E2E
45
+ - User flows complete
46
+ - UI renders correctly
47
+ - Performance acceptable
48
+
49
+ ### Level 5: Security
50
+ - No vulnerabilities
51
+ - Auth works correctly
52
+ - Data protected
53
+
54
+ ## Verification Checklist
55
+
56
+ ### Code Quality
57
+ - [ ] Follows project conventions
58
+ - [ ] No unused code
59
+ - [ ] No hardcoded values
60
+ - [ ] Proper error handling
61
+ - [ ] Logging in place
62
+
63
+ ### Functionality
64
+ - [ ] All spec requirements met
65
+ - [ ] Edge cases handled
66
+ - [ ] Error states work
67
+ - [ ] Happy path works
68
+
69
+ ### Tests
70
+ - [ ] Tests exist for new code
71
+ - [ ] Tests pass
72
+ - [ ] Coverage acceptable
73
+ - [ ] Tests are meaningful
74
+
75
+ ### Documentation
76
+ - [ ] Code is self-documenting
77
+ - [ ] Complex logic commented
78
+ - [ ] API documented
79
+ - [ ] README updated if needed
80
+
81
+ ## Must-Have Verification
82
+
83
+ From SPEC.md must-haves:
84
+
85
+ ### Truths (Observable Behaviors)
86
+ ```markdown
87
+ - [ ] User can log in with email/password
88
+ - [ ] Invalid credentials show error
89
+ - [ ] Session persists across refresh
90
+ ```
91
+
92
+ ### Artifacts (Required Files)
93
+ ```markdown
94
+ | Path | Exists | Exports | Min Lines |
95
+ |------|--------|---------|-----------|
96
+ | src/auth/login.ts | ✓ | login() | 50 |
97
+ ```
98
+
99
+ ### Key Links (Connections)
100
+ ```markdown
101
+ | From | To | Via | Verified |
102
+ |------|-----|-----|----------|
103
+ | login.ts | session.ts | createSession() | ✓ |
104
+ ```
105
+
106
+ ## Verification Commands
107
+
108
+ ```bash
109
+ # Type checking
110
+ npm run typecheck
111
+
112
+ # Linting
113
+ npm run lint
114
+
115
+ # Unit tests
116
+ npm test
117
+
118
+ # Integration tests
119
+ npm run test:integration
120
+
121
+ # E2E tests
122
+ npm run test:e2e
123
+
124
+ # Build
125
+ npm run build
126
+ ```
127
+
128
+ ## VERIFY.md Template
129
+
130
+ ```markdown
131
+ # Verification: Phase {N}
132
+
133
+ **Date:** {YYYY-MM-DD}
134
+ **Verifier:** GoopSpec Verifier Agent
135
+
136
+ ## Summary
137
+ {Pass/Fail with brief explanation}
138
+
139
+ ## Must-Haves
140
+
141
+ ### Truths
142
+ | Behavior | Status | Notes |
143
+ |----------|--------|-------|
144
+ | User can log in | ✓ | Tested manually |
145
+
146
+ ### Artifacts
147
+ | File | Status | Notes |
148
+ |------|--------|-------|
149
+ | src/auth/login.ts | ✓ | 75 lines |
150
+
151
+ ### Key Links
152
+ | Connection | Status | Notes |
153
+ |------------|--------|-------|
154
+ | login → session | ✓ | createSession called |
155
+
156
+ ## Quality Checks
157
+
158
+ | Check | Status |
159
+ |-------|--------|
160
+ | TypeScript | ✓ Pass |
161
+ | ESLint | ✓ Pass |
162
+ | Tests | ✓ 45/45 |
163
+ | Build | ✓ Success |
164
+
165
+ ## Issues Found
166
+ {List any issues or none}
167
+
168
+ ## Recommendations
169
+ {Suggestions for improvement}
170
+ ```
171
+
172
+ ## Best Practices
173
+
174
+ 1. **Verify against spec** - Not against assumptions
175
+ 2. **Test boundaries** - Edge cases, limits, errors
176
+ 3. **Check behavior** - Not just code existence
177
+ 4. **Document findings** - Even if all passes
178
+ 5. **Be ruthless** - Better to catch issues now
@@ -0,0 +1,86 @@
1
+ ---
2
+ name: visual-regression
3
+ description: Detect unintended visual changes in UI through automated screenshot comparison.
4
+ category: review
5
+ triggers:
6
+ - visual regression
7
+ - screenshots
8
+ - ui testing
9
+ - diff
10
+ version: 0.1.0
11
+ ---
12
+
13
+ # Visual Regression Testing Skill
14
+
15
+ ## Purpose
16
+ Detect unintended visual changes in UI through automated screenshot comparison.
17
+
18
+ ## How It Works
19
+
20
+ 1. Capture baseline screenshots of components/pages
21
+ 2. Run tests to capture new screenshots
22
+ 3. Compare against baselines pixel-by-pixel
23
+ 4. Flag differences for review
24
+ 5. Update baselines when changes are intentional
25
+
26
+ ## Tools
27
+
28
+ ### Playwright Visual Comparisons
29
+ ```typescript
30
+ import { test, expect } from '@playwright/test';
31
+
32
+ test('homepage visual regression', async ({ page }) => {
33
+ await page.goto('/');
34
+ await expect(page).toHaveScreenshot('homepage.png', {
35
+ maxDiffPixels: 100,
36
+ threshold: 0.2,
37
+ });
38
+ });
39
+ ```
40
+
41
+ ### Percy/Chromatic Integration
42
+ - Cloud-based visual testing
43
+ - Cross-browser comparisons
44
+ - Approval workflows
45
+
46
+ ## Best Practices
47
+
48
+ ### 1. Stable Tests
49
+ - Wait for animations to complete
50
+ - Use consistent viewport sizes
51
+ - Mock dynamic content (dates, avatars)
52
+ - Disable animations during tests
53
+
54
+ ### 2. Meaningful Baselines
55
+ - Capture at key breakpoints
56
+ - Include interactive states
57
+ - Test light and dark themes
58
+
59
+ ### 3. Efficient Reviews
60
+ - Set appropriate diff thresholds
61
+ - Use component-level screenshots
62
+ - Group related screenshots
63
+
64
+ ## Configuration
65
+
66
+ ```typescript
67
+ // playwright.config.ts
68
+ export default defineConfig({
69
+ expect: {
70
+ toHaveScreenshot: {
71
+ maxDiffPixels: 50,
72
+ threshold: 0.1,
73
+ animations: 'disabled',
74
+ },
75
+ },
76
+ use: {
77
+ viewport: { width: 1280, height: 720 },
78
+ },
79
+ });
80
+ ```
81
+
82
+ ## When to Update Baselines
83
+
84
+ - Intentional design changes
85
+ - After reviewing and approving diffs
86
+ - Never auto-update without review
@@ -0,0 +1,141 @@
1
+ # BLUEPRINT: {{project_name}}
2
+
3
+ **Spec Version:** {{spec_version}}
4
+ **Created:** {{created_date}}
5
+ **Mode:** {{mode}}
6
+
7
+ ---
8
+
9
+ ## Overview
10
+
11
+ **Goal:** {{goal}}
12
+
13
+ **Approach:** {{approach}}
14
+
15
+ **Waves:** {{wave_count}}
16
+ **Estimated Tasks:** {{task_count}}
17
+
18
+ ---
19
+
20
+ ## Wave Architecture
21
+
22
+ ```
23
+ {{#waves}}
24
+ Wave {{number}}: {{name}} {{#parallel}}(parallel){{/parallel}}{{^parallel}}(sequential){{/parallel}}
25
+ {{#depends_on}} └── depends on Wave {{.}}{{/depends_on}}
26
+ {{/waves}}
27
+ ```
28
+
29
+ ---
30
+
31
+ {{#waves}}
32
+ ## Wave {{number}}: {{name}}
33
+
34
+ **Goal:** {{goal}}
35
+ **Parallel:** {{#parallel}}Yes — tasks can run concurrently{{/parallel}}{{^parallel}}No — sequential execution{{/parallel}}
36
+ {{#depends_on}}
37
+ **Depends On:** Wave {{.}}
38
+ {{/depends_on}}
39
+
40
+ ### Tasks
41
+
42
+ {{#tasks}}
43
+ ### Task {{wave}}.{{number}}: {{name}}
44
+
45
+ **Intent:** {{intent}}
46
+
47
+ **Deliverables:**
48
+ {{#deliverables}}
49
+ - [ ] {{.}}
50
+ {{/deliverables}}
51
+
52
+ **Files:**
53
+ {{#files}}
54
+ - `{{.}}`
55
+ {{/files}}
56
+
57
+ **Verification:**
58
+ ```bash
59
+ {{verification}}
60
+ ```
61
+
62
+ **Acceptance:**
63
+ {{acceptance}}
64
+
65
+ {{#blocks}}
66
+ **Blocks:** {{blocks}}
67
+ {{/blocks}}
68
+
69
+ ---
70
+
71
+ {{/tasks}}
72
+
73
+ {{/waves}}
74
+
75
+ ## Verification Checklist
76
+
77
+ Before marking complete:
78
+
79
+ {{#verification_checklist}}
80
+ - [ ] {{.}}
81
+ {{/verification_checklist}}
82
+
83
+ ---
84
+
85
+ ## Must-Haves Traceability
86
+
87
+ Mapping tasks to spec requirements:
88
+
89
+ | Must-Have | Covered By |
90
+ |-----------|------------|
91
+ {{#must_have_mapping}}
92
+ | {{must_have}} | Wave {{wave}}, Task {{task}} |
93
+ {{/must_have_mapping}}
94
+
95
+ ---
96
+
97
+ ## Risk Assessment
98
+
99
+ {{#risks}}
100
+ ### {{risk}}
101
+ - **Likelihood:** {{likelihood}}
102
+ - **Impact:** {{impact}}
103
+ - **Mitigation:** {{mitigation}}
104
+ {{/risks}}
105
+
106
+ {{^risks}}
107
+ No significant risks identified.
108
+ {{/risks}}
109
+
110
+ ---
111
+
112
+ ## Execution Notes
113
+
114
+ ### For Orchestrator
115
+ - Delegate ALL code tasks to executor agents
116
+ - Track progress in CHRONICLE.md
117
+ - Save to memory at wave boundaries
118
+ - Confirm with user at CONTRACT GATES
119
+
120
+ ### For Subagents
121
+ - Read SPEC.md for requirements
122
+ - Check CHRONICLE.md for context
123
+ - Use memory_search before decisions
124
+ - Persist learnings with memory_save
125
+
126
+ ---
127
+
128
+ ## Deviation Protocol
129
+
130
+ If you encounter issues:
131
+
132
+ 1. **Bug Found** → Auto-fix, document in CHRONICLE.md
133
+ 2. **Missing Functionality** → Auto-add if critical, document
134
+ 3. **Blocking Issue** → Auto-fix (deps, imports), document
135
+ 4. **Architectural Decision** → STOP, ask user, log to memory
136
+
137
+ ---
138
+
139
+ *Blueprint derived from SPEC.md*
140
+ *Execute with confidence — the plan is the contract*
141
+ *GoopSpec v0.1.0*
@@ -0,0 +1,156 @@
1
+ # CHRONICLE: {{project_name}}
2
+
3
+ **Last Updated:** {{last_updated}}
4
+ **Current Phase:** {{current_phase}}
5
+
6
+ ---
7
+
8
+ ## Journey Status
9
+
10
+ ```
11
+ {{progress_bar}} {{progress_percent}}%
12
+ ```
13
+
14
+ **Position:** {{position_description}}
15
+
16
+ | Metric | Value |
17
+ |--------|-------|
18
+ | Waves Completed | {{waves_completed}}/{{waves_total}} |
19
+ | Tasks Done | {{tasks_completed}} |
20
+ | Time Invested | {{total_time}} |
21
+ | Current Mode | {{mode}} |
22
+
23
+ ---
24
+
25
+ ## Current Wave
26
+
27
+ ### Wave {{current_wave}}: {{wave_name}}
28
+
29
+ **Status:** {{wave_status}}
30
+ **Started:** {{wave_started}}
31
+
32
+ **Tasks:**
33
+ {{#wave_tasks}}
34
+ - [{{status}}] {{name}}
35
+ {{/wave_tasks}}
36
+
37
+ **Blockers:**
38
+ {{#blockers}}
39
+ - **[{{severity}}]** {{description}}
40
+ {{/blockers}}
41
+ {{^blockers}}
42
+ None
43
+ {{/blockers}}
44
+
45
+ ---
46
+
47
+ ## Recent Activity
48
+
49
+ {{#recent_activity}}
50
+ ### {{timestamp}}
51
+ - **Action:** {{action}}
52
+ - **Outcome:** {{outcome}}
53
+ {{#decision}}
54
+ - **Decision:** {{decision}} — *Reason: {{reason}}*
55
+ {{/decision}}
56
+ {{/recent_activity}}
57
+
58
+ ---
59
+
60
+ ## Decisions Made
61
+
62
+ Significant choices captured for future reference.
63
+
64
+ {{#decisions}}
65
+ ### {{date}}: {{title}}
66
+ - **Choice:** {{choice}}
67
+ - **Alternatives:** {{alternatives}}
68
+ - **Reasoning:** {{reasoning}}
69
+ - **Impact:** {{impact}}
70
+ {{/decisions}}
71
+
72
+ {{^decisions}}
73
+ No decisions recorded yet.
74
+ {{/decisions}}
75
+
76
+ ---
77
+
78
+ ## Learnings
79
+
80
+ Insights gained during this journey.
81
+
82
+ {{#learnings}}
83
+ - **{{topic}}:** {{insight}}
84
+ {{/learnings}}
85
+
86
+ {{^learnings}}
87
+ No learnings captured yet.
88
+ {{/learnings}}
89
+
90
+ ---
91
+
92
+ ## Checkpoints
93
+
94
+ Saved positions for recovery.
95
+
96
+ {{#checkpoints}}
97
+ | ID | Phase | Wave | Created | Description |
98
+ |----|-------|------|---------|-------------|
99
+ | {{id}} | {{phase}} | {{wave}} | {{created}} | {{description}} |
100
+ {{/checkpoints}}
101
+
102
+ {{^checkpoints}}
103
+ No checkpoints saved.
104
+ {{/checkpoints}}
105
+
106
+ ---
107
+
108
+ ## Memory Integration
109
+
110
+ ### Recent Memory Entries
111
+ {{#recent_memories}}
112
+ - **[{{type}}]** {{title}} — {{created}}
113
+ {{/recent_memories}}
114
+
115
+ ### Relevant Past Context
116
+ {{#relevant_context}}
117
+ - {{context}}
118
+ {{/relevant_context}}
119
+
120
+ ---
121
+
122
+ ## Next Steps
123
+
124
+ ### Immediate
125
+ {{#immediate_next}}
126
+ 1. {{.}}
127
+ {{/immediate_next}}
128
+
129
+ ### After This Wave
130
+ {{#after_wave}}
131
+ - {{.}}
132
+ {{/after_wave}}
133
+
134
+ ---
135
+
136
+ ## Quick Commands
137
+
138
+ ```bash
139
+ # Check status
140
+ /goop-status
141
+
142
+ # Continue work
143
+ /goop-execute
144
+
145
+ # Save checkpoint
146
+ /goop-checkpoint
147
+
148
+ # Search past work
149
+ /goop-recall "{{query}}"
150
+ ```
151
+
152
+ ---
153
+
154
+ *Chronicle auto-updated by GoopSpec after each action*
155
+ *This is your journey log — decisions persist, context flows*
156
+ *GoopSpec v0.1.0*
@@ -0,0 +1,131 @@
1
+ # MILESTONE: {{milestone_name}}
2
+
3
+ **Version:** {{version}}
4
+ **Started:** {{started_date}}
5
+ **Target:** {{target_date}}
6
+ **Status:** {{status}}
7
+
8
+ ---
9
+
10
+ ## Milestone Goal
11
+
12
+ {{goal}}
13
+
14
+ **Definition of Done:**
15
+ {{#definition_of_done}}
16
+ - [ ] {{.}}
17
+ {{/definition_of_done}}
18
+
19
+ ---
20
+
21
+ ## Progress
22
+
23
+ ```
24
+ {{progress_bar}} {{progress_percent}}%
25
+ ```
26
+
27
+ | Metric | Current | Target |
28
+ |--------|---------|--------|
29
+ | Waves | {{waves_completed}}/{{waves_total}} | {{waves_total}} |
30
+ | Tasks | {{tasks_completed}} | {{tasks_total}} |
31
+ | Time | {{time_spent}} | {{time_estimated}} |
32
+
33
+ ---
34
+
35
+ ## Waves in This Milestone
36
+
37
+ {{#waves}}
38
+ ### Wave {{number}}: {{name}}
39
+
40
+ **Status:** {{status}}
41
+ **Tasks:** {{tasks_completed}}/{{tasks_total}}
42
+
43
+ {{#completed}}
44
+ **Completed:** {{completed_date}}
45
+ **Summary:** {{summary}}
46
+ {{/completed}}
47
+
48
+ {{^completed}}
49
+ **Next:** {{next_task}}
50
+ {{/completed}}
51
+
52
+ {{/waves}}
53
+
54
+ ---
55
+
56
+ ## Key Deliverables
57
+
58
+ {{#deliverables}}
59
+ - [{{status}}] **{{name}}**: {{description}}
60
+ {{/deliverables}}
61
+
62
+ ---
63
+
64
+ ## Dependencies
65
+
66
+ ### External
67
+ {{#external_deps}}
68
+ - {{dependency}} — {{status}}
69
+ {{/external_deps}}
70
+
71
+ ### Internal
72
+ {{#internal_deps}}
73
+ - Requires: {{requirement}} — {{status}}
74
+ {{/internal_deps}}
75
+
76
+ ---
77
+
78
+ ## Decisions Log
79
+
80
+ Significant decisions made during this milestone:
81
+
82
+ {{#decisions}}
83
+ | Date | Decision | Rationale |
84
+ |------|----------|-----------|
85
+ | {{date}} | {{decision}} | {{rationale}} |
86
+ {{/decisions}}
87
+
88
+ ---
89
+
90
+ ## Blockers & Risks
91
+
92
+ ### Active Blockers
93
+ {{#blockers}}
94
+ - **[{{severity}}]** {{description}}
95
+ - **Impact:** {{impact}}
96
+ - **Resolution:** {{resolution}}
97
+ {{/blockers}}
98
+ {{^blockers}}
99
+ None
100
+ {{/blockers}}
101
+
102
+ ### Identified Risks
103
+ {{#risks}}
104
+ - **{{risk}}**: {{mitigation}}
105
+ {{/risks}}
106
+
107
+ ---
108
+
109
+ ## On Completion
110
+
111
+ When this milestone completes:
112
+
113
+ 1. Run `/goop-complete` to archive
114
+ 2. Generate RETROSPECTIVE.md
115
+ 3. Extract LEARNINGS.md → Memory
116
+ 4. Tag git: `git tag -a {{version}} -m "{{milestone_name}}"`
117
+ 5. Update project status
118
+
119
+ ---
120
+
121
+ ## Notes
122
+
123
+ {{#notes}}
124
+ - {{note}}
125
+ {{/notes}}
126
+
127
+ ---
128
+
129
+ *Milestone tracking by GoopSpec*
130
+ *Complete milestones are archived with learnings extracted*
131
+ *GoopSpec v0.1.0*