@howlil/ez-agents 3.4.1 → 3.5.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.
- package/LICENSE +21 -21
- package/README.md +84 -20
- package/agents/ez-observer-agent.md +260 -0
- package/agents/ez-release-agent.md +333 -0
- package/agents/ez-requirements-agent.md +377 -0
- package/agents/ez-scrum-master-agent.md +242 -0
- package/agents/ez-tech-lead-agent.md +267 -0
- package/bin/install.js +3221 -3230
- package/commands/ez/arch-review.md +102 -0
- package/commands/ez/execute-phase.md +11 -0
- package/commands/ez/export-session.md +79 -0
- package/commands/ez/gather-requirements.md +117 -0
- package/commands/ez/git-workflow.md +72 -0
- package/commands/ez/hotfix.md +120 -0
- package/commands/ez/import-session.md +82 -0
- package/commands/ez/join-discord.md +18 -18
- package/commands/ez/list-sessions.md +96 -0
- package/commands/ez/package-manager.md +316 -0
- package/commands/ez/plan-phase.md +9 -1
- package/commands/ez/preflight.md +79 -0
- package/commands/ez/progress.md +13 -1
- package/commands/ez/release.md +153 -0
- package/commands/ez/resume.md +107 -0
- package/commands/ez/standup.md +85 -0
- package/ez-agents/bin/ez-tools.cjs +1095 -716
- package/ez-agents/bin/lib/assistant-adapter.cjs +264 -264
- package/ez-agents/bin/lib/audit-exec.cjs +7 -2
- package/ez-agents/bin/lib/bdd-validator.cjs +622 -0
- package/ez-agents/bin/lib/circuit-breaker.cjs +118 -118
- package/ez-agents/bin/lib/config.cjs +190 -190
- package/ez-agents/bin/lib/content-scanner.cjs +238 -0
- package/ez-agents/bin/lib/context-cache.cjs +154 -0
- package/ez-agents/bin/lib/context-errors.cjs +71 -0
- package/ez-agents/bin/lib/context-manager.cjs +220 -0
- package/ez-agents/bin/lib/discussion-synthesizer.cjs +458 -0
- package/ez-agents/bin/lib/file-access.cjs +207 -0
- package/ez-agents/bin/lib/file-lock.cjs +236 -236
- package/ez-agents/bin/lib/frontmatter.cjs +299 -299
- package/ez-agents/bin/lib/fs-utils.cjs +153 -153
- package/ez-agents/bin/lib/git-errors.cjs +83 -0
- package/ez-agents/bin/lib/git-utils.cjs +118 -0
- package/ez-agents/bin/lib/git-workflow-engine.cjs +1157 -0
- package/ez-agents/bin/lib/index.cjs +157 -113
- package/ez-agents/bin/lib/init.cjs +757 -757
- package/ez-agents/bin/lib/lockfile-validator.cjs +227 -0
- package/ez-agents/bin/lib/logger.cjs +124 -124
- package/ez-agents/bin/lib/memory-compression.cjs +256 -0
- package/ez-agents/bin/lib/metrics-tracker.cjs +406 -0
- package/ez-agents/bin/lib/milestone.cjs +241 -241
- package/ez-agents/bin/lib/model-provider.cjs +241 -241
- package/ez-agents/bin/lib/package-manager-detector.cjs +203 -0
- package/ez-agents/bin/lib/package-manager-executor.cjs +385 -0
- package/ez-agents/bin/lib/package-manager-service.cjs +216 -0
- package/ez-agents/bin/lib/phase.cjs +925 -925
- package/ez-agents/bin/lib/planning-write.cjs +107 -107
- package/ez-agents/bin/lib/release-validator.cjs +614 -0
- package/ez-agents/bin/lib/retry.cjs +119 -119
- package/ez-agents/bin/lib/roadmap.cjs +306 -306
- package/ez-agents/bin/lib/safe-exec.cjs +128 -128
- package/ez-agents/bin/lib/safe-path.cjs +130 -130
- package/ez-agents/bin/lib/session-chain.cjs +304 -0
- package/ez-agents/bin/lib/session-errors.cjs +81 -0
- package/ez-agents/bin/lib/session-export.cjs +251 -0
- package/ez-agents/bin/lib/session-import.cjs +262 -0
- package/ez-agents/bin/lib/session-manager.cjs +280 -0
- package/ez-agents/bin/lib/state.cjs +736 -736
- package/ez-agents/bin/lib/temp-file.cjs +239 -239
- package/ez-agents/bin/lib/template.cjs +223 -223
- package/ez-agents/bin/lib/test-file-lock.cjs +112 -112
- package/ez-agents/bin/lib/test-graceful.cjs +93 -93
- package/ez-agents/bin/lib/test-logger.cjs +60 -60
- package/ez-agents/bin/lib/test-safe-exec.cjs +38 -38
- package/ez-agents/bin/lib/test-safe-path.cjs +33 -33
- package/ez-agents/bin/lib/test-temp-file.cjs +125 -125
- package/ez-agents/bin/lib/tier-manager.cjs +428 -0
- package/ez-agents/bin/lib/timeout-exec.cjs +63 -63
- package/ez-agents/bin/lib/url-fetch.cjs +170 -0
- package/ez-agents/bin/lib/verify.cjs +15 -1
- package/ez-agents/references/checkpoints.md +776 -776
- package/ez-agents/references/continuation-format.md +249 -249
- package/ez-agents/references/metrics-schema.md +118 -0
- package/ez-agents/references/planning-config.md +140 -0
- package/ez-agents/references/questioning.md +162 -162
- package/ez-agents/references/tdd.md +263 -263
- package/ez-agents/references/tier-strategy.md +103 -0
- package/ez-agents/templates/bdd-feature.md +173 -0
- package/ez-agents/templates/codebase/concerns.md +310 -310
- package/ez-agents/templates/codebase/conventions.md +307 -307
- package/ez-agents/templates/codebase/integrations.md +280 -280
- package/ez-agents/templates/codebase/stack.md +186 -186
- package/ez-agents/templates/codebase/testing.md +480 -480
- package/ez-agents/templates/config.json +37 -37
- package/ez-agents/templates/continue-here.md +78 -78
- package/ez-agents/templates/discussion.md +68 -0
- package/ez-agents/templates/incident-runbook.md +205 -0
- package/ez-agents/templates/milestone-archive.md +123 -123
- package/ez-agents/templates/milestone.md +115 -115
- package/ez-agents/templates/release-checklist.md +133 -0
- package/ez-agents/templates/requirements.md +231 -231
- package/ez-agents/templates/research-project/ARCHITECTURE.md +204 -204
- package/ez-agents/templates/research-project/FEATURES.md +147 -147
- package/ez-agents/templates/research-project/PITFALLS.md +200 -200
- package/ez-agents/templates/research-project/STACK.md +120 -120
- package/ez-agents/templates/research-project/SUMMARY.md +170 -170
- package/ez-agents/templates/retrospective.md +54 -54
- package/ez-agents/templates/roadmap.md +202 -202
- package/ez-agents/templates/rollback-plan.md +201 -0
- package/ez-agents/templates/summary-minimal.md +41 -41
- package/ez-agents/templates/summary-standard.md +48 -48
- package/ez-agents/templates/summary.md +248 -248
- package/ez-agents/templates/user-setup.md +311 -311
- package/ez-agents/templates/verification-report.md +322 -322
- package/ez-agents/workflows/add-phase.md +112 -112
- package/ez-agents/workflows/add-tests.md +351 -351
- package/ez-agents/workflows/add-todo.md +158 -158
- package/ez-agents/workflows/arch-review.md +54 -0
- package/ez-agents/workflows/audit-milestone.md +332 -332
- package/ez-agents/workflows/autonomous.md +131 -30
- package/ez-agents/workflows/check-todos.md +177 -177
- package/ez-agents/workflows/cleanup.md +152 -152
- package/ez-agents/workflows/complete-milestone.md +766 -766
- package/ez-agents/workflows/diagnose-issues.md +219 -219
- package/ez-agents/workflows/discovery-phase.md +289 -289
- package/ez-agents/workflows/discuss-phase.md +762 -762
- package/ez-agents/workflows/execute-phase.md +513 -468
- package/ez-agents/workflows/execute-plan.md +483 -483
- package/ez-agents/workflows/export-session.md +255 -0
- package/ez-agents/workflows/gather-requirements.md +206 -0
- package/ez-agents/workflows/health.md +159 -159
- package/ez-agents/workflows/help.md +584 -492
- package/ez-agents/workflows/hotfix.md +291 -0
- package/ez-agents/workflows/import-session.md +303 -0
- package/ez-agents/workflows/insert-phase.md +130 -130
- package/ez-agents/workflows/list-phase-assumptions.md +178 -178
- package/ez-agents/workflows/map-codebase.md +316 -316
- package/ez-agents/workflows/new-milestone.md +339 -10
- package/ez-agents/workflows/new-project.md +293 -299
- package/ez-agents/workflows/node-repair.md +92 -92
- package/ez-agents/workflows/pause-work.md +122 -122
- package/ez-agents/workflows/plan-milestone-gaps.md +274 -274
- package/ez-agents/workflows/plan-phase.md +673 -651
- package/ez-agents/workflows/progress.md +372 -382
- package/ez-agents/workflows/quick.md +610 -610
- package/ez-agents/workflows/release.md +253 -0
- package/ez-agents/workflows/remove-phase.md +155 -155
- package/ez-agents/workflows/research-phase.md +74 -74
- package/ez-agents/workflows/resume-project.md +307 -307
- package/ez-agents/workflows/resume-session.md +215 -0
- package/ez-agents/workflows/set-profile.md +81 -81
- package/ez-agents/workflows/settings.md +242 -242
- package/ez-agents/workflows/standup.md +64 -0
- package/ez-agents/workflows/stats.md +57 -57
- package/ez-agents/workflows/transition.md +544 -544
- package/ez-agents/workflows/ui-phase.md +290 -290
- package/ez-agents/workflows/ui-review.md +157 -157
- package/ez-agents/workflows/update.md +320 -320
- package/ez-agents/workflows/validate-phase.md +167 -167
- package/ez-agents/workflows/verify-phase.md +243 -243
- package/ez-agents/workflows/verify-work.md +584 -584
- package/package.json +10 -4
- package/scripts/build-hooks.js +43 -43
- package/scripts/run-tests.cjs +29 -29
|
@@ -1,123 +1,123 @@
|
|
|
1
|
-
# Milestone Archive Template
|
|
2
|
-
|
|
3
|
-
This template is used by the complete-milestone workflow to create archive files in `.planning/milestones/`.
|
|
4
|
-
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
## File Template
|
|
8
|
-
|
|
9
|
-
# Milestone v{{VERSION}}: {{MILESTONE_NAME}}
|
|
10
|
-
|
|
11
|
-
**Status:** ✅ SHIPPED {{DATE}}
|
|
12
|
-
**Phases:** {{PHASE_START}}-{{PHASE_END}}
|
|
13
|
-
**Total Plans:** {{TOTAL_PLANS}}
|
|
14
|
-
|
|
15
|
-
## Overview
|
|
16
|
-
|
|
17
|
-
{{MILESTONE_DESCRIPTION}}
|
|
18
|
-
|
|
19
|
-
## Phases
|
|
20
|
-
|
|
21
|
-
{{PHASES_SECTION}}
|
|
22
|
-
|
|
23
|
-
[For each phase in this milestone, include:]
|
|
24
|
-
|
|
25
|
-
### Phase {{PHASE_NUM}}: {{PHASE_NAME}}
|
|
26
|
-
|
|
27
|
-
**Goal**: {{PHASE_GOAL}}
|
|
28
|
-
**Depends on**: {{DEPENDS_ON}}
|
|
29
|
-
**Plans**: {{PLAN_COUNT}} plans
|
|
30
|
-
|
|
31
|
-
Plans:
|
|
32
|
-
|
|
33
|
-
- [x] {{PHASE}}-01: {{PLAN_DESCRIPTION}}
|
|
34
|
-
- [x] {{PHASE}}-02: {{PLAN_DESCRIPTION}}
|
|
35
|
-
[... all plans ...]
|
|
36
|
-
|
|
37
|
-
**Details:**
|
|
38
|
-
{{PHASE_DETAILS_FROM_ROADMAP}}
|
|
39
|
-
|
|
40
|
-
**For decimal phases, include (INSERTED) marker:**
|
|
41
|
-
|
|
42
|
-
### Phase 2.1: Critical Security Patch (INSERTED)
|
|
43
|
-
|
|
44
|
-
**Goal**: Fix authentication bypass vulnerability
|
|
45
|
-
**Depends on**: Phase 2
|
|
46
|
-
**Plans**: 1 plan
|
|
47
|
-
|
|
48
|
-
Plans:
|
|
49
|
-
|
|
50
|
-
- [x] 02.1-01: Patch auth vulnerability
|
|
51
|
-
|
|
52
|
-
**Details:**
|
|
53
|
-
{{PHASE_DETAILS_FROM_ROADMAP}}
|
|
54
|
-
|
|
55
|
-
---
|
|
56
|
-
|
|
57
|
-
## Milestone Summary
|
|
58
|
-
|
|
59
|
-
**Decimal Phases:**
|
|
60
|
-
|
|
61
|
-
- Phase 2.1: Critical Security Patch (inserted after Phase 2 for urgent fix)
|
|
62
|
-
- Phase 5.1: Performance Hotfix (inserted after Phase 5 for production issue)
|
|
63
|
-
|
|
64
|
-
**Key Decisions:**
|
|
65
|
-
{{DECISIONS_FROM_PROJECT_STATE}}
|
|
66
|
-
[Example:]
|
|
67
|
-
|
|
68
|
-
- Decision: Use ROADMAP.md split (Rationale: Constant context cost)
|
|
69
|
-
- Decision: Decimal phase numbering (Rationale: Clear insertion semantics)
|
|
70
|
-
|
|
71
|
-
**Issues Resolved:**
|
|
72
|
-
{{ISSUES_RESOLVED_DURING_MILESTONE}}
|
|
73
|
-
[Example:]
|
|
74
|
-
|
|
75
|
-
- Fixed context overflow at 100+ phases
|
|
76
|
-
- Resolved phase insertion confusion
|
|
77
|
-
|
|
78
|
-
**Issues Deferred:**
|
|
79
|
-
{{ISSUES_DEFERRED_TO_LATER}}
|
|
80
|
-
[Example:]
|
|
81
|
-
|
|
82
|
-
- PROJECT-STATE.md tiering (deferred until decisions > 300)
|
|
83
|
-
|
|
84
|
-
**Technical Debt Incurred:**
|
|
85
|
-
{{SHORTCUTS_NEEDING_FUTURE_WORK}}
|
|
86
|
-
[Example:]
|
|
87
|
-
|
|
88
|
-
- Some workflows still have hardcoded paths (fix in Phase 5)
|
|
89
|
-
|
|
90
|
-
---
|
|
91
|
-
|
|
92
|
-
_For current project status, see .planning/ROADMAP.md_
|
|
93
|
-
|
|
94
|
-
---
|
|
95
|
-
|
|
96
|
-
## Usage Guidelines
|
|
97
|
-
|
|
98
|
-
<guidelines>
|
|
99
|
-
**When to create milestone archives:**
|
|
100
|
-
- After completing all phases in a milestone (v1.0, v1.1, v2.0, etc.)
|
|
101
|
-
- Triggered by complete-milestone workflow
|
|
102
|
-
- Before planning next milestone work
|
|
103
|
-
|
|
104
|
-
**How to fill template:**
|
|
105
|
-
|
|
106
|
-
- Replace {{PLACEHOLDERS}} with actual values
|
|
107
|
-
- Extract phase details from ROADMAP.md
|
|
108
|
-
- Document decimal phases with (INSERTED) marker
|
|
109
|
-
- Include key decisions from PROJECT-STATE.md or SUMMARY files
|
|
110
|
-
- List issues resolved vs deferred
|
|
111
|
-
- Capture technical debt for future reference
|
|
112
|
-
|
|
113
|
-
**Archive location:**
|
|
114
|
-
|
|
115
|
-
- Save to `.planning/milestones/v{VERSION}-{NAME}.md`
|
|
116
|
-
- Example: `.planning/milestones/v1.0-mvp.md`
|
|
117
|
-
|
|
118
|
-
**After archiving:**
|
|
119
|
-
|
|
120
|
-
- Update ROADMAP.md to collapse completed milestone in `<details>` tag
|
|
121
|
-
- Update PROJECT.md to brownfield format with Current State section
|
|
122
|
-
- Continue phase numbering in next milestone (never restart at 01)
|
|
123
|
-
</guidelines>
|
|
1
|
+
# Milestone Archive Template
|
|
2
|
+
|
|
3
|
+
This template is used by the complete-milestone workflow to create archive files in `.planning/milestones/`.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## File Template
|
|
8
|
+
|
|
9
|
+
# Milestone v{{VERSION}}: {{MILESTONE_NAME}}
|
|
10
|
+
|
|
11
|
+
**Status:** ✅ SHIPPED {{DATE}}
|
|
12
|
+
**Phases:** {{PHASE_START}}-{{PHASE_END}}
|
|
13
|
+
**Total Plans:** {{TOTAL_PLANS}}
|
|
14
|
+
|
|
15
|
+
## Overview
|
|
16
|
+
|
|
17
|
+
{{MILESTONE_DESCRIPTION}}
|
|
18
|
+
|
|
19
|
+
## Phases
|
|
20
|
+
|
|
21
|
+
{{PHASES_SECTION}}
|
|
22
|
+
|
|
23
|
+
[For each phase in this milestone, include:]
|
|
24
|
+
|
|
25
|
+
### Phase {{PHASE_NUM}}: {{PHASE_NAME}}
|
|
26
|
+
|
|
27
|
+
**Goal**: {{PHASE_GOAL}}
|
|
28
|
+
**Depends on**: {{DEPENDS_ON}}
|
|
29
|
+
**Plans**: {{PLAN_COUNT}} plans
|
|
30
|
+
|
|
31
|
+
Plans:
|
|
32
|
+
|
|
33
|
+
- [x] {{PHASE}}-01: {{PLAN_DESCRIPTION}}
|
|
34
|
+
- [x] {{PHASE}}-02: {{PLAN_DESCRIPTION}}
|
|
35
|
+
[... all plans ...]
|
|
36
|
+
|
|
37
|
+
**Details:**
|
|
38
|
+
{{PHASE_DETAILS_FROM_ROADMAP}}
|
|
39
|
+
|
|
40
|
+
**For decimal phases, include (INSERTED) marker:**
|
|
41
|
+
|
|
42
|
+
### Phase 2.1: Critical Security Patch (INSERTED)
|
|
43
|
+
|
|
44
|
+
**Goal**: Fix authentication bypass vulnerability
|
|
45
|
+
**Depends on**: Phase 2
|
|
46
|
+
**Plans**: 1 plan
|
|
47
|
+
|
|
48
|
+
Plans:
|
|
49
|
+
|
|
50
|
+
- [x] 02.1-01: Patch auth vulnerability
|
|
51
|
+
|
|
52
|
+
**Details:**
|
|
53
|
+
{{PHASE_DETAILS_FROM_ROADMAP}}
|
|
54
|
+
|
|
55
|
+
---
|
|
56
|
+
|
|
57
|
+
## Milestone Summary
|
|
58
|
+
|
|
59
|
+
**Decimal Phases:**
|
|
60
|
+
|
|
61
|
+
- Phase 2.1: Critical Security Patch (inserted after Phase 2 for urgent fix)
|
|
62
|
+
- Phase 5.1: Performance Hotfix (inserted after Phase 5 for production issue)
|
|
63
|
+
|
|
64
|
+
**Key Decisions:**
|
|
65
|
+
{{DECISIONS_FROM_PROJECT_STATE}}
|
|
66
|
+
[Example:]
|
|
67
|
+
|
|
68
|
+
- Decision: Use ROADMAP.md split (Rationale: Constant context cost)
|
|
69
|
+
- Decision: Decimal phase numbering (Rationale: Clear insertion semantics)
|
|
70
|
+
|
|
71
|
+
**Issues Resolved:**
|
|
72
|
+
{{ISSUES_RESOLVED_DURING_MILESTONE}}
|
|
73
|
+
[Example:]
|
|
74
|
+
|
|
75
|
+
- Fixed context overflow at 100+ phases
|
|
76
|
+
- Resolved phase insertion confusion
|
|
77
|
+
|
|
78
|
+
**Issues Deferred:**
|
|
79
|
+
{{ISSUES_DEFERRED_TO_LATER}}
|
|
80
|
+
[Example:]
|
|
81
|
+
|
|
82
|
+
- PROJECT-STATE.md tiering (deferred until decisions > 300)
|
|
83
|
+
|
|
84
|
+
**Technical Debt Incurred:**
|
|
85
|
+
{{SHORTCUTS_NEEDING_FUTURE_WORK}}
|
|
86
|
+
[Example:]
|
|
87
|
+
|
|
88
|
+
- Some workflows still have hardcoded paths (fix in Phase 5)
|
|
89
|
+
|
|
90
|
+
---
|
|
91
|
+
|
|
92
|
+
_For current project status, see .planning/ROADMAP.md_
|
|
93
|
+
|
|
94
|
+
---
|
|
95
|
+
|
|
96
|
+
## Usage Guidelines
|
|
97
|
+
|
|
98
|
+
<guidelines>
|
|
99
|
+
**When to create milestone archives:**
|
|
100
|
+
- After completing all phases in a milestone (v1.0, v1.1, v2.0, etc.)
|
|
101
|
+
- Triggered by complete-milestone workflow
|
|
102
|
+
- Before planning next milestone work
|
|
103
|
+
|
|
104
|
+
**How to fill template:**
|
|
105
|
+
|
|
106
|
+
- Replace {{PLACEHOLDERS}} with actual values
|
|
107
|
+
- Extract phase details from ROADMAP.md
|
|
108
|
+
- Document decimal phases with (INSERTED) marker
|
|
109
|
+
- Include key decisions from PROJECT-STATE.md or SUMMARY files
|
|
110
|
+
- List issues resolved vs deferred
|
|
111
|
+
- Capture technical debt for future reference
|
|
112
|
+
|
|
113
|
+
**Archive location:**
|
|
114
|
+
|
|
115
|
+
- Save to `.planning/milestones/v{VERSION}-{NAME}.md`
|
|
116
|
+
- Example: `.planning/milestones/v1.0-mvp.md`
|
|
117
|
+
|
|
118
|
+
**After archiving:**
|
|
119
|
+
|
|
120
|
+
- Update ROADMAP.md to collapse completed milestone in `<details>` tag
|
|
121
|
+
- Update PROJECT.md to brownfield format with Current State section
|
|
122
|
+
- Continue phase numbering in next milestone (never restart at 01)
|
|
123
|
+
</guidelines>
|
|
@@ -1,115 +1,115 @@
|
|
|
1
|
-
# Milestone Entry Template
|
|
2
|
-
|
|
3
|
-
Add this entry to `.planning/MILESTONES.md` when completing a milestone:
|
|
4
|
-
|
|
5
|
-
```markdown
|
|
6
|
-
## v[X.Y] [Name] (Shipped: YYYY-MM-DD)
|
|
7
|
-
|
|
8
|
-
**Delivered:** [One sentence describing what shipped]
|
|
9
|
-
|
|
10
|
-
**Phases completed:** [X-Y] ([Z] plans total)
|
|
11
|
-
|
|
12
|
-
**Key accomplishments:**
|
|
13
|
-
- [Major achievement 1]
|
|
14
|
-
- [Major achievement 2]
|
|
15
|
-
- [Major achievement 3]
|
|
16
|
-
- [Major achievement 4]
|
|
17
|
-
|
|
18
|
-
**Stats:**
|
|
19
|
-
- [X] files created/modified
|
|
20
|
-
- [Y] lines of code (primary language)
|
|
21
|
-
- [Z] phases, [N] plans, [M] tasks
|
|
22
|
-
- [D] days from start to ship (or milestone to milestone)
|
|
23
|
-
|
|
24
|
-
**Git range:** `feat(XX-XX)` → `feat(YY-YY)`
|
|
25
|
-
|
|
26
|
-
**What's next:** [Brief description of next milestone goals, or "Project complete"]
|
|
27
|
-
|
|
28
|
-
---
|
|
29
|
-
```
|
|
30
|
-
|
|
31
|
-
<structure>
|
|
32
|
-
If MILESTONES.md doesn't exist, create it with header:
|
|
33
|
-
|
|
34
|
-
```markdown
|
|
35
|
-
# Project Milestones: [Project Name]
|
|
36
|
-
|
|
37
|
-
[Entries in reverse chronological order - newest first]
|
|
38
|
-
```
|
|
39
|
-
</structure>
|
|
40
|
-
|
|
41
|
-
<guidelines>
|
|
42
|
-
**When to create milestones:**
|
|
43
|
-
- Initial v1.0 MVP shipped
|
|
44
|
-
- Major version releases (v2.0, v3.0)
|
|
45
|
-
- Significant feature milestones (v1.1, v1.2)
|
|
46
|
-
- Before archiving planning (capture what was shipped)
|
|
47
|
-
|
|
48
|
-
**Don't create milestones for:**
|
|
49
|
-
- Individual phase completions (normal workflow)
|
|
50
|
-
- Work in progress (wait until shipped)
|
|
51
|
-
- Minor bug fixes that don't constitute a release
|
|
52
|
-
|
|
53
|
-
**Stats to include:**
|
|
54
|
-
- Count modified files: `git diff --stat feat(XX-XX)..feat(YY-YY) | tail -1`
|
|
55
|
-
- Count LOC: `find . -name "*.swift" -o -name "*.ts" | xargs wc -l` (or relevant extension)
|
|
56
|
-
- Phase/plan/task counts from ROADMAP
|
|
57
|
-
- Timeline from first phase commit to last phase commit
|
|
58
|
-
|
|
59
|
-
**Git range format:**
|
|
60
|
-
- First commit of milestone → last commit of milestone
|
|
61
|
-
- Example: `feat(01-01)` → `feat(04-01)` for phases 1-4
|
|
62
|
-
</guidelines>
|
|
63
|
-
|
|
64
|
-
<example>
|
|
65
|
-
```markdown
|
|
66
|
-
# Project Milestones: WeatherBar
|
|
67
|
-
|
|
68
|
-
## v1.1 Security & Polish (Shipped: 2025-12-10)
|
|
69
|
-
|
|
70
|
-
**Delivered:** Security hardening with Keychain integration and comprehensive error handling
|
|
71
|
-
|
|
72
|
-
**Phases completed:** 5-6 (3 plans total)
|
|
73
|
-
|
|
74
|
-
**Key accomplishments:**
|
|
75
|
-
- Migrated API key storage from plaintext to macOS Keychain
|
|
76
|
-
- Implemented comprehensive error handling for network failures
|
|
77
|
-
- Added Sentry crash reporting integration
|
|
78
|
-
- Fixed memory leak in auto-refresh timer
|
|
79
|
-
|
|
80
|
-
**Stats:**
|
|
81
|
-
- 23 files modified
|
|
82
|
-
- 650 lines of Swift added
|
|
83
|
-
- 2 phases, 3 plans, 12 tasks
|
|
84
|
-
- 8 days from v1.0 to v1.1
|
|
85
|
-
|
|
86
|
-
**Git range:** `feat(05-01)` → `feat(06-02)`
|
|
87
|
-
|
|
88
|
-
**What's next:** v2.0 SwiftUI redesign with widget support
|
|
89
|
-
|
|
90
|
-
---
|
|
91
|
-
|
|
92
|
-
## v1.0 MVP (Shipped: 2025-11-25)
|
|
93
|
-
|
|
94
|
-
**Delivered:** Menu bar weather app with current conditions and 3-day forecast
|
|
95
|
-
|
|
96
|
-
**Phases completed:** 1-4 (7 plans total)
|
|
97
|
-
|
|
98
|
-
**Key accomplishments:**
|
|
99
|
-
- Menu bar app with popover UI (AppKit)
|
|
100
|
-
- OpenWeather API integration with auto-refresh
|
|
101
|
-
- Current weather display with conditions icon
|
|
102
|
-
- 3-day forecast list with high/low temperatures
|
|
103
|
-
- Code signed and notarized for distribution
|
|
104
|
-
|
|
105
|
-
**Stats:**
|
|
106
|
-
- 47 files created
|
|
107
|
-
- 2,450 lines of Swift
|
|
108
|
-
- 4 phases, 7 plans, 28 tasks
|
|
109
|
-
- 12 days from start to ship
|
|
110
|
-
|
|
111
|
-
**Git range:** `feat(01-01)` → `feat(04-01)`
|
|
112
|
-
|
|
113
|
-
**What's next:** Security audit and hardening for v1.1
|
|
114
|
-
```
|
|
115
|
-
</example>
|
|
1
|
+
# Milestone Entry Template
|
|
2
|
+
|
|
3
|
+
Add this entry to `.planning/MILESTONES.md` when completing a milestone:
|
|
4
|
+
|
|
5
|
+
```markdown
|
|
6
|
+
## v[X.Y] [Name] (Shipped: YYYY-MM-DD)
|
|
7
|
+
|
|
8
|
+
**Delivered:** [One sentence describing what shipped]
|
|
9
|
+
|
|
10
|
+
**Phases completed:** [X-Y] ([Z] plans total)
|
|
11
|
+
|
|
12
|
+
**Key accomplishments:**
|
|
13
|
+
- [Major achievement 1]
|
|
14
|
+
- [Major achievement 2]
|
|
15
|
+
- [Major achievement 3]
|
|
16
|
+
- [Major achievement 4]
|
|
17
|
+
|
|
18
|
+
**Stats:**
|
|
19
|
+
- [X] files created/modified
|
|
20
|
+
- [Y] lines of code (primary language)
|
|
21
|
+
- [Z] phases, [N] plans, [M] tasks
|
|
22
|
+
- [D] days from start to ship (or milestone to milestone)
|
|
23
|
+
|
|
24
|
+
**Git range:** `feat(XX-XX)` → `feat(YY-YY)`
|
|
25
|
+
|
|
26
|
+
**What's next:** [Brief description of next milestone goals, or "Project complete"]
|
|
27
|
+
|
|
28
|
+
---
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
<structure>
|
|
32
|
+
If MILESTONES.md doesn't exist, create it with header:
|
|
33
|
+
|
|
34
|
+
```markdown
|
|
35
|
+
# Project Milestones: [Project Name]
|
|
36
|
+
|
|
37
|
+
[Entries in reverse chronological order - newest first]
|
|
38
|
+
```
|
|
39
|
+
</structure>
|
|
40
|
+
|
|
41
|
+
<guidelines>
|
|
42
|
+
**When to create milestones:**
|
|
43
|
+
- Initial v1.0 MVP shipped
|
|
44
|
+
- Major version releases (v2.0, v3.0)
|
|
45
|
+
- Significant feature milestones (v1.1, v1.2)
|
|
46
|
+
- Before archiving planning (capture what was shipped)
|
|
47
|
+
|
|
48
|
+
**Don't create milestones for:**
|
|
49
|
+
- Individual phase completions (normal workflow)
|
|
50
|
+
- Work in progress (wait until shipped)
|
|
51
|
+
- Minor bug fixes that don't constitute a release
|
|
52
|
+
|
|
53
|
+
**Stats to include:**
|
|
54
|
+
- Count modified files: `git diff --stat feat(XX-XX)..feat(YY-YY) | tail -1`
|
|
55
|
+
- Count LOC: `find . -name "*.swift" -o -name "*.ts" | xargs wc -l` (or relevant extension)
|
|
56
|
+
- Phase/plan/task counts from ROADMAP
|
|
57
|
+
- Timeline from first phase commit to last phase commit
|
|
58
|
+
|
|
59
|
+
**Git range format:**
|
|
60
|
+
- First commit of milestone → last commit of milestone
|
|
61
|
+
- Example: `feat(01-01)` → `feat(04-01)` for phases 1-4
|
|
62
|
+
</guidelines>
|
|
63
|
+
|
|
64
|
+
<example>
|
|
65
|
+
```markdown
|
|
66
|
+
# Project Milestones: WeatherBar
|
|
67
|
+
|
|
68
|
+
## v1.1 Security & Polish (Shipped: 2025-12-10)
|
|
69
|
+
|
|
70
|
+
**Delivered:** Security hardening with Keychain integration and comprehensive error handling
|
|
71
|
+
|
|
72
|
+
**Phases completed:** 5-6 (3 plans total)
|
|
73
|
+
|
|
74
|
+
**Key accomplishments:**
|
|
75
|
+
- Migrated API key storage from plaintext to macOS Keychain
|
|
76
|
+
- Implemented comprehensive error handling for network failures
|
|
77
|
+
- Added Sentry crash reporting integration
|
|
78
|
+
- Fixed memory leak in auto-refresh timer
|
|
79
|
+
|
|
80
|
+
**Stats:**
|
|
81
|
+
- 23 files modified
|
|
82
|
+
- 650 lines of Swift added
|
|
83
|
+
- 2 phases, 3 plans, 12 tasks
|
|
84
|
+
- 8 days from v1.0 to v1.1
|
|
85
|
+
|
|
86
|
+
**Git range:** `feat(05-01)` → `feat(06-02)`
|
|
87
|
+
|
|
88
|
+
**What's next:** v2.0 SwiftUI redesign with widget support
|
|
89
|
+
|
|
90
|
+
---
|
|
91
|
+
|
|
92
|
+
## v1.0 MVP (Shipped: 2025-11-25)
|
|
93
|
+
|
|
94
|
+
**Delivered:** Menu bar weather app with current conditions and 3-day forecast
|
|
95
|
+
|
|
96
|
+
**Phases completed:** 1-4 (7 plans total)
|
|
97
|
+
|
|
98
|
+
**Key accomplishments:**
|
|
99
|
+
- Menu bar app with popover UI (AppKit)
|
|
100
|
+
- OpenWeather API integration with auto-refresh
|
|
101
|
+
- Current weather display with conditions icon
|
|
102
|
+
- 3-day forecast list with high/low temperatures
|
|
103
|
+
- Code signed and notarized for distribution
|
|
104
|
+
|
|
105
|
+
**Stats:**
|
|
106
|
+
- 47 files created
|
|
107
|
+
- 2,450 lines of Swift
|
|
108
|
+
- 4 phases, 7 plans, 28 tasks
|
|
109
|
+
- 12 days from start to ship
|
|
110
|
+
|
|
111
|
+
**Git range:** `feat(01-01)` → `feat(04-01)`
|
|
112
|
+
|
|
113
|
+
**What's next:** Security audit and hardening for v1.1
|
|
114
|
+
```
|
|
115
|
+
</example>
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
# Release Checklist Template
|
|
2
|
+
|
|
3
|
+
Tier-parameterized checklist for `/ez:release`. Items marked `[AUTO]` can be checked programmatically. Items marked `[HUMAN]` require manual verification.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## MVP Checklist (6 items)
|
|
8
|
+
|
|
9
|
+
Use when: First public release, early access, startup MVP
|
|
10
|
+
|
|
11
|
+
```
|
|
12
|
+
Release: v{version} — MVP Tier
|
|
13
|
+
Date: {date}
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
| # | Item | Type | Result |
|
|
17
|
+
|---|------|------|--------|
|
|
18
|
+
| 1 | All @must BDD scenarios passing | AUTO | |
|
|
19
|
+
| 2 | `npm audit` — no critical vulnerabilities | AUTO | |
|
|
20
|
+
| 3 | Health endpoint returns 200 (if applicable) | AUTO | |
|
|
21
|
+
| 4 | No secrets in committed files | AUTO | |
|
|
22
|
+
| 5 | Application starts without errors (`npm start` or equivalent) | AUTO | |
|
|
23
|
+
| 6 | Rollback procedure documented | AUTO | |
|
|
24
|
+
|
|
25
|
+
**Gate:** All 6 items must pass for MVP release.
|
|
26
|
+
|
|
27
|
+
---
|
|
28
|
+
|
|
29
|
+
## Medium Checklist (18 items)
|
|
30
|
+
|
|
31
|
+
Use when: General availability, paying customers, production SLA
|
|
32
|
+
|
|
33
|
+
```
|
|
34
|
+
Release: v{version} — Medium Tier
|
|
35
|
+
Date: {date}
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
*Includes all MVP items plus:*
|
|
39
|
+
|
|
40
|
+
| # | Item | Type | Result |
|
|
41
|
+
|---|------|------|--------|
|
|
42
|
+
| 1-6 | All MVP items | AUTO | |
|
|
43
|
+
| 7 | All @should BDD scenarios passing | AUTO | |
|
|
44
|
+
| 8 | Test coverage ≥ 80% | AUTO | |
|
|
45
|
+
| 9 | Staging environment parity verified | HUMAN | |
|
|
46
|
+
| 10 | Monitoring/alerts configured (uptime, error rate) | HUMAN | |
|
|
47
|
+
| 11 | Structured logging in place (no console.log in prod) | AUTO | |
|
|
48
|
+
| 12 | Performance baseline documented | HUMAN | |
|
|
49
|
+
| 13 | Error tracking configured (Sentry, Rollbar, or equivalent) | HUMAN | |
|
|
50
|
+
| 14 | Database migrations tested on staging copy | HUMAN | |
|
|
51
|
+
| 15 | API documentation current (README or OpenAPI) | HUMAN | |
|
|
52
|
+
| 16 | Environment variables documented (.env.example up to date) | AUTO | |
|
|
53
|
+
| 17 | Graceful shutdown handled (SIGTERM, connection draining) | AUTO | |
|
|
54
|
+
| 18 | Rate limiting on public API endpoints | AUTO | |
|
|
55
|
+
|
|
56
|
+
**Gate:** Items 1-12 must pass. Items 13-18 advisory for Medium.
|
|
57
|
+
|
|
58
|
+
---
|
|
59
|
+
|
|
60
|
+
## Enterprise Checklist (30 items)
|
|
61
|
+
|
|
62
|
+
Use when: Enterprise customers, regulated industries, compliance requirements
|
|
63
|
+
|
|
64
|
+
```
|
|
65
|
+
Release: v{version} — Enterprise Tier
|
|
66
|
+
Date: {date}
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
*Includes all Medium items plus:*
|
|
70
|
+
|
|
71
|
+
| # | Item | Type | Result |
|
|
72
|
+
|---|------|------|--------|
|
|
73
|
+
| 1-18 | All Medium items | MIXED | |
|
|
74
|
+
| 19 | All @could BDD scenarios passing | AUTO | |
|
|
75
|
+
| 20 | Test coverage ≥ 95% | AUTO | |
|
|
76
|
+
| 21 | Security audit completed (internal or third-party) | HUMAN | |
|
|
77
|
+
| 22 | Compliance documentation updated (SOC2/GDPR controls) | HUMAN | |
|
|
78
|
+
| 23 | Load test results documented (target: 2x expected peak) | HUMAN | |
|
|
79
|
+
| 24 | Disaster recovery tested (backup restore procedure) | HUMAN | |
|
|
80
|
+
| 25 | Data retention policy configured | HUMAN | |
|
|
81
|
+
| 26 | Audit logging enabled (who did what, when) | AUTO | |
|
|
82
|
+
| 27 | Penetration test completed or scheduled | HUMAN | |
|
|
83
|
+
| 28 | SOC2/GDPR controls validated | HUMAN | |
|
|
84
|
+
| 29 | Change management ticket filed | HUMAN | |
|
|
85
|
+
| 30 | Incident runbook up to date | HUMAN | |
|
|
86
|
+
|
|
87
|
+
**Gate:** All items 1-26 must pass. Items 27-30 must be scheduled/documented.
|
|
88
|
+
|
|
89
|
+
---
|
|
90
|
+
|
|
91
|
+
## Security Gates (All Tiers)
|
|
92
|
+
|
|
93
|
+
These run before ANY release regardless of tier:
|
|
94
|
+
|
|
95
|
+
```bash
|
|
96
|
+
# Gate 1: No secrets
|
|
97
|
+
git grep -i -E "(api[_-]?key|password|secret)['\"]?\s*[=:]\s*['\"]?[a-zA-Z0-9+/]{20,}" HEAD
|
|
98
|
+
|
|
99
|
+
# Gate 2: npm audit
|
|
100
|
+
npm audit --audit-level=critical
|
|
101
|
+
|
|
102
|
+
# Gate 3: Production TODO/FIXME
|
|
103
|
+
grep -rn "TODO\|FIXME\|HACK" src/ --include="*.ts" --include="*.js" | grep -v test
|
|
104
|
+
|
|
105
|
+
# Gate 4: .env protected
|
|
106
|
+
grep -q "^\.env" .gitignore
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
**Any gate failure = BLOCKED regardless of tier.**
|
|
110
|
+
|
|
111
|
+
---
|
|
112
|
+
|
|
113
|
+
## Production Readiness Score
|
|
114
|
+
|
|
115
|
+
```
|
|
116
|
+
Score = 100 - (blocking_failures × 10) - (advisory_failures × 2)
|
|
117
|
+
|
|
118
|
+
READY: 90-100
|
|
119
|
+
CONDITIONAL: 70-89
|
|
120
|
+
NOT READY: <70
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
---
|
|
124
|
+
|
|
125
|
+
## Rollback Criteria
|
|
126
|
+
|
|
127
|
+
**Roll back immediately if (within 1 hour of release):**
|
|
128
|
+
|
|
129
|
+
| Tier | Trigger | Response Time |
|
|
130
|
+
|------|---------|---------------|
|
|
131
|
+
| MVP | App won't start OR error rate >20% | 30 minutes |
|
|
132
|
+
| Medium | Error rate >5% above baseline OR P95 >500ms increase | 15 minutes |
|
|
133
|
+
| Enterprise | Any SLA breach OR compliance violation | 5 minutes |
|