Skip to content

v0.4.2 — session delete UX + cross-doc audit (#6)

Choose a tag to compare

@magifd2 magifd2 released this 07 May 01:40
· 217 commits to main since this release

Highlights

Bug-fix + UX hardening release for #6 — session deletion now safely concurrent and visible.

Plus a cross-document audit pass that brings the README, architecture, memory-model, data-analysis, and AGENTS docs back in sync with everything that shipped in v0.3.0–v0.4.1.

What's new

  • 2-click Confirm on the sidebar ✕ button — same red-emphasis text style as the existing BulkActions confirm used by Findings / Global / Session Memory bulk-delete. 6-second auto-cancel; click outside the row also cancels.
  • In-flight Deleting feedback — row greys with a ↻ Deleting… spinner while the binding promise is in flight; all action buttons disable.
  • State-machine integration — `agent.DeleteSession` now holds the Idle/Busy slot for the operation's full duration (mirrors v0.4.0's `ExportSession` / `ImportSession`). Concurrent `Send` / `LoadSession` / `Export` / `Import` return `ErrBusy` instead of racing the half-deleted session directory.
  • Active-session deletes nil-clear `a.session` / `a.sessionMemory` / `a.findings` and `Close()` the analysis Engine before `RemoveAll` so a stray Save / Engine call cannot resurrect the directory as a partial file.

Pre-v0.4.2 failure modes that go away

# Sequence Pre-fix result
F1 Delete A → user clicks LoadSession(A) before delete finishes Race on chat.json: read may succeed (partial) or fail mid-RemoveAll
F2 Delete the active session A → user types in chat input → Send Trailing Save recreates sessions/A/chat.json as a partial file disconnected from the sidebar listing
F3 Delete A → ExportSession(A) Bundle may be incomplete or fail mid-stream
F4 Two simultaneous deletes of the same session Spurious sandbox-stop errors

All four ErrBusy out cleanly post-fix.

Documentation

  • New design note: docs/en/session-delete-ux.md / docs/ja/session-delete-ux.ja.md (full parity, ~280 lines each). Catalogues failure modes, click-flow, edge cases, and four rejected alternatives.
  • README / architecture / memory-model / data-analysis / AGENTS audited and updated to surface every v0.3.0+ feature (private sessions, log privacy controls, .shellagent bundles, tool_progress events, delete UX).
  • Full changelog: CHANGELOG.md

Install

```bash
cd app
make build
```

Or download `shell-agent-v2-v0.4.2-darwin-arm64.zip` from this release.