Skip to content

v0.3.2

Choose a tag to compare

@github-actions github-actions released this 26 Aug 21:02
· 6 commits to main since this release

dsx v0.3.2

Under-the-hood release: faster runtime, faster queries, no command or flag changes. Existing --json output shapes are unchanged.

Bun 1.4 runtime

Release binaries are now built on Bun 1.4 (the CI runner tracks latest and crossed over on 2026-08-20; this is the first release verified against it end to end). Bun 1.4 halves cold-start time on Linux and cuts base memory roughly in half, which dsx feels directly as a short-lived CLI: dsx --version runs in ~65ms and dsx --no-refresh list in ~90ms on the compiled binary.

Query-layer performance

  • dsx list (and the TUI session views) now page with LIMIT/OFFSET inside SQLite instead of materializing every session summary per call. Fuzzy title filtering (-q) still scans all candidates, as it must.
  • dsx insights builds session summaries once and finds cost outliers with a binary search over the sorted credit distribution, replacing a quadratic scan. On a ~5,400-session index the report stays interactive in the TUI.
  • dsx search --regex streams ripgrep's output and kills it as soon as the hit limit is reached instead of buffering everything; a limited search over a multi-GB session tree returns in ~130ms.

Internal cleanup (no behavior change)

  • One shared WHERE builder now backs list, stats, and insights filtering; previously three hand-rolled copies were drifting apart.
  • dsx index migrate-path skips dangling symlinks in the session root instead of crashing mid-scan.
  • Timestamps at epoch 0 no longer parse as missing.

Verification

bun test (40 tests), tsc --noEmit, and the compiled linux-x64 SEA were verified on Bun 1.4.0: CLI smoke across list/search/insights/stats (human, --json, fuzzy, and regex paths), plus scripted TUI checks (dashboard render, view switching, live fuzzy filter, search-to-transcript open, clean quit with screen restore).

Install

curl -fsSL https://raw.githubusercontent.com/ain3sh/droid-session-explorer/main/install.sh | bash