Skip to content

stop a deleted session from returning as an unreadable file

Latest

Choose a tag to compare

@AizenvoltPrime AizenvoltPrime released this 03 Aug 13:36

Deleting a session could leave behind a file that no session list would ever read again.

Fixed

  • A deleted session could come back as an entry that never loads. The AI title for a new session is written in the background, a second or two after the first reply lands. Delete or clear that session inside the window and the write arrived after the file was already gone — recreating it holding nothing but the title. Nothing could read the result: it never appeared in the session list, so it could not be removed from the UI, and every list rebuild logged an error for it for as long as it sat there. A title is now dropped when the session it belongs to has been replaced or disposed. Any orphan already on disk can be deleted by hand from ~/.damocles/pi/agent/sessions/.
  • Deleting a session open in another panel now stops that panel first. Only the panel you clicked in was torn down, so a second panel holding the same session kept writing after the file was removed and recreated it in the same unreadable state. Every panel holding the session now lets go first — including one still opening it — and a panel that cannot let go aborts the delete rather than leaving a live writer pointed at a deleted path.
  • An unreadable session file no longer costs a full re-read on every session-list rebuild, and deleting a session no longer leaves its metadata cached.

Changed

  • npm run package:linux is now npm run package:linux-wsl, and refuses a distro that does not match the target. The Alpine targets reuse the glibc ripgrep package name, so building one in an ordinary WSL distro produced a VSIX that passed both post-checks and then failed to load on Alpine; the mismatch is now caught in about a second instead. It also copies only tracked files, so a local build no longer ships whatever happens to be lying around in your working tree.