@hienlh/ppm 0.17.43 → 0.17.44

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 CHANGED
@@ -1,5 +1,10 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.17.44] - 2026-08-31
4
+
5
+ ### Fixed
6
+ - **Background command logs open again on macOS** — the output panel showed "Access denied" because newer SDK builds write logs to `/tmp/claude-<uid>/…` and the server only allowed the old folder name.
7
+
3
8
  ## [0.17.43] - 2026-08-31
4
9
 
5
10
  ### Changed
@@ -71,4 +71,4 @@ This skill covers the `ppm` CLI, its HTTP API, and its config DB. It does **not*
71
71
  - Third-party extensions (inspect via `ppm ext list`).
72
72
  - The Claude Agent SDK internals (separate skill).
73
73
 
74
- <!-- Generated for PPM v0.17.43 at build time. Re-run `ppm export skill --install` to refresh. -->
74
+ <!-- Generated for PPM v0.17.44 at build time. Re-run `ppm export skill --install` to refresh. -->
@@ -288,4 +288,4 @@ _Base URL: `http://localhost:8080` (default; override via `ppm config set port <
288
288
  - `ws://<host>/ws/terminal` — PTY terminal multiplexer
289
289
  - `ws://<host>/ws/extensions` — extension host channel
290
290
 
291
- <!-- Generated from src/server/routes/ for PPM v0.17.43 -->
291
+ <!-- Generated from src/server/routes/ for PPM v0.17.44 -->
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hienlh/ppm",
3
- "version": "0.17.43",
3
+ "version": "0.17.44",
4
4
  "description": "Personal Project Manager — mobile-first web IDE with AI assistance",
5
5
  "author": "hienlh",
6
6
  "license": "SEE LICENSE IN LICENSE",
@@ -55,12 +55,13 @@ export function isAllowedPath(resolved: string): boolean {
55
55
  const home = homedir();
56
56
  if (resolved === home || resolved.startsWith(home + "/")) return true;
57
57
 
58
- // SDK background-command output lives under the OS temp dir (e.g. macOS
59
- // /var/folders/.../T/claude/<session>/tasks/*.output), outside the home/posix-root
60
- // whitelist. Allow reading those specific files so the chat output panel works.
61
- // Matched by structure (claude/.../tasks/*.output) to be symlink-agnostic on macOS
62
- // where the temp dir may resolve as /var vs /private/var.
63
- if (/[\\/]claude[\\/].+[\\/]tasks[\\/][^\\/]+\.output$/.test(resolved)) return true;
58
+ // SDK background-command output lives under the OS temp dir, outside the
59
+ // home/posix-root whitelist. Allow reading those specific files so the chat
60
+ // output panel works. The claude dir name varies by platform/CLI version:
61
+ // "claude" (Windows Temp, older macOS /var/folders/.../T) or "claude-<uid>"
62
+ // (macOS /tmp/claude-501, reported by lsof as /private/tmp/...). Matched by
63
+ // structure (claude*/…/tasks/*.output) to be symlink-agnostic.
64
+ if (/[\\/]claude[^\\/]*[\\/].+[\\/]tasks[\\/][^\\/]+\.output$/.test(resolved)) return true;
64
65
 
65
66
  if (process.platform === "win32") {
66
67
  return /^[A-Z]:\\/i.test(resolved);