@theglitchking/persistent-planning 3.4.1 → 3.4.2
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.
|
@@ -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.4.
|
|
9
|
+
"version": "3.4.2"
|
|
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.4.
|
|
15
|
+
"version": "3.4.2",
|
|
16
16
|
"author": {
|
|
17
17
|
"name": "TheGlitchKing"
|
|
18
18
|
},
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "persistent-planning",
|
|
3
|
-
"version": "3.4.
|
|
3
|
+
"version": "3.4.2",
|
|
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/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,39 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
|
|
5
|
+
## [3.4.2] - 2026-09-05
|
|
6
|
+
|
|
7
|
+
### Changed — the local `update` guard moves upstream into the runtime
|
|
8
|
+
|
|
9
|
+
3.4.0 added a `preAction` guard in `bin/persistent-planning.js` because the
|
|
10
|
+
runtime's `update` resolved installation state from `<cwd>/node_modules` and
|
|
11
|
+
`CLAUDE_PLUGIN_ROOT` only, found neither in a marketplace-only install, and
|
|
12
|
+
exited 0 after an `npm update` that touched nothing. The guard worked, but it
|
|
13
|
+
was a workaround living in one plugin while every sibling stayed broken —
|
|
14
|
+
babel-fish#17 was the same defect reported against babel-fish.
|
|
15
|
+
|
|
16
|
+
Fixed properly in `@theglitchking/claude-plugin-runtime` 0.1.1, which this
|
|
17
|
+
release requires. `resolveInstall()` there probes npm dep → `CLAUDE_PLUGIN_ROOT`
|
|
18
|
+
→ the marketplace record in `~/.claude/plugins/installed_plugins.json`, so the
|
|
19
|
+
26-line guard is deleted rather than reimplemented.
|
|
20
|
+
|
|
21
|
+
The result is strictly better than the guard it replaces. Previously a
|
|
22
|
+
marketplace install satisfied the guard and fell through to a no-op `npm update`
|
|
23
|
+
that exited 0; now it is recognised, named by path, and refused with a pointer
|
|
24
|
+
at `/plugin` — the only thing that can actually update a plugin-cache copy.
|
|
25
|
+
|
|
26
|
+
The dependency floor is `^0.1.1`, not `^0.1.0`: the shared plugin dep tree at
|
|
27
|
+
`~/.claude/plugins/npm-cache` pins the runtime at 0.1.0 in its lockfile, and
|
|
28
|
+
0.1.0 still satisfies `^0.1.0`, so the broken copy would have survived.
|
|
29
|
+
|
|
30
|
+
### Fixed — the CLI test depended on the developer's own machine
|
|
31
|
+
|
|
32
|
+
`tests/run.sh` ran `update` in a temp workspace but inherited the real `$HOME`,
|
|
33
|
+
so once the runtime learned to read `~/.claude/plugins/installed_plugins.json`
|
|
34
|
+
the assertion passed or failed depending on whether the person running it
|
|
35
|
+
happened to have the plugin installed. `HOME` is now overridden, and the
|
|
36
|
+
marketplace branch is asserted against a fixture rather than a machine.
|
|
37
|
+
|
|
5
38
|
## [3.4.1] - 2026-09-04
|
|
6
39
|
|
|
7
40
|
### 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.4.
|
|
3
|
+
"version": "3.4.2",
|
|
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": {
|