@theglitchking/persistent-planning 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/.claude-plugin/marketplace.json +2 -2
- package/.claude-plugin/plugin.json +1 -1
- package/.documentation/INDEX.md +2 -2
- package/.documentation/REGISTRY.md +2 -2
- package/.documentation/agents/INDEX.md +2 -2
- package/.documentation/agents/REGISTRY.md +2 -2
- package/.documentation/api/INDEX.md +2 -2
- package/.documentation/api/REGISTRY.md +2 -2
- package/.documentation/architecture/INDEX.md +2 -2
- package/.documentation/architecture/REGISTRY.md +2 -2
- package/.documentation/architecture/lg-plan-artifact-lifecycle.md +4 -3
- package/.documentation/backups/INDEX.md +2 -2
- package/.documentation/backups/REGISTRY.md +2 -2
- package/.documentation/database/INDEX.md +2 -2
- package/.documentation/database/REGISTRY.md +2 -2
- package/.documentation/devops/INDEX.md +2 -2
- package/.documentation/devops/REGISTRY.md +2 -2
- package/.documentation/features/INDEX.md +2 -2
- package/.documentation/features/REGISTRY.md +2 -2
- package/.documentation/plans/INDEX.md +2 -2
- package/.documentation/plans/REGISTRY.md +2 -2
- package/.documentation/procedures/INDEX.md +2 -2
- package/.documentation/procedures/REGISTRY.md +2 -2
- package/.documentation/quickstart/INDEX.md +2 -2
- package/.documentation/quickstart/REGISTRY.md +2 -2
- package/.documentation/reference/INDEX.md +2 -2
- package/.documentation/reference/REGISTRY.md +2 -2
- package/.documentation/security/INDEX.md +2 -2
- package/.documentation/security/REGISTRY.md +2 -2
- package/.documentation/standards/INDEX.md +2 -2
- package/.documentation/standards/REGISTRY.md +2 -2
- package/.documentation/standards/mandatory-closing-phases.md +39 -25
- package/.documentation/testing/INDEX.md +2 -2
- package/.documentation/testing/REGISTRY.md +2 -2
- package/.documentation/testing/test-suite.md +3 -3
- package/.documentation/troubleshooting/INDEX.md +2 -2
- package/.documentation/troubleshooting/REGISTRY.md +2 -2
- package/.documentation/troubleshooting/stale-skill-dir-drift.md +3 -2
- package/.documentation/workflows/INDEX.md +2 -2
- package/.documentation/workflows/REGISTRY.md +2 -2
- package/CHANGELOG.md +62 -0
- package/bin/persistent-planning.js +0 -26
- package/package.json +2 -2
- package/scripts/init-phase.sh +11 -1
- package/scripts/init-planning.sh +9 -3
- package/skills/persistent-planning/SKILL.md +9 -3
- package/templates/lg/phase.md +9 -3
|
@@ -6,13 +6,13 @@
|
|
|
6
6
|
},
|
|
7
7
|
"metadata": {
|
|
8
8
|
"description": "Official marketplace for persistent-planning - Persistent markdown-based planning for Claude Code. Context engineering pattern with task directories, progress tracking, and working memory that persists across sessions.",
|
|
9
|
-
"version": "3.
|
|
9
|
+
"version": "3.5.0"
|
|
10
10
|
},
|
|
11
11
|
"plugins": [
|
|
12
12
|
{
|
|
13
13
|
"name": "persistent-planning",
|
|
14
14
|
"description": "Persistent markdown-based planning for Claude Code. Uses on-disk markdown files as working memory for planning, progress tracking, and knowledge storage. Plans persist across sessions and support multiple concurrent tasks.",
|
|
15
|
-
"version": "3.
|
|
15
|
+
"version": "3.5.0",
|
|
16
16
|
"author": {
|
|
17
17
|
"name": "TheGlitchKing"
|
|
18
18
|
},
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "persistent-planning",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.5.0",
|
|
4
4
|
"description": "Persistent markdown-based planning with task directories, progress tracking, and context engineering for multi-step Claude Code workflows",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "TheGlitchKing"
|
package/.documentation/INDEX.md
CHANGED
|
@@ -3,7 +3,7 @@ title: Documentation Index
|
|
|
3
3
|
tier: reference
|
|
4
4
|
domains: [root]
|
|
5
5
|
status: active
|
|
6
|
-
last_updated: '2026-09-
|
|
6
|
+
last_updated: '2026-09-26'
|
|
7
7
|
version: '1.0.0'
|
|
8
8
|
purpose: Navigation hub for all documentation
|
|
9
9
|
---
|
|
@@ -219,6 +219,6 @@ purpose: Navigation hub for all documentation
|
|
|
219
219
|
|
|
220
220
|
## Maintenance
|
|
221
221
|
|
|
222
|
-
- **Last generated:** 2026-09-
|
|
222
|
+
- **Last generated:** 2026-09-26
|
|
223
223
|
- **Run maintenance:** `npx hit-em-with-the-docs maintain`
|
|
224
224
|
- **Regenerate index:** `npx hit-em-with-the-docs index`
|
|
@@ -3,7 +3,7 @@ title: Documentation Registry
|
|
|
3
3
|
tier: reference
|
|
4
4
|
domains: [root]
|
|
5
5
|
status: active
|
|
6
|
-
last_updated: '2026-09-
|
|
6
|
+
last_updated: '2026-09-26'
|
|
7
7
|
version: '1.0.0'
|
|
8
8
|
purpose: Quick reference for all documentation domains
|
|
9
9
|
---
|
|
@@ -77,4 +77,4 @@ purpose: Quick reference for all documentation domains
|
|
|
77
77
|
|
|
78
78
|
---
|
|
79
79
|
|
|
80
|
-
*Last updated: 2026-09-
|
|
80
|
+
*Last updated: 2026-09-26*
|
|
@@ -3,7 +3,7 @@ title: Agents Documentation Index
|
|
|
3
3
|
tier: reference
|
|
4
4
|
domains: [agents]
|
|
5
5
|
status: active
|
|
6
|
-
last_updated: '2026-09-
|
|
6
|
+
last_updated: '2026-09-26'
|
|
7
7
|
version: '1.0.0'
|
|
8
8
|
purpose: Complete listing of agents documentation
|
|
9
9
|
---
|
|
@@ -40,4 +40,4 @@ This domain covers: agent, agents, ai, assistant, expert, specialist, llm, langc
|
|
|
40
40
|
|
|
41
41
|
---
|
|
42
42
|
|
|
43
|
-
*Last updated: 2026-09-
|
|
43
|
+
*Last updated: 2026-09-26*
|
|
@@ -3,7 +3,7 @@ title: Agents Registry
|
|
|
3
3
|
tier: reference
|
|
4
4
|
domains: [agents]
|
|
5
5
|
status: active
|
|
6
|
-
last_updated: '2026-09-
|
|
6
|
+
last_updated: '2026-09-26'
|
|
7
7
|
version: '1.0.0'
|
|
8
8
|
purpose: Quick reference for agents documentation
|
|
9
9
|
---
|
|
@@ -35,4 +35,4 @@ purpose: Quick reference for agents documentation
|
|
|
35
35
|
|
|
36
36
|
---
|
|
37
37
|
|
|
38
|
-
*Last updated: 2026-09-
|
|
38
|
+
*Last updated: 2026-09-26*
|
|
@@ -3,7 +3,7 @@ title: API Documentation Index
|
|
|
3
3
|
tier: reference
|
|
4
4
|
domains: [api]
|
|
5
5
|
status: active
|
|
6
|
-
last_updated: '2026-09-
|
|
6
|
+
last_updated: '2026-09-26'
|
|
7
7
|
version: '1.0.0'
|
|
8
8
|
purpose: Complete listing of api documentation
|
|
9
9
|
---
|
|
@@ -40,4 +40,4 @@ This domain covers: api, endpoint, endpoints, route, routes, rest, restful, grap
|
|
|
40
40
|
|
|
41
41
|
---
|
|
42
42
|
|
|
43
|
-
*Last updated: 2026-09-
|
|
43
|
+
*Last updated: 2026-09-26*
|
|
@@ -3,7 +3,7 @@ title: API Registry
|
|
|
3
3
|
tier: reference
|
|
4
4
|
domains: [api]
|
|
5
5
|
status: active
|
|
6
|
-
last_updated: '2026-09-
|
|
6
|
+
last_updated: '2026-09-26'
|
|
7
7
|
version: '1.0.0'
|
|
8
8
|
purpose: Quick reference for api documentation
|
|
9
9
|
---
|
|
@@ -35,4 +35,4 @@ purpose: Quick reference for api documentation
|
|
|
35
35
|
|
|
36
36
|
---
|
|
37
37
|
|
|
38
|
-
*Last updated: 2026-09-
|
|
38
|
+
*Last updated: 2026-09-26*
|
|
@@ -3,7 +3,7 @@ title: Architecture Documentation Index
|
|
|
3
3
|
tier: reference
|
|
4
4
|
domains: [architecture]
|
|
5
5
|
status: active
|
|
6
|
-
last_updated: '2026-09-
|
|
6
|
+
last_updated: '2026-09-26'
|
|
7
7
|
version: '1.0.0'
|
|
8
8
|
purpose: Complete listing of architecture documentation
|
|
9
9
|
---
|
|
@@ -47,4 +47,4 @@ This domain covers: architecture, design, system, system-design, pattern, patter
|
|
|
47
47
|
|
|
48
48
|
---
|
|
49
49
|
|
|
50
|
-
*Last updated: 2026-09-
|
|
50
|
+
*Last updated: 2026-09-26*
|
|
@@ -3,7 +3,7 @@ title: Architecture Registry
|
|
|
3
3
|
tier: reference
|
|
4
4
|
domains: [architecture]
|
|
5
5
|
status: active
|
|
6
|
-
last_updated: '2026-09-
|
|
6
|
+
last_updated: '2026-09-26'
|
|
7
7
|
version: '1.0.0'
|
|
8
8
|
purpose: Quick reference for architecture documentation
|
|
9
9
|
---
|
|
@@ -54,4 +54,4 @@ purpose: Quick reference for architecture documentation
|
|
|
54
54
|
|
|
55
55
|
---
|
|
56
56
|
|
|
57
|
-
*Last updated: 2026-09-
|
|
57
|
+
*Last updated: 2026-09-26*
|
|
@@ -57,17 +57,18 @@ It **anchors on the MANDATORY marker, never on line numbers.** The list is a
|
|
|
57
57
|
human-editable surface; positions do not survive contact with editing. This is tested
|
|
58
58
|
against a hand-reordered, partially-checked, annotated list.
|
|
59
59
|
|
|
60
|
-
## The
|
|
60
|
+
## The three closers
|
|
61
61
|
|
|
62
|
-
Every phase is scaffolded with
|
|
62
|
+
Every phase is scaffolded with all three closing tasks as real directories, in this order:
|
|
63
63
|
|
|
64
64
|
```
|
|
65
|
+
<phase>/cleanup-remove-junk-and-unused-code/
|
|
65
66
|
<phase>/validate-success-through-comprehensive-testing/
|
|
66
67
|
<phase>/documentation-pass-create-update-deprecate-docs/
|
|
67
68
|
```
|
|
68
69
|
|
|
69
70
|
Each gets `task.md` (with `mandatory: true`, `parallelizable: false`), `notes.md`,
|
|
70
|
-
`atoms/`, and seeded atoms — not empty placeholders.
|
|
71
|
+
`atoms/`, and seeded atoms — not empty placeholders. The original two were previously lines
|
|
71
72
|
of prose in `phase.md`, which made the most important tasks in every plan the only
|
|
72
73
|
ones with no artifact a subagent could read and nowhere to record decisions.
|
|
73
74
|
|
|
@@ -3,7 +3,7 @@ title: Backups Documentation Index
|
|
|
3
3
|
tier: reference
|
|
4
4
|
domains: [backups]
|
|
5
5
|
status: active
|
|
6
|
-
last_updated: '2026-09-
|
|
6
|
+
last_updated: '2026-09-26'
|
|
7
7
|
version: '1.0.0'
|
|
8
8
|
purpose: Complete listing of backups documentation
|
|
9
9
|
---
|
|
@@ -40,4 +40,4 @@ This domain covers: backup, backups, restore, recovery, disaster, disaster-recov
|
|
|
40
40
|
|
|
41
41
|
---
|
|
42
42
|
|
|
43
|
-
*Last updated: 2026-09-
|
|
43
|
+
*Last updated: 2026-09-26*
|
|
@@ -3,7 +3,7 @@ title: Backups Registry
|
|
|
3
3
|
tier: reference
|
|
4
4
|
domains: [backups]
|
|
5
5
|
status: active
|
|
6
|
-
last_updated: '2026-09-
|
|
6
|
+
last_updated: '2026-09-26'
|
|
7
7
|
version: '1.0.0'
|
|
8
8
|
purpose: Quick reference for backups documentation
|
|
9
9
|
---
|
|
@@ -35,4 +35,4 @@ purpose: Quick reference for backups documentation
|
|
|
35
35
|
|
|
36
36
|
---
|
|
37
37
|
|
|
38
|
-
*Last updated: 2026-09-
|
|
38
|
+
*Last updated: 2026-09-26*
|
|
@@ -3,7 +3,7 @@ title: Database Documentation Index
|
|
|
3
3
|
tier: reference
|
|
4
4
|
domains: [database]
|
|
5
5
|
status: active
|
|
6
|
-
last_updated: '2026-09-
|
|
6
|
+
last_updated: '2026-09-26'
|
|
7
7
|
version: '1.0.0'
|
|
8
8
|
purpose: Complete listing of database documentation
|
|
9
9
|
---
|
|
@@ -40,4 +40,4 @@ This domain covers: database, db, postgres, postgresql, mysql, sql, schema, migr
|
|
|
40
40
|
|
|
41
41
|
---
|
|
42
42
|
|
|
43
|
-
*Last updated: 2026-09-
|
|
43
|
+
*Last updated: 2026-09-26*
|
|
@@ -3,7 +3,7 @@ title: Database Registry
|
|
|
3
3
|
tier: reference
|
|
4
4
|
domains: [database]
|
|
5
5
|
status: active
|
|
6
|
-
last_updated: '2026-09-
|
|
6
|
+
last_updated: '2026-09-26'
|
|
7
7
|
version: '1.0.0'
|
|
8
8
|
purpose: Quick reference for database documentation
|
|
9
9
|
---
|
|
@@ -35,4 +35,4 @@ purpose: Quick reference for database documentation
|
|
|
35
35
|
|
|
36
36
|
---
|
|
37
37
|
|
|
38
|
-
*Last updated: 2026-09-
|
|
38
|
+
*Last updated: 2026-09-26*
|
|
@@ -3,7 +3,7 @@ title: DevOps Documentation Index
|
|
|
3
3
|
tier: reference
|
|
4
4
|
domains: [devops]
|
|
5
5
|
status: active
|
|
6
|
-
last_updated: '2026-09-
|
|
6
|
+
last_updated: '2026-09-26'
|
|
7
7
|
version: '1.0.0'
|
|
8
8
|
purpose: Complete listing of devops documentation
|
|
9
9
|
---
|
|
@@ -40,4 +40,4 @@ This domain covers: devops, deployment, deploy, ci, cd, ci/cd, pipeline, docker,
|
|
|
40
40
|
|
|
41
41
|
---
|
|
42
42
|
|
|
43
|
-
*Last updated: 2026-09-
|
|
43
|
+
*Last updated: 2026-09-26*
|
|
@@ -3,7 +3,7 @@ title: DevOps Registry
|
|
|
3
3
|
tier: reference
|
|
4
4
|
domains: [devops]
|
|
5
5
|
status: active
|
|
6
|
-
last_updated: '2026-09-
|
|
6
|
+
last_updated: '2026-09-26'
|
|
7
7
|
version: '1.0.0'
|
|
8
8
|
purpose: Quick reference for devops documentation
|
|
9
9
|
---
|
|
@@ -35,4 +35,4 @@ purpose: Quick reference for devops documentation
|
|
|
35
35
|
|
|
36
36
|
---
|
|
37
37
|
|
|
38
|
-
*Last updated: 2026-09-
|
|
38
|
+
*Last updated: 2026-09-26*
|
|
@@ -3,7 +3,7 @@ title: Features Documentation Index
|
|
|
3
3
|
tier: reference
|
|
4
4
|
domains: [features]
|
|
5
5
|
status: active
|
|
6
|
-
last_updated: '2026-09-
|
|
6
|
+
last_updated: '2026-09-26'
|
|
7
7
|
version: '1.0.0'
|
|
8
8
|
purpose: Complete listing of features documentation
|
|
9
9
|
---
|
|
@@ -40,4 +40,4 @@ This domain covers: feature, features, implementation, guide, how-to, tutorial,
|
|
|
40
40
|
|
|
41
41
|
---
|
|
42
42
|
|
|
43
|
-
*Last updated: 2026-09-
|
|
43
|
+
*Last updated: 2026-09-26*
|
|
@@ -3,7 +3,7 @@ title: Features Registry
|
|
|
3
3
|
tier: reference
|
|
4
4
|
domains: [features]
|
|
5
5
|
status: active
|
|
6
|
-
last_updated: '2026-09-
|
|
6
|
+
last_updated: '2026-09-26'
|
|
7
7
|
version: '1.0.0'
|
|
8
8
|
purpose: Quick reference for features documentation
|
|
9
9
|
---
|
|
@@ -35,4 +35,4 @@ purpose: Quick reference for features documentation
|
|
|
35
35
|
|
|
36
36
|
---
|
|
37
37
|
|
|
38
|
-
*Last updated: 2026-09-
|
|
38
|
+
*Last updated: 2026-09-26*
|
|
@@ -3,7 +3,7 @@ title: Plans Documentation Index
|
|
|
3
3
|
tier: reference
|
|
4
4
|
domains: [plans]
|
|
5
5
|
status: active
|
|
6
|
-
last_updated: '2026-09-
|
|
6
|
+
last_updated: '2026-09-26'
|
|
7
7
|
version: '1.0.0'
|
|
8
8
|
purpose: Complete listing of plans documentation
|
|
9
9
|
---
|
|
@@ -40,4 +40,4 @@ This domain covers: plan, plans, planning, roadmap, proposal, proposals, rfc, de
|
|
|
40
40
|
|
|
41
41
|
---
|
|
42
42
|
|
|
43
|
-
*Last updated: 2026-09-
|
|
43
|
+
*Last updated: 2026-09-26*
|
|
@@ -3,7 +3,7 @@ title: Plans Registry
|
|
|
3
3
|
tier: reference
|
|
4
4
|
domains: [plans]
|
|
5
5
|
status: active
|
|
6
|
-
last_updated: '2026-09-
|
|
6
|
+
last_updated: '2026-09-26'
|
|
7
7
|
version: '1.0.0'
|
|
8
8
|
purpose: Quick reference for plans documentation
|
|
9
9
|
---
|
|
@@ -35,4 +35,4 @@ purpose: Quick reference for plans documentation
|
|
|
35
35
|
|
|
36
36
|
---
|
|
37
37
|
|
|
38
|
-
*Last updated: 2026-09-
|
|
38
|
+
*Last updated: 2026-09-26*
|
|
@@ -3,7 +3,7 @@ title: Procedures Documentation Index
|
|
|
3
3
|
tier: reference
|
|
4
4
|
domains: [procedures]
|
|
5
5
|
status: active
|
|
6
|
-
last_updated: '2026-09-
|
|
6
|
+
last_updated: '2026-09-26'
|
|
7
7
|
version: '1.0.0'
|
|
8
8
|
purpose: Complete listing of procedures documentation
|
|
9
9
|
---
|
|
@@ -40,4 +40,4 @@ This domain covers: procedure, procedures, sop, standard-operating-procedure, st
|
|
|
40
40
|
|
|
41
41
|
---
|
|
42
42
|
|
|
43
|
-
*Last updated: 2026-09-
|
|
43
|
+
*Last updated: 2026-09-26*
|
|
@@ -3,7 +3,7 @@ title: Procedures Registry
|
|
|
3
3
|
tier: reference
|
|
4
4
|
domains: [procedures]
|
|
5
5
|
status: active
|
|
6
|
-
last_updated: '2026-09-
|
|
6
|
+
last_updated: '2026-09-26'
|
|
7
7
|
version: '1.0.0'
|
|
8
8
|
purpose: Quick reference for procedures documentation
|
|
9
9
|
---
|
|
@@ -50,4 +50,4 @@ purpose: Quick reference for procedures documentation
|
|
|
50
50
|
|
|
51
51
|
---
|
|
52
52
|
|
|
53
|
-
*Last updated: 2026-09-
|
|
53
|
+
*Last updated: 2026-09-26*
|
|
@@ -3,7 +3,7 @@ title: Quickstart Documentation Index
|
|
|
3
3
|
tier: reference
|
|
4
4
|
domains: [quickstart]
|
|
5
5
|
status: active
|
|
6
|
-
last_updated: '2026-09-
|
|
6
|
+
last_updated: '2026-09-26'
|
|
7
7
|
version: '1.0.0'
|
|
8
8
|
purpose: Complete listing of quickstart documentation
|
|
9
9
|
---
|
|
@@ -39,4 +39,4 @@ This domain covers: quickstart, quick-start, getting-started, setup, install, in
|
|
|
39
39
|
|
|
40
40
|
---
|
|
41
41
|
|
|
42
|
-
*Last updated: 2026-09-
|
|
42
|
+
*Last updated: 2026-09-26*
|
|
@@ -3,7 +3,7 @@ title: Quickstart Registry
|
|
|
3
3
|
tier: reference
|
|
4
4
|
domains: [quickstart]
|
|
5
5
|
status: active
|
|
6
|
-
last_updated: '2026-09-
|
|
6
|
+
last_updated: '2026-09-26'
|
|
7
7
|
version: '1.0.0'
|
|
8
8
|
purpose: Quick reference for quickstart documentation
|
|
9
9
|
---
|
|
@@ -48,4 +48,4 @@ purpose: Quick reference for quickstart documentation
|
|
|
48
48
|
|
|
49
49
|
---
|
|
50
50
|
|
|
51
|
-
*Last updated: 2026-09-
|
|
51
|
+
*Last updated: 2026-09-26*
|
|
@@ -3,7 +3,7 @@ title: Reference Documentation Index
|
|
|
3
3
|
tier: reference
|
|
4
4
|
domains: [reference]
|
|
5
5
|
status: active
|
|
6
|
-
last_updated: '2026-09-
|
|
6
|
+
last_updated: '2026-09-26'
|
|
7
7
|
version: '1.0.0'
|
|
8
8
|
purpose: Complete listing of reference documentation
|
|
9
9
|
---
|
|
@@ -46,4 +46,4 @@ This domain covers: schema, frontmatter, workspace.json, field, enum, cli, flags
|
|
|
46
46
|
|
|
47
47
|
---
|
|
48
48
|
|
|
49
|
-
*Last updated: 2026-09-
|
|
49
|
+
*Last updated: 2026-09-26*
|
|
@@ -3,7 +3,7 @@ title: Reference Registry
|
|
|
3
3
|
tier: reference
|
|
4
4
|
domains: [reference]
|
|
5
5
|
status: active
|
|
6
|
-
last_updated: '2026-09-
|
|
6
|
+
last_updated: '2026-09-26'
|
|
7
7
|
version: '1.0.0'
|
|
8
8
|
purpose: Quick reference for reference documentation
|
|
9
9
|
---
|
|
@@ -52,4 +52,4 @@ purpose: Quick reference for reference documentation
|
|
|
52
52
|
|
|
53
53
|
---
|
|
54
54
|
|
|
55
|
-
*Last updated: 2026-09-
|
|
55
|
+
*Last updated: 2026-09-26*
|
|
@@ -3,7 +3,7 @@ title: Security Documentation Index
|
|
|
3
3
|
tier: reference
|
|
4
4
|
domains: [security]
|
|
5
5
|
status: active
|
|
6
|
-
last_updated: '2026-09-
|
|
6
|
+
last_updated: '2026-09-26'
|
|
7
7
|
version: '1.0.0'
|
|
8
8
|
purpose: Complete listing of security documentation
|
|
9
9
|
---
|
|
@@ -40,4 +40,4 @@ This domain covers: security, auth, authentication, authorization, oauth, jwt, k
|
|
|
40
40
|
|
|
41
41
|
---
|
|
42
42
|
|
|
43
|
-
*Last updated: 2026-09-
|
|
43
|
+
*Last updated: 2026-09-26*
|
|
@@ -3,7 +3,7 @@ title: Security Registry
|
|
|
3
3
|
tier: reference
|
|
4
4
|
domains: [security]
|
|
5
5
|
status: active
|
|
6
|
-
last_updated: '2026-09-
|
|
6
|
+
last_updated: '2026-09-26'
|
|
7
7
|
version: '1.0.0'
|
|
8
8
|
purpose: Quick reference for security documentation
|
|
9
9
|
---
|
|
@@ -35,4 +35,4 @@ purpose: Quick reference for security documentation
|
|
|
35
35
|
|
|
36
36
|
---
|
|
37
37
|
|
|
38
|
-
*Last updated: 2026-09-
|
|
38
|
+
*Last updated: 2026-09-26*
|
|
@@ -3,7 +3,7 @@ title: Standards Documentation Index
|
|
|
3
3
|
tier: reference
|
|
4
4
|
domains: [standards]
|
|
5
5
|
status: active
|
|
6
|
-
last_updated: '2026-09-
|
|
6
|
+
last_updated: '2026-09-26'
|
|
7
7
|
version: '1.0.0'
|
|
8
8
|
purpose: Complete listing of standards documentation
|
|
9
9
|
---
|
|
@@ -40,4 +40,4 @@ This domain covers: standard, standards, convention, conventions, pattern, patte
|
|
|
40
40
|
|
|
41
41
|
---
|
|
42
42
|
|
|
43
|
-
*Last updated: 2026-09-
|
|
43
|
+
*Last updated: 2026-09-26*
|
|
@@ -3,7 +3,7 @@ title: Standards Registry
|
|
|
3
3
|
tier: reference
|
|
4
4
|
domains: [standards]
|
|
5
5
|
status: active
|
|
6
|
-
last_updated: '2026-09-
|
|
6
|
+
last_updated: '2026-09-26'
|
|
7
7
|
version: '1.0.0'
|
|
8
8
|
purpose: Quick reference for standards documentation
|
|
9
9
|
---
|
|
@@ -50,4 +50,4 @@ purpose: Quick reference for standards documentation
|
|
|
50
50
|
|
|
51
51
|
---
|
|
52
52
|
|
|
53
|
-
*Last updated: 2026-09-
|
|
53
|
+
*Last updated: 2026-09-26*
|
|
@@ -10,9 +10,9 @@ tags:
|
|
|
10
10
|
status: active
|
|
11
11
|
last_updated: '2026-08-31'
|
|
12
12
|
version: 1.0.0
|
|
13
|
-
purpose: The
|
|
14
|
-
success through comprehensive testing, then a documentation pass —
|
|
15
|
-
exist, how they are seeded, and how to keep them last.
|
|
13
|
+
purpose: The three phases every persistent-planning plan must end with — cleanup,
|
|
14
|
+
then validate success through comprehensive testing, then a documentation pass —
|
|
15
|
+
why they exist, how they are seeded, and how to keep them last.
|
|
16
16
|
estimated_read_time: 4 minutes
|
|
17
17
|
word_count: 770
|
|
18
18
|
last_validated: '2026-08-31'
|
|
@@ -21,11 +21,12 @@ backlinks: []
|
|
|
21
21
|
|
|
22
22
|
# Mandatory Closing Phases
|
|
23
23
|
|
|
24
|
-
Every plan this plugin creates ends with the same
|
|
24
|
+
Every plan this plugin creates ends with the same three units of work, in the same
|
|
25
25
|
order, no exceptions:
|
|
26
26
|
|
|
27
|
-
1. **
|
|
28
|
-
2. **
|
|
27
|
+
1. **Cleanup — remove junk and unused code this work created**
|
|
28
|
+
2. **Validate success through comprehensive testing**
|
|
29
|
+
3. **Documentation pass — create / update / deprecate as many docs as needed to capture what was done, where it lives, how to troubleshoot it**
|
|
29
30
|
|
|
30
31
|
They are seeded into the templates so an agent never has to remember them, and
|
|
31
32
|
they are marked `MANDATORY` in the artifact itself so an agent re-reading the
|
|
@@ -53,30 +54,30 @@ filesystem-as-working-memory reasoning behind the plan artifacts themselves —
|
|
|
53
54
|
|
|
54
55
|
| Mode | Artifact | Section | Seeded as |
|
|
55
56
|
|---|---|---|---|
|
|
56
|
-
| sm | `.planning/<slug>/task_plan.md` | `## Phases` |
|
|
57
|
-
| lg | `.planning/<phase-slug>/phase.md` | `## Tasks` | The last
|
|
57
|
+
| sm | `.planning/<slug>/task_plan.md` | `## Phases` | Phases 5, 6 and 7 of 7 |
|
|
58
|
+
| lg | `.planning/<phase-slug>/phase.md` | `## Tasks` | The last three task checkboxes |
|
|
58
59
|
|
|
59
|
-
In **sm mode** the plan is a single file, so the
|
|
60
|
-
last
|
|
60
|
+
In **sm mode** the plan is a single file, so the three phases are literally the
|
|
61
|
+
last three checkboxes under `## Phases`.
|
|
61
62
|
|
|
62
63
|
In **lg mode** the plan is a tree (phase → task → atom, see
|
|
63
|
-
[Lg-Mode Layered Planning Guide](../architecture/lg-mode.md)). The closing
|
|
64
|
+
[Lg-Mode Layered Planning Guide](../architecture/lg-mode.md)). The closing group is seeded at the
|
|
64
65
|
**phase** level, because a phase is the strategic unit that actually ships. Every
|
|
65
66
|
phase validates its own work and documents its own work; a phase cannot be marked
|
|
66
|
-
`done` until
|
|
67
|
-
each carry the
|
|
67
|
+
`done` until all three closing tasks are `done`. Individual tasks and atoms do **not**
|
|
68
|
+
each carry the group — that would produce a documentation pass per atom, which is
|
|
68
69
|
noise.
|
|
69
70
|
|
|
70
|
-
|
|
71
|
+
No closing task may be marked `parallelizable: true`. They gate on
|
|
71
72
|
everything before them by definition.
|
|
72
73
|
|
|
73
74
|
## The ordering rule
|
|
74
75
|
|
|
75
|
-
> New work is inserted **above** the closing
|
|
76
|
+
> New work is inserted **above** the closing group, never after it.
|
|
76
77
|
|
|
77
|
-
An agent adding phases to an sm plan renumbers the closing
|
|
78
|
-
last (Phase 5/6 becomes Phase 7/8, and so on). An agent adding tasks to an lg
|
|
79
|
-
phase appends them above the
|
|
78
|
+
An agent adding phases to an sm plan renumbers the closing group so it remains
|
|
79
|
+
last (Phase 5/6/7 becomes Phase 6/7/8, and so on). An agent adding tasks to an lg
|
|
80
|
+
phase appends them above the three closing checkboxes. The template states this
|
|
80
81
|
rule inline, directly beneath the checkboxes, so it survives the plan being read
|
|
81
82
|
in isolation without this document.
|
|
82
83
|
|
|
@@ -85,6 +86,18 @@ enforceable — see [how it is tested](../testing/test-suite.md).
|
|
|
85
86
|
|
|
86
87
|
## What each phase actually requires
|
|
87
88
|
|
|
89
|
+
**Cleanup.** Remove what the work left behind: scratch and test scripts, temp
|
|
90
|
+
output and backups, debug and probe logging, one-off test functions, commented-out
|
|
91
|
+
code, and code, helpers, imports or dependencies left unused by abandoned
|
|
92
|
+
approaches. None of it fails a test and none of it is a doc, so neither of the
|
|
93
|
+
other closers catches it. Scope is only what this work created or changed — diff
|
|
94
|
+
against where it started — and never a refactor of code it did not touch. When
|
|
95
|
+
unsure whether something is used, record it in `notes.md` instead of deleting it.
|
|
96
|
+
|
|
97
|
+
Cleanup runs **first** of the three on purpose. It deletes things, so validation
|
|
98
|
+
has to come after it: the tests then prove every deletion safe against the code
|
|
99
|
+
that actually ships. Documentation stays last so it describes that final state.
|
|
100
|
+
|
|
88
101
|
**Validate success through comprehensive testing.** Prove the work with a check
|
|
89
102
|
that *fails if the change breaks*. A test that passes both before and after the
|
|
90
103
|
change validates nothing. For this repository that means adding assertions to
|
|
@@ -105,8 +118,8 @@ in a domain and the indexes stay honest.
|
|
|
105
118
|
Nothing to run — the phases arrive with the plan:
|
|
106
119
|
|
|
107
120
|
```bash
|
|
108
|
-
/start-planning "Refactor auth" # sm: task_plan.md seeded with
|
|
109
|
-
/start-planning "Foundation" --mode lg # lg: phase.md seeded with
|
|
121
|
+
/start-planning "Refactor auth" # sm: task_plan.md seeded with 7 phases
|
|
122
|
+
/start-planning "Foundation" --mode lg # lg: phase.md seeded with 3 closing tasks
|
|
110
123
|
```
|
|
111
124
|
|
|
112
125
|
To confirm the templates still seed them correctly after editing:
|
|
@@ -119,15 +132,16 @@ npm test
|
|
|
119
132
|
|
|
120
133
|
| Symptom | Cause | Fix |
|
|
121
134
|
|---|---|---|
|
|
122
|
-
| A new plan has only 4 phases | Plan created by persistent-planning < 3.1.0 | Append the
|
|
123
|
-
| Closing phases are no longer last | Work appended below them | Move the new phases above the
|
|
124
|
-
|
|
|
125
|
-
|
|
|
135
|
+
| A new plan has only 4 phases | Plan created by persistent-planning < 3.1.0 | Append the closing phases by hand; upgrade the plugin |
|
|
136
|
+
| Closing phases are no longer last | Work appended below them | Move the new phases above the group and renumber |
|
|
137
|
+
| A plan has validate/docs closers but no cleanup | Plan created by persistent-planning < 3.5.0 | Add a cleanup phase or task above validate by hand, or leave it — the gate is additive |
|
|
138
|
+
| `npm test` fails on "documentation phase is last" | A template edit added a checkbox after the group, or reworded it | Restore the ordering in `scripts/init-planning.sh` / `templates/lg/phase.md` |
|
|
139
|
+
| Phase marked `done` with closing tasks unchecked | Skipped the gate | Not done — finish all three, then mark the phase |
|
|
126
140
|
|
|
127
141
|
|
|
128
142
|
## How they are enforced (3.3.0+)
|
|
129
143
|
|
|
130
|
-
In lg mode the
|
|
144
|
+
In lg mode the closers are no longer only checkbox lines. `init-phase.sh` scaffolds
|
|
131
145
|
each as a real task directory — `task.md` with `mandatory: true`, `notes.md`, `atoms/`,
|
|
132
146
|
and seeded atoms — so they are addressable artifacts like every other task.
|
|
133
147
|
|
|
@@ -3,7 +3,7 @@ title: Testing Documentation Index
|
|
|
3
3
|
tier: reference
|
|
4
4
|
domains: [testing]
|
|
5
5
|
status: active
|
|
6
|
-
last_updated: '2026-09-
|
|
6
|
+
last_updated: '2026-09-26'
|
|
7
7
|
version: '1.0.0'
|
|
8
8
|
purpose: Complete listing of testing documentation
|
|
9
9
|
---
|
|
@@ -39,4 +39,4 @@ This domain covers: test, testing, tests, unit, unit-test, integration, integrat
|
|
|
39
39
|
|
|
40
40
|
---
|
|
41
41
|
|
|
42
|
-
*Last updated: 2026-09-
|
|
42
|
+
*Last updated: 2026-09-26*
|
|
@@ -3,7 +3,7 @@ title: Testing Registry
|
|
|
3
3
|
tier: reference
|
|
4
4
|
domains: [testing]
|
|
5
5
|
status: active
|
|
6
|
-
last_updated: '2026-09-
|
|
6
|
+
last_updated: '2026-09-26'
|
|
7
7
|
version: '1.0.0'
|
|
8
8
|
purpose: Quick reference for testing documentation
|
|
9
9
|
---
|
|
@@ -48,4 +48,4 @@ purpose: Quick reference for testing documentation
|
|
|
48
48
|
|
|
49
49
|
---
|
|
50
50
|
|
|
51
|
-
*Last updated: 2026-09-
|
|
51
|
+
*Last updated: 2026-09-26*
|
|
@@ -34,7 +34,7 @@ its subject.
|
|
|
34
34
|
|
|
35
35
|
The suite is also the thing that makes the
|
|
36
36
|
[mandatory closing phases](../standards/mandatory-closing-phases.md) enforceable rather than
|
|
37
|
-
aspirational: a template edit that pushes a checkbox below the closing
|
|
37
|
+
aspirational: a template edit that pushes a checkbox below the closing group turns
|
|
38
38
|
the suite red.
|
|
39
39
|
|
|
40
40
|
## How to run it
|
|
@@ -51,8 +51,8 @@ is non-zero if anything failed, so it drops into CI unchanged.
|
|
|
51
51
|
|
|
52
52
|
| Group | Asserts |
|
|
53
53
|
|---|---|
|
|
54
|
-
| sm mode | `task_plan.md` + `notes.md` land at the slugified path; the plan seeds
|
|
55
|
-
| lg mode | `detect-mode.sh` honors the `workspace.json` override; `phase.md` + `notes.md` are created; the
|
|
54
|
+
| sm mode | `task_plan.md` + `notes.md` land at the slugified path; the plan seeds 7 phases; cleanup is third-to-last, validation second-to-last, documentation last; the ordering rule text is present; the task name is substituted; re-running does not clobber an edited plan |
|
|
55
|
+
| lg mode | `detect-mode.sh` honors the `workspace.json` override; `phase.md` + `notes.md` are created; the three closing tasks are last and in order; HEWTD `tier: plan` frontmatter is present; no `PLACEHOLDER` tokens survive rendering; `task.md` is created with the right `parent:`; atom `sequence:` auto-increments 1 → 2 |
|
|
56
56
|
| mode guards | `init-phase.sh` exits non-zero in sm mode |
|
|
57
57
|
|
|
58
58
|
Every test runs the real script against a throwaway `CLAUDE_PROJECT_DIR` created
|
|
@@ -3,7 +3,7 @@ title: Troubleshooting Documentation Index
|
|
|
3
3
|
tier: reference
|
|
4
4
|
domains: [troubleshooting]
|
|
5
5
|
status: active
|
|
6
|
-
last_updated: '2026-09-
|
|
6
|
+
last_updated: '2026-09-26'
|
|
7
7
|
version: '1.0.0'
|
|
8
8
|
purpose: Complete listing of troubleshooting documentation
|
|
9
9
|
---
|
|
@@ -40,4 +40,4 @@ This domain covers: troubleshooting, troubleshoot, debug, debugging, issue, issu
|
|
|
40
40
|
|
|
41
41
|
---
|
|
42
42
|
|
|
43
|
-
*Last updated: 2026-09-
|
|
43
|
+
*Last updated: 2026-09-26*
|
|
@@ -3,7 +3,7 @@ title: Troubleshooting Registry
|
|
|
3
3
|
tier: reference
|
|
4
4
|
domains: [troubleshooting]
|
|
5
5
|
status: active
|
|
6
|
-
last_updated: '2026-09-
|
|
6
|
+
last_updated: '2026-09-26'
|
|
7
7
|
version: '1.0.0'
|
|
8
8
|
purpose: Quick reference for troubleshooting documentation
|
|
9
9
|
---
|
|
@@ -50,4 +50,4 @@ purpose: Quick reference for troubleshooting documentation
|
|
|
50
50
|
|
|
51
51
|
---
|
|
52
52
|
|
|
53
|
-
*Last updated: 2026-09-
|
|
53
|
+
*Last updated: 2026-09-26*
|
|
@@ -32,8 +32,9 @@ fixed in 3.2.0.
|
|
|
32
32
|
A generated `task_plan.md` ends at Phase 4. A correct one ends:
|
|
33
33
|
|
|
34
34
|
```
|
|
35
|
-
- [ ] Phase 5:
|
|
36
|
-
- [ ] Phase 6:
|
|
35
|
+
- [ ] Phase 5: Cleanup -- remove junk and unused code this work created: scratch/test scripts, debug files, probe logging, one-off test functions, commented-out code, dead code from abandoned approaches (MANDATORY)
|
|
36
|
+
- [ ] Phase 6: Validate success through comprehensive testing (MANDATORY)
|
|
37
|
+
- [ ] Phase 7: Documentation pass -- create/update/deprecate as many docs as needed to capture what was done, where it lives, how to troubleshoot it, etc. etc.. etc.. (MANDATORY)
|
|
37
38
|
```
|
|
38
39
|
|
|
39
40
|
and carries an `## On Completion` section naming `/plan-status` and `/archive-plan`.
|
|
@@ -3,7 +3,7 @@ title: Workflows Documentation Index
|
|
|
3
3
|
tier: reference
|
|
4
4
|
domains: [workflows]
|
|
5
5
|
status: active
|
|
6
|
-
last_updated: '2026-09-
|
|
6
|
+
last_updated: '2026-09-26'
|
|
7
7
|
version: '1.0.0'
|
|
8
8
|
purpose: Complete listing of workflows documentation
|
|
9
9
|
---
|
|
@@ -40,4 +40,4 @@ This domain covers: workflow, workflows, process, processes, flow, flowchart, se
|
|
|
40
40
|
|
|
41
41
|
---
|
|
42
42
|
|
|
43
|
-
*Last updated: 2026-09-
|
|
43
|
+
*Last updated: 2026-09-26*
|
|
@@ -3,7 +3,7 @@ title: Workflows Registry
|
|
|
3
3
|
tier: reference
|
|
4
4
|
domains: [workflows]
|
|
5
5
|
status: active
|
|
6
|
-
last_updated: '2026-09-
|
|
6
|
+
last_updated: '2026-09-26'
|
|
7
7
|
version: '1.0.0'
|
|
8
8
|
purpose: Quick reference for workflows documentation
|
|
9
9
|
---
|
|
@@ -35,4 +35,4 @@ purpose: Quick reference for workflows documentation
|
|
|
35
35
|
|
|
36
36
|
---
|
|
37
37
|
|
|
38
|
-
*Last updated: 2026-09-
|
|
38
|
+
*Last updated: 2026-09-26*
|
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,68 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
|
|
5
|
+
## [3.5.0] - 2026-09-26
|
|
6
|
+
|
|
7
|
+
### Added — a mandatory cleanup closer at the end of every phase (#20)
|
|
8
|
+
|
|
9
|
+
Every plan now ends with three mandatory closers instead of two:
|
|
10
|
+
|
|
11
|
+
1. **Cleanup — remove junk and unused code** (new)
|
|
12
|
+
2. Validate success through comprehensive testing
|
|
13
|
+
3. Documentation pass
|
|
14
|
+
|
|
15
|
+
Agent-driven work reliably leaves debris: scratch and test scripts, temp
|
|
16
|
+
output, probe logging, one-off test functions, commented-out code, and code or
|
|
17
|
+
imports left unused by abandoned approaches. None of it fails a test and none
|
|
18
|
+
of it is a doc, so neither existing closer caught it.
|
|
19
|
+
|
|
20
|
+
Cleanup runs *first* of the three so validation proves every deletion safe, and
|
|
21
|
+
docs describe the final state. Its scope is only what the phase created or
|
|
22
|
+
changed; uncertain items go in `notes.md` instead of being deleted.
|
|
23
|
+
|
|
24
|
+
- **lg**: `init-phase.sh` scaffolds `cleanup-remove-junk-and-unused-code/` as a
|
|
25
|
+
real task dir with `mandatory: true` and seeded atoms, third-to-last in
|
|
26
|
+
`phase.md`. Insertion and the completion gate needed no change — new tasks
|
|
27
|
+
already land above the first `MANDATORY` entry, and `plan-status.sh` already
|
|
28
|
+
gates on every `mandatory: true` task.
|
|
29
|
+
- **sm**: `task_plan.md` gains Phase 5 Cleanup; validate and docs renumber to 6
|
|
30
|
+
and 7. This is a deliberate change to the v2 sm template, as #5 was.
|
|
31
|
+
|
|
32
|
+
Existing plans are untouched; they simply lack the third closer.
|
|
33
|
+
|
|
34
|
+
## [3.4.2] - 2026-09-05
|
|
35
|
+
|
|
36
|
+
### Changed — the local `update` guard moves upstream into the runtime
|
|
37
|
+
|
|
38
|
+
3.4.0 added a `preAction` guard in `bin/persistent-planning.js` because the
|
|
39
|
+
runtime's `update` resolved installation state from `<cwd>/node_modules` and
|
|
40
|
+
`CLAUDE_PLUGIN_ROOT` only, found neither in a marketplace-only install, and
|
|
41
|
+
exited 0 after an `npm update` that touched nothing. The guard worked, but it
|
|
42
|
+
was a workaround living in one plugin while every sibling stayed broken —
|
|
43
|
+
babel-fish#17 was the same defect reported against babel-fish.
|
|
44
|
+
|
|
45
|
+
Fixed properly in `@theglitchking/claude-plugin-runtime` 0.1.1, which this
|
|
46
|
+
release requires. `resolveInstall()` there probes npm dep → `CLAUDE_PLUGIN_ROOT`
|
|
47
|
+
→ the marketplace record in `~/.claude/plugins/installed_plugins.json`, so the
|
|
48
|
+
26-line guard is deleted rather than reimplemented.
|
|
49
|
+
|
|
50
|
+
The result is strictly better than the guard it replaces. Previously a
|
|
51
|
+
marketplace install satisfied the guard and fell through to a no-op `npm update`
|
|
52
|
+
that exited 0; now it is recognised, named by path, and refused with a pointer
|
|
53
|
+
at `/plugin` — the only thing that can actually update a plugin-cache copy.
|
|
54
|
+
|
|
55
|
+
The dependency floor is `^0.1.1`, not `^0.1.0`: the shared plugin dep tree at
|
|
56
|
+
`~/.claude/plugins/npm-cache` pins the runtime at 0.1.0 in its lockfile, and
|
|
57
|
+
0.1.0 still satisfies `^0.1.0`, so the broken copy would have survived.
|
|
58
|
+
|
|
59
|
+
### Fixed — the CLI test depended on the developer's own machine
|
|
60
|
+
|
|
61
|
+
`tests/run.sh` ran `update` in a temp workspace but inherited the real `$HOME`,
|
|
62
|
+
so once the runtime learned to read `~/.claude/plugins/installed_plugins.json`
|
|
63
|
+
the assertion passed or failed depending on whether the person running it
|
|
64
|
+
happened to have the plugin installed. `HOME` is now overridden, and the
|
|
65
|
+
marketplace branch is asserted against a fixture rather than a machine.
|
|
66
|
+
|
|
5
67
|
## [3.4.1] - 2026-09-04
|
|
6
68
|
|
|
7
69
|
### Fixed — the SessionStart hook could not survive a missing runtime (#18)
|
|
@@ -55,32 +55,6 @@ program
|
|
|
55
55
|
.description("Persistent markdown-based planning for Claude Code.")
|
|
56
56
|
.version(version);
|
|
57
57
|
|
|
58
|
-
// The runtime's `update` resolves the installed version, finds none in a
|
|
59
|
-
// marketplace-only install, prints "Current: (not installed) / Now: (not installed)"
|
|
60
|
-
// and exits 0 -- a clean success for a no-op. Fail before it gets that far, and say
|
|
61
|
-
// where we looked. Same defect as runRelink's missing third probe (issue #10, fix #4).
|
|
62
|
-
// Deliberately NOT including the package this CLI runs from: under
|
|
63
|
-
// `npx --no @theglitchking/persistent-planning update` that copy always exists, which
|
|
64
|
-
// is what let the original bug report see a clean exit 0 for a no-op. Only a *managed*
|
|
65
|
-
// install -- a project dependency or a marketplace plugin root -- is updatable.
|
|
66
|
-
function installCandidates(cwd) {
|
|
67
|
-
const out = [join(cwd, "node_modules", "@theglitchking", "persistent-planning", "package.json")];
|
|
68
|
-
if (process.env.CLAUDE_PLUGIN_ROOT) out.push(join(process.env.CLAUDE_PLUGIN_ROOT, "package.json"));
|
|
69
|
-
return out;
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
program.hook("preAction", (_thisCmd, actionCmd) => {
|
|
73
|
-
if (actionCmd.name() !== "update") return;
|
|
74
|
-
const candidates = installCandidates(process.cwd());
|
|
75
|
-
if (candidates.some((p) => existsSync(p))) return;
|
|
76
|
-
console.error("update failed: no managed install of @theglitchking/persistent-planning found.");
|
|
77
|
-
console.error("Looked in:");
|
|
78
|
-
for (const p of candidates) console.error(` ${p}`);
|
|
79
|
-
console.error("\nInstall it with `npm i -D @theglitchking/persistent-planning`,");
|
|
80
|
-
console.error("or update the marketplace plugin with `/plugin` inside Claude Code.");
|
|
81
|
-
process.exit(1);
|
|
82
|
-
});
|
|
83
|
-
|
|
84
58
|
registerUpdateCommands(program, {
|
|
85
59
|
packageName: PKG,
|
|
86
60
|
pluginName: "persistent-planning",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@theglitchking/persistent-planning",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.5.0",
|
|
4
4
|
"description": "Persistent markdown-based planning with task directories, progress tracking, and context engineering for multi-step Claude Code workflows",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -55,7 +55,7 @@
|
|
|
55
55
|
},
|
|
56
56
|
"homepage": "https://github.com/TheGlitchKing/persistent-planning#readme",
|
|
57
57
|
"dependencies": {
|
|
58
|
-
"@theglitchking/claude-plugin-runtime": "^0.1.
|
|
58
|
+
"@theglitchking/claude-plugin-runtime": "^0.1.1",
|
|
59
59
|
"commander": "^14.0.0"
|
|
60
60
|
},
|
|
61
61
|
"devDependencies": {
|
package/scripts/init-phase.sh
CHANGED
|
@@ -125,7 +125,7 @@ planning_render_and_log \
|
|
|
125
125
|
"NOTES_SCOPE_PLACEHOLDER=${PHASE_SLUG}" \
|
|
126
126
|
"NOTES_DATE_PLACEHOLDER=${TODAY}"
|
|
127
127
|
|
|
128
|
-
# Scaffold the
|
|
128
|
+
# Scaffold the three mandatory closing tasks as real task directories.
|
|
129
129
|
#
|
|
130
130
|
# They used to exist only as two checkbox lines in phase.md, so the most important
|
|
131
131
|
# tasks in every plan were the only ones with no artifact for a subagent to read and
|
|
@@ -162,6 +162,16 @@ scaffold_closer() { # <slug> <title> <atom>...
|
|
|
162
162
|
done
|
|
163
163
|
}
|
|
164
164
|
|
|
165
|
+
# Cleanup comes first so validation proves every deletion safe.
|
|
166
|
+
scaffold_closer \
|
|
167
|
+
"cleanup-remove-junk-and-unused-code" \
|
|
168
|
+
"Cleanup — remove junk and unused code" \
|
|
169
|
+
"Scope it: diff against where this phase started — only what this phase created or changed is in scope" \
|
|
170
|
+
"Remove scratch/test scripts, debug files, temp output and backups this phase created" \
|
|
171
|
+
"Remove probe logging, one-off test functions and commented-out code" \
|
|
172
|
+
"Remove code, helpers, imports and dependencies left unused by abandoned approaches" \
|
|
173
|
+
"Never refactor code this phase did not touch; when unsure, record it in notes.md instead of deleting"
|
|
174
|
+
|
|
165
175
|
scaffold_closer \
|
|
166
176
|
"validate-success-through-comprehensive-testing" \
|
|
167
177
|
"Validate success through comprehensive testing" \
|
package/scripts/init-planning.sh
CHANGED
|
@@ -105,12 +105,18 @@ if [ ! -f "$TASK_PLAN_FILE" ]; then
|
|
|
105
105
|
- [ ] Phase 2: Research/gather information
|
|
106
106
|
- [ ] Phase 3: Execute/build
|
|
107
107
|
- [ ] Phase 4: Review and deliver
|
|
108
|
-
- [ ] Phase 5:
|
|
109
|
-
- [ ] Phase 6:
|
|
108
|
+
- [ ] Phase 5: Cleanup -- remove junk and unused code this work created: scratch/test scripts, debug files, probe logging, one-off test functions, commented-out code, dead code from abandoned approaches (MANDATORY)
|
|
109
|
+
- [ ] Phase 6: Validate success through comprehensive testing (MANDATORY)
|
|
110
|
+
- [ ] Phase 7: Documentation pass -- create/update/deprecate as many docs as needed to capture what was done, where it lives, how to troubleshoot it, etc. etc.. etc.. (MANDATORY)
|
|
110
111
|
|
|
111
|
-
> Phases 5 and
|
|
112
|
+
> Phases 5, 6 and 7 are mandatory and MUST stay the last three phases of this plan.
|
|
112
113
|
> Insert new work above them; never after. Renumber them if you add phases.
|
|
113
114
|
>
|
|
115
|
+
> - **Cleanup**: remove what this work left behind -- scratch and test scripts, temp
|
|
116
|
+
> output, debug logging, one-off test functions, commented-out code, and code,
|
|
117
|
+
> imports or dependencies left unused by abandoned approaches. Only what this work
|
|
118
|
+
> changed; never refactor code it did not touch. When unsure, note it -- don't delete.
|
|
119
|
+
> Cleanup runs before validation so every deletion is proven safe by the tests.
|
|
114
120
|
> - **Validate success**: prove the work with tests that fail if the change breaks.
|
|
115
121
|
> - **Documentation pass**: create/update/deprecate every doc this change touches --
|
|
116
122
|
> what it is, where it lives, how to fix it, how to operate it, why it matters.
|
|
@@ -160,12 +160,18 @@ Create this file FIRST for any complex task:
|
|
|
160
160
|
- [ ] Phase 2: Research/gather information
|
|
161
161
|
- [ ] Phase 3: Execute/build
|
|
162
162
|
- [ ] Phase 4: Review and deliver
|
|
163
|
-
- [ ] Phase 5:
|
|
164
|
-
- [ ] Phase 6:
|
|
163
|
+
- [ ] Phase 5: Cleanup -- remove junk and unused code this work created: scratch/test scripts, debug files, probe logging, one-off test functions, commented-out code, dead code from abandoned approaches (MANDATORY)
|
|
164
|
+
- [ ] Phase 6: Validate success through comprehensive testing (MANDATORY)
|
|
165
|
+
- [ ] Phase 7: Documentation pass -- create/update/deprecate as many docs as needed to capture what was done, where it lives, how to troubleshoot it, etc. etc.. etc.. (MANDATORY)
|
|
165
166
|
|
|
166
|
-
> Phases 5 and
|
|
167
|
+
> Phases 5, 6 and 7 are mandatory and MUST stay the last three phases of this plan.
|
|
167
168
|
> Insert new work above them; never after. Renumber them if you add phases.
|
|
168
169
|
>
|
|
170
|
+
> - **Cleanup**: remove what this work left behind -- scratch and test scripts, temp
|
|
171
|
+
> output, debug logging, one-off test functions, commented-out code, and code,
|
|
172
|
+
> imports or dependencies left unused by abandoned approaches. Only what this work
|
|
173
|
+
> changed; never refactor code it did not touch. When unsure, note it -- don't delete.
|
|
174
|
+
> Cleanup runs before validation so every deletion is proven safe by the tests.
|
|
169
175
|
> - **Validate success**: prove the work with tests that fail if the change breaks.
|
|
170
176
|
> - **Documentation pass**: create/update/deprecate every doc this change touches --
|
|
171
177
|
> what it is, where it lives, how to fix it, how to operate it, why it matters.
|
package/templates/lg/phase.md
CHANGED
|
@@ -21,13 +21,19 @@ Tasks with no inter-dependencies can be marked `parallelizable: true` in their f
|
|
|
21
21
|
so subagent teams can pick them up concurrently.]
|
|
22
22
|
|
|
23
23
|
_(no tasks yet — run `/start-task "Task name" --parent PHASE_SLUG_PLACEHOLDER`)_
|
|
24
|
+
- [ ] **Cleanup — remove junk and unused code** (`cleanup-remove-junk-and-unused-code`) (MANDATORY — third-to-last)
|
|
24
25
|
- [ ] **Validate success through comprehensive testing** (`validate-success-through-comprehensive-testing`) (MANDATORY — second-to-last)
|
|
25
26
|
- [ ] **Documentation pass — create/update/deprecate as many docs as needed to capture what was done, where it lives, how to troubleshoot it, etc. etc.. etc..** (`documentation-pass-create-update-deprecate-docs`) (MANDATORY — last)
|
|
26
27
|
|
|
27
|
-
> The
|
|
28
|
-
> Add new tasks above them; never after. A phase cannot be marked `done` until
|
|
29
|
-
> `done`, and
|
|
28
|
+
> The three mandatory closing tasks above MUST remain the last three tasks of this phase.
|
|
29
|
+
> Add new tasks above them; never after. A phase cannot be marked `done` until all three
|
|
30
|
+
> are `done`, and none may be `parallelizable` — they gate on everything before them.
|
|
30
31
|
>
|
|
32
|
+
> - **Cleanup**: remove what this phase left behind — scratch and test scripts, temp
|
|
33
|
+
> output, debug logging, one-off test functions, commented-out code, and code, imports
|
|
34
|
+
> or dependencies left unused by abandoned approaches. Only what this phase changed;
|
|
35
|
+
> never refactor code it did not touch. It runs before validation so the tests prove
|
|
36
|
+
> every deletion safe.
|
|
31
37
|
> - **Validate success**: prove the phase's work with tests that fail if it breaks.
|
|
32
38
|
> - **Documentation pass**: create/update/deprecate every doc this phase touches —
|
|
33
39
|
> what it is, where it lives, how to fix it, how to operate it, why it matters.
|