fix: assorted bug fixes for lists, sounds, interrupts, and permissions #173

Merged
naomi merged 5 commits from fix/lists into main 2026-02-26 23:34:51 -08:00

5 Commits

Author SHA1 Message Date
hikari aa40d09b29 fix: restore permission modal reactivity by replacing array mutation with new array creation
Security Scan and Upload / Security & DefectDojo Upload (pull_request) Successful in 1m6s
CI / Lint & Test (pull_request) Successful in 16m21s
CI / Build Linux (pull_request) Successful in 20m11s
CI / Build Windows (cross-compile) (pull_request) Successful in 30m24s
Previously, pendingPermissions was mutated in-place via .push(), causing
Svelte's reactivity chain to potentially receive the same array reference
and skip re-rendering the PermissionModal. Switching to spread syntax
guarantees a new reference on every update.

Also removed $state() from PermissionModal's local variables to match
the Svelte 4 reactive pattern used by other working components (Terminal),
avoiding rune-mode signal equality short-circuits.
2026-02-26 22:39:15 -08:00
hikari feba03155c fix: improve interrupt and disconnect message descriptions
Messages now indicate how the interrupt was triggered (keyboard shortcut,
stop button, or unexpected crash) so the cause is immediately clear.
2026-02-26 21:31:16 -08:00
hikari c99f371feb fix: persist draft text per conversation tab
Draft text typed in the input bar is now stored per-tab so switching
conversations no longer clears an in-progress prompt.
2026-02-26 21:23:55 -08:00
hikari 63c8dcdf13 fix: move all notification sounds to per-conversation event tracking
Prevents sounds from re-firing on tab switch and ensures background
tab completions receive their sounds. All sounds now fire from the
claude:state event handler in tauri.ts using per-conversation flags,
with rules.ts retained only for the connection sound.

Closes #172
2026-02-26 21:17:57 -08:00
hikari bef7f9229b fix: render bullets and numbers for markdown lists 2026-02-26 19:04:56 -08:00