Fix Pulse→PULSE directory casing across PULSE module#1259
Merged
danielmiessler merged 1 commit intoMay 20, 2026
Conversation
Source referenced ~/.claude/PAI/Pulse/... but the directory on disk is
PULSE (uppercase). Worked on macOS APFS (case-insensitive default) but
broke on Linux ext4 and case-sensitive APFS — config and state lookups
silently missed.
11 files / 14 occurrences:
- run-job.ts, lib.ts, setup.ts, pulse-unified.ts
- modules/{imessage,user-index}.ts
- Performance/cost-aggregator.ts
- checks/{notification-governor,poller-meta-monitor,github-work}.ts
- Observability/observability.ts
Tested on Linux (Ubuntu, runtime-verified). Behavior unchanged on
case-insensitive filesystems (macOS default, NTFS).
Logged in PLATFORM.md as fix 6a.
This was referenced May 20, 2026
larsboes
added a commit
to larsboes/PAI
that referenced
this pull request
Jun 10, 2026
…, PULSE casing Selective integration of upstream danielmiessler/PAI (9fb9c86 → 2fde1bb): - security: port execSync→execFileSync in tab-setter.ts (danielmiessler#1046), incl. the fork's extra cmux call sites + the kitten|jq pipe → execFileSync+JSON.parse, and replace `command -v` with `which`. Adds KITTY_LISTEN_ON socket validation. - security: remove Midjourney/Discord integration from Art/Media skills (6 files) + strip stale "Midjourney" trigger keyword from Media SKILL.md descriptions. - fix(PULSE): "Pulse"→"PULSE" directory casing across PULSE module — real bug on Linux/WSL2 case-sensitive FS (live dir is PULSE; refs were "Pulse") (danielmiessler#1259/danielmiessler#1175). - bump .pai-fork/last-synced.ref → 2fde1bb. Skipped (verified N/A to fork): plansDirectory danielmiessler#672 (no such key), case-colliding danielmiessler#621 (no pai-observability-server), wiki Algorithm danielmiessler#1273 (fork casing consistent), PAI-Install danielmiessler#1267 (fork doesn't deploy PAI-Install). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Fixes a directory-casing mismatch in the PULSE module. Source code referenced
~/.claude/PAI/Pulse/...(mixed-case) but the directory on disk isPULSE(uppercase).Why this matters
undefinedreads or fresh state every run)Changes
11 files / 14 occurrences, all pure string changes inside
path.join(...)calls:PULSE/{run-job,lib,setup,pulse-unified}.tsPULSE/modules/{imessage,user-index}.tsPULSE/Performance/cost-aggregator.tsPULSE/checks/{notification-governor,poller-meta-monitor,github-work}.tsPULSE/Observability/observability.tsPlus PLATFORM.md entry 6a logging the fix in the inventory.
Testing
~/.claude/PAI/PULSE/and producing working output)PulseandPULSEresolve to the same path)Risk
Low. No platform regressions possible: case-insensitive filesystems treated both names identically, case-sensitive filesystems were already broken.