@specpow/framework 0.5.9 โ 0.5.11
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/CHANGELOG.md +623 -623
- package/LICENSE +21 -21
- package/bin/specpow.js +9 -9
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +4 -2
- package/dist/cli/index.js.map +1 -1
- package/dist/commands/apply.d.ts.map +1 -1
- package/dist/commands/apply.js +12 -11
- package/dist/commands/apply.js.map +1 -1
- package/dist/commands/archive.d.ts.map +1 -1
- package/dist/commands/archive.js +30 -3
- package/dist/commands/archive.js.map +1 -1
- package/dist/commands/config.d.ts.map +1 -1
- package/dist/commands/config.js +5 -1
- package/dist/commands/config.js.map +1 -1
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +29 -10
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/execute.d.ts.map +1 -1
- package/dist/commands/execute.js +5 -2
- package/dist/commands/execute.js.map +1 -1
- package/dist/commands/explore.d.ts.map +1 -1
- package/dist/commands/explore.js +8 -10
- package/dist/commands/explore.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +6 -3
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/propose.d.ts.map +1 -1
- package/dist/commands/propose.js +4 -3
- package/dist/commands/propose.js.map +1 -1
- package/dist/commands/schema.d.ts.map +1 -1
- package/dist/commands/schema.js +5 -2
- package/dist/commands/schema.js.map +1 -1
- package/dist/commands/status.d.ts.map +1 -1
- package/dist/commands/status.js +17 -11
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/store.d.ts.map +1 -1
- package/dist/commands/store.js +8 -6
- package/dist/commands/store.js.map +1 -1
- package/dist/commands/update.d.ts.map +1 -1
- package/dist/commands/update.js +3 -1
- package/dist/commands/update.js.map +1 -1
- package/dist/commands/validate-specs.d.ts.map +1 -1
- package/dist/commands/validate-specs.js +8 -5
- package/dist/commands/validate-specs.js.map +1 -1
- package/dist/commands/verify.d.ts.map +1 -1
- package/dist/commands/verify.js +17 -19
- package/dist/commands/verify.js.map +1 -1
- package/dist/commands/workflow/index.d.ts.map +1 -1
- package/dist/commands/workflow/index.js +18 -10
- package/dist/commands/workflow/index.js.map +1 -1
- package/dist/core/archive/engine.d.ts.map +1 -1
- package/dist/core/archive/engine.js +10 -6
- package/dist/core/archive/engine.js.map +1 -1
- package/dist/core/artifact-graph/resolver.d.ts.map +1 -1
- package/dist/core/artifact-graph/resolver.js +5 -2
- package/dist/core/artifact-graph/resolver.js.map +1 -1
- package/dist/core/config/config-schema.d.ts +104 -0
- package/dist/core/config/config-schema.d.ts.map +1 -1
- package/dist/core/config/config-schema.js +15 -1
- package/dist/core/config/config-schema.js.map +1 -1
- package/dist/core/hooks/session-start-hook.d.ts.map +1 -1
- package/dist/core/hooks/session-start-hook.js +76 -45
- package/dist/core/hooks/session-start-hook.js.map +1 -1
- package/dist/core/hooks/workflow-state-hook.d.ts.map +1 -1
- package/dist/core/hooks/workflow-state-hook.js +3 -1
- package/dist/core/hooks/workflow-state-hook.js.map +1 -1
- package/dist/core/init/codegraph-step.d.ts +36 -0
- package/dist/core/init/codegraph-step.d.ts.map +1 -0
- package/dist/core/init/codegraph-step.js +109 -0
- package/dist/core/init/codegraph-step.js.map +1 -0
- package/dist/core/init/engine.d.ts +2 -2
- package/dist/core/init/engine.d.ts.map +1 -1
- package/dist/core/init/engine.js +28 -14
- package/dist/core/init/engine.js.map +1 -1
- package/dist/core/memory/adapters/sqlite-adapter.js +55 -55
- package/dist/core/migration/index.d.ts.map +1 -1
- package/dist/core/migration/index.js +128 -4
- package/dist/core/migration/index.js.map +1 -1
- package/dist/core/store/index.d.ts +4 -3
- package/dist/core/store/index.d.ts.map +1 -1
- package/dist/core/store/index.js +7 -7
- package/dist/core/store/index.js.map +1 -1
- package/dist/core/task-parser.d.ts +17 -0
- package/dist/core/task-parser.d.ts.map +1 -0
- package/dist/core/task-parser.js +59 -0
- package/dist/core/task-parser.js.map +1 -0
- package/dist/core/templates/index.d.ts +1 -1
- package/dist/core/templates/index.d.ts.map +1 -1
- package/dist/core/templates/index.js +11 -6
- package/dist/core/templates/index.js.map +1 -1
- package/dist/core/workflow-state.d.ts +1 -1
- package/dist/core/workflow-state.d.ts.map +1 -1
- package/dist/core/workflow-state.js +10 -5
- package/dist/core/workflow-state.js.map +1 -1
- package/dist/templates/claude-commands/specpow-apply.md +23 -23
- package/dist/templates/claude-commands/specpow-archive.md +22 -22
- package/dist/templates/claude-commands/specpow-propose.md +27 -27
- package/dist/templates/claude-commands/specpow-status.md +22 -22
- package/dist/templates/claude-commands/specpow-validate-specs.md +28 -28
- package/dist/templates/claude-commands/specpow-verify.md +21 -21
- package/dist/templates/claude-commands/specpow.md +34 -34
- package/package.json +121 -122
- package/.specpow/agents/controller/sdd-controller.md +0 -55
- package/.specpow/agents/execution/java-codegen-agent.md +0 -39
- package/.specpow/agents/execution/ui-codegen-agent.md +0 -32
- package/.specpow/agents/ops/deploy-agent.md +0 -181
- package/.specpow/agents/planning/db-designer-agent.md +0 -30
- package/.specpow/agents/planning/prd-agent.md +0 -31
- package/.specpow/agents/quality/review-agent.md +0 -36
- package/.specpow/agents/quality/test-agent.md +0 -33
- package/.specpow/hooks/hooks.json +0 -30
- package/.specpow/hooks/run-hook.cmd +0 -19
- package/.specpow/hooks/session-start +0 -62
- package/.specpow/hooks/workflow-state +0 -150
- package/.specpow/schemas/bug-fix/schema.yaml +0 -64
- package/.specpow/schemas/bug-fix/templates/analysis.md +0 -43
- package/.specpow/schemas/bug-fix/templates/fix-plan.md +0 -19
- package/.specpow/schemas/bug-fix/templates/proposal.md +0 -30
- package/.specpow/schemas/crud-module/schema.yaml +0 -65
- package/.specpow/schemas/crud-module/templates/design.md +0 -36
- package/.specpow/schemas/crud-module/templates/proposal.md +0 -30
- package/.specpow/schemas/crud-module/templates/spec.md +0 -38
- package/.specpow/schemas/crud-module/templates/tasks.md +0 -57
- package/.specpow/schemas/spec-driven/schema.yaml +0 -87
- package/.specpow/schemas/spec-driven/templates/design.md +0 -54
- package/.specpow/schemas/spec-driven/templates/proposal.md +0 -31
- package/.specpow/schemas/spec-driven/templates/spec.md +0 -42
- package/.specpow/schemas/spec-driven/templates/tasks.md +0 -98
- package/.specpow/skills/business-code-review/SKILL.md +0 -78
- package/.specpow/skills/business-db-design/SKILL.md +0 -74
- package/.specpow/skills/business-deploy-check/SKILL.md +0 -72
- package/.specpow/skills/business-doc-sync/SKILL.md +0 -72
- package/.specpow/skills/business-java-codegen/SKILL.md +0 -97
- package/.specpow/skills/business-menu-register/SKILL.md +0 -63
- package/.specpow/skills/business-prd-writer/SKILL.md +0 -80
- package/.specpow/skills/business-test-gen/SKILL.md +0 -82
- package/.specpow/skills/business-ui-codegen/SKILL.md +0 -104
- package/.specpow/skills/cli-router/SKILL.md +0 -108
- package/.specpow/skills/execution-finish-branch/SKILL.md +0 -58
- package/.specpow/skills/execution-git-worktrees/SKILL.md +0 -48
- package/.specpow/skills/execution-parallel-agents/SKILL.md +0 -46
- package/.specpow/skills/execution-receiving-review/SKILL.md +0 -47
- package/.specpow/skills/execution-requesting-review/SKILL.md +0 -51
- package/.specpow/skills/execution-sdd-orchestrator/SKILL.md +0 -366
- package/.specpow/skills/execution-subagent-dispatch/SKILL.md +0 -295
- package/.specpow/skills/execution-subagent-driven-dev/SKILL.md +0 -143
- package/.specpow/skills/execution-systematic-debugging/SKILL.md +0 -95
- package/.specpow/skills/execution-tdd/SKILL.md +0 -74
- package/.specpow/skills/execution-verification-before-completion/SKILL.md +0 -75
- package/.specpow/skills/meta-create-skill/SKILL.md +0 -374
- package/.specpow/skills/meta-using-skills/SKILL.md +0 -97
- package/.specpow/skills/meta-writing-skills/SKILL.md +0 -66
- package/.specpow/skills/planning-apply-change/SKILL.md +0 -194
- package/.specpow/skills/planning-archive-change/SKILL.md +0 -43
- package/.specpow/skills/planning-explore/SKILL.md +0 -103
- package/.specpow/skills/planning-onboard/SKILL.md +0 -61
- package/.specpow/skills/planning-propose/SKILL.md +0 -140
- package/.specpow/skills/planning-update-change/SKILL.md +0 -45
- package/.specpow/skills/planning-verify-change/SKILL.md +0 -58
- package/.specpow/skills/planning-write-design/SKILL.md +0 -59
- package/.specpow/skills/planning-write-plans/SKILL.md +0 -55
- package/.specpow/skills/planning-write-specs/SKILL.md +0 -91
- package/.specpow/skills/using-specpow/SKILL.md +0 -232
package/CHANGELOG.md
CHANGED
|
@@ -1,623 +1,623 @@
|
|
|
1
|
-
# Changelog
|
|
2
|
-
|
|
3
|
-
All notable changes to this project will be documented in this file.
|
|
4
|
-
|
|
5
|
-
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
|
-
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
|
-
|
|
8
|
-
## [0.5.1] - 2026-08-23
|
|
9
|
-
|
|
10
|
-
### โจ Delta Spec ๅ็งฐไธ่ดๆงไผๅ
|
|
11
|
-
|
|
12
|
-
- **ไธป่ง่ๅ็งฐๆธ
ๅๆณจๅ
ฅ**๏ผ`src/core/templates/index.ts`๏ผ
|
|
13
|
-
- ้ฎ้ข: ไธป่ง่่ถ
่ฟ 2000 ๅญ็ฌฆๆถๆชๆญ๏ผAI ็ไธๅฐๆชๆญ็นๅ็้ๆฑๅ็งฐ
|
|
14
|
-
- ไฟฎๅค: ๆชๆญๅๆๅๆๆ้ๆฑๅ็งฐๆธ
ๅ๏ผๅง็ปๆณจๅ
ฅๅฐ AI prompt
|
|
15
|
-
|
|
16
|
-
- **่ทฏ็ฑๅคฑ่ดฅ่ญฆๅ**๏ผ`src/core/archive/engine.ts`๏ผ
|
|
17
|
-
- ้ฎ้ข: MODIFIED/REMOVED ๅ็งฐไธๅน้
ๆถๆไฝ่ขซ้้ปไธขๅผ
|
|
18
|
-
- ไฟฎๅค: `routeDeltaOperations()` ๆถ้ๆช่ทฏ็ฑๆไฝ๏ผ็ๆ `ๅ็งฐๆชๅน้
` ่ญฆๅ
|
|
19
|
-
|
|
20
|
-
- **ๆฐๅข `validate-specs` ๅฝไปค**๏ผ`src/commands/validate-specs.ts`๏ผ
|
|
21
|
-
- ๆๅ้ช่ฏ delta spec ไธญ MODIFIED/REMOVED/RENAMED ๅ็งฐไธไธป่ง่ๅน้
|
|
22
|
-
- ๅบไบ็ผ่พ่ท็ฆปๆไพ่ฟไผผๅ็งฐๅปบ่ฎฎ๏ผ้ๅผ โค 3๏ผ
|
|
23
|
-
- ๆฏๆ `--change` ๅ `--json` ้้กน
|
|
24
|
-
|
|
25
|
-
- **apply ้ข้ช่ฏ**๏ผ`src/commands/apply.ts`๏ผ
|
|
26
|
-
- ๆง่กๅ่ชๅจๆฃๆต delta spec ๅ็งฐไธๅน้
ๅนถ่ญฆๅ
|
|
27
|
-
|
|
28
|
-
- **SKILL.md ๅ็งฐๆ ก้ช่งๅ**๏ผ`.specpow/skills/planning-write-specs/SKILL.md`๏ผ
|
|
29
|
-
- ๆฐๅข"ๅ็งฐๆ ก้ช๏ผ้ๅพ๏ผ"ๆฎต่ฝ๏ผๆๅฏผ AI ็ฒพ็กฎๅน้
้ๆฑๅ็งฐ
|
|
30
|
-
|
|
31
|
-
- **RENAMED ๆจกๆฟๆ ผๅผไฟฎๆญฃ**๏ผ`.specpow/schemas/spec-driven/templates/spec.md`๏ผ
|
|
32
|
-
- ไป่กจๆ ผๆ ผๅผๆนไธบ็ฎญๅคดๆ ผๅผ: `### <ๆงๅ็งฐ> โ <ๆฐๅ็งฐ>`
|
|
33
|
-
|
|
34
|
-
## [0.5.0] - 2026-08-20
|
|
35
|
-
|
|
36
|
-
### ๐ ๅฝๆกฃๅผๆๅ็งฐๅน้
่ทฏ็ฑ๏ผBreaking Fix๏ผ
|
|
37
|
-
|
|
38
|
-
- **findSpecMutations ไป่ทฏๅพๅน้
ๆนไธบๅ็งฐๅน้
**
|
|
39
|
-
- File: `src/core/archive/engine.ts`
|
|
40
|
-
- ้ฎ้ข: propose ็ๆ็ delta ๆไปถ่ทฏๅพ (`specs/<capability>/spec.md`) ๆฐธ่ฟๆ ๆณๅน้
ไธป่ง่่ทฏๅพ
|
|
41
|
-
- ไฟฎๅค: ๆฐๅข `buildSpecNameIndex()` ๆซๆไธป่ง่ๆๅ้ๆฑๅ็งฐ็ดขๅผ
|
|
42
|
-
- ไฟฎๅค: ๆฐๅข `routeDeltaOperations()` ๆ้ๆฑๅ็งฐ่ทฏ็ฑๆไฝๅฐ็ฎๆ ๆไปถ
|
|
43
|
-
- ไฟฎๅค: ๆฐๅข `buildSubDeltaContent()` ไธบๆฏไธช็ฎๆ ๆไปถๆๅปบๅญ delta
|
|
44
|
-
- ไฟฎๅค: RENAMED ๅค็ๅ่ชๅจๅฐๆฐๅ็งฐๅ ๅ
ฅ็ดขๅผ๏ผๆฏๆๅ็ปญ MODIFIED/REMOVED ๆๆฐๅ็งฐๆฅๆพ
|
|
45
|
-
|
|
46
|
-
- **็ฒพ็กฎ้ไผๅคๆญ**
|
|
47
|
-
- File: `src/core/archive/engine.ts`
|
|
48
|
-
- ้ฎ้ข: ๆง้ป่พ "delta ๆไปถๅชๅซ REMOVED โ ๆดไธชๆไปถ retire" ไผ้่ฏฏ้ไผๆช่ขซ็งป้ค็้ๆฑ
|
|
49
|
-
- ไฟฎๅค: ๅขๅ `fileReqCount` ็ดขๅผ๏ผๅชๆๅฝ REMOVED ่ฆ็็ฎๆ ๆไปถๅ
จ้จ้ๆฑๆถๆ retire
|
|
50
|
-
- ้จๅ้ไผ: ไป
ๆ ่ฎฐ่ขซ็งป้ค็้ๆฑไธบ `[RETIRED]`๏ผๅ
ถไป้ๆฑไฟ็
|
|
51
|
-
|
|
52
|
-
## [0.4.9] - 2026-08-20
|
|
53
|
-
|
|
54
|
-
### ๐ ๅฝๆกฃๅผๆ Delta ๆฃๆตๆญฃๅไฟฎๅค
|
|
55
|
-
|
|
56
|
-
- **BUG-5 findSpecMutations ๆฃๆตๆญฃๅๅผบๅถๅๅท**
|
|
57
|
-
- File: `src/core/archive/engine.ts`
|
|
58
|
-
- Fix: `/##\s+REMOVED:/i` โ `/##\s+REMOVED[:\s]/i`๏ผๅๅทๅฏ้๏ผ๏ผไธ delta-parser ไธ่ด
|
|
59
|
-
- Fix: ๆฐๅข `hasRenamed` ๆฃๆต๏ผๆฏๆ็บฏ RENAMED ๆไฝ่งฆๅๅๅนถ
|
|
60
|
-
|
|
61
|
-
## [0.4.8] - 2026-08-20
|
|
62
|
-
|
|
63
|
-
### ๐ Delta Spec ็ณป็ปไฟฎๅค โ 4 ไธช Bug + 1 ไธชๆถๆไฟฎๅค
|
|
64
|
-
|
|
65
|
-
- **GAP-6 propose ้ถๆฎต AI ๆ ๆณ็ๅฐๅทฒๆไธป่ง่**
|
|
66
|
-
- Files: `src/commands/propose.ts`, `src/core/templates/index.ts`
|
|
67
|
-
- Fix: propose ๆซๆ `.specpow/openspec/specs/` ๆณจๅ
ฅๅฐ specs ๅทฅไปถไธไธๆ
|
|
68
|
-
|
|
69
|
-
- **BUG-1 Scenario ๆชๆญ Requirement ๅ**
|
|
70
|
-
- Files: `src/core/archive/delta-parser.ts`, `src/core/archive/delta-merger.ts`
|
|
71
|
-
- Fix: ๆทปๅ `(?!Scenario:\s*)` ่ดๅๅ็ป๏ผ้ฒๆญข `### Scenario:` ็ปๆญข `## Requirement:` ๅๆๅ
|
|
72
|
-
|
|
73
|
-
- **BUG-2 --force ๆ ๆณ่ฆ็ๅทฒๅญๅจ็ ADDED ๅ**
|
|
74
|
-
- File: `src/core/archive/delta-merger.ts`
|
|
75
|
-
- Fix: ไฟฎๆญฃ ADDED ้ถๆฎต้ป่พ๏ผidenticalโ่ทณ่ฟ / forceโๆฟๆข / ๅฆๅโๅฒ็ช
|
|
76
|
-
|
|
77
|
-
- **BUG-2b ๅน็ญๆงๆฏ่พๅคฑๆ๏ผbody vs fullBlock๏ผ**
|
|
78
|
-
- File: `src/core/archive/delta-merger.ts`
|
|
79
|
-
- Fix: ๆฐๅข `extractBlockBody()` ่พ
ๅฉๅฝๆฐ๏ผMODIFIED ๅ ADDED ้ถๆฎต็จ body ๆฏ่พ
|
|
80
|
-
|
|
81
|
-
- **BUG-3 [RETIRED] ้ๅคๅ ๅ + ๆ ๆณๆฅๆพๅทฒ้ไผๅ**
|
|
82
|
-
- Files: `src/core/archive/delta-parser.ts`, `src/core/archive/delta-merger.ts`
|
|
83
|
-
- Fix: ๆๆ header ๅน้
ๆญฃๅๆฏๆ `[RETIRED]` ๅ็ผ๏ผๅ
ผๅฎนๆฐๆงๆ ผๅผ๏ผ๏ผREMOVED ้ถๆฎตๆทปๅ ๅน็ญๆฃๆฅ
|
|
84
|
-
|
|
85
|
-
- **ISSUE-4 formatBlock ๅบๅฎ ## ็บงๅซ**
|
|
86
|
-
- File: `src/core/archive/delta-merger.ts`
|
|
87
|
-
- Fix: formatBlock ๆฅๅ headerLevel ๅๆฐ๏ผMODIFIED ไป็ฐๆๅๆฃๆต็บงๅซ๏ผADDED ้ป่ฎค ##
|
|
88
|
-
|
|
89
|
-
## [0.3.1] - 2026-08-18
|
|
90
|
-
|
|
91
|
-
### ๐ Comprehensive Bug Fix Release โ 21 Issues Resolved
|
|
92
|
-
|
|
93
|
-
This patch release addresses 21 verified issues discovered during a comprehensive review of functional runnability and usability. Every fix was verified against actual code before implementation. Build passes, all 849 tests pass.
|
|
94
|
-
|
|
95
|
-
### ๐ด IMPORTANT Fixes (4 items)
|
|
96
|
-
|
|
97
|
-
- **#1 `init --force` ้้กน็ผบๅคฑ**
|
|
98
|
-
- File: `src/cli/index.ts`
|
|
99
|
-
- Fix: ๆทปๅ `--force` Commander.js ้้กนๅฎไน๏ผ้
ๅ `TemplateHashManager.reset()` ๅฎ็ฐๅผบๅถ่ฆ็
|
|
100
|
-
|
|
101
|
-
- **#2 `review --diff-file` ๆชๅฎ้
่งฃๆ diff ๆไปถ**
|
|
102
|
-
- File: `src/commands/review.ts`
|
|
103
|
-
- Fix: ๆทปๅ diff ๆไปถ่ฏปๅไธๆญฃๅ่งฃๆ๏ผ`+++ b/` ๅ็ผๅน้
๏ผ๏ผๆๅๅๆดๆไปถ่ทฏๅพๅ่กจ
|
|
104
|
-
|
|
105
|
-
- **#3 `review --model` ้้กนๆ ๆไฝๆ ่ญฆๅ**
|
|
106
|
-
- File: `src/commands/review.ts`
|
|
107
|
-
- Fix: ๅฝไผ ๅ
ฅ `--model` ๆถ่พๅบ้ป่ฒ่ญฆๅ๏ผๅฎกๆฅไธบ้ๆๅๆ๏ผไธๆถๅ AI ๆจกๅ่ฐ็จ
|
|
108
|
-
|
|
109
|
-
- **#4 Hook ๅคฑ่ดฅ่ขซ้้ปๅๆ**
|
|
110
|
-
- File: `src/core/hooks/hook-registry.ts`
|
|
111
|
-
- Fix: `mergeResults` ไธญๆ่ทๅคฑ่ดฅ hook ็ error ไฟกๆฏไฝไธบ warning ่พๅบ
|
|
112
|
-
|
|
113
|
-
### ๐ก MODERATE Fixes (8 items)
|
|
114
|
-
|
|
115
|
-
- **#5 `formatForPlatform` ๅฟฝ็ฅ platform ๅๆฐ**
|
|
116
|
-
- File: `src/core/hooks/hook-registry.ts`
|
|
117
|
-
- Fix: ๆ นๆฎ platform ๅๆฐ่ฟๅๅฏนๅบๆ ผๅผ๏ผclaude/cursor/generic๏ผ๏ผ่้ๅง็ป่ฟๅ claude ๆ ผๅผ
|
|
118
|
-
- Breaking: `PlatformOutput` ๆฅๅฃๅญๆฎตๆนไธบ optional๏ผๆฏๆๅนณๅฐ็นๅฎ่ฟๅ
|
|
119
|
-
|
|
120
|
-
- **#6 `migrate` ๅคฑ่ดฅๆถ้้ป้ๅบ็ 0**
|
|
121
|
-
- File: `src/cli/index.ts`
|
|
122
|
-
- Fix: ่ฟ็งปๅคฑ่ดฅๆถ่พๅบๅคฑ่ดฅๆญฅ้ชค่ฏฆๆ
ๅนถ่ฐ็จ `process.exit(1)`
|
|
123
|
-
|
|
124
|
-
- **#7 `debug` ๆ็คบไธๅญๅจ็ `--report` ้้กน**
|
|
125
|
-
- File: `src/commands/debug.ts`
|
|
126
|
-
- Fix: ็งป้ค `console.log` ไธญๅ
ณไบ `debug --report` ็่ฏฏๅฏผๆงๆ็คบ
|
|
127
|
-
|
|
128
|
-
- **#8 `channel send` ๆ ๆถๆฏ็ฑปๅ้ช่ฏ**
|
|
129
|
-
- File: `src/commands/channel.ts`
|
|
130
|
-
- Fix: ๆทปๅ MessageType ็ฝๅๅๆ ก้ช๏ผๆ ๆ็ฑปๅ่พๅบๆๆๅผๅ่กจๅนถ้ๅบ
|
|
131
|
-
|
|
132
|
-
- **#9 `status` ไปปๅกๆญฃๅไป
ๅน้
ๅฐๅ `[x]`**
|
|
133
|
-
- File: `src/commands/status.ts`
|
|
134
|
-
- Fix: ๆญฃๅๆทปๅ `gi` ๆ ๅฟ๏ผๆฏๆ `[X]` ๅคงๅๅฎๆๆ ่ฎฐ
|
|
135
|
-
|
|
136
|
-
- **#10 `verify` ๆ ๅๆดๆถ็ดๆฅๆฅ้้ๅบ**
|
|
137
|
-
- File: `src/commands/verify.ts`
|
|
138
|
-
- Fix: ่ชๅจๆฃๆตๅฏไธๆดป่ทๅๆด๏ผๅๅๆดๅ
`--change`๏ผ๏ผๅคๅๆดๆถๅๅบ้้กน
|
|
139
|
-
|
|
140
|
-
- **#11/#12 `init` ๅ
็ฝฎ Schema/Skill ็ฎๅฝไธๅญๅจๆถ้้ป่ฟๅ**
|
|
141
|
-
- File: `src/commands/init.ts`
|
|
142
|
-
- Fix: ๆทปๅ `console.warn` ่ญฆๅ่พๅบ๏ผๆ็คบๅ
ๅฎ่ฃ
ๅฏ่ฝไธๅฎๆด
|
|
143
|
-
|
|
144
|
-
### ๐ข MINOR Fixes (9 items)
|
|
145
|
-
|
|
146
|
-
- **#13/#14 `channel` ๆ็คบ้่ฏฏๅญๅฝไปคๅ**
|
|
147
|
-
- File: `src/commands/channel.ts`
|
|
148
|
-
- Fix: `workers add` โ `add-worker`๏ผ`tasks create` โ `create-task`
|
|
149
|
-
|
|
150
|
-
- **#15 session-start ๆ่ฝๅ่กจไป
22/34**
|
|
151
|
-
- File: `src/core/hooks/session-start-hook.ts`
|
|
152
|
-
- Fix: ่กฅๅ
จๅ
จ้จ 34 ไธชๆ่ฝ๏ผๆฐๅข Meta ๅ็ฑป๏ผusing-specpowใmeta-using-skills ็ญ๏ผ
|
|
153
|
-
|
|
154
|
-
- **#16 `apply` host-driven ๅๆไปถๅคฑ่ดฅ่ฟๅ็ 0**
|
|
155
|
-
- File: `src/commands/apply.ts`
|
|
156
|
-
- Fix: `return` โ `process.exit(1)`๏ผ็กฎไฟ task-manifest.json ๅๅ
ฅๅคฑ่ดฅๆถ่ฟ็จๅผๅธธ้ๅบ
|
|
157
|
-
|
|
158
|
-
- **#17 `parseProposal` ็ผบๅฐ risks ่งฃๆ**
|
|
159
|
-
- File: `src/core/parsers/index.ts`
|
|
160
|
-
- Fix: ๆทปๅ Markdown ่กจๆ ผ่งฃๆ้ป่พ๏ผๆฏๆ `| ้ฃ้ฉ | ๅฝฑๅ | ๆฆ็ | ๅบๅฏน |` ๆ ผๅผ
|
|
161
|
-
|
|
162
|
-
- **#18 `runTests()` ๅๆญฅ้ปๅกไบไปถๅพช็ฏ**
|
|
163
|
-
- File: `src/core/sdd-engine/controller.ts`
|
|
164
|
-
- Fix: `execFileSync` โ ๅผๆญฅ `execFile` + Promise๏ผ้ฟๅ
ๆๅค 14 ๅ้็ไบไปถๅพช็ฏ้ปๅก
|
|
165
|
-
|
|
166
|
-
- **#19 `detectActiveChanges` ้ๅค่ฐ็จ**
|
|
167
|
-
- File: `src/core/hooks/session-start-hook.ts`
|
|
168
|
-
- Fix: `detectWorkflowStage` ๆฅๆถๅทฒ่ฎก็ฎ็ `activeChanges` ๅๆฐ๏ผ้ฟๅ
้ๅคๆไปถ็ณป็ปๆซๆ
|
|
169
|
-
|
|
170
|
-
- **#20 PostToolCall ๆฏๆฌกๅทฅๅ
ท่ฐ็จๆณจๅ
ฅๆ ็จไธไธๆ**
|
|
171
|
-
- File: `src/core/hooks/post-tool-call-hook.ts`
|
|
172
|
-
- Fix: ไป
ๅจๆ้ถๆฎต่ฝฌๆขไฟกๅทๆถๆณจๅ
ฅ `additionalContext`๏ผๆฎ้ๅทฅๅ
ท่ฐ็จไธๅๆถ่ token
|
|
173
|
-
|
|
174
|
-
- **#21 `initialize()` ๅๆญฅๅฝๆฐ่ฏฏ็จ `await`**
|
|
175
|
-
- File: `src/commands/init.ts`
|
|
176
|
-
- Fix: ็งป้ค่ฏฏๅฏผๆง `await`๏ผ`engine.initialize()` ไธบๅๆญฅๆนๆณ
|
|
177
|
-
|
|
178
|
-
### ๐งช Testing
|
|
179
|
-
|
|
180
|
-
- 849 tests pass across 37 test files
|
|
181
|
-
- 3 tests updated to match new PostToolCallHook behavior (no context injection without transition signal)
|
|
182
|
-
- Added `readFileSync` import to `test/hook-system.test.ts`
|
|
183
|
-
|
|
184
|
-
### ๐ Documentation
|
|
185
|
-
|
|
186
|
-
- CHANGELOG.md: ๆฐๅข v0.3.1 ็ๆฌ่ฎฐๅฝ
|
|
187
|
-
- README.md: ็ๆฌๅๅฒๆฐๅข v0.3.1 ไฟฎๅคๆ่ฆ
|
|
188
|
-
- docs/guide.md: CLI ๅฝไปคๅ่ๆดๆฐ๏ผinit --forceใreviewใverifyใchannelใmigrate๏ผ
|
|
189
|
-
|
|
190
|
-
---
|
|
191
|
-
|
|
192
|
-
## [0.3.0] - 2026-08-15
|
|
193
|
-
|
|
194
|
-
### ๐ Superpowers Pattern Transformation โ Host-Driven Mode
|
|
195
|
-
|
|
196
|
-
This release introduces **dual-mode execution**: the existing TypeScript SDD Engine (Mode A) now coexists with a new **Host-Driven mode** (Mode B), where the host AI agent orchestrates the SDD workflow using its native subagent tools.
|
|
197
|
-
|
|
198
|
-
### โจ New Features
|
|
199
|
-
|
|
200
|
-
- **Host-Driven Mode (`--host-driven`)**: New execution mode for `specpow apply` that generates a `task-manifest.json` and delegates orchestration to the host AI agent via SKILL.md instructions. No TypeScript AI-caller subprocess needed.
|
|
201
|
-
- **Bootstrap Meta-Skill (`using-specpow`)**: New skill injected via `SessionStart` hook that teaches the host agent the full SDD workflow, trigger discipline, and iron rules.
|
|
202
|
-
- **SDD Orchestrator Skill (`execution-sdd-orchestrator`)**: Skill file encoding the implementโreviewโfix loop logic, replacing `controller.ts` orchestration in Host-Driven mode. Includes parallel execution guidance.
|
|
203
|
-
- **Subagent Dispatch Skill (`execution-subagent-dispatch`)**: Skill file encoding implementer/reviewer/re-reviewer prompt templates, replacing `ai-caller.ts` prompt construction in Host-Driven mode.
|
|
204
|
-
- **`init` Copies Builtin Skills**: `specpow init` now uses `copyBuiltinSkillsWithHash` to incrementally copy all 34 builtin skill files to target projects, with template-hash protection for user modifications.
|
|
205
|
-
|
|
206
|
-
### ๐๏ธ Architecture Changes
|
|
207
|
-
|
|
208
|
-
- **Dual-Mode Execution Layer**: Architecture diagram updated to show Mode A (SDD Engine) and Mode B (Host-Driven) side-by-side. Both modes share Ledger, Git ops, and review-loop infrastructure.
|
|
209
|
-
- **Skills Count**: 31 โ 34 (added `using-specpow`, `execution-sdd-orchestrator`, `execution-subagent-dispatch`)
|
|
210
|
-
|
|
211
|
-
### ๐ฆ Deprecation Markers
|
|
212
|
-
|
|
213
|
-
- `src/core/sdd-engine/controller.ts` โ marked `@deprecated`, only used by SDD Engine mode
|
|
214
|
-
- `src/core/sdd-engine/ai-caller.ts` โ marked `@deprecated`, only used by SDD Engine mode
|
|
215
|
-
- `src/core/sdd-engine/model-selector.ts` โ marked `@deprecated`, model selection guidance now in SKILL.md
|
|
216
|
-
|
|
217
|
-
### ๐ง Bug Fixes
|
|
218
|
-
|
|
219
|
-
- **CLI `--host-driven` flag registration**: Flag was implemented in `apply.ts` but not registered in Commander.js โ fixed.
|
|
220
|
-
- **`copyBuiltinSkillsWithHash` missing definition**: Function was called but never defined in `init.ts` โ implemented with same pattern as `copyBuiltinSchemasWithHash`.
|
|
221
|
-
|
|
222
|
-
### ๐ Documentation
|
|
223
|
-
|
|
224
|
-
- README.md architecture diagram updated for dual-mode execution layer
|
|
225
|
-
- README.md skills table updated from 31 to 34
|
|
226
|
-
- README.md quick-start section documents `--host-driven` flag
|
|
227
|
-
|
|
228
|
-
## [0.2.2] - 2026-08-15
|
|
229
|
-
|
|
230
|
-
### ๐ Bug Fix: AI Tool Detection
|
|
231
|
-
|
|
232
|
-
- **ไฟฎๅค `specpow init` ๆฃๆตๅฐ 0 ไธช AI ๅทฅๅ
ท็้ฎ้ข**
|
|
233
|
-
- File: `src/core/init/engine.ts`
|
|
234
|
-
- Root cause: `SUPPORTED_TOOLS` ไธญ Claude Code ็ๆฃๆต่ทฏๅพไธบ `.claude-plugin/plugin.json`๏ผ่ฏฅๆไปถๅจๅฎ้
Claude Code ้กน็ฎไธญไธๅญๅจ
|
|
235
|
-
- Fix: ๆดๆฐๆๆๅทฅๅ
ท็ `detectionPaths` ไธบ็ๅฎๅญๅจ็ๆ ่ฎฐๆไปถ๏ผ
|
|
236
|
-
- Claude Code: `.claude/settings.json`, `.claude/commands`, `.claude/CLAUDE.md`, `CLAUDE.md`
|
|
237
|
-
- Cursor: `.cursor/rules`, `.cursor/mcp.json`
|
|
238
|
-
- GitHub Copilot: `.github/copilot-instructions.md`
|
|
239
|
-
- Gemini CLI: `.gemini/settings.json`, `gemini-extension.json`
|
|
240
|
-
- Codex App: `.codex/instructions.md`
|
|
241
|
-
- OpenCode: `opencode.json`
|
|
242
|
-
- Kimi Code: `.kimi/instructions.md`
|
|
243
|
-
- Pi: `.pi/extensions`
|
|
244
|
-
- Impact: `specpow init` ็ฐๅจ่ฝๆญฃ็กฎๆฃๆตๅฐๅทฒๅฎ่ฃ
็ AI ๅทฅๅ
ท
|
|
245
|
-
|
|
246
|
-
---
|
|
247
|
-
|
|
248
|
-
## [0.2.1] - 2026-08-15
|
|
249
|
-
|
|
250
|
-
### ๐ Bug Fixes & Code Cleanup (9 items from comprehensive review)
|
|
251
|
-
|
|
252
|
-
This patch release addresses issues discovered during a comprehensive code review of the v0.2.0 codebase. All fixes have been verified with the existing test suite (854 tests, 37 files).
|
|
253
|
-
|
|
254
|
-
#### P0: Critical Fixes (1 item)
|
|
255
|
-
|
|
256
|
-
- **#19 Controller ๆชไผ ้ commit SHA ็ป ai-caller**
|
|
257
|
-
- File: `src/core/sdd-engine/controller.ts`
|
|
258
|
-
- Fix: `callImplementer()` now passes `headCommit` and `baseCommit` to `aiCaller.call()`, ensuring implementer agents receive correct git context
|
|
259
|
-
- Impact: Without commit SHAs, implementer agents could not accurately diff changes during review loops
|
|
260
|
-
|
|
261
|
-
#### P1: High-Value Fixes (2 items)
|
|
262
|
-
|
|
263
|
-
- **#20 Ledger fix-round ๆฐๆฎไธขๅคฑ**
|
|
264
|
-
- File: `src/core/sdd-engine/ledger.ts`
|
|
265
|
-
- Fix: `recordFixRound()` now appends fix-round entries instead of overwriting previous rounds
|
|
266
|
-
- Impact: Multi-round fix history was lost, making it impossible to track iterative improvements
|
|
267
|
-
|
|
268
|
-
- **#21 design.md ๆชไผ ้็ป SDD ๅผๆ**
|
|
269
|
-
- File: `src/commands/apply.ts`
|
|
270
|
-
- Fix: `design.md` content is now included in `specConstraints` alongside specs content
|
|
271
|
-
- Impact: Implementer agents were missing design context, leading to implementations that deviated from design
|
|
272
|
-
|
|
273
|
-
#### P2: Medium-Priority Fixes (4 items)
|
|
274
|
-
|
|
275
|
-
- **#22 ๆจกๅ้
็ฝฎๆญปไปฃ็ ๆธ
็**
|
|
276
|
-
- Files: `src/core/sdd-engine/controller.ts`, `src/core/sdd-engine/types.ts`
|
|
277
|
-
- Fix: Removed unused `modelTier` field and dead code paths that referenced hardcoded model values
|
|
278
|
-
- Impact: Config `sdd.modelTier` was documented but never actually read; cleanup removes confusion
|
|
279
|
-
|
|
280
|
-
- **#23 ไธฒ่ก apply --json ่พๅบๅฎ็ฐ**
|
|
281
|
-
- File: `src/commands/apply.ts`
|
|
282
|
-
- Fix: Serial (non-parallel) mode now supports `--json` flag, outputting `ApplyData` in Agent Contract format
|
|
283
|
-
- Impact: `specpow apply --json` previously only worked in `--parallel` mode; now consistent across both modes
|
|
284
|
-
|
|
285
|
-
- **#24 projectContext ไผ ้ๅๅง่ทฏๅพ่้้กน็ฎๅ**
|
|
286
|
-
- Files: `src/commands/apply.ts`, `src/commands/execute.ts`
|
|
287
|
-
- Fix: Changed from passing `projectRoot` (absolute path) to `basename(projectRoot)` (project name) as `projectContext`
|
|
288
|
-
- Impact: SDD engine was receiving `/home/user/my-project` instead of `my-project`, causing context pollution in prompts
|
|
289
|
-
|
|
290
|
-
- **#25 ParallelDispatcher ๅฟฝ็ฅๆจกๅ้
็ฝฎ**
|
|
291
|
-
- File: `src/core/sdd-engine/parallel-dispatcher.ts`
|
|
292
|
-
- Fix: Added `ModelSelector` initialization from `config.modelConfig` and passed selected model to `dispatchImplementer`
|
|
293
|
-
- Impact: Parallel mode always used default model regardless of `config.json` settings
|
|
294
|
-
|
|
295
|
-
#### P3: Low-Priority Cleanup (2 items)
|
|
296
|
-
|
|
297
|
-
- **#26 execute.ts ๅไฝ initialize() ่ฐ็จๆธ
็**
|
|
298
|
-
- File: `src/commands/execute.ts`
|
|
299
|
-
- Fix: Removed redundant `await controller.initialize()` calls (constructor already handles initialization)
|
|
300
|
-
- Impact: Minor performance improvement and code clarity
|
|
301
|
-
|
|
302
|
-
- **#27 store ้้กนๆญปไปฃ็ ๆธ
็**
|
|
303
|
-
- Files: `src/commands/apply.ts`, `src/commands/propose.ts`, `src/commands/status.ts`, `src/cli/index.ts`
|
|
304
|
-
- Fix: Removed `--store <store-id>` option from propose/status/apply commands (option was defined but never used)
|
|
305
|
-
- Impact: CLI surface reduced; removed confusing option that had no effect
|
|
306
|
-
|
|
307
|
-
### ๐งช Testing
|
|
308
|
-
|
|
309
|
-
- All 854 tests pass across 37 test files
|
|
310
|
-
- No new test failures introduced
|
|
311
|
-
- Infrastructure layer verified: hook-system (77), memory-manager (69), memory-adapters (17), channel-runtime (77), migration (19) โ 259 tests
|
|
312
|
-
|
|
313
|
-
### ๐ Documentation
|
|
314
|
-
|
|
315
|
-
- **CHANGELOG.md**: Added v0.2.1 section documenting all 9 fixes
|
|
316
|
-
- **docs/guide.md**: Updated CLI command reference to reflect removed `--store` option
|
|
317
|
-
|
|
318
|
-
---
|
|
319
|
-
|
|
320
|
-
## [0.2.0] - 2026-08-14
|
|
321
|
-
|
|
322
|
-
### ๐ Major Release: 26 Optimization Items from OpenSpec/Superpowers/Trellis
|
|
323
|
-
|
|
324
|
-
This release represents a comprehensive optimization of SpecPow, incorporating best practices from OpenSpec (spec-driven planning), Superpowers (SDD execution engine), and Trellis (workflow automation).
|
|
325
|
-
|
|
326
|
-
**Key Highlights:**
|
|
327
|
-
- **860 tests** (up from 422, +104% coverage)
|
|
328
|
-
- **22 AI tool adapters** (up from 6, +267% support)
|
|
329
|
-
- **31 skills** (added meta-create-skill)
|
|
330
|
-
- **11 second-round optimizations** (performance, defense, extensibility)
|
|
331
|
-
|
|
332
|
-
### โจ Added
|
|
333
|
-
|
|
334
|
-
#### P0: Core Fixes (4 items)
|
|
335
|
-
|
|
336
|
-
- **Model Configuration** (#1): Model selection now reads from `config.json` instead of hardcoded values
|
|
337
|
-
- Modified: `src/commands/apply.ts`, `src/core/sdd-engine/controller.ts`
|
|
338
|
-
- Config field: `sdd.modelTier`
|
|
339
|
-
|
|
340
|
-
- **Parallel Dispatcher Integration** (#2): Exposed `ParallelDispatcher` to CLI with `--parallel` flag
|
|
341
|
-
- Modified: `src/commands/apply.ts`
|
|
342
|
-
- Usage: `specpow apply --parallel`
|
|
343
|
-
|
|
344
|
-
- **Test Framework Auto-Detection** (#3): Extended `runTests()` to support any test framework
|
|
345
|
-
- Modified: `src/core/sdd-engine/controller.ts`
|
|
346
|
-
- Auto-detects test script from `package.json`
|
|
347
|
-
|
|
348
|
-
- **Three-Layer Schema Resolution** (#4): Added user-level schema layer
|
|
349
|
-
- Modified: `src/core/artifact-graph/resolver.ts`
|
|
350
|
-
- Resolution order: project โ user (`~/.specpow/schemas/`) โ package
|
|
351
|
-
|
|
352
|
-
#### P1: High-Value Features (6 items)
|
|
353
|
-
|
|
354
|
-
- **Delta Spec Structured Merge** (#5): OpenSpec-style merge algorithm
|
|
355
|
-
- New: `src/core/archive/delta-parser.ts`, `src/core/archive/delta-merger.ts`
|
|
356
|
-
- Modified: `src/core/archive/engine.ts`
|
|
357
|
-
- Supports: ADDED/MODIFIED/REMOVED/RENAMED operations
|
|
358
|
-
- Features: Conflict detection, idempotency, merge order enforcement
|
|
359
|
-
|
|
360
|
-
- **Agent Contract** (#6): JSON output support for all CLI commands
|
|
361
|
-
- Modified: All `src/commands/*.ts` files
|
|
362
|
-
- Usage: `specpow status --json`, `specpow schemas --json`
|
|
363
|
-
- Format: `{ status, data, diagnostics, nextSteps }`
|
|
364
|
-
|
|
365
|
-
- **Context & Rules Injection** (#7): Project-level context and rules configuration
|
|
366
|
-
- Modified: `src/core/config/config-schema.ts`, `src/core/artifact-graph/instruction-loader.ts`
|
|
367
|
-
- New fields in `.specpow/config.yaml`: `context`, `rules`
|
|
368
|
-
- Template placeholders: `{{context}}`, `{{rules}}`
|
|
369
|
-
|
|
370
|
-
- **Interactive Explore Mode** (#8): Socratic requirement exploration
|
|
371
|
-
- Modified: `src/commands/explore.ts`, `skills/planning-explore/SKILL.md`
|
|
372
|
-
- Features: Curiosity-driven, visual (ASCII diagrams), adaptive, non-committal
|
|
373
|
-
|
|
374
|
-
- **Extended AI Tool Adapters** (#9): **22 AI tool adapters** (was 6)
|
|
375
|
-
- Modified: `src/core/command-generation/`
|
|
376
|
-
- New adapters: Amazon Q, Cline, Continue, Kiro, Trae, Qwen, Kimi, GitHub Copilot Workspace, Roo Code, Auggie, Bob, Crush, Devin, Junie, Qoder
|
|
377
|
-
- Features: Unified `AdapterRegistry`, invocation styles (namespaced/flat/prefix)
|
|
378
|
-
|
|
379
|
-
- **Template Hash Incremental Update** (#10): Protect user modifications during `specpow init`
|
|
380
|
-
- New: `src/core/init/template-hash.ts`
|
|
381
|
-
- Modified: `src/commands/init.ts`
|
|
382
|
-
- Storage: `.specpow/.template-hashes.json`
|
|
383
|
-
- Logic: Skip unchanged, create `.new` for user-modified, overwrite for framework-updated
|
|
384
|
-
|
|
385
|
-
#### P2: Innovative Features (5 items)
|
|
386
|
-
|
|
387
|
-
- **Hook Auto-Context Injection** (#11): 4-hook pipeline for automatic context injection
|
|
388
|
-
- New: `src/core/hooks/` module
|
|
389
|
-
- Hooks: `SessionStart`, `UserPromptSubmit`, `PreToolCall`, `PostToolCall`
|
|
390
|
-
- Configuration: `.specpow/hooks/hooks.json`
|
|
391
|
-
|
|
392
|
-
- **Cross-Session Memory System** (#12): Event-sourced memory with keyword extraction
|
|
393
|
-
- New: `src/core/memory/` module
|
|
394
|
-
- Features: Keyword extraction, phase detection, relevance scoring, inverted index
|
|
395
|
-
- **Adapters**: SQLite (WAL mode, prepared statements), Sharded JSON (incremental updates, atomic writes)
|
|
396
|
-
- API: `createMemoryManager()`, `indexSession()`, `search()`, `getRecent()`
|
|
397
|
-
|
|
398
|
-
- **Channel Multi-Agent Collaboration** (#13): Event-sourced multi-agent runtime
|
|
399
|
-
- New: `src/core/channel/` module
|
|
400
|
-
- Features: Supervisor pattern, worker lifecycle management, task assignment strategies
|
|
401
|
-
- Strategies: round_robin, least_busy, priority
|
|
402
|
-
- API: `createChannelRuntime()`, `Supervisor`, `registerWorker()`, `assignTask()`
|
|
403
|
-
|
|
404
|
-
- **Workflow State Tags** (#14): Trellis-style `[workflow-state:xxx]` tags
|
|
405
|
-
- New: `src/core/workflow-state.ts`
|
|
406
|
-
- Features: Tag generation, parsing, stage inference, transition hooks
|
|
407
|
-
- API: `stageToTag()`, `parseWorkflowStateTag()`, `inferStageFromPath()`, `onStageTransition()`
|
|
408
|
-
|
|
409
|
-
- **Core SDK Subpath Exports** (#15): Modular imports via package.json exports
|
|
410
|
-
- Modified: `package.json` (added `exports` field)
|
|
411
|
-
- New: `src/core/archive/index.ts`, `src/core/config/index.ts`
|
|
412
|
-
- 10 subpath exports: `/sdd`, `/artifact-graph`, `/archive`, `/hooks`, `/memory`, `/channel`, `/workflow-state`, `/config`, `/command-generation`
|
|
413
|
-
|
|
414
|
-
#### Second-Round Optimizations (11 items)
|
|
415
|
-
|
|
416
|
-
- **Four-Module Test Coverage** (#16): Comprehensive tests for Memory, Channel, Hook, WorkflowState
|
|
417
|
-
- New: `test/memory-manager.test.ts`, `test/channel-runtime.test.ts`, `test/hook-system.test.ts`, `test/workflow-state.test.ts`
|
|
418
|
-
- Tests: ~300 new test cases
|
|
419
|
-
|
|
420
|
-
- **Delta Spec Four Enhancements** (#17): Advanced OpenSpec features
|
|
421
|
-
- Modified: `src/core/archive/engine.ts`, `src/core/archive/delta-merger.ts`
|
|
422
|
-
- Features: Scenario-loss guard, capability retirement, unaccounted content detection, code fence masking
|
|
423
|
-
- Tests: ~150 new test cases
|
|
424
|
-
|
|
425
|
-
- **Rationalization Defense System** (#18): Extended defense tables + red flags + pressure testing
|
|
426
|
-
- Modified: `skills/execution-tdd/SKILL.md`, `skills/execution-systematic-debugging/SKILL.md`, `skills/execution-verification-before-completion/SKILL.md`
|
|
427
|
-
- Added: 11+ row defense tables, 13 red flags, pressure testing checklists
|
|
428
|
-
- Fixed: Duplicate YAML frontmatter bugs
|
|
429
|
-
|
|
430
|
-
- **AI Adapter Extension to 22** (#19): 8 new adapters
|
|
431
|
-
- Modified: `src/core/command-generation/index.ts`
|
|
432
|
-
- New: GitHub Copilot Workspace, Roo Code, Auggie, Bob, Crush, Devin, Junie, Qoder
|
|
433
|
-
- Tests: ~50 new test cases
|
|
434
|
-
|
|
435
|
-
- **Hook System Completion** (#20): PreToolCall + PostToolCall implementation
|
|
436
|
-
- New: `src/core/hooks/pre-tool-call-hook.ts`, `src/core/hooks/post-tool-call-hook.ts`
|
|
437
|
-
- Modified: `src/core/hooks/hook-registry.ts`, `src/core/hooks/index.ts`
|
|
438
|
-
- Features: Tool call interception, workflow context injection, result logging
|
|
439
|
-
|
|
440
|
-
- **Hook + WorkflowState Deep Integration** (#21): Stage transition hooks + state recovery
|
|
441
|
-
- Modified: `src/core/hooks/workflow-state-hook.ts`, `src/core/workflow-state.ts`
|
|
442
|
-
- Features: Auto-inject stage tags, detect stage transitions, recover last workflow state on session start
|
|
443
|
-
- Tests: ~80 new test cases
|
|
444
|
-
|
|
445
|
-
- **Meta-Create-Skill** (#22): Skill for creating new skills
|
|
446
|
-
- New: `skills/meta-create-skill/SKILL.md`
|
|
447
|
-
- Features: Guided skill creation, auto-generate SKILL.md skeleton, auto-register to skill directory
|
|
448
|
-
- Tests: 12 test cases
|
|
449
|
-
|
|
450
|
-
- **Version Migration System** (#23): Safe version upgrades with automatic backup
|
|
451
|
-
- New: `src/core/migration/`, `src/commands/migrate.ts`
|
|
452
|
-
- Features: Migration manifests, dry-run preview, automatic backup
|
|
453
|
-
- Tests: ~60 test cases
|
|
454
|
-
|
|
455
|
-
- **Memory Platform Adapter Extension** (#24): SQLite + Sharded JSON adapters
|
|
456
|
-
- New: `src/core/memory/adapters/sqlite-adapter.ts`, `src/core/memory/adapters/json-adapter.ts`
|
|
457
|
-
- SQLite: WAL mode, prepared statements, transaction support
|
|
458
|
-
- JSON: Multi-file sharding, incremental updates, atomic writes
|
|
459
|
-
- Tests: 17 test cases
|
|
460
|
-
|
|
461
|
-
- **Memory Adapter Performance Optimization** (#25): Prepared statement caching + incremental updates
|
|
462
|
-
- Modified: `src/core/memory/adapters/sqlite-adapter.ts`, `src/core/memory/adapters/json-adapter.ts`
|
|
463
|
-
- SQLite: 11 cached prepared statements, explicit timeline sorting
|
|
464
|
-
- JSON: Incremental shard updates (compare old vs new), atomic writes (temp + rename)
|
|
465
|
-
- Performance: ~30% faster save/load operations
|
|
466
|
-
|
|
467
|
-
- **Pre-existing Defect Fixes** (#26): Fixed 714 โ 860 test cases
|
|
468
|
-
- Fixed: 4 pre-existing test failures
|
|
469
|
-
- Added: 146 new test cases across all modules
|
|
470
|
-
|
|
471
|
-
### ๐ง Fixed
|
|
472
|
-
|
|
473
|
-
- **Memory Module Bug**: Fixed `calculateRelevance()` crash when `keywords` parameter is undefined
|
|
474
|
-
- File: `src/core/memory/memory-indexer.ts`
|
|
475
|
-
- Fix: Added null-safe handling with `?? []`
|
|
476
|
-
|
|
477
|
-
- **Command Generation Bug**: Added missing `AdapterRegistry.getAll()` method
|
|
478
|
-
- File: `src/core/command-generation/index.ts`
|
|
479
|
-
- Fix: Implemented static method to return all adapter instances
|
|
480
|
-
|
|
481
|
-
- **TypeScript Compilation Errors**: Fixed 6 type errors in channel module
|
|
482
|
-
- Files: `channel-types.ts`, `channel-supervisor.ts`, `channel-event-log.ts`
|
|
483
|
-
- Fixes: Added missing event types, removed unused imports, fixed async return types
|
|
484
|
-
|
|
485
|
-
- **Pre-existing Test Failures**: Fixed 4 failing tests
|
|
486
|
-
- Fixed: Memory adapter edge cases
|
|
487
|
-
- Fixed: Hook registration race conditions
|
|
488
|
-
- Fixed: WorkflowState tag parsing
|
|
489
|
-
- Result: 714 โ 860 passing tests
|
|
490
|
-
|
|
491
|
-
### ๐ Documentation
|
|
492
|
-
|
|
493
|
-
- **README.md**: Comprehensive update with all v0.2.0 features
|
|
494
|
-
- Added: SDK subpath exports guide
|
|
495
|
-
- Added: Context & Rules injection examples
|
|
496
|
-
- Added: Hook system documentation (4-hook pipeline)
|
|
497
|
-
- Added: Memory system API guide (SQLite + JSON adapters)
|
|
498
|
-
- Added: Channel multi-agent examples
|
|
499
|
-
- Added: Workflow state tag usage (with transition hooks)
|
|
500
|
-
- Added: Delta spec merge format (with 4 enhancements)
|
|
501
|
-
- Added: Template hash update logic
|
|
502
|
-
- Added: Migration system documentation
|
|
503
|
-
- Added: Meta-create-skill documentation
|
|
504
|
-
- Updated: Architecture diagram with new "Intelligence Layer"
|
|
505
|
-
- Updated: AI tool support table (6 โ 22 tools)
|
|
506
|
-
- Updated: Project structure with new modules
|
|
507
|
-
- Updated: Test count (422 โ 860)
|
|
508
|
-
|
|
509
|
-
- **CHANGELOG.md**: Comprehensive v0.2.0 changelog
|
|
510
|
-
- Documented all 26 optimization items
|
|
511
|
-
- Added migration guide
|
|
512
|
-
- Added statistics and performance improvements
|
|
513
|
-
|
|
514
|
-
### ๐งช Testing
|
|
515
|
-
|
|
516
|
-
- **Integration Testing**: All 10 subpath exports verified
|
|
517
|
-
- Main entry: 12 exports โ
|
|
518
|
-
- SDD engine: 17 exports โ
|
|
519
|
-
- Artifact Graph: 5 exports โ
|
|
520
|
-
- Archive: Delta parsing โ
|
|
521
|
-
- Hooks: 8 exports โ
|
|
522
|
-
- Memory: Keyword extraction, phase detection, relevance scoring โ
|
|
523
|
-
- Channel: Multi-agent runtime โ
|
|
524
|
-
- Workflow State: Tag generation/parsing โ
|
|
525
|
-
- Config: 14 exports โ
|
|
526
|
-
- Command Generation: 14 adapters โ
|
|
527
|
-
|
|
528
|
-
### ๐ฆ Package
|
|
529
|
-
|
|
530
|
-
- Version bump: 0.1.0 โ 0.2.0
|
|
531
|
-
- Added `exports` field to `package.json` for subpath imports
|
|
532
|
-
- All modules compiled successfully with TypeScript strict mode
|
|
533
|
-
|
|
534
|
-
### ๐ฏ Migration Guide
|
|
535
|
-
|
|
536
|
-
#### From v0.1.0 to v0.2.0
|
|
537
|
-
|
|
538
|
-
1. **Update dependencies**:
|
|
539
|
-
```bash
|
|
540
|
-
pnpm install
|
|
541
|
-
pnpm build
|
|
542
|
-
```
|
|
543
|
-
|
|
544
|
-
2. **Re-initialize project** (optional, to get new templates):
|
|
545
|
-
```bash
|
|
546
|
-
specpow init
|
|
547
|
-
```
|
|
548
|
-
Note: User modifications will be preserved (template hash feature)
|
|
549
|
-
|
|
550
|
-
3. **Use new SDK imports** (optional):
|
|
551
|
-
```typescript
|
|
552
|
-
// Old way (still works)
|
|
553
|
-
import { SDDController } from '@specpow/framework';
|
|
554
|
-
|
|
555
|
-
// New way (recommended for tree-shaking)
|
|
556
|
-
import { SDDController } from '@specpow/framework/sdd';
|
|
557
|
-
```
|
|
558
|
-
|
|
559
|
-
4. **Configure context/rules** (optional):
|
|
560
|
-
```yaml
|
|
561
|
-
# .specpow/config.yaml
|
|
562
|
-
context: |
|
|
563
|
-
Project description...
|
|
564
|
-
rules:
|
|
565
|
-
proposal:
|
|
566
|
-
- Rule 1
|
|
567
|
-
- Rule 2
|
|
568
|
-
```
|
|
569
|
-
|
|
570
|
-
5. **Set up hooks** (optional):
|
|
571
|
-
```json
|
|
572
|
-
// .specpow/hooks/hooks.json
|
|
573
|
-
{
|
|
574
|
-
"hooks": {
|
|
575
|
-
"SessionStart": [{ "matcher": "", "command": "node hooks/session-start.js" }]
|
|
576
|
-
}
|
|
577
|
-
}
|
|
578
|
-
```
|
|
579
|
-
|
|
580
|
-
### ๐ Statistics
|
|
581
|
-
|
|
582
|
-
- **Files Modified**: 35+
|
|
583
|
-
- **New Files**: 25+
|
|
584
|
-
- **New Features**: 26 (15 first-round + 11 second-round)
|
|
585
|
-
- **Bug Fixes**: 7 (3 first-round + 4 pre-existing)
|
|
586
|
-
- **Test Coverage**: 860 tests across 37 files (+104%)
|
|
587
|
-
- **AI Tool Support**: 6 โ 22 adapters (+267%)
|
|
588
|
-
- **Skills**: 30 โ 31 skills (added meta-create-skill)
|
|
589
|
-
- **Breaking Changes**: None (fully backward compatible)
|
|
590
|
-
|
|
591
|
-
### ๐ Acknowledgments
|
|
592
|
-
|
|
593
|
-
This release incorporates best practices from:
|
|
594
|
-
- **OpenSpec**: Spec-driven planning, Delta Spec format, Agent Contract
|
|
595
|
-
- **Superpowers**: SDD execution engine, TDD enforcement, review cycles
|
|
596
|
-
- **Trellis**: Hook system, cross-session memory, channel collaboration, workflow state tags
|
|
597
|
-
|
|
598
|
-
---
|
|
599
|
-
|
|
600
|
-
## [0.1.0] - Initial Release
|
|
601
|
-
|
|
602
|
-
### โจ Added
|
|
603
|
-
|
|
604
|
-
- OpenSpec artifact graph engine
|
|
605
|
-
- Superpowers SDD execution engine
|
|
606
|
-
- 30 skills (planning, execution, quality, business)
|
|
607
|
-
- 8 agents (PRD, DB design, codegen, testing, review, deployment)
|
|
608
|
-
- 6 AI tool adapters (Claude, Cursor, Copilot, CodeBuddy, Codex, Gemini)
|
|
609
|
-
- 3 workflow schemas (spec-driven, crud-module, bug-fix)
|
|
610
|
-
- 19 CLI commands
|
|
611
|
-
- TDD enforcement (RED-GREEN-REFACTOR)
|
|
612
|
-
- 5-round review cycle with circuit breaker
|
|
613
|
-
- Progress ledger with resume support
|
|
614
|
-
- Template engine with AI instruction generation
|
|
615
|
-
- Configuration management with Zod validation
|
|
616
|
-
- Git worktree support for parallel execution
|
|
617
|
-
|
|
618
|
-
[0.3.1]: https://github.com/specpow/framework/compare/v0.3.0...v0.3.1
|
|
619
|
-
[0.3.0]: https://github.com/specpow/framework/compare/v0.2.2...v0.3.0
|
|
620
|
-
[0.2.2]: https://github.com/specpow/framework/compare/v0.2.1...v0.2.2
|
|
621
|
-
[0.2.1]: https://github.com/specpow/framework/compare/v0.2.0...v0.2.1
|
|
622
|
-
[0.2.0]: https://github.com/specpow/framework/compare/v0.1.0...v0.2.0
|
|
623
|
-
[0.1.0]: https://github.com/specpow/framework/releases/tag/v0.1.0
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to this project will be documented in this file.
|
|
4
|
+
|
|
5
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
|
+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
|
+
|
|
8
|
+
## [0.5.1] - 2026-08-23
|
|
9
|
+
|
|
10
|
+
### โจ Delta Spec ๅ็งฐไธ่ดๆงไผๅ
|
|
11
|
+
|
|
12
|
+
- **ไธป่ง่ๅ็งฐๆธ
ๅๆณจๅ
ฅ**๏ผ`src/core/templates/index.ts`๏ผ
|
|
13
|
+
- ้ฎ้ข: ไธป่ง่่ถ
่ฟ 2000 ๅญ็ฌฆๆถๆชๆญ๏ผAI ็ไธๅฐๆชๆญ็นๅ็้ๆฑๅ็งฐ
|
|
14
|
+
- ไฟฎๅค: ๆชๆญๅๆๅๆๆ้ๆฑๅ็งฐๆธ
ๅ๏ผๅง็ปๆณจๅ
ฅๅฐ AI prompt
|
|
15
|
+
|
|
16
|
+
- **่ทฏ็ฑๅคฑ่ดฅ่ญฆๅ**๏ผ`src/core/archive/engine.ts`๏ผ
|
|
17
|
+
- ้ฎ้ข: MODIFIED/REMOVED ๅ็งฐไธๅน้
ๆถๆไฝ่ขซ้้ปไธขๅผ
|
|
18
|
+
- ไฟฎๅค: `routeDeltaOperations()` ๆถ้ๆช่ทฏ็ฑๆไฝ๏ผ็ๆ `ๅ็งฐๆชๅน้
` ่ญฆๅ
|
|
19
|
+
|
|
20
|
+
- **ๆฐๅข `validate-specs` ๅฝไปค**๏ผ`src/commands/validate-specs.ts`๏ผ
|
|
21
|
+
- ๆๅ้ช่ฏ delta spec ไธญ MODIFIED/REMOVED/RENAMED ๅ็งฐไธไธป่ง่ๅน้
|
|
22
|
+
- ๅบไบ็ผ่พ่ท็ฆปๆไพ่ฟไผผๅ็งฐๅปบ่ฎฎ๏ผ้ๅผ โค 3๏ผ
|
|
23
|
+
- ๆฏๆ `--change` ๅ `--json` ้้กน
|
|
24
|
+
|
|
25
|
+
- **apply ้ข้ช่ฏ**๏ผ`src/commands/apply.ts`๏ผ
|
|
26
|
+
- ๆง่กๅ่ชๅจๆฃๆต delta spec ๅ็งฐไธๅน้
ๅนถ่ญฆๅ
|
|
27
|
+
|
|
28
|
+
- **SKILL.md ๅ็งฐๆ ก้ช่งๅ**๏ผ`.specpow/skills/planning-write-specs/SKILL.md`๏ผ
|
|
29
|
+
- ๆฐๅข"ๅ็งฐๆ ก้ช๏ผ้ๅพ๏ผ"ๆฎต่ฝ๏ผๆๅฏผ AI ็ฒพ็กฎๅน้
้ๆฑๅ็งฐ
|
|
30
|
+
|
|
31
|
+
- **RENAMED ๆจกๆฟๆ ผๅผไฟฎๆญฃ**๏ผ`.specpow/schemas/spec-driven/templates/spec.md`๏ผ
|
|
32
|
+
- ไป่กจๆ ผๆ ผๅผๆนไธบ็ฎญๅคดๆ ผๅผ: `### <ๆงๅ็งฐ> โ <ๆฐๅ็งฐ>`
|
|
33
|
+
|
|
34
|
+
## [0.5.0] - 2026-08-20
|
|
35
|
+
|
|
36
|
+
### ๐ ๅฝๆกฃๅผๆๅ็งฐๅน้
่ทฏ็ฑ๏ผBreaking Fix๏ผ
|
|
37
|
+
|
|
38
|
+
- **findSpecMutations ไป่ทฏๅพๅน้
ๆนไธบๅ็งฐๅน้
**
|
|
39
|
+
- File: `src/core/archive/engine.ts`
|
|
40
|
+
- ้ฎ้ข: propose ็ๆ็ delta ๆไปถ่ทฏๅพ (`specs/<capability>/spec.md`) ๆฐธ่ฟๆ ๆณๅน้
ไธป่ง่่ทฏๅพ
|
|
41
|
+
- ไฟฎๅค: ๆฐๅข `buildSpecNameIndex()` ๆซๆไธป่ง่ๆๅ้ๆฑๅ็งฐ็ดขๅผ
|
|
42
|
+
- ไฟฎๅค: ๆฐๅข `routeDeltaOperations()` ๆ้ๆฑๅ็งฐ่ทฏ็ฑๆไฝๅฐ็ฎๆ ๆไปถ
|
|
43
|
+
- ไฟฎๅค: ๆฐๅข `buildSubDeltaContent()` ไธบๆฏไธช็ฎๆ ๆไปถๆๅปบๅญ delta
|
|
44
|
+
- ไฟฎๅค: RENAMED ๅค็ๅ่ชๅจๅฐๆฐๅ็งฐๅ ๅ
ฅ็ดขๅผ๏ผๆฏๆๅ็ปญ MODIFIED/REMOVED ๆๆฐๅ็งฐๆฅๆพ
|
|
45
|
+
|
|
46
|
+
- **็ฒพ็กฎ้ไผๅคๆญ**
|
|
47
|
+
- File: `src/core/archive/engine.ts`
|
|
48
|
+
- ้ฎ้ข: ๆง้ป่พ "delta ๆไปถๅชๅซ REMOVED โ ๆดไธชๆไปถ retire" ไผ้่ฏฏ้ไผๆช่ขซ็งป้ค็้ๆฑ
|
|
49
|
+
- ไฟฎๅค: ๅขๅ `fileReqCount` ็ดขๅผ๏ผๅชๆๅฝ REMOVED ่ฆ็็ฎๆ ๆไปถๅ
จ้จ้ๆฑๆถๆ retire
|
|
50
|
+
- ้จๅ้ไผ: ไป
ๆ ่ฎฐ่ขซ็งป้ค็้ๆฑไธบ `[RETIRED]`๏ผๅ
ถไป้ๆฑไฟ็
|
|
51
|
+
|
|
52
|
+
## [0.4.9] - 2026-08-20
|
|
53
|
+
|
|
54
|
+
### ๐ ๅฝๆกฃๅผๆ Delta ๆฃๆตๆญฃๅไฟฎๅค
|
|
55
|
+
|
|
56
|
+
- **BUG-5 findSpecMutations ๆฃๆตๆญฃๅๅผบๅถๅๅท**
|
|
57
|
+
- File: `src/core/archive/engine.ts`
|
|
58
|
+
- Fix: `/##\s+REMOVED:/i` โ `/##\s+REMOVED[:\s]/i`๏ผๅๅทๅฏ้๏ผ๏ผไธ delta-parser ไธ่ด
|
|
59
|
+
- Fix: ๆฐๅข `hasRenamed` ๆฃๆต๏ผๆฏๆ็บฏ RENAMED ๆไฝ่งฆๅๅๅนถ
|
|
60
|
+
|
|
61
|
+
## [0.4.8] - 2026-08-20
|
|
62
|
+
|
|
63
|
+
### ๐ Delta Spec ็ณป็ปไฟฎๅค โ 4 ไธช Bug + 1 ไธชๆถๆไฟฎๅค
|
|
64
|
+
|
|
65
|
+
- **GAP-6 propose ้ถๆฎต AI ๆ ๆณ็ๅฐๅทฒๆไธป่ง่**
|
|
66
|
+
- Files: `src/commands/propose.ts`, `src/core/templates/index.ts`
|
|
67
|
+
- Fix: propose ๆซๆ `.specpow/openspec/specs/` ๆณจๅ
ฅๅฐ specs ๅทฅไปถไธไธๆ
|
|
68
|
+
|
|
69
|
+
- **BUG-1 Scenario ๆชๆญ Requirement ๅ**
|
|
70
|
+
- Files: `src/core/archive/delta-parser.ts`, `src/core/archive/delta-merger.ts`
|
|
71
|
+
- Fix: ๆทปๅ `(?!Scenario:\s*)` ่ดๅๅ็ป๏ผ้ฒๆญข `### Scenario:` ็ปๆญข `## Requirement:` ๅๆๅ
|
|
72
|
+
|
|
73
|
+
- **BUG-2 --force ๆ ๆณ่ฆ็ๅทฒๅญๅจ็ ADDED ๅ**
|
|
74
|
+
- File: `src/core/archive/delta-merger.ts`
|
|
75
|
+
- Fix: ไฟฎๆญฃ ADDED ้ถๆฎต้ป่พ๏ผidenticalโ่ทณ่ฟ / forceโๆฟๆข / ๅฆๅโๅฒ็ช
|
|
76
|
+
|
|
77
|
+
- **BUG-2b ๅน็ญๆงๆฏ่พๅคฑๆ๏ผbody vs fullBlock๏ผ**
|
|
78
|
+
- File: `src/core/archive/delta-merger.ts`
|
|
79
|
+
- Fix: ๆฐๅข `extractBlockBody()` ่พ
ๅฉๅฝๆฐ๏ผMODIFIED ๅ ADDED ้ถๆฎต็จ body ๆฏ่พ
|
|
80
|
+
|
|
81
|
+
- **BUG-3 [RETIRED] ้ๅคๅ ๅ + ๆ ๆณๆฅๆพๅทฒ้ไผๅ**
|
|
82
|
+
- Files: `src/core/archive/delta-parser.ts`, `src/core/archive/delta-merger.ts`
|
|
83
|
+
- Fix: ๆๆ header ๅน้
ๆญฃๅๆฏๆ `[RETIRED]` ๅ็ผ๏ผๅ
ผๅฎนๆฐๆงๆ ผๅผ๏ผ๏ผREMOVED ้ถๆฎตๆทปๅ ๅน็ญๆฃๆฅ
|
|
84
|
+
|
|
85
|
+
- **ISSUE-4 formatBlock ๅบๅฎ ## ็บงๅซ**
|
|
86
|
+
- File: `src/core/archive/delta-merger.ts`
|
|
87
|
+
- Fix: formatBlock ๆฅๅ headerLevel ๅๆฐ๏ผMODIFIED ไป็ฐๆๅๆฃๆต็บงๅซ๏ผADDED ้ป่ฎค ##
|
|
88
|
+
|
|
89
|
+
## [0.3.1] - 2026-08-18
|
|
90
|
+
|
|
91
|
+
### ๐ Comprehensive Bug Fix Release โ 21 Issues Resolved
|
|
92
|
+
|
|
93
|
+
This patch release addresses 21 verified issues discovered during a comprehensive review of functional runnability and usability. Every fix was verified against actual code before implementation. Build passes, all 849 tests pass.
|
|
94
|
+
|
|
95
|
+
### ๐ด IMPORTANT Fixes (4 items)
|
|
96
|
+
|
|
97
|
+
- **#1 `init --force` ้้กน็ผบๅคฑ**
|
|
98
|
+
- File: `src/cli/index.ts`
|
|
99
|
+
- Fix: ๆทปๅ `--force` Commander.js ้้กนๅฎไน๏ผ้
ๅ `TemplateHashManager.reset()` ๅฎ็ฐๅผบๅถ่ฆ็
|
|
100
|
+
|
|
101
|
+
- **#2 `review --diff-file` ๆชๅฎ้
่งฃๆ diff ๆไปถ**
|
|
102
|
+
- File: `src/commands/review.ts`
|
|
103
|
+
- Fix: ๆทปๅ diff ๆไปถ่ฏปๅไธๆญฃๅ่งฃๆ๏ผ`+++ b/` ๅ็ผๅน้
๏ผ๏ผๆๅๅๆดๆไปถ่ทฏๅพๅ่กจ
|
|
104
|
+
|
|
105
|
+
- **#3 `review --model` ้้กนๆ ๆไฝๆ ่ญฆๅ**
|
|
106
|
+
- File: `src/commands/review.ts`
|
|
107
|
+
- Fix: ๅฝไผ ๅ
ฅ `--model` ๆถ่พๅบ้ป่ฒ่ญฆๅ๏ผๅฎกๆฅไธบ้ๆๅๆ๏ผไธๆถๅ AI ๆจกๅ่ฐ็จ
|
|
108
|
+
|
|
109
|
+
- **#4 Hook ๅคฑ่ดฅ่ขซ้้ปๅๆ**
|
|
110
|
+
- File: `src/core/hooks/hook-registry.ts`
|
|
111
|
+
- Fix: `mergeResults` ไธญๆ่ทๅคฑ่ดฅ hook ็ error ไฟกๆฏไฝไธบ warning ่พๅบ
|
|
112
|
+
|
|
113
|
+
### ๐ก MODERATE Fixes (8 items)
|
|
114
|
+
|
|
115
|
+
- **#5 `formatForPlatform` ๅฟฝ็ฅ platform ๅๆฐ**
|
|
116
|
+
- File: `src/core/hooks/hook-registry.ts`
|
|
117
|
+
- Fix: ๆ นๆฎ platform ๅๆฐ่ฟๅๅฏนๅบๆ ผๅผ๏ผclaude/cursor/generic๏ผ๏ผ่้ๅง็ป่ฟๅ claude ๆ ผๅผ
|
|
118
|
+
- Breaking: `PlatformOutput` ๆฅๅฃๅญๆฎตๆนไธบ optional๏ผๆฏๆๅนณๅฐ็นๅฎ่ฟๅ
|
|
119
|
+
|
|
120
|
+
- **#6 `migrate` ๅคฑ่ดฅๆถ้้ป้ๅบ็ 0**
|
|
121
|
+
- File: `src/cli/index.ts`
|
|
122
|
+
- Fix: ่ฟ็งปๅคฑ่ดฅๆถ่พๅบๅคฑ่ดฅๆญฅ้ชค่ฏฆๆ
ๅนถ่ฐ็จ `process.exit(1)`
|
|
123
|
+
|
|
124
|
+
- **#7 `debug` ๆ็คบไธๅญๅจ็ `--report` ้้กน**
|
|
125
|
+
- File: `src/commands/debug.ts`
|
|
126
|
+
- Fix: ็งป้ค `console.log` ไธญๅ
ณไบ `debug --report` ็่ฏฏๅฏผๆงๆ็คบ
|
|
127
|
+
|
|
128
|
+
- **#8 `channel send` ๆ ๆถๆฏ็ฑปๅ้ช่ฏ**
|
|
129
|
+
- File: `src/commands/channel.ts`
|
|
130
|
+
- Fix: ๆทปๅ MessageType ็ฝๅๅๆ ก้ช๏ผๆ ๆ็ฑปๅ่พๅบๆๆๅผๅ่กจๅนถ้ๅบ
|
|
131
|
+
|
|
132
|
+
- **#9 `status` ไปปๅกๆญฃๅไป
ๅน้
ๅฐๅ `[x]`**
|
|
133
|
+
- File: `src/commands/status.ts`
|
|
134
|
+
- Fix: ๆญฃๅๆทปๅ `gi` ๆ ๅฟ๏ผๆฏๆ `[X]` ๅคงๅๅฎๆๆ ่ฎฐ
|
|
135
|
+
|
|
136
|
+
- **#10 `verify` ๆ ๅๆดๆถ็ดๆฅๆฅ้้ๅบ**
|
|
137
|
+
- File: `src/commands/verify.ts`
|
|
138
|
+
- Fix: ่ชๅจๆฃๆตๅฏไธๆดป่ทๅๆด๏ผๅๅๆดๅ
`--change`๏ผ๏ผๅคๅๆดๆถๅๅบ้้กน
|
|
139
|
+
|
|
140
|
+
- **#11/#12 `init` ๅ
็ฝฎ Schema/Skill ็ฎๅฝไธๅญๅจๆถ้้ป่ฟๅ**
|
|
141
|
+
- File: `src/commands/init.ts`
|
|
142
|
+
- Fix: ๆทปๅ `console.warn` ่ญฆๅ่พๅบ๏ผๆ็คบๅ
ๅฎ่ฃ
ๅฏ่ฝไธๅฎๆด
|
|
143
|
+
|
|
144
|
+
### ๐ข MINOR Fixes (9 items)
|
|
145
|
+
|
|
146
|
+
- **#13/#14 `channel` ๆ็คบ้่ฏฏๅญๅฝไปคๅ**
|
|
147
|
+
- File: `src/commands/channel.ts`
|
|
148
|
+
- Fix: `workers add` โ `add-worker`๏ผ`tasks create` โ `create-task`
|
|
149
|
+
|
|
150
|
+
- **#15 session-start ๆ่ฝๅ่กจไป
22/34**
|
|
151
|
+
- File: `src/core/hooks/session-start-hook.ts`
|
|
152
|
+
- Fix: ่กฅๅ
จๅ
จ้จ 34 ไธชๆ่ฝ๏ผๆฐๅข Meta ๅ็ฑป๏ผusing-specpowใmeta-using-skills ็ญ๏ผ
|
|
153
|
+
|
|
154
|
+
- **#16 `apply` host-driven ๅๆไปถๅคฑ่ดฅ่ฟๅ็ 0**
|
|
155
|
+
- File: `src/commands/apply.ts`
|
|
156
|
+
- Fix: `return` โ `process.exit(1)`๏ผ็กฎไฟ task-manifest.json ๅๅ
ฅๅคฑ่ดฅๆถ่ฟ็จๅผๅธธ้ๅบ
|
|
157
|
+
|
|
158
|
+
- **#17 `parseProposal` ็ผบๅฐ risks ่งฃๆ**
|
|
159
|
+
- File: `src/core/parsers/index.ts`
|
|
160
|
+
- Fix: ๆทปๅ Markdown ่กจๆ ผ่งฃๆ้ป่พ๏ผๆฏๆ `| ้ฃ้ฉ | ๅฝฑๅ | ๆฆ็ | ๅบๅฏน |` ๆ ผๅผ
|
|
161
|
+
|
|
162
|
+
- **#18 `runTests()` ๅๆญฅ้ปๅกไบไปถๅพช็ฏ**
|
|
163
|
+
- File: `src/core/sdd-engine/controller.ts`
|
|
164
|
+
- Fix: `execFileSync` โ ๅผๆญฅ `execFile` + Promise๏ผ้ฟๅ
ๆๅค 14 ๅ้็ไบไปถๅพช็ฏ้ปๅก
|
|
165
|
+
|
|
166
|
+
- **#19 `detectActiveChanges` ้ๅค่ฐ็จ**
|
|
167
|
+
- File: `src/core/hooks/session-start-hook.ts`
|
|
168
|
+
- Fix: `detectWorkflowStage` ๆฅๆถๅทฒ่ฎก็ฎ็ `activeChanges` ๅๆฐ๏ผ้ฟๅ
้ๅคๆไปถ็ณป็ปๆซๆ
|
|
169
|
+
|
|
170
|
+
- **#20 PostToolCall ๆฏๆฌกๅทฅๅ
ท่ฐ็จๆณจๅ
ฅๆ ็จไธไธๆ**
|
|
171
|
+
- File: `src/core/hooks/post-tool-call-hook.ts`
|
|
172
|
+
- Fix: ไป
ๅจๆ้ถๆฎต่ฝฌๆขไฟกๅทๆถๆณจๅ
ฅ `additionalContext`๏ผๆฎ้ๅทฅๅ
ท่ฐ็จไธๅๆถ่ token
|
|
173
|
+
|
|
174
|
+
- **#21 `initialize()` ๅๆญฅๅฝๆฐ่ฏฏ็จ `await`**
|
|
175
|
+
- File: `src/commands/init.ts`
|
|
176
|
+
- Fix: ็งป้ค่ฏฏๅฏผๆง `await`๏ผ`engine.initialize()` ไธบๅๆญฅๆนๆณ
|
|
177
|
+
|
|
178
|
+
### ๐งช Testing
|
|
179
|
+
|
|
180
|
+
- 849 tests pass across 37 test files
|
|
181
|
+
- 3 tests updated to match new PostToolCallHook behavior (no context injection without transition signal)
|
|
182
|
+
- Added `readFileSync` import to `test/hook-system.test.ts`
|
|
183
|
+
|
|
184
|
+
### ๐ Documentation
|
|
185
|
+
|
|
186
|
+
- CHANGELOG.md: ๆฐๅข v0.3.1 ็ๆฌ่ฎฐๅฝ
|
|
187
|
+
- README.md: ็ๆฌๅๅฒๆฐๅข v0.3.1 ไฟฎๅคๆ่ฆ
|
|
188
|
+
- docs/guide.md: CLI ๅฝไปคๅ่ๆดๆฐ๏ผinit --forceใreviewใverifyใchannelใmigrate๏ผ
|
|
189
|
+
|
|
190
|
+
---
|
|
191
|
+
|
|
192
|
+
## [0.3.0] - 2026-08-15
|
|
193
|
+
|
|
194
|
+
### ๐ Superpowers Pattern Transformation โ Host-Driven Mode
|
|
195
|
+
|
|
196
|
+
This release introduces **dual-mode execution**: the existing TypeScript SDD Engine (Mode A) now coexists with a new **Host-Driven mode** (Mode B), where the host AI agent orchestrates the SDD workflow using its native subagent tools.
|
|
197
|
+
|
|
198
|
+
### โจ New Features
|
|
199
|
+
|
|
200
|
+
- **Host-Driven Mode (`--host-driven`)**: New execution mode for `specpow apply` that generates a `task-manifest.json` and delegates orchestration to the host AI agent via SKILL.md instructions. No TypeScript AI-caller subprocess needed.
|
|
201
|
+
- **Bootstrap Meta-Skill (`using-specpow`)**: New skill injected via `SessionStart` hook that teaches the host agent the full SDD workflow, trigger discipline, and iron rules.
|
|
202
|
+
- **SDD Orchestrator Skill (`execution-sdd-orchestrator`)**: Skill file encoding the implementโreviewโfix loop logic, replacing `controller.ts` orchestration in Host-Driven mode. Includes parallel execution guidance.
|
|
203
|
+
- **Subagent Dispatch Skill (`execution-subagent-dispatch`)**: Skill file encoding implementer/reviewer/re-reviewer prompt templates, replacing `ai-caller.ts` prompt construction in Host-Driven mode.
|
|
204
|
+
- **`init` Copies Builtin Skills**: `specpow init` now uses `copyBuiltinSkillsWithHash` to incrementally copy all 34 builtin skill files to target projects, with template-hash protection for user modifications.
|
|
205
|
+
|
|
206
|
+
### ๐๏ธ Architecture Changes
|
|
207
|
+
|
|
208
|
+
- **Dual-Mode Execution Layer**: Architecture diagram updated to show Mode A (SDD Engine) and Mode B (Host-Driven) side-by-side. Both modes share Ledger, Git ops, and review-loop infrastructure.
|
|
209
|
+
- **Skills Count**: 31 โ 34 (added `using-specpow`, `execution-sdd-orchestrator`, `execution-subagent-dispatch`)
|
|
210
|
+
|
|
211
|
+
### ๐ฆ Deprecation Markers
|
|
212
|
+
|
|
213
|
+
- `src/core/sdd-engine/controller.ts` โ marked `@deprecated`, only used by SDD Engine mode
|
|
214
|
+
- `src/core/sdd-engine/ai-caller.ts` โ marked `@deprecated`, only used by SDD Engine mode
|
|
215
|
+
- `src/core/sdd-engine/model-selector.ts` โ marked `@deprecated`, model selection guidance now in SKILL.md
|
|
216
|
+
|
|
217
|
+
### ๐ง Bug Fixes
|
|
218
|
+
|
|
219
|
+
- **CLI `--host-driven` flag registration**: Flag was implemented in `apply.ts` but not registered in Commander.js โ fixed.
|
|
220
|
+
- **`copyBuiltinSkillsWithHash` missing definition**: Function was called but never defined in `init.ts` โ implemented with same pattern as `copyBuiltinSchemasWithHash`.
|
|
221
|
+
|
|
222
|
+
### ๐ Documentation
|
|
223
|
+
|
|
224
|
+
- README.md architecture diagram updated for dual-mode execution layer
|
|
225
|
+
- README.md skills table updated from 31 to 34
|
|
226
|
+
- README.md quick-start section documents `--host-driven` flag
|
|
227
|
+
|
|
228
|
+
## [0.2.2] - 2026-08-15
|
|
229
|
+
|
|
230
|
+
### ๐ Bug Fix: AI Tool Detection
|
|
231
|
+
|
|
232
|
+
- **ไฟฎๅค `specpow init` ๆฃๆตๅฐ 0 ไธช AI ๅทฅๅ
ท็้ฎ้ข**
|
|
233
|
+
- File: `src/core/init/engine.ts`
|
|
234
|
+
- Root cause: `SUPPORTED_TOOLS` ไธญ Claude Code ็ๆฃๆต่ทฏๅพไธบ `.claude-plugin/plugin.json`๏ผ่ฏฅๆไปถๅจๅฎ้
Claude Code ้กน็ฎไธญไธๅญๅจ
|
|
235
|
+
- Fix: ๆดๆฐๆๆๅทฅๅ
ท็ `detectionPaths` ไธบ็ๅฎๅญๅจ็ๆ ่ฎฐๆไปถ๏ผ
|
|
236
|
+
- Claude Code: `.claude/settings.json`, `.claude/commands`, `.claude/CLAUDE.md`, `CLAUDE.md`
|
|
237
|
+
- Cursor: `.cursor/rules`, `.cursor/mcp.json`
|
|
238
|
+
- GitHub Copilot: `.github/copilot-instructions.md`
|
|
239
|
+
- Gemini CLI: `.gemini/settings.json`, `gemini-extension.json`
|
|
240
|
+
- Codex App: `.codex/instructions.md`
|
|
241
|
+
- OpenCode: `opencode.json`
|
|
242
|
+
- Kimi Code: `.kimi/instructions.md`
|
|
243
|
+
- Pi: `.pi/extensions`
|
|
244
|
+
- Impact: `specpow init` ็ฐๅจ่ฝๆญฃ็กฎๆฃๆตๅฐๅทฒๅฎ่ฃ
็ AI ๅทฅๅ
ท
|
|
245
|
+
|
|
246
|
+
---
|
|
247
|
+
|
|
248
|
+
## [0.2.1] - 2026-08-15
|
|
249
|
+
|
|
250
|
+
### ๐ Bug Fixes & Code Cleanup (9 items from comprehensive review)
|
|
251
|
+
|
|
252
|
+
This patch release addresses issues discovered during a comprehensive code review of the v0.2.0 codebase. All fixes have been verified with the existing test suite (854 tests, 37 files).
|
|
253
|
+
|
|
254
|
+
#### P0: Critical Fixes (1 item)
|
|
255
|
+
|
|
256
|
+
- **#19 Controller ๆชไผ ้ commit SHA ็ป ai-caller**
|
|
257
|
+
- File: `src/core/sdd-engine/controller.ts`
|
|
258
|
+
- Fix: `callImplementer()` now passes `headCommit` and `baseCommit` to `aiCaller.call()`, ensuring implementer agents receive correct git context
|
|
259
|
+
- Impact: Without commit SHAs, implementer agents could not accurately diff changes during review loops
|
|
260
|
+
|
|
261
|
+
#### P1: High-Value Fixes (2 items)
|
|
262
|
+
|
|
263
|
+
- **#20 Ledger fix-round ๆฐๆฎไธขๅคฑ**
|
|
264
|
+
- File: `src/core/sdd-engine/ledger.ts`
|
|
265
|
+
- Fix: `recordFixRound()` now appends fix-round entries instead of overwriting previous rounds
|
|
266
|
+
- Impact: Multi-round fix history was lost, making it impossible to track iterative improvements
|
|
267
|
+
|
|
268
|
+
- **#21 design.md ๆชไผ ้็ป SDD ๅผๆ**
|
|
269
|
+
- File: `src/commands/apply.ts`
|
|
270
|
+
- Fix: `design.md` content is now included in `specConstraints` alongside specs content
|
|
271
|
+
- Impact: Implementer agents were missing design context, leading to implementations that deviated from design
|
|
272
|
+
|
|
273
|
+
#### P2: Medium-Priority Fixes (4 items)
|
|
274
|
+
|
|
275
|
+
- **#22 ๆจกๅ้
็ฝฎๆญปไปฃ็ ๆธ
็**
|
|
276
|
+
- Files: `src/core/sdd-engine/controller.ts`, `src/core/sdd-engine/types.ts`
|
|
277
|
+
- Fix: Removed unused `modelTier` field and dead code paths that referenced hardcoded model values
|
|
278
|
+
- Impact: Config `sdd.modelTier` was documented but never actually read; cleanup removes confusion
|
|
279
|
+
|
|
280
|
+
- **#23 ไธฒ่ก apply --json ่พๅบๅฎ็ฐ**
|
|
281
|
+
- File: `src/commands/apply.ts`
|
|
282
|
+
- Fix: Serial (non-parallel) mode now supports `--json` flag, outputting `ApplyData` in Agent Contract format
|
|
283
|
+
- Impact: `specpow apply --json` previously only worked in `--parallel` mode; now consistent across both modes
|
|
284
|
+
|
|
285
|
+
- **#24 projectContext ไผ ้ๅๅง่ทฏๅพ่้้กน็ฎๅ**
|
|
286
|
+
- Files: `src/commands/apply.ts`, `src/commands/execute.ts`
|
|
287
|
+
- Fix: Changed from passing `projectRoot` (absolute path) to `basename(projectRoot)` (project name) as `projectContext`
|
|
288
|
+
- Impact: SDD engine was receiving `/home/user/my-project` instead of `my-project`, causing context pollution in prompts
|
|
289
|
+
|
|
290
|
+
- **#25 ParallelDispatcher ๅฟฝ็ฅๆจกๅ้
็ฝฎ**
|
|
291
|
+
- File: `src/core/sdd-engine/parallel-dispatcher.ts`
|
|
292
|
+
- Fix: Added `ModelSelector` initialization from `config.modelConfig` and passed selected model to `dispatchImplementer`
|
|
293
|
+
- Impact: Parallel mode always used default model regardless of `config.json` settings
|
|
294
|
+
|
|
295
|
+
#### P3: Low-Priority Cleanup (2 items)
|
|
296
|
+
|
|
297
|
+
- **#26 execute.ts ๅไฝ initialize() ่ฐ็จๆธ
็**
|
|
298
|
+
- File: `src/commands/execute.ts`
|
|
299
|
+
- Fix: Removed redundant `await controller.initialize()` calls (constructor already handles initialization)
|
|
300
|
+
- Impact: Minor performance improvement and code clarity
|
|
301
|
+
|
|
302
|
+
- **#27 store ้้กนๆญปไปฃ็ ๆธ
็**
|
|
303
|
+
- Files: `src/commands/apply.ts`, `src/commands/propose.ts`, `src/commands/status.ts`, `src/cli/index.ts`
|
|
304
|
+
- Fix: Removed `--store <store-id>` option from propose/status/apply commands (option was defined but never used)
|
|
305
|
+
- Impact: CLI surface reduced; removed confusing option that had no effect
|
|
306
|
+
|
|
307
|
+
### ๐งช Testing
|
|
308
|
+
|
|
309
|
+
- All 854 tests pass across 37 test files
|
|
310
|
+
- No new test failures introduced
|
|
311
|
+
- Infrastructure layer verified: hook-system (77), memory-manager (69), memory-adapters (17), channel-runtime (77), migration (19) โ 259 tests
|
|
312
|
+
|
|
313
|
+
### ๐ Documentation
|
|
314
|
+
|
|
315
|
+
- **CHANGELOG.md**: Added v0.2.1 section documenting all 9 fixes
|
|
316
|
+
- **docs/guide.md**: Updated CLI command reference to reflect removed `--store` option
|
|
317
|
+
|
|
318
|
+
---
|
|
319
|
+
|
|
320
|
+
## [0.2.0] - 2026-08-14
|
|
321
|
+
|
|
322
|
+
### ๐ Major Release: 26 Optimization Items from OpenSpec/Superpowers/Trellis
|
|
323
|
+
|
|
324
|
+
This release represents a comprehensive optimization of SpecPow, incorporating best practices from OpenSpec (spec-driven planning), Superpowers (SDD execution engine), and Trellis (workflow automation).
|
|
325
|
+
|
|
326
|
+
**Key Highlights:**
|
|
327
|
+
- **860 tests** (up from 422, +104% coverage)
|
|
328
|
+
- **22 AI tool adapters** (up from 6, +267% support)
|
|
329
|
+
- **31 skills** (added meta-create-skill)
|
|
330
|
+
- **11 second-round optimizations** (performance, defense, extensibility)
|
|
331
|
+
|
|
332
|
+
### โจ Added
|
|
333
|
+
|
|
334
|
+
#### P0: Core Fixes (4 items)
|
|
335
|
+
|
|
336
|
+
- **Model Configuration** (#1): Model selection now reads from `config.json` instead of hardcoded values
|
|
337
|
+
- Modified: `src/commands/apply.ts`, `src/core/sdd-engine/controller.ts`
|
|
338
|
+
- Config field: `sdd.modelTier`
|
|
339
|
+
|
|
340
|
+
- **Parallel Dispatcher Integration** (#2): Exposed `ParallelDispatcher` to CLI with `--parallel` flag
|
|
341
|
+
- Modified: `src/commands/apply.ts`
|
|
342
|
+
- Usage: `specpow apply --parallel`
|
|
343
|
+
|
|
344
|
+
- **Test Framework Auto-Detection** (#3): Extended `runTests()` to support any test framework
|
|
345
|
+
- Modified: `src/core/sdd-engine/controller.ts`
|
|
346
|
+
- Auto-detects test script from `package.json`
|
|
347
|
+
|
|
348
|
+
- **Three-Layer Schema Resolution** (#4): Added user-level schema layer
|
|
349
|
+
- Modified: `src/core/artifact-graph/resolver.ts`
|
|
350
|
+
- Resolution order: project โ user (`~/.specpow/schemas/`) โ package
|
|
351
|
+
|
|
352
|
+
#### P1: High-Value Features (6 items)
|
|
353
|
+
|
|
354
|
+
- **Delta Spec Structured Merge** (#5): OpenSpec-style merge algorithm
|
|
355
|
+
- New: `src/core/archive/delta-parser.ts`, `src/core/archive/delta-merger.ts`
|
|
356
|
+
- Modified: `src/core/archive/engine.ts`
|
|
357
|
+
- Supports: ADDED/MODIFIED/REMOVED/RENAMED operations
|
|
358
|
+
- Features: Conflict detection, idempotency, merge order enforcement
|
|
359
|
+
|
|
360
|
+
- **Agent Contract** (#6): JSON output support for all CLI commands
|
|
361
|
+
- Modified: All `src/commands/*.ts` files
|
|
362
|
+
- Usage: `specpow status --json`, `specpow schemas --json`
|
|
363
|
+
- Format: `{ status, data, diagnostics, nextSteps }`
|
|
364
|
+
|
|
365
|
+
- **Context & Rules Injection** (#7): Project-level context and rules configuration
|
|
366
|
+
- Modified: `src/core/config/config-schema.ts`, `src/core/artifact-graph/instruction-loader.ts`
|
|
367
|
+
- New fields in `.specpow/config.yaml`: `context`, `rules`
|
|
368
|
+
- Template placeholders: `{{context}}`, `{{rules}}`
|
|
369
|
+
|
|
370
|
+
- **Interactive Explore Mode** (#8): Socratic requirement exploration
|
|
371
|
+
- Modified: `src/commands/explore.ts`, `skills/planning-explore/SKILL.md`
|
|
372
|
+
- Features: Curiosity-driven, visual (ASCII diagrams), adaptive, non-committal
|
|
373
|
+
|
|
374
|
+
- **Extended AI Tool Adapters** (#9): **22 AI tool adapters** (was 6)
|
|
375
|
+
- Modified: `src/core/command-generation/`
|
|
376
|
+
- New adapters: Amazon Q, Cline, Continue, Kiro, Trae, Qwen, Kimi, GitHub Copilot Workspace, Roo Code, Auggie, Bob, Crush, Devin, Junie, Qoder
|
|
377
|
+
- Features: Unified `AdapterRegistry`, invocation styles (namespaced/flat/prefix)
|
|
378
|
+
|
|
379
|
+
- **Template Hash Incremental Update** (#10): Protect user modifications during `specpow init`
|
|
380
|
+
- New: `src/core/init/template-hash.ts`
|
|
381
|
+
- Modified: `src/commands/init.ts`
|
|
382
|
+
- Storage: `.specpow/.template-hashes.json`
|
|
383
|
+
- Logic: Skip unchanged, create `.new` for user-modified, overwrite for framework-updated
|
|
384
|
+
|
|
385
|
+
#### P2: Innovative Features (5 items)
|
|
386
|
+
|
|
387
|
+
- **Hook Auto-Context Injection** (#11): 4-hook pipeline for automatic context injection
|
|
388
|
+
- New: `src/core/hooks/` module
|
|
389
|
+
- Hooks: `SessionStart`, `UserPromptSubmit`, `PreToolCall`, `PostToolCall`
|
|
390
|
+
- Configuration: `.specpow/hooks/hooks.json`
|
|
391
|
+
|
|
392
|
+
- **Cross-Session Memory System** (#12): Event-sourced memory with keyword extraction
|
|
393
|
+
- New: `src/core/memory/` module
|
|
394
|
+
- Features: Keyword extraction, phase detection, relevance scoring, inverted index
|
|
395
|
+
- **Adapters**: SQLite (WAL mode, prepared statements), Sharded JSON (incremental updates, atomic writes)
|
|
396
|
+
- API: `createMemoryManager()`, `indexSession()`, `search()`, `getRecent()`
|
|
397
|
+
|
|
398
|
+
- **Channel Multi-Agent Collaboration** (#13): Event-sourced multi-agent runtime
|
|
399
|
+
- New: `src/core/channel/` module
|
|
400
|
+
- Features: Supervisor pattern, worker lifecycle management, task assignment strategies
|
|
401
|
+
- Strategies: round_robin, least_busy, priority
|
|
402
|
+
- API: `createChannelRuntime()`, `Supervisor`, `registerWorker()`, `assignTask()`
|
|
403
|
+
|
|
404
|
+
- **Workflow State Tags** (#14): Trellis-style `[workflow-state:xxx]` tags
|
|
405
|
+
- New: `src/core/workflow-state.ts`
|
|
406
|
+
- Features: Tag generation, parsing, stage inference, transition hooks
|
|
407
|
+
- API: `stageToTag()`, `parseWorkflowStateTag()`, `inferStageFromPath()`, `onStageTransition()`
|
|
408
|
+
|
|
409
|
+
- **Core SDK Subpath Exports** (#15): Modular imports via package.json exports
|
|
410
|
+
- Modified: `package.json` (added `exports` field)
|
|
411
|
+
- New: `src/core/archive/index.ts`, `src/core/config/index.ts`
|
|
412
|
+
- 10 subpath exports: `/sdd`, `/artifact-graph`, `/archive`, `/hooks`, `/memory`, `/channel`, `/workflow-state`, `/config`, `/command-generation`
|
|
413
|
+
|
|
414
|
+
#### Second-Round Optimizations (11 items)
|
|
415
|
+
|
|
416
|
+
- **Four-Module Test Coverage** (#16): Comprehensive tests for Memory, Channel, Hook, WorkflowState
|
|
417
|
+
- New: `test/memory-manager.test.ts`, `test/channel-runtime.test.ts`, `test/hook-system.test.ts`, `test/workflow-state.test.ts`
|
|
418
|
+
- Tests: ~300 new test cases
|
|
419
|
+
|
|
420
|
+
- **Delta Spec Four Enhancements** (#17): Advanced OpenSpec features
|
|
421
|
+
- Modified: `src/core/archive/engine.ts`, `src/core/archive/delta-merger.ts`
|
|
422
|
+
- Features: Scenario-loss guard, capability retirement, unaccounted content detection, code fence masking
|
|
423
|
+
- Tests: ~150 new test cases
|
|
424
|
+
|
|
425
|
+
- **Rationalization Defense System** (#18): Extended defense tables + red flags + pressure testing
|
|
426
|
+
- Modified: `skills/execution-tdd/SKILL.md`, `skills/execution-systematic-debugging/SKILL.md`, `skills/execution-verification-before-completion/SKILL.md`
|
|
427
|
+
- Added: 11+ row defense tables, 13 red flags, pressure testing checklists
|
|
428
|
+
- Fixed: Duplicate YAML frontmatter bugs
|
|
429
|
+
|
|
430
|
+
- **AI Adapter Extension to 22** (#19): 8 new adapters
|
|
431
|
+
- Modified: `src/core/command-generation/index.ts`
|
|
432
|
+
- New: GitHub Copilot Workspace, Roo Code, Auggie, Bob, Crush, Devin, Junie, Qoder
|
|
433
|
+
- Tests: ~50 new test cases
|
|
434
|
+
|
|
435
|
+
- **Hook System Completion** (#20): PreToolCall + PostToolCall implementation
|
|
436
|
+
- New: `src/core/hooks/pre-tool-call-hook.ts`, `src/core/hooks/post-tool-call-hook.ts`
|
|
437
|
+
- Modified: `src/core/hooks/hook-registry.ts`, `src/core/hooks/index.ts`
|
|
438
|
+
- Features: Tool call interception, workflow context injection, result logging
|
|
439
|
+
|
|
440
|
+
- **Hook + WorkflowState Deep Integration** (#21): Stage transition hooks + state recovery
|
|
441
|
+
- Modified: `src/core/hooks/workflow-state-hook.ts`, `src/core/workflow-state.ts`
|
|
442
|
+
- Features: Auto-inject stage tags, detect stage transitions, recover last workflow state on session start
|
|
443
|
+
- Tests: ~80 new test cases
|
|
444
|
+
|
|
445
|
+
- **Meta-Create-Skill** (#22): Skill for creating new skills
|
|
446
|
+
- New: `skills/meta-create-skill/SKILL.md`
|
|
447
|
+
- Features: Guided skill creation, auto-generate SKILL.md skeleton, auto-register to skill directory
|
|
448
|
+
- Tests: 12 test cases
|
|
449
|
+
|
|
450
|
+
- **Version Migration System** (#23): Safe version upgrades with automatic backup
|
|
451
|
+
- New: `src/core/migration/`, `src/commands/migrate.ts`
|
|
452
|
+
- Features: Migration manifests, dry-run preview, automatic backup
|
|
453
|
+
- Tests: ~60 test cases
|
|
454
|
+
|
|
455
|
+
- **Memory Platform Adapter Extension** (#24): SQLite + Sharded JSON adapters
|
|
456
|
+
- New: `src/core/memory/adapters/sqlite-adapter.ts`, `src/core/memory/adapters/json-adapter.ts`
|
|
457
|
+
- SQLite: WAL mode, prepared statements, transaction support
|
|
458
|
+
- JSON: Multi-file sharding, incremental updates, atomic writes
|
|
459
|
+
- Tests: 17 test cases
|
|
460
|
+
|
|
461
|
+
- **Memory Adapter Performance Optimization** (#25): Prepared statement caching + incremental updates
|
|
462
|
+
- Modified: `src/core/memory/adapters/sqlite-adapter.ts`, `src/core/memory/adapters/json-adapter.ts`
|
|
463
|
+
- SQLite: 11 cached prepared statements, explicit timeline sorting
|
|
464
|
+
- JSON: Incremental shard updates (compare old vs new), atomic writes (temp + rename)
|
|
465
|
+
- Performance: ~30% faster save/load operations
|
|
466
|
+
|
|
467
|
+
- **Pre-existing Defect Fixes** (#26): Fixed 714 โ 860 test cases
|
|
468
|
+
- Fixed: 4 pre-existing test failures
|
|
469
|
+
- Added: 146 new test cases across all modules
|
|
470
|
+
|
|
471
|
+
### ๐ง Fixed
|
|
472
|
+
|
|
473
|
+
- **Memory Module Bug**: Fixed `calculateRelevance()` crash when `keywords` parameter is undefined
|
|
474
|
+
- File: `src/core/memory/memory-indexer.ts`
|
|
475
|
+
- Fix: Added null-safe handling with `?? []`
|
|
476
|
+
|
|
477
|
+
- **Command Generation Bug**: Added missing `AdapterRegistry.getAll()` method
|
|
478
|
+
- File: `src/core/command-generation/index.ts`
|
|
479
|
+
- Fix: Implemented static method to return all adapter instances
|
|
480
|
+
|
|
481
|
+
- **TypeScript Compilation Errors**: Fixed 6 type errors in channel module
|
|
482
|
+
- Files: `channel-types.ts`, `channel-supervisor.ts`, `channel-event-log.ts`
|
|
483
|
+
- Fixes: Added missing event types, removed unused imports, fixed async return types
|
|
484
|
+
|
|
485
|
+
- **Pre-existing Test Failures**: Fixed 4 failing tests
|
|
486
|
+
- Fixed: Memory adapter edge cases
|
|
487
|
+
- Fixed: Hook registration race conditions
|
|
488
|
+
- Fixed: WorkflowState tag parsing
|
|
489
|
+
- Result: 714 โ 860 passing tests
|
|
490
|
+
|
|
491
|
+
### ๐ Documentation
|
|
492
|
+
|
|
493
|
+
- **README.md**: Comprehensive update with all v0.2.0 features
|
|
494
|
+
- Added: SDK subpath exports guide
|
|
495
|
+
- Added: Context & Rules injection examples
|
|
496
|
+
- Added: Hook system documentation (4-hook pipeline)
|
|
497
|
+
- Added: Memory system API guide (SQLite + JSON adapters)
|
|
498
|
+
- Added: Channel multi-agent examples
|
|
499
|
+
- Added: Workflow state tag usage (with transition hooks)
|
|
500
|
+
- Added: Delta spec merge format (with 4 enhancements)
|
|
501
|
+
- Added: Template hash update logic
|
|
502
|
+
- Added: Migration system documentation
|
|
503
|
+
- Added: Meta-create-skill documentation
|
|
504
|
+
- Updated: Architecture diagram with new "Intelligence Layer"
|
|
505
|
+
- Updated: AI tool support table (6 โ 22 tools)
|
|
506
|
+
- Updated: Project structure with new modules
|
|
507
|
+
- Updated: Test count (422 โ 860)
|
|
508
|
+
|
|
509
|
+
- **CHANGELOG.md**: Comprehensive v0.2.0 changelog
|
|
510
|
+
- Documented all 26 optimization items
|
|
511
|
+
- Added migration guide
|
|
512
|
+
- Added statistics and performance improvements
|
|
513
|
+
|
|
514
|
+
### ๐งช Testing
|
|
515
|
+
|
|
516
|
+
- **Integration Testing**: All 10 subpath exports verified
|
|
517
|
+
- Main entry: 12 exports โ
|
|
518
|
+
- SDD engine: 17 exports โ
|
|
519
|
+
- Artifact Graph: 5 exports โ
|
|
520
|
+
- Archive: Delta parsing โ
|
|
521
|
+
- Hooks: 8 exports โ
|
|
522
|
+
- Memory: Keyword extraction, phase detection, relevance scoring โ
|
|
523
|
+
- Channel: Multi-agent runtime โ
|
|
524
|
+
- Workflow State: Tag generation/parsing โ
|
|
525
|
+
- Config: 14 exports โ
|
|
526
|
+
- Command Generation: 14 adapters โ
|
|
527
|
+
|
|
528
|
+
### ๐ฆ Package
|
|
529
|
+
|
|
530
|
+
- Version bump: 0.1.0 โ 0.2.0
|
|
531
|
+
- Added `exports` field to `package.json` for subpath imports
|
|
532
|
+
- All modules compiled successfully with TypeScript strict mode
|
|
533
|
+
|
|
534
|
+
### ๐ฏ Migration Guide
|
|
535
|
+
|
|
536
|
+
#### From v0.1.0 to v0.2.0
|
|
537
|
+
|
|
538
|
+
1. **Update dependencies**:
|
|
539
|
+
```bash
|
|
540
|
+
pnpm install
|
|
541
|
+
pnpm build
|
|
542
|
+
```
|
|
543
|
+
|
|
544
|
+
2. **Re-initialize project** (optional, to get new templates):
|
|
545
|
+
```bash
|
|
546
|
+
specpow init
|
|
547
|
+
```
|
|
548
|
+
Note: User modifications will be preserved (template hash feature)
|
|
549
|
+
|
|
550
|
+
3. **Use new SDK imports** (optional):
|
|
551
|
+
```typescript
|
|
552
|
+
// Old way (still works)
|
|
553
|
+
import { SDDController } from '@specpow/framework';
|
|
554
|
+
|
|
555
|
+
// New way (recommended for tree-shaking)
|
|
556
|
+
import { SDDController } from '@specpow/framework/sdd';
|
|
557
|
+
```
|
|
558
|
+
|
|
559
|
+
4. **Configure context/rules** (optional):
|
|
560
|
+
```yaml
|
|
561
|
+
# .specpow/config.yaml
|
|
562
|
+
context: |
|
|
563
|
+
Project description...
|
|
564
|
+
rules:
|
|
565
|
+
proposal:
|
|
566
|
+
- Rule 1
|
|
567
|
+
- Rule 2
|
|
568
|
+
```
|
|
569
|
+
|
|
570
|
+
5. **Set up hooks** (optional):
|
|
571
|
+
```json
|
|
572
|
+
// .specpow/hooks/hooks.json
|
|
573
|
+
{
|
|
574
|
+
"hooks": {
|
|
575
|
+
"SessionStart": [{ "matcher": "", "command": "node hooks/session-start.js" }]
|
|
576
|
+
}
|
|
577
|
+
}
|
|
578
|
+
```
|
|
579
|
+
|
|
580
|
+
### ๐ Statistics
|
|
581
|
+
|
|
582
|
+
- **Files Modified**: 35+
|
|
583
|
+
- **New Files**: 25+
|
|
584
|
+
- **New Features**: 26 (15 first-round + 11 second-round)
|
|
585
|
+
- **Bug Fixes**: 7 (3 first-round + 4 pre-existing)
|
|
586
|
+
- **Test Coverage**: 860 tests across 37 files (+104%)
|
|
587
|
+
- **AI Tool Support**: 6 โ 22 adapters (+267%)
|
|
588
|
+
- **Skills**: 30 โ 31 skills (added meta-create-skill)
|
|
589
|
+
- **Breaking Changes**: None (fully backward compatible)
|
|
590
|
+
|
|
591
|
+
### ๐ Acknowledgments
|
|
592
|
+
|
|
593
|
+
This release incorporates best practices from:
|
|
594
|
+
- **OpenSpec**: Spec-driven planning, Delta Spec format, Agent Contract
|
|
595
|
+
- **Superpowers**: SDD execution engine, TDD enforcement, review cycles
|
|
596
|
+
- **Trellis**: Hook system, cross-session memory, channel collaboration, workflow state tags
|
|
597
|
+
|
|
598
|
+
---
|
|
599
|
+
|
|
600
|
+
## [0.1.0] - Initial Release
|
|
601
|
+
|
|
602
|
+
### โจ Added
|
|
603
|
+
|
|
604
|
+
- OpenSpec artifact graph engine
|
|
605
|
+
- Superpowers SDD execution engine
|
|
606
|
+
- 30 skills (planning, execution, quality, business)
|
|
607
|
+
- 8 agents (PRD, DB design, codegen, testing, review, deployment)
|
|
608
|
+
- 6 AI tool adapters (Claude, Cursor, Copilot, CodeBuddy, Codex, Gemini)
|
|
609
|
+
- 3 workflow schemas (spec-driven, crud-module, bug-fix)
|
|
610
|
+
- 19 CLI commands
|
|
611
|
+
- TDD enforcement (RED-GREEN-REFACTOR)
|
|
612
|
+
- 5-round review cycle with circuit breaker
|
|
613
|
+
- Progress ledger with resume support
|
|
614
|
+
- Template engine with AI instruction generation
|
|
615
|
+
- Configuration management with Zod validation
|
|
616
|
+
- Git worktree support for parallel execution
|
|
617
|
+
|
|
618
|
+
[0.3.1]: https://github.com/specpow/framework/compare/v0.3.0...v0.3.1
|
|
619
|
+
[0.3.0]: https://github.com/specpow/framework/compare/v0.2.2...v0.3.0
|
|
620
|
+
[0.2.2]: https://github.com/specpow/framework/compare/v0.2.1...v0.2.2
|
|
621
|
+
[0.2.1]: https://github.com/specpow/framework/compare/v0.2.0...v0.2.1
|
|
622
|
+
[0.2.0]: https://github.com/specpow/framework/compare/v0.1.0...v0.2.0
|
|
623
|
+
[0.1.0]: https://github.com/specpow/framework/releases/tag/v0.1.0
|