Bundle upstream cherries: statusline spacing + AlgorithmTab dead docs (#91 partial, #83 verified)#137
Merged
virtualian merged 2 commits intomainfrom Apr 15, 2026
Conversation
Add a space after 📁, ✦, ⊕, and ◇ in `.claude/statusline-full.sh` so the MEMORY row renders as `📁 478 ✦ 3000` instead of `📁478 ✦3000`. Matches upstream PRs danielmiessler/Personal_AI_Infrastructure#910 and #900 and the already-fixed layout in Releases/v4.0.3+/statusline-command.sh. Partial close of #91 (2026-03-18 upstream scan cherry-picks).
AlgorithmTab.hook.ts was documented across THEHOOKSYSTEM.md and hooks/README.md but the file itself has never existed in this tree. Remove all references (Stop-hooks JSON example, "What They Do" subsection, ASCII lifecycle diagram, Stop Hooks registry table, Quick Reference card, hook counts 22→21 and STOP 5→4). No code change, no behavior change — dead docs only. The adjacent VoiceCompletion.hook.ts entries are intentionally left in place: they are a separate removal tracked in #112. Matches upstream PR danielmiessler/Personal_AI_Infrastructure#968. Partial close of #91 (2026-03-18 upstream scan cherry-picks).
This was referenced Apr 15, 2026
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
Bundle cherry-pick pass from the 2026-03-18 upstream scan in #91. Scope was 5 sub-items; verification revealed 3 were already in-tree in this fork and 2 required real fixes. Partial close of #91 (the mechanical low-risk subset), no change to #112's VoiceServer removal surface.
Commits
What changed
620165e — Statusline MEMORY icon spacing (upstream #910/#900, #91)
.claude/statusline-full.shrendered the MEMORY row as📁478 ✦3000 ⊕12 ◇7because the icon glyphs were immediately followed by\${RESET}\${SLATE_300}\${count}with no space. Added a single space after each icon (📁, ✦, ⊕, ◇) at 10 print sites across the nano/micro/mini/normal modes. Matches the already-fixed layout inReleases/v4.0.3+/.claude/statusline-command.sh.bash -nclean.6b36870 — AlgorithmTab.hook.ts dead doc refs (upstream #968, #91)
AlgorithmTab.hook.tshas never existed in this tree but was documented in 5 places across 2 files, mirrored in release and runtime:Releases/v4.0.3+/.claude/PAI/THEHOOKSYSTEM.md— Stop-hooks JSON example, "What They Do" subsection, Quick Reference card, "HOOKS BY EVENT (22→21)" and "STOP (5→4)" countsReleases/v4.0.3+/.claude/hooks/README.md— ASCII lifecycle diagram, Stop Hooks registry table, footer hook count~/.pai/PAI/THEHOOKSYSTEM.md+~/.pai/hooks/README.md— runtime mirrors of the aboveNo code change, no behavior change — these are dead docs only. Adjacent VoiceCompletion.hook.ts entries are intentionally untouched: they belong to #112's removal PR.
The live
AlgorithmTabPhasetype inhooks/lib/tab-constants.ts/tab-setter.ts/PRDSync.hook.tsis a separate thing (a type alias for Algorithm phase tab states) and is deliberately NOT removed.#91 sub-items: verified already fixed in-tree
These three were flagged in the original scope but verification proved no code change was needed. They remain listed as "partial" on #91 because the bundle-tracker records them — I'm only documenting the verification here.
safeSlice()UTF-16safeSlice()atRatingCapture.hook.ts:494-501. All string truncations in the file already flow through it. Remaining.slice()calls operate on arrays or numeric-prefix substrings — none can split a surrogate pair.notifications.voice.enabledgateisVoiceEnabled()gate lives atVoiceCompletion.hook.ts:36-48with early-exit at lines 61-64. Verified live: settings.json hasnotifications.voice.enabled: false, gate returnsfalse, hook exits silently.USER/to put projects underTELOS/PROJECTS.md. This fork keptUSER/PROJECTS/README.mdas its own directory. All 19 paths inCONTEXT_ROUTING.mdresolve in both release and runtime trees. The{PRINCIPAL.NAME}template variable never appeared in this file (git log confirms). Following the upstream fix literally would have created a dead ref.#91 remaining follow-ups (NOT in this PR)
loadLearningDigest()uses**Feedback:**but files use**Sentiment Summary:**)#83 disposition
Left OPEN on purpose. The hook-handler side is already fixed (commit 591473d), and #112's removal plan explicitly schedules closing #83 as its own verification step when the entire voice stack is ripped out. Closing it now would steal that closure from #112. If #112 is abandoned, #83 can be closed directly with a pointer to 591473d.
Test plan
bash -n .claude/statusline-full.sh— syntax cleangrep -E '(📁|✦|⊕|◇)\$\{RESET\}\$\{SLATE_300\}' .claude/statusline-full.shreturns zero hits (fix complete)grep AlgorithmTab Releases/v4.0.3+/.claude/PAI/THEHOOKSYSTEM.md Releases/v4.0.3+/.claude/hooks/README.md ~/.pai/PAI/THEHOOKSYSTEM.md ~/.pai/hooks/README.mdreturns zero hits (doc cleanup complete in both release + runtime mirrors)grep AlgorithmTabPhase Releases/v4.0.3+/.claude/hooks/still matchestab-constants.ts/tab-setter.ts/PRDSync.hook.ts— the live type is preserved, only the docs-for-a-nonexistent-file went away└──► DocIntegrityas new last entry