v0.1.0
Changelog
Features
- 4175002: feat(app): contain udp proxy key handling (brice b@bnema.dev)
- 9d96051: feat(app): guard daemon state with lifecycle ownership (brice b@bnema.dev)
- eba0b22: feat(app): resolve daemon self-exec path per OS (brice b@bnema.dev)
- bbfd790: feat(app): stampable version metadata for releases (brice b@bnema.dev)
- 6377eac: feat(app): wire daemon core into the --daemon path (brice b@bnema.dev)
- 2795b89: feat(app,client): attach flow, CLI dispatch, daemon auto-spawn with mkdir lock (brice b@bnema.dev)
- 6b53f65: feat(cli): add vev cmd control subcommand with registry-driven help (brice b@bnema.dev)
- d19dd60: feat(cli): expose durable session recovery state (brice b@bnema.dev)
- 588bb23: feat(client): model atomic palette generations (brice b@bnema.dev)
- 12b1b9b: feat(client): publish definitive palette generations (brice b@bnema.dev)
- 2274b26: feat(client): track palette responses with coalesced theme sends (brice b@bnema.dev)
- f71e65c: feat(client,daemon): transfer clipboard image to remote pane as temp-file path (brice b@bnema.dev)
- fe5ad84: feat(clipboard): darwin pasteboard image reader via osascript (brice b@bnema.dev)
- 844c846: feat(clock): real ports.Clock adapter over time.Timer (brice b@bnema.dev)
- af68b90: feat(command): add action registry (brice b@bnema.dev)
- 2301cb6: feat(command): add control metadata, handlers, and BySlug to the registry (brice b@bnema.dev)
- 35e7583: feat(command): expose pane and tab moves (brice b@bnema.dev)
- ef2479e: feat(command): expose pane consume and expel (brice b@bnema.dev)
- 9065670: feat(commands): expose floating pane toggle (brice b@bnema.dev)
- 1e1b557: feat(config): add copy word separators (brice b@bnema.dev)
- edb3828: feat(config): add floating pane settings (brice b@bnema.dev)
- dc993a0: feat(config): add live reload and theme scheme propagation (brice b@bnema.dev)
- 9d0a15c: feat(config): add navigation overflow settings (brice b@bnema.dev)
- 7fe026f: feat(config): add palette anchor setting (brice b@bnema.dev)
- 5ebf319: feat(config): add snapshot restore process configuration (brice b@bnema.dev)
- 7bfa6fa: feat(config): add tabs.terminal-title to toggle OSC titles in tab labels (brice b@bnema.dev)
- ec95daf: feat(config): add terminal accent policy (brice b@bnema.dev)
- c0c90a2: feat(config): add theme.palette toggle (default on) (brice b@bnema.dev)
- 5610a95: feat(copy): add canonical selection ranges (brice b@bnema.dev)
- 3026b44: feat(copy): add clocked word selection (brice b@bnema.dev)
- b3cac20: feat(copy): add display-cell document primitives (brice b@bnema.dev)
- e2f71ea: feat(copy): add vim-like cell navigation (brice b@bnema.dev)
- 8846c59: feat(copy): carry line bounds into the copy-mode snapshot (brice b@bnema.dev)
- 6af2c31: feat(copy): integrate precise keyboard selection (brice b@bnema.dev)
- eaec9db: feat(daemon): activate floating panes per tab (brice b@bnema.dev)
- 652325c: feat(daemon): add OSC progress attention MRU bar (brice b@bnema.dev)
- dbdedb4: feat(daemon): add notification center ring and pending queue (brice b@bnema.dev)
- 1a97012: feat(daemon): add notification history overlay and command (brice b@bnema.dev)
- cbd555e: feat(daemon): add pane resize control and modal commands (brice b@bnema.dev)
- e38876b: feat(daemon): add per-tab floating state machine (brice b@bnema.dev)
- 5b2d745: feat(daemon): add persistent attention bells (brice b@bnema.dev)
- 5e82673: feat(daemon): add scriptable bar right anchors (brice b@bnema.dev)
- 1fab421: feat(daemon): add tab title composition helpers (brice b@bnema.dev)
- d60f14b: feat(daemon): add visual search modal (brice b@bnema.dev)
- ac2dcc4: feat(daemon): announce disabled persistence at attach (brice b@bnema.dev)
- 163735e: feat(daemon): bold tab names and mute pane titles on truecolor clients (brice b@bnema.dev)
- db7ba0d: feat(daemon): carry unsaved-state notices across restarts (brice b@bnema.dev)
- 2b8f235: feat(daemon): complete window lifecycle controls (brice b@bnema.dev)
- 82b7fa1: feat(daemon): compose notice toasts into rendered frames (brice b@bnema.dev)
- 4428ba6: feat(daemon): compose status bar (brice b@bnema.dev)
- b253fab: feat(daemon): dispatch one-shot control commands (brice b@bnema.dev)
- 884ab90: feat(daemon): emit stable vev pane identity (brice b@bnema.dev)
- eb37c83: feat(daemon): establish render capture ownership (brice b@bnema.dev)
- 75e21f8: feat(daemon): gate terminal palette through effective theme (brice b@bnema.dev)
- ddc019c: feat(daemon): keep replaced clients in snatched state (brice b@bnema.dev)
- 09a2f38: feat(daemon): let snatched clients reclaim sessions (brice b@bnema.dev)
- 8ccec9f: feat(daemon): manage floating pane lifecycle (brice b@bnema.dev)
- bf32e20: feat(daemon): move panes between live tabs (brice b@bnema.dev)
- ac63f74: feat(daemon): move tabs between live sessions (brice b@bnema.dev)
- ca3316c: feat(daemon): overflow horizontal focus across tabs (brice b@bnema.dev)
- 777c969: feat(daemon): overflow vertical focus across sessions (brice b@bnema.dev)
- 6454fbc: feat(daemon): persist named session snapshots (brice b@bnema.dev)
- bc0f858: feat(daemon): preserve session lifecycle identity (brice b@bnema.dev)
- bb3050a: feat(daemon): publish copy configuration (brice b@bnema.dev)
- aa3698c: feat(daemon): publish floating pane configuration (brice b@bnema.dev)
- 6ea049e: feat(daemon): queue session-scoped notices for the next attach (brice b@bnema.dev)
- 3894536: feat(daemon): rearrange panes transactionally (brice b@bnema.dev)
- 250429c: feat(daemon): render floating pane overlays (brice b@bnema.dev)
- b70b3b4: feat(daemon): render snatched client panel (brice b@bnema.dev)
- cbdd525: feat(daemon): report actionable bar script failures once per signature (brice b@bnema.dev)
- 52e29a3: feat(daemon): restore sessions from catalogue checkpoints (brice b@bnema.dev)
- 3de5569: feat(daemon): resume snatched clients without reclaiming (brice b@bnema.dev)
- a1d7783: feat(daemon): route floating copy mode (brice b@bnema.dev)
- 540608f: feat(daemon): route floating terminal input (brice b@bnema.dev)
- 57a5dbb: feat(daemon): route user notices to per-client toast state (brice b@bnema.dev)
- c81e580: feat(daemon): serialize per-session command dispatch (brice b@bnema.dev)
- 7e2f16e: feat(daemon): session registry, PTY reader, debounced render scheduler, attach/resize (brice b@bnema.dev)
- 3e48405: feat(daemon): show focused pane titles in top bar tabs (brice b@bnema.dev)
- fe081c7: feat(daemon): size floating pane overlays (brice b@bnema.dev)
- a6ffc40: feat(daemon): stabilize FSK BSK history navigation (brice b@bnema.dev)
- 6909543: feat(daemon): suggest named sessions in palette (brice b@bnema.dev)
- 1408e43: feat(daemon): surface config reload warnings (brice b@bnema.dev)
- db0ee28: feat(daemon): use attached environment for PTYs (brice b@bnema.dev)
- e431dff: feat(daemon): wire command palette (brice b@bnema.dev)
- 26d6300: feat(daemon): wire rename prompt (brice b@bnema.dev)
- bdb821c: feat(daemon): wrap pane and tab spawn failures as user errors (brice b@bnema.dev)
- 2cb5bb3: feat(daemon): yank notification details via OSC52 (brice b@bnema.dev)
- ddf1935: feat(demo): add ticker script and demo output gitignore (brice b@bnema.dev)
- f0cb4a1: feat(demo): arch-based vhs recording image and runner (brice b@bnema.dev)
- 563c63a: feat(demo): full readme demo tape (brice b@bnema.dev)
- db9119f: feat(demo): smoke tape validating alt chords and claude auth in container (brice b@bnema.dev)
- c310fcf: feat(dgram): add best-effort key buffer clearing (brice b@bnema.dev)
- f2ef998: feat(dgram): wrap experimental runtime secret calls (brice b@bnema.dev)
- 4bfcb44: feat(domain): add unified UI anchors (brice b@bnema.dev)
- 004c25c: feat(domain): add user-facing notice types (brice b@bnema.dev)
- 621dedb: feat(domain,ports): core types, port interfaces, IPC frame surface (brice b@bnema.dev)
- e15edb0: feat(floating): render narrow terminals as drawers (brice b@bnema.dev)
- 922d0fd: feat(input): add mouse wheel and hardware cursor support (brice b@bnema.dev)
- 5c6654f: feat(input): route tab through overlays (brice b@bnema.dev)
- 29077b4: feat(install): support Linux ARM64 releases (brice b@bnema.dev)
- 6b2d35b: feat(ipc): framed binary protocol, unix transport/listener, stale-socket handling (brice b@bnema.dev)
- 563179c: feat(keys): add configurable pane resize actions (brice b@bnema.dev)
- cd05aa6: feat(kill): add all and daemon flags (brice b@bnema.dev)
- 20a6275: feat(layout): add cross-tree focus entry primitives (brice b@bnema.dev)
- 3f0da0d: feat(layout): add directional pane consume and expel (brice b@bnema.dev)
- 8bef307: feat(layout): resize and equalize focused panes (brice b@bnema.dev)
- cbe74eb: feat(layout): support weighted split geometry (brice b@bnema.dev)
- c8dcc0c: feat(logging): add rotated component logs (brice b@bnema.dev)
- 1b68dcf: feat(obs): wire opt-in JSONL performance trace (brice b@bnema.dev)
- 80d8cb6: feat(overlays): dim complete modal backdrops (brice b@bnema.dev)
- 0ede052: feat(palette): add fuzzy command model (brice b@bnema.dev)
- a72295f: feat(palette): add responsive command rail (brice b@bnema.dev)
- 0400d88: feat(palette): add typed session results (brice b@bnema.dev)
- b16caf0: feat(palette): autocomplete shortcodes with tab (brice b@bnema.dev)
- 4b73ee6: feat(palette): complete selected shortcodes (brice b@bnema.dev)
- 309d975: feat(palette): configure overlay anchoring (brice b@bnema.dev)
- ccea2f7: feat(palette): order commands by recent use (brice b@bnema.dev)
- 916eeb2: feat(palette): show and search visible command fields (brice b@bnema.dev)
- 32173a3: feat(palette): style command entries (brice b@bnema.dev)
- 181ce78: feat(panes): add split and stacked panes (brice b@bnema.dev)
- e4c6c0f: feat(persist): make session catalogue strict and atomic (brice b@bnema.dev)
- 00a4e55: feat(persist): open or migrate durable state once (brice b@bnema.dev)
- 6ff07bd: feat(persistence): persist named sessions (brice b@bnema.dev)
- 86f743f: feat(picker): make preview layout responsive (brice b@bnema.dev)
- 6633cd4: feat(picker): show focused pane titles and truncate long labels (brice b@bnema.dev)
- a50b4a9: feat(picker): style responsive session previews (brice b@bnema.dev)
- 84a83dc: feat(pkg): port vt + renderer from ymux (brice b@bnema.dev)
- a83ab49: feat(platform): darwin process inspector via sysctl and proc_pidinfo (brice b@bnema.dev)
- bb8d2ba: feat(platform): extract shared group selection and KERN_PROCARGS2 parser (brice b@bnema.dev)
- 383c02c: feat(ports): add ImagePush wire message (brice b@bnema.dev)
- f7c9bbe: feat(ports): add command wire messages and bump protocol to 18 (brice b@bnema.dev)
- 7855202: feat(ports): carry terminal palette in Theme wire message (brice b@bnema.dev)
- 456b0b1: feat(ports): return exit code and bounded stderr from shell runner (brice b@bnema.dev)
- 36aa808: feat(ports,ipc): list/kill/sessions protocol surface (brice b@bnema.dev)
- 7436891: feat(prompt): add input prompt model (brice b@bnema.dev)
- 106fbb7: feat(protocol): attach authoritative environment (brice b@bnema.dev)
- e25b377: feat(protocol): negotiate output in-flight window (brice b@bnema.dev)
- 7ac6830: feat(pty): Linux PTY adapter — ptmx open, setctty spawn, resize, EIO-as-EOF (brice b@bnema.dev)
- 68625c9: feat(pty): unify pty adapter across linux and darwin (brice b@bnema.dev)
- 2fd50e3: feat(recovery): add explicit degraded session recovery (brice b@bnema.dev)
- 1b02243: feat(recovery): commit bounded checkpoint fallbacks (brice b@bnema.dev)
- dfc95be: feat(recovery): define durable session identities (brice b@bnema.dev)
- 66c3cd3: feat(recovery): make session lifecycle transactions durable (brice b@bnema.dev)
- 65de473: feat(recovery): reset incompatible session snapshots (brice b@bnema.dev)
- 75dd680: feat(remote): add resilient attach transport (brice b@bnema.dev)
- 28e6f55: feat(remote): add ssh stdio attach (brice b@bnema.dev)
- 52e0dc8: feat(remote): bind udp proxy in a fixed configurable port range (brice b@bnema.dev)
- 283db0f: feat(remote): detach udp proxy from ssh bootstrap (brice b@bnema.dev)
- 2e8f4cf: feat(remote): make ssh udp attach resilient (brice b@bnema.dev)
- f310c98: feat(remote): select udp or stdio explicitly (brice b@bnema.dev)
- 097cba3: feat(session): add recent navigation commands (brice b@bnema.dev)
- b60ef98: feat(session): create sessions from inside vev (brice b@bnema.dev)
- 1697b4c: feat(session): jump to recent sessions by rank (brice b@bnema.dev)
- 717a6bd: feat(session): persist recent session order (brice b@bnema.dev)
- 316c07f: feat(session): toggle the previously active session (brice b@bnema.dev)
- e144d99: feat(snapshot): add durable repository primitives (brice b@bnema.dev)
- 755f4f5: feat(snapshot): capture foreground process restore metadata (brice b@bnema.dev)
- 871c141: feat(snapshot): encode incremental generation manifests (brice b@bnema.dev)
- b5f28c1: feat(snapshot): expose legacy snapshot imports (brice b@bnema.dev)
- 025da44: feat(snapshot): incremental captures (brice b@bnema.dev)
- f90cadc: feat(snapshot): key checkpoints by session incarnation (brice b@bnema.dev)
- 871b49b: feat(snapshot): persist pane weights in manifests (brice b@bnema.dev)
- 790011a: feat(snapshot): persist recovery transcripts (brice b@bnema.dev)
- 01179be: feat(snapshot): persist restore identity metadata (brice b@bnema.dev)
- be1ed56: feat(snapshot): quarantine deletes and collect stale blobs (brice b@bnema.dev)
- 0abd08b: feat(snapshot): rate-limit checkpoints (brice b@bnema.dev)
- 3c189af: feat(snapshot): reconcile and retain catalogue checkpoints (brice b@bnema.dev)
- 07ec9d9: feat(snapshot): restore allowlisted foreground processes (brice b@bnema.dev)
- 792ed4c: feat(snapshot): restore safely (brice b@bnema.dev)
- 9818e1d: feat(status): show contextual recent session ranks (brice b@bnema.dev)
- 00a245c: feat(tabs): add session tab picker (brice b@bnema.dev)
- 81e6be1: feat(tabs): persist custom tab names (brice b@bnema.dev)
- acf9d96: feat(term): add darwin backend to pkg/rawterm (brice b@bnema.dev)
- 786a71f: feat(term): client terminal adapter — raw mode, alt-screen, SIGWINCH coalescing, batched writer (brice b@bnema.dev)
- 456f79f: feat(term): query terminal palette alongside OSC 10/11 (brice b@bnema.dev)
- 23ebd52: feat(terminal): preserve resize content and add visual selection (brice b@bnema.dev)
- 47168d8: feat(terminal): propagate truecolor capability (brice b@bnema.dev)
- 442f1fc: feat(theme): add WCAG contrast helpers (brice b@bnema.dev)
- e6ae2e5: feat(theme): add amber Warn border role distinct from Info (brice b@bnema.dev)
- 914adb7: feat(theme): add perceptual color interpolation (brice b@bnema.dev)
- adf123a: feat(theme): apply semantic floating borders (brice b@bnema.dev)
- c646480: feat(theme): carry terminal ANSI palette in Theme (brice b@bnema.dev)
- ce901de: feat(theme): derive chrome accents from terminal palette (brice b@bnema.dev)
- b85f942: feat(theme): derive complete accent camaieu (brice b@bnema.dev)
- 4c09134: feat(theme): infer terminal-owned accent (brice b@bnema.dev)
- ef01342: feat(theme): inherit terminal colors (brice b@bnema.dev)
- 5c34841: feat(theme): parse OSC 4 palette responses in Scanner (brice b@bnema.dev)
- 84daa2c: feat(theme): tint complete status bars (brice b@bnema.dev)
- e7fd3eb: feat(theme): tint modal chrome surfaces (brice b@bnema.dev)
- 1a915d8: feat(ui): add anchored frame blitting (brice b@bnema.dev)
- d4e061d: feat(ui): add oriented separators (brice b@bnema.dev)
- 8a56e91: feat(ui): add reconnect toast notifications (brice b@bnema.dev)
- 1ace180: feat(ui): add responsive overlay presentation (brice b@bnema.dev)
- ed1dd0a: feat(ui): dim pane content behind overlays (brice b@bnema.dev)
- b40aa09: feat(ui): export TruncateText helper (brice b@bnema.dev)
- 0d2917c: feat(ui): support bottom-anchored modals (brice b@bnema.dev)
- 31971ae: feat(ui): support right-anchored modals (brice b@bnema.dev)
- 0461ab8: feat(vt): add owned screen snapshots (brice b@bnema.dev)
- e95e63a: feat(vt): add recovery transcript capture (brice b@bnema.dev)
- d75df92: feat(vt): bound history by retained cells (brice b@bnema.dev)
- 8e5d334: feat(vt): capture history without sealing tails (brice b@bnema.dev)
- 74eecd7: feat(vt): carry per-row logical extents into history (brice b@bnema.dev)
- 5be2475: feat(vt): expose live grid line bounds (brice b@bnema.dev)
- ff84b77: feat(vt): persist per-row logical extents, bump history format to v2 (brice b@bnema.dev)
- 37efbea: feat(vt): report terminal attention signals (brice b@bnema.dev)
- 35ddca2: feat(vt): restore transcripts into terminal history (brice b@bnema.dev)
- c1b2985: feat(vt): retain terminal titles (brice b@bnema.dev)
- e3beccd: feat(vt,renderer): true double-width character support (brice b@bnema.dev)
- 29b1a92: feat(wire): route client notices and displacement reasons (brice b@bnema.dev)
- d9a1d18: feat: add copy mode osc52 (brice b@bnema.dev)
- 1384496: feat: add install script for linux/x86_64 and darwin/arm64 (brice b@bnema.dev)
- 9548cb5: feat: add scrollback ring foundation (brice b@bnema.dev)
- 98c7add: feat: route alt escape keys (brice b@bnema.dev)
Bug Fixes
- 7281253: fix(app): bound stale daemon recovery (brice b@bnema.dev)
- 4c5416f: fix(app): detach daemon with double fork (brice b@bnema.dev)
- dbcb2e8: fix(app): make daemon spawn test portable (brice b@bnema.dev)
- bd4a6ac: fix(app): make offline snapshot deletion retryable (brice b@bnema.dev)
- 206ab7a: fix(app): prompt before restarting stale daemon (brice b@bnema.dev)
- c0e00f5: fix(app): propagate lifecycle release failures (brice b@bnema.dev)
- a6f1d55: fix(app): report fenced recoveries and serve offline kill from recoverable state (brice b@bnema.dev)
- 0fe8a6c: fix(app): serialize client and offline lifecycle access (brice b@bnema.dev)
- 8171186: fix(app): surface catalogue reset guidance (brice b@bnema.dev)
- f9c00e7: fix(bugs): apply post-picker bugfix batch (brice b@bnema.dev)
- 64d132d: fix(ci): pin hardened release workflow (brice b@bnema.dev)
- ca1a796: fix(ci): pin release workflow with Go version file support (brice b@bnema.dev)
- ca15ec4: fix(cli): map invalid command args to usage (brice b@bnema.dev)
- 23e3a70: fix(cli): normalize error prefix (brice b@bnema.dev)
- 1b18dd9: fix(cli): reject conflicting self target (brice b@bnema.dev)
- a84c06c: fix(client): address bracketed paste review findings (brice b@bnema.dev)
- 25fad49: fix(client): address reconnect toast review feedback (brice b@bnema.dev)
- c72128e: fix(client): clear drawn reconnect toast bounds (brice b@bnema.dev)
- d0f41bb: fix(client): correlate palette boundary response (brice b@bnema.dev)
- 9bbe15f: fix(client): delimit palette query generations (brice b@bnema.dev)
- 05e5006: fix(client): detach gracefully on controlling-terminal hangup (brice b@bnema.dev)
- 6e4ea87: fix(client): flush ambiguous escape input (brice b@bnema.dev)
- d059917: fix(client): guard late palette drain responses (brice b@bnema.dev)
- 3711516: fix(client): hand off queued terminal input (brice b@bnema.dev)
- 68c86a5: fix(client): harden terminal input handoff (brice b@bnema.dev)
- 622d29b: fix(client): keep reconnect toast clear bounds current (brice b@bnema.dev)
- 445049f: fix(client): make terminal reader claims transactional (brice b@bnema.dev)
- d885d0f: fix(client): preserve palette read generation (brice b@bnema.dev)
- aae2680: fix(client): preserve scanner residual before reconnect claim handoff (brice b@bnema.dev)
- c5fa06a: fix(client): preserve scanner residuals across reconnect (brice b@bnema.dev)
- cd86ba3: fix(client): preserve terminal theme across reconnects (brice b@bnema.dev)
- f5d748a: fix(client): prevent late terminal input after stop (brice b@bnema.dev)
- 01c510d: fix(client): reconcile remote probing toast (brice b@bnema.dev)
- 5726ece: fix(client): redial over ssh at the offline link state (brice b@bnema.dev)
- cdca174: fix(client): share terminal reader across reconnects (brice b@bnema.dev)
- d67cf9f: fix(client): show degraded-link and clipboard-paste toasts (brice b@bnema.dev)
- 8f22d3a: fix(client): synchronize palette query boundary (brice b@bnema.dev)
- f87757e: fix(client,keys): keep bracketed paste markers intact across input frames (brice b@bnema.dev)
- 65ad319: fix(clipboard): address osc52 review findings (brice b@bnema.dev)
- 76a1920: fix(clipboard): harden image transfer review findings (brice b@bnema.dev)
- fb1b268: fix(clipboard): serialize osc52 forwarding (brice b@bnema.dev)
- c082b4b: fix(command): reject non-canonical decimals (brice b@bnema.dev)
- 2a105ed: fix(config): address PR review feedback (brice b@bnema.dev)
- 13f3c56: fix(config): disable external bar commands by default (brice b@bnema.dev)
- b2b8267: fix(control): honor explicit self target (brice b@bnema.dev)
- 46853d3: fix(copy): address PR review feedback (brice b@bnema.dev)
- 6b1fde2: fix(copy): advance word end past completed words (brice b@bnema.dev)
- f38c91b: fix(copy): bound clipboard send latency (brice b@bnema.dev)
- d57a965: fix(copy): clear pointer on focused title press (brice b@bnema.dev)
- b33d82f: fix(copy): drop grid padding and rejoin wrapped rows when copying (brice b@bnema.dev)
- e47efb0: fix(copy): emit osc52 clipboard as single sequence (brice b@bnema.dev)
- b268ad5: fix(copy): harden search and release handling (brice b@bnema.dev)
- d9ee20f: fix(copy): ignore stale pointer resets (brice b@bnema.dev)
- 9938807: fix(copy): invalidate rejected pointer interactions (brice b@bnema.dev)
- 440c1a2: fix(copy): invalidate stale copy documents (brice b@bnema.dev)
- 8187d66: fix(copy): label passive scrollback mode (brice b@bnema.dev)
- 7ab375d: fix(copy): preserve bounded word drag state (brice b@bnema.dev)
- 1f016aa: fix(copy): preserve mouse routing across overlays (brice b@bnema.dev)
- aaa3319: fix(copy): preserve pointer lifecycle across search (brice b@bnema.dev)
- e769ef3: fix(copy): preserve selection during search navigation (brice b@bnema.dev)
- 3d26bab: fix(copy): report oversized selections (brice b@bnema.dev)
- e03e10d: fix(copy): validate mode publication atomically (brice b@bnema.dev)
- 05cf628: fix(cursor): use block fallback style (brice b@bnema.dev)
- 3398032: fix(daemon): adapt coordinator render deadlines (brice b@bnema.dev)
- edf4b33: fix(daemon): address PR review feedback (brice b@bnema.dev)
- 3a57f9d: fix(daemon): address attention review findings (brice b@bnema.dev)
- a0fb45a: fix(daemon): address bar anchor review findings (brice b@bnema.dev)
- ce26e86: fix(daemon): address claude bar anchor review (brice b@bnema.dev)
- 212c6b7: fix(daemon): address lifecycle review findings (brice b@bnema.dev)
- 4fdfae1: fix(daemon): address notification review findings (brice b@bnema.dev)
- 5992754: fix(daemon): address snapshot review findings (brice b@bnema.dev)
- 5d3577f: fix(daemon): address stable identity review findings (brice b@bnema.dev)
- 50d230a: fix(daemon): admit resize epochs before publication (brice b@bnema.dev)
- 37d52d3: fix(daemon): align floating popup coordinates (brice b@bnema.dev)
- 5cc817b: fix(daemon): align pane rearrangement results (brice b@bnema.dev)
- 5033bbe: fix(daemon): assign lifecycle on session promotion (brice b@bnema.dev)
- efa8333: fix(daemon): atomically publish theme config (brice b@bnema.dev)
- 92fca30: fix(daemon): avoid hidden sync end wake (brice b@bnema.dev)
- de2ad79: fix(daemon): bind coordinator wakes to attachments (brice b@bnema.dev)
- 27ab0c6: fix(daemon): block unsafe picker recovery (brice b@bnema.dev)
- f00a00d: fix(daemon): bound concurrent teardown waits (brice b@bnema.dev)
- a8af417: fix(daemon): bound defensive shutdown teardown (brice b@bnema.dev)
- 037ef43: fix(daemon): cancel floating PTY opens during teardown (brice b@bnema.dev)
- 4c50de8: fix(daemon): cancel tab opens with session (brice b@bnema.dev)
- 50dce66: fix(daemon): capture copy source on drag entry (brice b@bnema.dev)
- b30c769: fix(daemon): centralize copy mouse coordinates (brice b@bnema.dev)
- a9b46bf: fix(daemon): checkpoint before stopping snapshot workers (brice b@bnema.dev)
- 4e7c62c: fix(daemon): clear floating copy state on teardown (brice b@bnema.dev)
- 0a4727b: fix(daemon): clear non-renderable pane damage (brice b@bnema.dev)
- fe1b01a: fix(daemon): clear stale mouse press state and drag offset (brice b@bnema.dev)
- 1dc131d: fix(daemon): close notice routing race windows (brice b@bnema.dev)
- 812d54f: fix(daemon): close pre-pr concurrency gaps (brice b@bnema.dev)
- 82284b7: fix(daemon): close tab creation race (brice b@bnema.dev)
- 7099f68: fix(daemon): coalesce resize redraws (brice b@bnema.dev)
- 5e5cdfb: fix(daemon): commit render damage after emission (brice b@bnema.dev)
- 6732890: fix(daemon): complete coordinator handoff and watchdog ordering (brice b@bnema.dev)
- e3b7703: fix(daemon): complete snapshot repository cutover (brice b@bnema.dev)
- 791d18b: fix(daemon): confine attention repaints to bar rows (brice b@bnema.dev)
- 4eadd47: fix(daemon): consume split list escape prefixes (brice b@bnema.dev)
- d32ee68: fix(daemon): coordinate incremental checkpoints (brice b@bnema.dev)
- 0d938b0: fix(daemon): coordinate synchronized pane batches (brice b@bnema.dev)
- bfbfc09: fix(daemon): decouple preview wakes from target ack (brice b@bnema.dev)
- f1db0f5: fix(daemon): defer floating activation wiring (brice b@bnema.dev)
- ffeecb7: fix(daemon): enforce one snapshot shutdown deadline (brice b@bnema.dev)
- 8953d42: fix(daemon): enforce overflow handoff invariants (brice b@bnema.dev)
- c6654e6: fix(daemon): evaluate ack readiness outside coordinator lock (brice b@bnema.dev)
- 9e796e1: fix(daemon): exclude hidden commands from palette codes (brice b@bnema.dev)
- 211b2e1: fix(daemon): gate mouse input on notices overlay activity (brice b@bnema.dev)
- 35dbd6b: fix(daemon): gate output until client welcome (brice b@bnema.dev)
- 7e0e278: fix(daemon): gate paints on output acks (brice b@bnema.dev)
- 44ecbad: fix(daemon): guard palette render with palette lock (brice b@bnema.dev)
- 05d4687: fix(daemon): guard session overflow handoff atomically (brice b@bnema.dev)
- ed50af9: fix(daemon): handle final notification edge cases (brice b@bnema.dev)
- 423c15f: fix(daemon): harden bar anchor refresh and output handling (brice b@bnema.dev)
- 96740f3: fix(daemon): harden final move retirement (brice b@bnema.dev)
- c376548: fix(daemon): harden floating pane cleanup (brice b@bnema.dev)
- 77cef84: fix(daemon): harden lifecycle target resolution (brice b@bnema.dev)
- dad29ba: fix(daemon): harden move concurrency edges (brice b@bnema.dev)
- edadec9: fix(daemon): harden pane resize retry transactions (brice b@bnema.dev)
- bf7a30f: fix(daemon): isolate benchmark instrumentation (brice b@bnema.dev)
- cbdec07: fix(daemon): isolate committed render cache (brice b@bnema.dev)
- 18a09bb: fix(daemon): join maintenance before owner release (brice b@bnema.dev)
- 808c829: fix(daemon): join restoration before releasing lifecycle ownership (brice b@bnema.dev)
- 9829e35: fix(daemon): keep bar background under attention bell and move it beside tab name (brice b@bnema.dev)
- 8aba936: fix(daemon): keep benchmark workloads representative (brice b@bnema.dev)
- 050ecf4: fix(daemon): keep pty reader non-blocking on attention (brice b@bnema.dev)
- 6de1185: fix(daemon): keep snapshot generations contiguous (brice b@bnema.dev)
- 0f2b5db: fix(daemon): log pending-notice drain failures at startup (brice b@bnema.dev)
- ebf4652: fix(daemon): log pty exit causes and recover dropped frames (brice b@bnema.dev)
- b0ecd73: fix(daemon): make global notice routing attachment-safe (brice b@bnema.dev)
- 12d44e0: fix(daemon): make snapshot purge retryable (brice b@bnema.dev)
- 25059b8: fix(daemon): manage timers outside coordinator lock (brice b@bnema.dev)
- 5c0dde8: fix(daemon): prepare coordinator ownership before publication (brice b@bnema.dev)
- 89abebd: fix(daemon): preserve batched notification yank selection (brice b@bnema.dev)
- 84b1781: fix(daemon): preserve buffered redraws through resize (brice b@bnema.dev)
- bc8142c: fix(daemon): preserve committed floating geometry (brice b@bnema.dev)
- 2d3364c: fix(daemon): preserve control mutation failures (brice b@bnema.dev)
- 4e6142e: fix(daemon): preserve coordinator ownership across sessions (brice b@bnema.dev)
- 5a197b5: fix(daemon): preserve coordinator sync lifecycle (brice b@bnema.dev)
- 0812bb2: fix(daemon): preserve environment during snapshot restore (brice b@bnema.dev)
- 9f11203: fix(daemon): preserve floating title fallback (brice b@bnema.dev)
- d277208: fix(daemon): preserve focus for stable control targets (brice b@bnema.dev)
- d1419bc: fix(daemon): preserve forced checkpoint state (brice b@bnema.dev)
- 9edd30e: fix(daemon): preserve history navigation under code overrides (brice b@bnema.dev)
- d7ce2f4: fix(daemon): preserve pane rearrangement warnings (brice b@bnema.dev)
- 7579215: fix(daemon): preserve recovery metadata on updates (brice b@bnema.dev)
- 91e8bae: fix(daemon): preserve render deadline across ack (brice b@bnema.dev)
- 24d8746: fix(daemon): preserve standalone floating launch ownership (brice b@bnema.dev)
- 77ab500: fix(daemon): preserve terminal-only pane titles (brice b@bnema.dev)
- c8b162c: fix(daemon): preserve the restore attach barrier (brice b@bnema.dev)
- a710b51: fix(daemon): publish deadline before invalidation hook (brice b@bnema.dev)
- 5d071d6: fix(daemon): publish headless preview invalidations (brice b@bnema.dev)
- 5747da7: fix(daemon): publish sync batches before pane unlock (brice b@bnema.dev)
- 747b112: fix(daemon): re-arm bar poller when the interval changes (brice b@bnema.dev)
- 789f8b1: fix(daemon): redraw committed floating geometry (brice b@bnema.dev)
- a593915: fix(daemon): refresh bar scripts immediately on config change (brice b@bnema.dev)
- c11de37: fix(daemon): refresh geometry before delayed resize retry (brice b@bnema.dev)
- c9575d3: fix(daemon): reject stale floating layout publication (brice b@bnema.dev)
- 71b3504: fix(daemon): release benchmark fixtures per iteration (brice b@bnema.dev)
- 83dcf79: fix(daemon): replay PTY output across resize apply (brice b@bnema.dev)
- 7f0463c: fix(daemon): republish synchronized completion (brice b@bnema.dev)
- 4d8f902: fix(daemon): reset attachment render batches (brice b@bnema.dev)
- b897e1c: fix(daemon): resize floating pane on show (brice b@bnema.dev)
- 0d51098: fix(daemon): restore base frame after floating close (brice b@bnema.dev)
- 5f064ea: fix(daemon): retain latest resize timer ownership (brice b@bnema.dev)
- df0f462: fix(daemon): retain ownership until snapshot writers stop (brice b@bnema.dev)
- cf75aa0: fix(daemon): retain sync batches across detach and replace (brice b@bnema.dev)
- ae5758e: fix(daemon): retain timed-out checkpoint state (brice b@bnema.dev)
- b4f3f70: fix(daemon): retain warm paint bar cache storage (brice b@bnema.dev)
- de9b334: fix(daemon): retry accepted failed layout applies (brice b@bnema.dev)
- 290f538: fix(daemon): retry failed transactional resizes (brice b@bnema.dev)
- dc9a821: fix(daemon): reuse bounded render snapshots (brice b@bnema.dev)
- 8c3ac3a: fix(daemon): run bar scripts with the session environment (brice b@bnema.dev)
- 8aaf1e5: fix(daemon): schedule repository checkpoints (brice b@bnema.dev)
- 225928f: fix(daemon): scope snapshot cache per session (brice b@bnema.dev)
- be1bb36: fix(daemon): serialize final session snapshots (brice b@bnema.dev)
- 02c900e: fix(daemon): serialize floating launch shutdown (brice b@bnema.dev)
- 4165239: fix(daemon): serialize toast publication with detach (brice b@bnema.dev)
- e2f14db: fix(daemon): show active agent bell pulse (brice b@bnema.dev)
- 22dc71c: fix(daemon): shutdown/create interlock + unblockable teardown ordering (brice b@bnema.dev)
- 75a1afd: fix(daemon): simplify pane visibility guard (brice b@bnema.dev)
- 3601ffd: fix(daemon): skip redundant title recompute, refresh detached pickers (brice b@bnema.dev)
- eff9002: fix(daemon): skip stale session paint (brice b@bnema.dev)
- ea71bd4: fix(daemon): stabilize render coordinator lifecycle (brice b@bnema.dev)
- ac3765a: fix(daemon): stabilize render coordinator lifecycle (brice b@bnema.dev)
- cf19ce4: fix(daemon): stabilize resize epoch scheduling (brice b@bnema.dev)
- 2f744a4: fix(daemon): stabilize transactional resize completion (brice b@bnema.dev)
- 650884a: fix(daemon): stop discarding keybinding handler errors (brice b@bnema.dev)
- a2b1d86: fix(daemon): surface dropped input (brice b@bnema.dev)
- 1f71d39: fix(daemon): surface failed process auto-resume (brice b@bnema.dev)
- 2175cce: fix(daemon): surface failed session restores at attach (brice b@bnema.dev)
- 778ed2e: fix(daemon): surface floating pane spawn failures (brice b@bnema.dev)
- a4b2aa9: fix(daemon): surface palette command failures as notices (brice b@bnema.dev)
- 25f341a: fix(daemon): surface pane resize failures (brice b@bnema.dev)
- 601c376: fix(daemon): surface refused close of last tab instead of silent no-op (brice b@bnema.dev)
- 41eb8b0: fix(daemon): surface remaining session action errors (brice b@bnema.dev)
- c32a9ec: fix(daemon): surface snapshot write failures globally (brice b@bnema.dev)
- 5fdd7fe: fix(daemon): synchronize floating pane ownership (brice b@bnema.dev)
- 014aa3c: fix(daemon): synchronize overlay initialization (brice b@bnema.dev)
- 1469f94: fix(daemon): synchronize pane start logging (brice b@bnema.dev)
- ddea50c: fix(daemon): track sync lifecycle across visibility (brice b@bnema.dev)
- 7a384bc: fix(daemon): use NoticeClipboard for empty yank-history warn (brice b@bnema.dev)
- 7c216c5: fix(daemon): validate coordinator wake incarnation (brice b@bnema.dev)
- aecc277: fix(daemon): wake headless bar preview subscribers (brice b@bnema.dev)
- 27e6e25: fix(darwin): harden process inspection and pty tests (brice b@bnema.dev)
- 05ece64: fix(darwin): validate process ids and stabilize tests (brice b@bnema.dev)
- fc55a7b: fix(demo): add cmatrix and eza for demo scenes (brice b@bnema.dev)
- b065dea: fix(demo): bundle nerd font for vev attention glyph (brice b@bnema.dev)
- b6e3279: fix(demo): clean up the claude temp home through the container (brice b@bnema.dev)
- 522da92: fix(demo): enable truecolor and terminfo in recording container (brice b@bnema.dev)
- 10de305: fix(demo): eza auto icons, manpage and neovim scene tooling (brice b@bnema.dev)
- 45b1180: fix(demo): keep claude temp home unreachable to other host users (brice b@bnema.dev)
- e0dfddf: fix(demo): make demo out dir writable under rootless docker (brice b@bnema.dev)
- 17afeb9: fix(demo): optimize demo gif with gifsicle (brice b@bnema.dev)
- 6a1b1b0: fix(demo): unblock claude under rootless docker (trust dialog, temp home perms) (brice b@bnema.dev)
- 4cb7b0d: fix(dgram): account paced wire bytes (brice b@bnema.dev)
- 93af417: fix(dgram): align secret handling contracts (brice b@bnema.dev)
- a386d4d: fix(dgram): complete UDP flood diagnostics (brice b@bnema.dev)
- 76bfb3a: fix(dgram): contain readiness parsing (brice b@bnema.dev)
- ce08837: fix(dgram): detect send-stall dead links and hop earlier (brice b@bnema.dev)
- 246a824: fix(dgram): distinguish UDP contact from stream progress (brice b@bnema.dev)
- 48a3b83: fix(dgram): enforce single output state window (brice b@bnema.dev)
- 2bd81b9: fix(dgram): erase late readiness keys (brice b@bnema.dev)
- fcb2135: fix(dgram): exercise real UDP flood failure modes (brice b@bnema.dev)
- d25aab8: fix(dgram): gate resend until first send completes (brice b@bnema.dev)
- 8d15e6e: fix(dgram): harden paced retransmission loss handling (brice b@bnema.dev)
- be2c9fb: fix(dgram): isolate ACK deadline scheduling (brice b@bnema.dev)
- 7bc9409: fix(dgram): isolate UDP health from bulk retransmits (brice b@bnema.dev)
- b4de712: fix(dgram): keep reassembly diagnostics current (brice b@bnema.dev)
- 5e4db39: fix(dgram): keep the UDP proxy alive under congestion (brice b@bnema.dev)
- b9e591f: fix(dgram): make UDP diagnostics and fixtures deterministic (brice b@bnema.dev)
- 26a180f: fix(dgram): make constrained-link simulation deterministic (brice b@bnema.dev)
- ba81cef: fix(dgram): move UDP control writes off receive loop (brice b@bnema.dev)
- 993f038: fix(dgram): order reassembly diagnostic commits (brice b@bnema.dev)
- f08136d: fix(dgram): pace UDP remote retransmits (brice b@bnema.dev)
- 0377fb5: fix(dgram): preserve paced output delivery (brice b@bnema.dev)
- 9f8c7d2: fix(dgram): redact and clear bootstrap keys promptly (brice b@bnema.dev)
- f1350fe: fix(dgram): resolve UDP retry review findings (brice b@bnema.dev)
- aeaca5d: fix(dgram): revalidate UDP health decisions (brice b@bnema.dev)
- c3dcda7: fix(dgram): route acknowledgements through control path (brice b@bnema.dev)
- 68a2ea2: fix(dgram): serialize UDP health recovery (brice b@bnema.dev)
- 54a6817: fix(dgram): serialize paced initial sends (brice b@bnema.dev)
- 1956fce: fix(dgram): synchronize control writes with rebind (brice b@bnema.dev)
- 7f56b4a: fix(dgram): track pending UDP round trips (brice b@bnema.dev)
- 3389194: fix(dgram): wake delivery after output supersession (brice b@bnema.dev)
- dae353e: fix(floating): clip retained geometry during composition (brice b@bnema.dev)
- 7ccd74f: fix(floating): keep zero-inner publication atomic (brice b@bnema.dev)
- d1d65ad: fix(floating): preserve committed geometry on resize failure (brice b@bnema.dev)
- 5e8bad4: fix(floating): repaint immediately when hiding popup (brice b@bnema.dev)
- bb3b15d: fix(floating): retain PTY context after launch (brice b@bnema.dev)
- 1f305e9: fix(harness): preserve complete diagnostic evidence (brice b@bnema.dev)
- e48677f: fix(ipc): make daemon dialing cancellable (brice b@bnema.dev)
- d8fc808: fix(keys): cancel pending esc waiter (brice b@bnema.dev)
- df056ef: fix(keys): include Belgian AZERTY digit aliases (brice b@bnema.dev)
- de4decf: fix(keys): preserve invalid split alt utf8 input (brice b@bnema.dev)
- 3a2ff56: fix(keys): support non-qwerty alt digit bindings (brice b@bnema.dev)
- 6489acf: fix(kill): address review feedback (brice b@bnema.dev)
- 836c233: fix(kv): abort fenced catalogue writes safely (brice b@bnema.dev)
- 7f3e337: fix(kv): bound batch decoding allocations (brice b@bnema.dev)
- a5ac8f2: fix(kv): preserve write error wrapping (brice b@bnema.dev)
- fd389f8: fix(kv): protect record length with a header checksum (brice b@bnema.dev)
- 07742d2: fix(layout): harden pane tree operations (brice b@bnema.dev)
- ed8e7b6: fix(layout): hide the active stacked pane's title bar (brice b@bnema.dev)
- 44c9bd0: fix(layout): pin weighted children atomically (brice b@bnema.dev)
- fc1ff4f: fix(layout): preserve live-paint allocation budget (brice b@bnema.dev)
- 6cda4a5: fix(noticefile): make pending notice import recoverable (brice b@bnema.dev)
- 156e0f0: fix(noticefile): recover after oversized pending records (brice b@bnema.dev)
- d558968: fix(notices): preserve claim ownership (brice b@bnema.dev)
- 2250adb: fix(notices): release claims and stop exited input (brice b@bnema.dev)
- 81c1931: fix(notices): serialize claim release on ack (brice b@bnema.dev)
- 3d59ccb: fix(obs): apply UDP network fixtures (brice b@bnema.dev)
- 7d099f2: fix(obs): bound netem scheduling and evidence writes (brice b@bnema.dev)
- e99dffb: fix(obs): close failed adapter spans (brice b@bnema.dev)
- 72845c9: fix(obs): close roles before trace merge (brice b@bnema.dev)
- ba3714c: fix(obs): decouple runtime reporting from ACK progress (brice b@bnema.dev)
- 720c52d: fix(obs): emit daemon marks outside locks (brice b@bnema.dev)
- 6d5b59f: fix(obs): exclude failed span durations (brice b@bnema.dev)
- 182a466: fix(obs): execute public performance scenarios (brice b@bnema.dev)
- a244e21: fix(obs): flush spans before harness cleanup (brice b@bnema.dev)
- 51273ff: fix(obs): isolate harness repetitions (brice b@bnema.dev)
- 8d86d44: fix(obs): isolate role XDG directories (brice b@bnema.dev)
- d833ed1: fix(obs): keep ACK progress independent of observer I/O (brice b@bnema.dev)
- 1f1baaa: fix(obs): mark actual runtime boundaries (brice b@bnema.dev)
- aefef68: fix(obs): order ACK blocked span publication (brice b@bnema.dev)
- 89cf334: fix(obs): preserve repeated daemon traces (brice b@bnema.dev)
- 3f30dae: fix(obs): preserve runtime span correlation (brice b@bnema.dev)
- dd4fb64: fix(obs): propagate harness correlation (brice b@bnema.dev)
- be0d908: fix(obs): resolve harness output paths (brice b@bnema.dev)
- 1cb3d81: fix(obs): route remote harness transports (brice b@bnema.dev)
- 9597b55: fix(obs): sample complete measurement intervals (brice b@bnema.dev)
- c10e22a: fix(obs): tighten trace and spawn validation (brice b@bnema.dev)
- 0021186: fix(obs): validate concurrent trace ordering (brice b@bnema.dev)
- 1ffeb55: fix(obs): validate harness terminal evidence (brice b@bnema.dev)
- 053d9e6: fix(palette): address style review feedback (brice b@bnema.dev)
- 88ed2de: fix(palette): center command picker by default (brice b@bnema.dev)
- 38162d7: fix(palette): commit recent jumps before closing (brice b@bnema.dev)
- 7b780df: fix(palette): complete navigation and modal geometry (brice b@bnema.dev)
- 2d52091: fix(palette): freeze selection after enter (brice b@bnema.dev)
- e2e231b: fix(palette): honor effective recent jump code (brice b@bnema.dev)
- 8f95b0e: fix(palette): integrate wrap-up findings (brice b@bnema.dev)
- 123b9fb: fix(palette): preserve batched tab invalidation (brice b@bnema.dev)
- d589837: fix(palette): prioritize exact argument command (brice b@bnema.dev)
- 59a790d: fix(palette): render recent jump guidance (brice b@bnema.dev)
- acdb950: fix(palette): repaint after no-op commands (brice b@bnema.dev)
- 9d575ec: fix(palette): report malformed JRS ranks distinctly and drop write-only feedback state (brice b@bnema.dev)
- 90f4a2e: fix(palette): theme selected descriptions (brice b@bnema.dev)
- f4d7e27: fix(palette): validate session picker targets (brice b@bnema.dev)
- 6389371: fix(panes): address PR review findings (brice b@bnema.dev)
- af961c3: fix(panes): address split pane review findings (brice b@bnema.dev)
- 58a748a: fix(panes): align cursor with focused pane (brice b@bnema.dev)
- 23380f8: fix(panes): support vim focus keys and stack splitting (brice b@bnema.dev)
- dbc6bb7: fix(perf-harness): drain client output during shutdown (brice b@bnema.dev)
- 1d11e86: fix(perf-harness): drain terminal output on shutdown (brice b@bnema.dev)
- 681ca80: fix(perf-harness): escalate client teardown without truncating traces (brice b@bnema.dev)
- 9f082df: fix(persist): fail catalogue reads only when state is truly absent (brice b@bnema.dev)
- e5d0dcf: fix(persist): fence failed identity writes (brice b@bnema.dev)
- 4102d7e: fix(persist): reject all non-current durable state (brice b@bnema.dev)
- aead79d: fix(persistence): address PR review findings (brice b@bnema.dev)
- d6f7eb5: fix(persistence): complete strict catalogue integration (brice b@bnema.dev)
- b5b098c: fix(persistence): resolve follow-up PR comments (brice b@bnema.dev)
- 6f41b4b: fix(picker): harden switch and preview cleanup (brice b@bnema.dev)
- d8255fc: fix(picker): keep selection visible on resize (brice b@bnema.dev)
- 898d276: fix(platform): correct darwin process ABI and argv bounds (brice b@bnema.dev)
- bf0286e: fix(ports): reject command argument count overflow (brice b@bnema.dev)
- ffe9b7e: fix(pty): resize via raw master fd — keep poller registration (brice b@bnema.dev)
- 80597c9: fix(recovery): bound migration maintenance io (brice b@bnema.dev)
- 0b9089a: fix(recovery): complete migration startup integration (brice b@bnema.dev)
- 97f1e81: fix(recovery): fence startup garbage collection (brice b@bnema.dev)
- 979dbfb: fix(recovery): harden durable session invariants (brice b@bnema.dev)
- 8849f70: fix(recovery): make failed restores discardable (brice b@bnema.dev)
- 445b2ff: fix(recovery): reject ambiguous version errors (brice b@bnema.dev)
- 0ffe39d: fix(recovery): resolve final durability review (brice b@bnema.dev)
- e82f1b8: fix(recovery): retain healthy checkpoint window (brice b@bnema.dev)
- 48ce437: fix(recovery): roll discard intents forward and fence per-session conflicts (brice b@bnema.dev)
- 2bc840b: fix(recovery): stabilize restore completion states (brice b@bnema.dev)
- 2b0e9f7: fix(recovery): tighten maintenance and restore fencing (brice b@bnema.dev)
- 1f12e31: fix(recovery): tighten maintenance and restore safety (brice b@bnema.dev)
- 9297910: fix(recovery): wire bounded production maintenance (brice b@bnema.dev)
- eb936d6: fix(release): make partial publication retries idempotent (brice b@bnema.dev)
- af7817b: fix(release): pin installer command to release version (brice b@bnema.dev)
- 9a2054f: fix(release): resolve final review findings (brice b@bnema.dev)
- 7deb448: fix(release): use supported goreleaser tag sorting (brice b@bnema.dev)
- 49ca2bd: fix(remote): address PR review findings (brice b@bnema.dev)
- 8d55edc: fix(remote): address PR review findings (brice b@bnema.dev)
- 9da1afc: fix(remote): address pr review transport issues (brice b@bnema.dev)
- 2f5b15c: fix(remote): address review findings (brice b@bnema.dev)
- 5e9cf03: fix(remote): bound udp bootstrap readiness (brice b@bnema.dev)
- d737ef0: fix(remote): clarify udp reachability (brice b@bnema.dev)
- 72cf674: fix(remote): close bootstrap pipe on start failure (brice b@bnema.dev)
- 14aa864: fix(remote): harden resilient attach transport (brice b@bnema.dev)
- 982eec1: fix(remote): harden udp bootstrap lifetime (brice b@bnema.dev)
- 18e2515: fix(remote): honor UDP proxy idle TTL (brice b@bnema.dev)
- 5db9466: fix(remote): keep udp default, make probe failure actionable (brice b@bnema.dev)
- bfba9f2: fix(remote): negotiate ACK-driven output state (brice b@bnema.dev)
- 44355e4: fix(remote): preserve multiline bracketed paste (brice b@bnema.dev)
- 4480b59: fix(remote): preserve pipelined output state (brice b@bnema.dev)
- 56875c7: fix(remote): preserve transport identity on sends (brice b@bnema.dev)
- 3b58b7b: fix(remote): reduce UDP output backlog (brice b@bnema.dev)
- e555c28: fix(remote): restore ssh attach default (brice b@bnema.dev)
- 380112a: fix(remote): return actionable udp bootstrap errors (brice b@bnema.dev)
- 4bab8d8: fix(remote): wire the client UDP socket rebind (brice b@bnema.dev)
- 1a1fa2b: fix(render): avoid duplicate floating first paint (brice b@bnema.dev)
- 5578582: fix(render): draw pane dividers from the solved layout geometry (brice b@bnema.dev)
- a7dcf8b: fix(render): eliminate timer worker self-joins (brice b@bnema.dev)
- b901b13: fix(render): initialize capture frame cache once (brice b@bnema.dev)
- c842af7: fix(render): preserve watchdog flush semantics (brice b@bnema.dev)
- a4dfd3e: fix(render): prevent stale frames across transitions (brice b@bnema.dev)
- fd5be11: fix(render): prune closed pane captures (brice b@bnema.dev)
- c58a7c1: fix(render): release captures before parking client (brice b@bnema.dev)
- ef6cad6: fix(render): report immediate resize completion (brice b@bnema.dev)
- 588d04f: fix(render): scope captured frames to pane identity (brice b@bnema.dev)
- fb92feb: fix(renderer): bound pane title cache (brice b@bnema.dev)
- ce6cefd: fix(renderer): canonicalize incremental damage emission (brice b@bnema.dev)
- e74381d: fix(renderer): plan scroll damage before emission (brice b@bnema.dev)
- 79bbf61: fix(renderer): preserve extended SGR attributes (brice b@bnema.dev)
- 0ae8e2a: fix(renderer): synchronize floating pane composition (brice b@bnema.dev)
- 99ffb2f: fix(resize): address final review findings (brice b@bnema.dev)
- 3ead26d: fix(resize): guard canceled layout publication (brice b@bnema.dev)
- afa2cd4: fix(review): address concurrency and lifecycle findings (brice b@bnema.dev)
- 6eb7ce5: fix(runtime): address blocking review findings (brice b@bnema.dev)
- d319b30: fix(runtime): address timer lifecycle review (brice b@bnema.dev)
- c577b15: fix(runtime): harden lifecycle and trace ownership (brice b@bnema.dev)
- aaad006: fix(runtime): harden lifecycle and validation boundaries (brice b@bnema.dev)
- 1c8c669: fix(runtime): stabilize bounded shutdown and scanning (brice b@bnema.dev)
- efbf525: fix(scripts): keep top bar clock rightmost (brice b@bnema.dev)
- 7888811: fix(security): verify private runtime directories (brice b@bnema.dev)
- ef5a4d1: fix(session): address recent navigation review (brice b@bnema.dev)
- 74cc71c: fix(session): clear discarded parked toggle state (brice b@bnema.dev)
- 391596f: fix(session): clear invalid toggle targets (brice b@bnema.dev)
- 8a95a48: fix(session): handle stale recent navigation (brice b@bnema.dev)
- b910459: fix(session): preserve concurrent toggle targets (brice b@bnema.dev)
- 488efa2: fix(session): repaint switched session after CNS (brice b@bnema.dev)
- 758670c: fix(sessions): address ephemeral session review findings (brice b@bnema.dev)
- e2b324b: fix(snapshot): address PR review findings (brice b@bnema.dev)
- d5782db: fix(snapshot): address coderabbit findings (brice b@bnema.dev)
- 049957e: fix(snapshot): address coderabbit findings (brice b@bnema.dev)
- caf28f0: fix(snapshot): address final review findings (brice b@bnema.dev)
- f4b9a61: fix(snapshot): address follow-up review findings (brice b@bnema.dev)
- 2e3ea8b: fix(snapshot): address process capture review findings (brice b@bnema.dev)
- 697053d: fix(snapshot): address recovery review findings (brice b@bnema.dev)
- 89277e3: fix(snapshot): address restore review follow-ups (brice b@bnema.dev)
- dd9f60c: fix(snapshot): align incremental generation contracts (brice b@bnema.dev)
- 26baad6: fix(snapshot): bound maintenance cursor state (brice b@bnema.dev)
- b1b3fa9: fix(snapshot): bound repository maintenance (brice b@bnema.dev)
- 7e93b8d: fix(snapshot): bound repository session state (brice b@bnema.dev)
- 5c87cd6: fix(snapshot): budget temp shard traversal (brice b@bnema.dev)
- 692d04f: fix(snapshot): clear orphaned checkpoint heads (brice b@bnema.dev)
- d8d4bf6: fix(snapshot): decode dirents with aligned storage (brice b@bnema.dev)
- d6a5676: fix(snapshot): encode strict generation heads (brice b@bnema.dev)
- 305b83a: fix(snapshot): enforce checkpoint parent chain (brice b@bnema.dev)
- 6b789ff: fix(snapshot): enforce strict async lifecycle (brice b@bnema.dev)
- 7cf3f77: fix(snapshot): enforce terminal history ownership (brice b@bnema.dev)
- ba65dc1: fix(snapshot): fill darwin maintenance batches (brice b@bnema.dev)
- 2d19589: fix(snapshot): harden repository durability (brice b@bnema.dev)
- 55b4f02: fix(snapshot): harden restore and final flush (brice b@bnema.dev)
- b649528: fix(snapshot): harden rooted filesystem lifecycle (brice b@bnema.dev)
- 3565447: fix(snapshot): invalidate stale gc marks (brice b@bnema.dev)
- 90ff4fa: fix(snapshot): make deletion retries durable (brice b@bnema.dev)
- 0edf864: fix(snapshot): make fallback loading atomic and bounded (brice b@bnema.dev)
- 9e04e97: fix(snapshot): make maintenance traversal fair (brice b@bnema.dev)
- 97e11ed: fix(snapshot): persist legacy import cleanup (brice b@bnema.dev)
- c8509d8: fix(snapshot): persist tombstone scan position (brice b@bnema.dev)
- 88be92a: fix(snapshot): preserve lineage when resuming sessions (brice b@bnema.dev)
- abf5279: fix(snapshot): preserve maintenance continuation state (brice b@bnema.dev)
- 816fe32: fix(snapshot): preserve manifest version errors (brice b@bnema.dev)
- 48f90b4: fix(snapshot): prevent repository symlink traversal (brice b@bnema.dev)
- f2d254a: fix(snapshot): propagate safe path close errors (brice b@bnema.dev)
- d3bf1f1: fix(snapshot): reject symlinked repository roots (brice b@bnema.dev)
- 2dca0c2: fix(snapshot): release published chunk encodings (brice b@bnema.dev)
- f1d1822: fix(snapshot): restore incarnation-aware repository tests (brice b@bnema.dev)
- fb7c7c4: fix(snapshot): resume maintenance on darwin (brice b@bnema.dev)
- 7913f91: fix(snapshot): retain final snapshots when queue is full (brice b@bnema.dev)
- 5f10d2e: fix(snapshot): support darwin filesystem syscalls (brice b@bnema.dev)
- 91d6720: fix(snapshot): surface cursor close errors (brice b@bnema.dev)
- 5c945b2: fix(snapshot): validate object envelope sizes (brice b@bnema.dev)
- 46dfc77: fix(snapshot): validate references during preflight (brice b@bnema.dev)
- 0ac83ce: fix(status): avoid live mru during contextual ranks (brice b@bnema.dev)
- 7953828: fix(status): exclude ephemeral sessions from recent history (brice b@bnema.dev)
- fafeeae: fix(status): preserve contextual MRU mode (brice b@bnema.dev)
- 5dc1d38: fix(tabs): preserve current close lock order (brice b@bnema.dev)
- 0620ced: fix(tabs): preserve names across persistence paths (brice b@bnema.dev)
- bc467a6: fix(tabs): reconcile rename flow with current main (brice b@bnema.dev)
- 2112549: fix(tabs): serialize tab persistence updates (brice b@bnema.dev)
- c8d167e: fix(tabs): show renamed tabs consistently (brice b@bnema.dev)
- fd7fd71: fix(term): disable autowrap while vev owns the alt screen (brice b@bnema.dev)
- 58001c6: fix(term): order resize watcher init/stop under mu — no post-restore start (brice b@bnema.dev)
- 62f5d14: fix(term): reset every entered mode in the direct fallback (brice b@bnema.dev)
- 28ffa89: fix(term): reset visual modes on the fd when the batched writer fails (brice b@bnema.dev)
- 394b69a: fix(terminal): address truecolor review feedback (brice b@bnema.dev)
- d3a09a8: fix(theme): cache neutral structural borders (brice b@bnema.dev)
- a47fd09: fix(theme): clear RGB pulse fallback (brice b@bnema.dev)
- 889f56e: fix(theme): dim indexed colors through the reported terminal palette (brice b@bnema.dev)
- 8e0f50e: fix(theme): keep escape sequences contiguous and guard detach color reset (brice b@bnema.dev)
- 9a73999: fix(theme): keep overlay backgrounds neutral (brice b@bnema.dev)
- 6e468ca: fix(theme): make accent candidates immutable (brice b@bnema.dev)
- db2c447: fix(theme): preserve neutral chrome surfaces (brice b@bnema.dev)
- bd7ecc4: fix(theme): preserve palette foreground styles (brice b@bnema.dev)
- afb8c1a: fix(theme): resolve accent render review findings (brice b@bnema.dev)
- ffd16e4: fix(theme): restore indexed accent fallbacks (brice b@bnema.dev)
- 256407f: fix(theme): retain fallback chrome surfaces (brice b@bnema.dev)
- 3389f59: fix(theme): validate accent review boundaries (brice b@bnema.dev)
- c415453: fix(ui): harden anchored frame clipping (brice b@bnema.dev)
- d5c777e: fix(ui): preserve palette backdrop in copy mode (brice b@bnema.dev)
- 1fa07cc: fix(vt): accept wide history rows within budgets (brice b@bnema.dev)
- 0e2903b: fix(vt): address branch review defects (brice b@bnema.dev)
- d2b05f9: fix(vt): align history codec limits (brice b@bnema.dev)
- a23e755: fix(vt): bound history decoding (brice b@bnema.dev)
- 22dd029: fix(vt): bound pending screen damage (brice b@bnema.dev)
- 4dede25: fix(vt): enforce history snapshot invariants (brice b@bnema.dev)
- 6efb8f5: fix(vt): handle history append errors explicitly (brice b@bnema.dev)
- a7d13d1: fix(vt): handle history append failures (brice b@bnema.dev)
- 06dc0bb: fix(vt): harden resize reflow metadata (brice b@bnema.dev)
- 532e4e5: fix(vt): home scroll margins inside origin mode (brice b@bnema.dev)
- f82f38e: fix(vt): keep the soft link when a deferred wrap scrolls the bottom row (brice b@bnema.dev)
- f6aceff: fix(vt): preserve reflow boundaries across regions (brice b@bnema.dev)
- ad8c50b: fix(vt): preserve tab wide-rune and history semantics (brice b@bnema.dev)
- 56e46d3: fix(vt): reflow visible lines on resize (brice b@bnema.dev)
- e672f74: fix(vt): reject invalid cursor styles (brice b@bnema.dev)
- b34df7b: fix(vt): repair resize and support origin insert modes (brice b@bnema.dev)
- 83a3e26: fix(vt): sever soft wrap boundary on erase to right edge (brice b@bnema.dev)
- 6340314: fix(vt,daemon): pass through app OSC 52 clipboard to attached client (brice b@bnema.dev)
- d4ed0f5: fix: address UDP transport review findings (brice b@bnema.dev)
- 90fb24b: fix: address coderabbit durability findings (brice b@bnema.dev)
- e7f30ce: fix: address final m5 m6 review gaps (brice b@bnema.dev)
- f5b4f9b: fix: address final punch list (brice b@bnema.dev)
- 0309f6e: fix: address m3 review findings (brice b@bnema.dev)
- b6a2ac7: fix: address m5 review findings (brice b@bnema.dev)
- fead047: fix: address review findings on config live reload and theme propagation (brice b@bnema.dev)
- 00a0215: fix: defer sync update rendering (brice b@bnema.dev)
- 9fab834: fix: repaint after pty eof window close (brice b@bnema.dev)
- 8f5354b: fix: stop scheduler for closed windows (brice b@bnema.dev)
- fb67a13: fix: synchronize daemon copy mode (brice b@bnema.dev)
Performance
- ef1f76f: perf(copy): avoid full document word scans (brice b@bnema.dev)
- da79df9: perf(copy): avoid history row copies during search (brice b@bnema.dev)
- 71f5218: perf(copy): bound selection rendering to viewport (brice b@bnema.dev)
- 25d9db5: perf(copy): gate large-history allocations (brice b@bnema.dev)
- 70ae2be: perf(copy): release pane lock after snapshot capture (brice b@bnema.dev)
- a628e59: perf(copy): retain one immutable copy document (brice b@bnema.dev)
- e53346f: perf(copy): reuse sealed history rows (brice b@bnema.dev)
- 34b0481: perf(daemon): avoid copying cached styles per popup (brice b@bnema.dev)
- 778b92a: perf(daemon): avoid inert coordinator timer allocations (brice b@bnema.dev)
- b590931: perf(daemon): baseline large-history workloads (brice b@bnema.dev)
- c405747: perf(daemon): measure render pipeline split (brice b@bnema.dev)
- 4815382: perf(daemon): measure transactional resize sweeps (brice b@bnema.dev)
- dfadb21: perf(daemon): preserve incremental damage with notice toasts (brice b@bnema.dev)
- 1fbf071: perf(daemon): publish only changed snapshot objects (brice b@bnema.dev)
- 0e2e6e9: perf(daemon): record render coordinator burst metrics (brice b@bnema.dev)
- bda2cc4: perf(daemon): report invalidations per coordinator wake (brice b@bnema.dev)
- de6d25b: perf(daemon): report render coordinator burst metrics (brice b@bnema.dev)
- 533cc8f: perf(daemon): reuse attachment render capture scratch (brice b@bnema.dev)
- b4f3d9b: perf(daemon): reuse composed frame for damaged paints (brice b@bnema.dev)
- 1dd8eef: perf(daemon): serialize render composition and emission (brice b@bnema.dev)
- 2a1a401: perf(recovery): avoid reconciliation rereads (brice b@bnema.dev)
- 1611c3c: perf(renderer): avoid title cache allocations (brice b@bnema.dev)
- 538f8cc: perf(renderer): cursor-motion, SGR, and native-clear output minimization (brice b@bnema.dev)
- 7a972e7: perf(renderer,vt): line-offset indirection — rotate instead of copy on full-width scroll (brice b@bnema.dev)
- 2f5b567: perf(search): share immutable copy documents (brice b@bnema.dev)
- 0e3ca7c: perf(snapshot): avoid full-history publication reads (brice b@bnema.dev)
- ed9b078: perf(snapshot): benchmark chunked history persistence (brice b@bnema.dev)
- 56d89b0: perf(vt): parse CSI and SGR params without split (brice b@bnema.dev)
- 8c784f8: perf(vt): reduce transcript recovery allocations (brice b@bnema.dev)
- b93fa1a: perf(vt): streamline viewport reflow (brice b@bnema.dev)
- 5e9d579: perf: add m5 instrumentation pass (brice b@bnema.dev)
Refactoring
- cd4708e: refactor(app): switch to incremental snapshots (brice b@bnema.dev)
- 843fa9c: refactor(app): wire concrete client runner (brice b@bnema.dev)
- 1238e7d: refactor(client): isolate attach attempt and terminal pumps (brice b@bnema.dev)
- 296e94c: refactor(copy): add immutable history views (brice b@bnema.dev)
- d0d286e: refactor(copy): add immutable history views (brice b@bnema.dev)
- 306f37e: refactor(copy): centralize close client recovery (brice b@bnema.dev)
- b26b9f7: refactor(copy): centralize safe pointer mapping (brice b@bnema.dev)
- 661ba07: refactor(copy): keep document ownership in mode (brice b@bnema.dev)
- 3b80c55: refactor(copy): present passive scrollback mode (brice b@bnema.dev)
- 61d93fc: refactor(daemon): add guarded session state (brice b@bnema.dev)
- d1042d0: refactor(daemon): centralize attach environment ownership (brice b@bnema.dev)
- 883aaa9: refactor(daemon): clarify floating geometry boundaries (brice b@bnema.dev)
- e178fea: refactor(daemon): collapse capture compose emit (brice b@bnema.dev)
- 23819c3: refactor(daemon): consolidate notification lifecycle helpers (brice b@bnema.dev)
- 8f53268: refactor(daemon): decompose move orchestration (brice b@bnema.dev)
- ae77a31: refactor(daemon): deepen overlay runtime (brice b@bnema.dev)
- 70770e7: refactor(daemon): defer metadata writes and drop versioned rollback (brice b@bnema.dev)
- 4005fb8: refactor(daemon): define floating geometry coordinate boundary (brice b@bnema.dev)
- 65114be: refactor(daemon): define render coordinator contract (brice b@bnema.dev)
- a0541a8: refactor(daemon): drop unused copy targeting params (brice b@bnema.dev)
- 8151d78: refactor(daemon): encode snapshots asynchronously (brice b@bnema.dev)
- ef057e1: refactor(daemon): enforce single-owner render emission (brice b@bnema.dev)
- 589da7e: refactor(daemon): extract overlay byte routing (brice b@bnema.dev)
- e8e2f00: refactor(daemon): extract snapshot responsibilities (brice b@bnema.dev)
- 64cc0d8: refactor(daemon): fence pane effects by owner generation (brice b@bnema.dev)
- f0438ea: refactor(daemon): fence transferable pane resizes (brice b@bnema.dev)
- 8476ebc: refactor(daemon): group floating composition inputs (brice b@bnema.dev)
- 31d36ea: refactor(daemon): group primary render capture inputs (brice b@bnema.dev)
- 476768f: refactor(daemon): harden snapshot coordination (brice b@bnema.dev)
- 52bea82: refactor(daemon): log user notices at severity-mapped level (brice b@bnema.dev)
- 9dd5126: refactor(daemon): make floating geometry content-relative (brice b@bnema.dev)
- bbbadc6: refactor(daemon): make pane lifetime transferable (brice b@bnema.dev)
- 9182b6b: refactor(daemon): move bar script execution behind port (brice b@bnema.dev)
- 8be4601: refactor(daemon): name tab chrome rows and derive headless viewports (brice b@bnema.dev)
- 9453c6d: refactor(daemon): picker actions return errors and surface notices (brice b@bnema.dev)
- 15f2a25: refactor(daemon): prepare directional focus overflow (brice b@bnema.dev)
- 37d1a50: refactor(daemon): remove legacy render ownership (brice b@bnema.dev)
- 29a2879: refactor(daemon): remove legacy resize dispatch owners (brice b@bnema.dev)
- 78de75a: refactor(daemon): remove monolithic snapshot encoding (brice b@bnema.dev)
- 72230e6: refactor(daemon): remove obsolete picker composer (brice b@bnema.dev)
- d4589c7: refactor(daemon): remove obsolete snapshot helper (brice b@bnema.dev)
- bac7c66: refactor(daemon): remove obsolete title placement scan (brice b@bnema.dev)
- 3b83428: refactor(daemon): remove redundant history nav clears (brice b@bnema.dev)
- fc94e20: refactor(daemon): remove snapshot test-only state (brice b@bnema.dev)
- ff3aadc: refactor(daemon): route metadata through catalogue (brice b@bnema.dev)
- df0fe5f: refactor(daemon): route producer rendering through coordinator (brice b@bnema.dev)
- fd82476: refactor(daemon): route resize through coordinator transactions (brice b@bnema.dev)
- 6400ab4: refactor(daemon): serialize stale-safe pane layout application (brice b@bnema.dev)
- 67b1767: refactor(daemon): share bar anchor names between run and cleanup (brice b@bnema.dev)
- 8b4f298: refactor(daemon): share explicit-target command actions (brice b@bnema.dev)
- af6c204: refactor(daemon): share pane display titles (brice b@bnema.dev)
- 857767d: refactor(daemon): simplify fitTabLabels budget consumption with min/max (brice b@bnema.dev)
- 59ce3a4: refactor(daemon): simplify floating pane launch (brice b@bnema.dev)
- 4441ea3: refactor(daemon): simplify target membership check (brice b@bnema.dev)
- 37fcb4a: refactor(daemon): split daemon implementation files (brice b@bnema.dev)
- 3e25d6d: refactor(daemon): split daemon tests (brice b@bnema.dev)
- e557ce2: refactor(daemon): tidy attention repaint plumbing (brice b@bnema.dev)
- 9d03f4b: refactor(daemon): tidy palette helpers and review nitpicks (brice b@bnema.dev)
- 8916627: refactor(dgram): name proxy copy directions (brice b@bnema.dev)
- ee07621: refactor(dgram): persist proxy key fingerprints (brice b@bnema.dev)
- d626c6d: refactor(dgram): split transport health and diagnostics (brice b@bnema.dev)
- 0f188ef: refactor(dgram): split transport lifecycle and send paths (brice b@bnema.dev)
- 3b6ed69: refactor(dgram): split transport receive and retransmit paths (brice b@bnema.dev)
- b23180e: refactor(history): clarify snapshot ownership (brice b@bnema.dev)
- 4776aab: refactor(kv): replace the WAL with whole-file atomic rewrite (brice b@bnema.dev)
- 1e03a92: refactor(layout): remove redundant target index assignment (brice b@bnema.dev)
- 0a1ab39: refactor(obs): decompose performance harness (brice b@bnema.dev)
- 7e47dd8: refactor(obs): decompose performance harness (brice b@bnema.dev)
- 956165e: refactor(overlays): capture resolved modal layouts (brice b@bnema.dev)
- b8602e4: refactor(palette): simplify typed result flow (brice b@bnema.dev)
- 01f225a: refactor(palette): use concrete result values (brice b@bnema.dev)
- c4a18a9: refactor(panes): finish review cleanup (brice b@bnema.dev)
- dae912d: refactor(perf-harness): address review findings (brice b@bnema.dev)
- 23c31e3: refactor(persist): replace migration with fail-closed catalogue open (brice b@bnema.dev)
- ffcb75d: refactor(picker): support move destination modes (brice b@bnema.dev)
- 5b0ff57: refactor(ports): collapse the recovery ports to catalogue and repository (brice b@bnema.dev)
- f2c8f76: refactor(ports): define snapshot repository generations (brice b@bnema.dev)
- cac78eb: refactor(ports): separate command wire codecs (brice b@bnema.dev)
- 37d29ee: refactor(ports): split capability contracts (brice b@bnema.dev)
- 4ab7e23: refactor(ports,ipc): move wire codecs to ports — restore usecase layering + guard (brice b@bnema.dev)
- 9725a6d: refactor(prompt): rename CLI confirmer package to confirm (brice b@bnema.dev)
- e362c80: refactor(recovery): guard incarnation replacement (brice b@bnema.dev)
- cbe62e5: refactor(recovery): reduce recovery to one state and one action (brice b@bnema.dev)
- d5c98ee: refactor(recovery): replace intent journals with idempotent operations (brice b@bnema.dev)
- 596dbfb: refactor(remote): add transport selection port (brice b@bnema.dev)
- b9a93ef: refactor(render): remove obsolete layout tree capture (brice b@bnema.dev)
- 773d08a: refactor(renderer): harden floating composition (brice b@bnema.dev)
- 54b2176: refactor(session): share recent session action state (brice b@bnema.dev)
- dae2682: refactor(session): simplify recent navigation guard (brice b@bnema.dev)
- 16ed5a6: refactor(sessions): retain ephemeral sessions in daemon (brice b@bnema.dev)
- 91368cb: refactor(snapshot): address review follow-ups (brice b@bnema.dev)
- 11815fb: refactor(snapshot): bound maintenance cursors (brice b@bnema.dev)
- 058bbc8: refactor(snapshot): bound repository maintenance (brice b@bnema.dev)
- 5297bf6: refactor(snapshot): delete the dead legacy blob bridge (brice b@bnema.dev)
- 0d68d26: refactor(snapshot): drop golang.org/x/sys for os.Root (brice b@bnema.dev)
- 73a5ab3: refactor(snapshot): remove monolithic persistence contract (brice b@bnema.dev)
- 6bbcb8d: refactor(snapshot): replace tombstoned deletion with startup garbage collection (brice b@bnema.dev)
- 89d8fa0: refactor(snapshot): replace v2 snapshots with v3 chunks (brice b@bnema.dev)
- 434d046: refactor(snapshot): retire name-keyed paths and production fault hooks (brice b@bnema.dev)
- e17db81: refactor(snapshot): separate preflight validation (brice b@bnema.dev)
- 20864cb: refactor(snapshot): simplify publication validation (brice b@bnema.dev)
- 13c7e30: refactor(snapshot): split repository responsibilities (brice b@bnema.dev)
- 962bc0c: refactor(snapshot): tighten repository validation (brice b@bnema.dev)
- ed8ebfe: refactor(snapshot): unify atomic file preparation (brice b@bnema.dev)
- 3156ed0: refactor(snapshot): unify manifest validation (brice b@bnema.dev)
- 541aedf: refactor(status): remove impossible ephemeral recent state (brice b@bnema.dev)
- 70bf452: refactor(term): split pkg/linuxterm into platform-neutral pkg/rawterm (brice b@bnema.dev)
- 875a6f7: refactor(term,pty): drop golang.org/x deps for stdlib syscalls (brice b@bnema.dev)
- 699a232: refactor(theme): add reusable truecolor dimmer (brice b@bnema.dev)
- 810e9f1: refactor(theme): cache resolved chrome styles (brice b@bnema.dev)
- 5c7684b: refactor(theme): move chrome style set into theme package (brice b@bnema.dev)
- 12c4fc5: refactor(theme): move pulse and MRU color math into theme package (brice b@bnema.dev)
- d4234db: refactor(theme): remove redundant applied theme mirror (brice b@bnema.dev)
- 2f1b8ab: refactor(ui): add reusable anchor placement (brice b@bnema.dev)
- b3d7152: refactor(ui): extract shared text input (brice b@bnema.dev)
- 5014839: refactor(ui): make presentation borders canonical (brice b@bnema.dev)
- 9a37fb8: refactor(ui): share the attention glyph constant and fix stale marker comments (brice b@bnema.dev)
- 292e666: refactor(ui): unify modal anchoring (brice b@bnema.dev)
- c15d164: refactor(ui): unify toast anchoring (brice b@bnema.dev)
- acd4dbe: refactor(vt): export lineBoundary as LineBound (brice b@bnema.dev)
- e8f2961: refactor(vt): own immutable terminal history chunks (brice b@bnema.dev)
- fcb4c06: refactor(vt): remove visible snapshot codec (brice b@bnema.dev)
- 58fcde1: refactor(vt): split screen state operations (brice b@bnema.dev)
- 86b7f27: refactor(vt): split write and escape handling (brice b@bnema.dev)
- 467a998: refactor(vt): track OSC 9;4 state without callbacks; document status bar review nits (brice b@bnema.dev)
- 84be71d: refactor(wire): collapse recovery states into one session state (brice b@bnema.dev)
Other Changes
- f3efd5c: Merge remote-tracking branch 'origin/main' into feat/control-api (brice b@bnema.dev)
- 9519803: Merge remote-tracking branch 'origin/main' into feat/pane-resize (brice b@bnema.dev)
- 7a1586d: Merge remote-tracking branch 'origin/main' into feat/recent-session-jump (brice b@bnema.dev)
- dee642a: Merge remote-tracking branch 'origin/main' into feat/rnt-rename-tab (brice b@bnema.dev)
- 33a165d: Merge remote-tracking branch 'origin/main' into feature/attach-environment (brice b@bnema.dev)
- e9c558f: Merge remote-tracking branch 'origin/main' into feature/clipboard-image-transfer (brice b@bnema.dev)
- 973d2af: Merge remote-tracking branch 'origin/main' into feature/config-live-reload-theme (brice b@bnema.dev)
- aac8318: Merge remote-tracking branch 'origin/main' into feature/dynamic-session-palette (brice b@bnema.dev)
- 5d67c2f: Merge remote-tracking branch 'origin/main' into fix/bracketed-paste-marker-splits (brice b@bnema.dev)
- b9d3800: Merge remote-tracking branch 'origin/main' into fix/udp-send-pacing-coalescing (brice b@bnema.dev)
- d40cfdf: Revise README for clarity and focus on features (bnema b@bnema.dev)
- d8725f6: Revise README for improved clarity and style (bnema b@bnema.dev)
- 156ea64: Update README (bnema b@bnema.dev)
- 7b6607d: Update README.md (bnema b@bnema.dev)
- d2d212f: build(perf-harness): constrain package to linux (brice b@bnema.dev)
- 879a3f0: build(release): publish Linux ARM64 binary (brice b@bnema.dev)
- c5f4fce: build: add goreleaser config for linux/amd64 and darwin/arm64 (brice b@bnema.dev)
- 6cc7912: build: pin mockery v3.7.1 (brice b@bnema.dev)
- a162043: fix background color erase semantics (brice b@bnema.dev)
- 5d4ffc4: improve(daemon): advance UDP output on ack (brice b@bnema.dev)
- cfccd91: improve(dgram): add cumulative ACK RTT resend (brice b@bnema.dev)
- 8c4b9b1: improve(dgram): expose privacy-safe UDP health diagnostics (brice b@bnema.dev)
- 43a6679: improve(dgram): pace UDP data with congestion feedback (brice b@bnema.dev)
- f180475: improve(dgram): pace UDP output sends (brice b@bnema.dev)
- c5e603f: improve(dgram): supersede stale UDP output (brice b@bnema.dev)
- 151010a: merge(feature): attention bells (brice b@bnema.dev)
- f618fc7: merge(feature): command palette daemon split (brice b@bnema.dev)
- 95a371c: merge(feature): content-preserving resize and visual mode (brice b@bnema.dev)
- 88e5870: merge(feature): terminal theme inheritance (brice b@bnema.dev)
- f0c9cfe: merge(input): add mouse wheel and cursor support (brice b@bnema.dev)
- 52e1724: merge(main): integrate latest main changes (brice b@bnema.dev)
- 8b2d766: merge(main): integrate truecolor fader (brice b@bnema.dev)
- 6b1947d: merge(next): integrate floating popup lifecycle fixes (brice b@bnema.dev)
- b87c753: merge(next): integrate history snapshot review fixes (brice b@bnema.dev)
- ecd28d4: merge(next): integrate rendering transition fixes (brice b@bnema.dev)
- ac88d25: merge(stack): integrate render coordinator fixes (brice b@bnema.dev)
- bf46590: merge(stack): integrate render pipeline fixes (brice b@bnema.dev)
- adf2142: merge(stack): integrate transactional resize (brice b@bnema.dev)
- 84b33e1: merge(tabs): integrate tab picker (brice b@bnema.dev)
- 2b3374c: merge: add Makefile development targets (brice b@bnema.dev)
- 1ef1be5: no-mistakes(document): Clarify config documentation (brice b@bnema.dev)
- c31f501: no-mistakes(document): Document daemon paint benchmark (brice b@bnema.dev)
- d2df64e: no-mistakes(document): Document top bar output (brice b@bnema.dev)
- 23cc4d7: no-mistakes(document): docs: clarify floating pane configuration reload behavior (brice b@bnema.dev)
- 36d615c: no-mistakes(document): document VT mode behavior (brice b@bnema.dev)
- 1b372d7: no-mistakes(lint): Modernize VT range loops (brice b@bnema.dev)
- 5852a41: no-mistakes(review): Fix VT mode query integration (brice b@bnema.dev)
- ac07db1: no-mistakes(review): clarify config binding behavior (brice b@bnema.dev)
- 6962e05: no-mistakes(review): clarify supported digit key specs (brice b@bnema.dev)
- 04d2afb: no-mistakes(review): fix(daemon): propagate themes to floating panes (brice b@bnema.dev)
- d088b64: style(platform): normalize syscall error strings (brice b@bnema.dev)
- ca585a7: style(status): polish session recency bar (brice b@bnema.dev)
- f92d01c: style(status): reserve room beside recent sessions (brice b@bnema.dev)
- dc894d2: support colon SGR colors (brice b@bnema.dev)
Install
Script (Linux x86_64/arm64, macOS arm64)
curl -fsSL https://raw.githubusercontent.com/bnema/vev/v0.1.0/install.sh | VEV_VERSION=v0.1.0 shArch Linux
yay -S vev-binmacOS note
The darwin binary is ad-hoc signed by the Go toolchain, not notarized.
Installing via the script or curl avoids the quarantine attribute;
if you downloaded the archive with a browser, Gatekeeper will block it.
Removing the attribute bypasses a Gatekeeper security control — only do
it for the vev binary itself, after verifying its checksum:
xattr -d com.apple.quarantine ~/.local/bin/vevFull Changelog: https://github.com/bnema/vev/releases/tag/v0.1.0