Skip to content

v1.1.0

Choose a tag to compare

@github-actions github-actions released this 29 Jun 23:32
7d2f2be

1.1.0 (2026-06-29)

Features

  • cli: run --list-actions/--run/--help as headless commands (6af99ba)
  • cli: run --list-actions/--run/--help as headless commands (6dc7e5f), closes #36
  • modules: fix module delete + visible error/success toasts (b7db4d0)
  • modules: fix module delete + visible error/success toasts (644981f)
  • modules: source-agnostic author (link + avatar), clickable via the OS (d3068b8)
  • modules: source-agnostic author (link + avatar), clickable via the OS (9efa130)
  • sandbox: deliver action:dispatch payload to subscribers (567bbbe)
  • sandbox: expose app version via sys.appVersion (31eb2c1)
  • telemetry: anonymous usage reporting to PostHog (ed959c8)
  • telemetry: report anonymous usage to PostHog (c445f64)
  • updater: add in-app update notification with progress (5d9b17e)
  • updater: VSCode-style update notification with progress (9ab1076)
  • website: add "trusted by employees at" section with 5 logos (272f1f2)
  • website: add "trusted by employees at" section with 5 logos (338c170)

Bug Fixes

  • backend: poison-safe FFI locks, clean exit, drop hot-path log (a05e4dd)
  • breadcrumb: scheme-aware segmentation so virtual paths (webdav:) aren't mangled (#34) (30879f0)
  • builtins: catch floating async host calls in event handlers (#31) (145d5a0)
  • ci: add pnpm-workspace.yaml so root install covers website/ (3acd44f)
  • ci: install website deps before running typedoc (960a0c4)
  • cli: canonicalize relative path args so mutka . opens the correct directory (#35) (a03c72a)
  • clipboard: only 'cut' moves, and always refresh after a paste (#32) (4100c9d)
  • clipboard: sync ClipboardStore after copy/cut, unique name on paste conflict (4a94523)
  • clipboard: sync ClipboardStore after copy/cut, unique name on paste conflict (8725769)
  • codebase audit hardening — crashes, blocking ops, correctness, perf (55703d4)
  • context-menu: a module isEnabled throw must not crash the whole menu (#29) (a808505)
  • discovery: log failing sources + max next-page across sources (#24,25) (681ac96)
  • drag: resolve merge conflict — keep both shrinkIcon and safeDragIcon (921ebc7)
  • drop-import: skip malformed drops + don't abort the batch on one bad file (#33) (77c4560)
  • event-bus: isolate subscriber errors so one bad handler can't starve others (#7) (ee1afc6)
  • file-list: prioritize internal drag over external drop, shrink drag icon (cf039dc)
  • file-list: remove aggressive body click handler and duplicate drag handlers (2a7044c)
  • file-list: use top positioning instead of transform on virtual rows (d7ff71e)
  • file-ops: root/scheme-safe path join + per-item delete that reports failures (#17,18) (1fbfb8b)
  • fs: error on a cross-provider move instead of silently dropping files (#6) (d2088c6)
  • home: fall back to home when the restored dir no longer exists (#20) (4fd8e98)
  • listing: drop a stale directory read so fast navigation can't show the wrong folder (#16) (a472b05)
  • sandbox: reject in-flight calls when a worker crashes, instead of hanging forever (#19) (bcb6a19)
  • sandbox: type the event whitelist against EventMap to prevent drift (#13) (7e7fe63)
  • stores: validate persisted localStorage values + drop dead token (e0ea953)
  • ui: scheme-gate the dialog choose icon + native drag preview (#21,46) (a2c70f1)

Performance Improvements

  • columns: batch custom-column cell resolution (c0ff76a)
  • columns: batch custom-column cell resolution (1 call per column, not per row) (0aff599), closes #25
  • columns: memoize column/cell computation so it doesn't re-run every App render (#10) (24d4e7f)
  • file-list: virtualize rows and memo with lifted icons (c05e992), closes #24
  • file-list: virtualize rows, memo FileRow, lift icon resolution (3237448)
  • fs: run dir/copy/move/delete/read off the main thread + lowercase ext (bf559c5)
  • module-registry: sort open handlers once per module, not per insertion (#14) (4e02d43)
  • watcher: replace per-nav thread::spawn with one long-lived worker (c7c7028)
  • watcher: replace per-nav thread::spawn with one long-lived worker (907d122), closes #27