Skip to content

v0.4.2

Choose a tag to compare

@github-actions github-actions released this 30 Apr 14:47
chore: release v0.4.2

Critical Electron fix:
- Daemon crashed at startup with `createRequire(undefined)` because
  esbuild's CJS bundle of `src/lib/system/preflight-sqlite.ts` rewrote
  `import.meta.url` to `import_meta.url` from a `var import_meta = {}`
  empty object. Polyfill via banner + define so all `import.meta.url`
  references resolve to the bundled file's path at runtime.
  v0.4.0 + v0.4.1 Electron builds were broken (no daemon → no agents,
  no search index). v0.4.2 Electron is the first working build since
  v0.3.4. npm CLI was unaffected (runs daemon via tsx, not bundled).

New feature — Settings → About → Uninstall Cabinet (macOS only):
- New `UninstallSection` component renders only when the desktop
  bridge reports `runtime: "electron"` and `platform: "darwin"`.
- Click → confirm dialog → IPC `cabinet:uninstall-app` → main.cjs
  spawns a detached shell that waits 2s, deletes /Applications/Cabinet.app
  + Library caches/prefs/state/storage/logs, then exits.
- Cabinet quits 200ms after the IPC call so the detached shell can
  remove the .app bundle without fighting the running process.
- User data at ~/Library/Application Support/Cabinet/cabinet-data is
  PRESERVED — the path is shown in the confirmation dialog so users
  know where to back up before reinstalling.
- Preload extended with `platform` and `uninstallApp()`.