You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The three journal reads now ask the folder pin before they read.
The plugin dist changes in lib/handoff-journal.js, lib/resume-engine.js and the version string; the new test file is the room's own tooling.
Security
A link swapped in at the journal folder no longer feeds the SessionStart block(shipped: lib/handoff-journal.js, lib/resume-engine.js). Every write and delete under <project root>/.claude/coalhearth/ has asked the folder's pin since 2.8.1 and 2.8.2, but the journal's three reads did not: HandoffJournal.load, HandoffJournal._loadOrQuarantine and ResumeEngine.detectAbortedSession read with the folder itself as the containment root, so a folder swapped for a link after the hook built the journal made that root the link's target, and the file behind the link was read. detectAbortedSession hands what it reads to the block the SessionStart hook prints into the model's context. Each of the three now asks the pin first; a refused read returns nothing, keeps the caller's state, and quarantines or marks nothing. Not covered: the instant between the pin answer and the open of the file, the same window the writes name. — test: lib/read-pin.test.js
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
The three journal reads now ask the folder pin before they read.
The plugin dist changes in
lib/handoff-journal.js,lib/resume-engine.jsand the version string; the new test file is the room's own tooling.Security
lib/handoff-journal.js,lib/resume-engine.js). Every write and delete under<project root>/.claude/coalhearth/has asked the folder's pin since 2.8.1 and 2.8.2, but the journal's three reads did not:HandoffJournal.load,HandoffJournal._loadOrQuarantineandResumeEngine.detectAbortedSessionread with the folder itself as the containment root, so a folder swapped for a link after the hook built the journal made that root the link's target, and the file behind the link was read.detectAbortedSessionhands what it reads to the block the SessionStart hook prints into the model's context. Each of the three now asks the pin first; a refused read returns nothing, keeps the caller's state, and quarantines or marks nothing. Not covered: the instant between the pin answer and the open of the file, the same window the writes name. — test:lib/read-pin.test.jsRelease page · CoalHearth
All reactions