Skip to content

v2.3.0 — audit #10-#19 fixes

Choose a tag to compare

@haxllo haxllo released this 22 Jun 13:28
· 996 commits to master since this release

Closes 12 audit findings across the priority, medium, and lower-priority sections — build-from-source installs work again, the updater points at the right repo, the file watcher self-heals after event storms, clipboard history is off by default and encrypted at rest with DPAPI, and the search worker picks up config changes with a generation counter. Launch-at-startup is now enabled by default so Nex comes back on every login.

Changelog (16 commits since v2.2.2)

Bug Fixes

  • #10 Cargo package name drift: renamed the workspace package from nex-launch to nex so cargo -p nex works everywhere it was referenced (CI, AGENTS.md, README, package scripts, install-nex.ps1).
  • #11 Update script wrong repo: update-nex.ps1 now defaults to haxllo/nex (matches crate metadata and README).
  • #12 Build-from-source installer path: install-nex.ps1 BuildFromSource now uses cargo build -p nex --release --bin nex.
  • #16 File watcher drop recovery: when a batch exceeds CONSUMER_BATCH_CAP, the consumer now logs a warning at the next flush and triggers rebuild_index_incremental_with_report so the index self-heals from disk instead of staying silently stale.
  • #17 Clipboard history privacy: clipboard history is now off by default and persisted ciphertext is encrypted with DPAPI (Win32_Security_Cryptography feature), so passwords and tokens don't sit on disk in plaintext.

Architecture

  • #14 Overlay doc drift: removed stale Iced references from four overlay module doc comments and docs/architecture/system-architecture.md; the WebView2/tao+wry stack is now the single described UI shell.
  • #19 Centralize config reload semantics: RuntimeWorker now bumps a config_generation counter on every config reload and clears the search worker's session immediately, so cached results from the old config (show_files, show_folders, plugin toggles) are discarded right away. The generation counter is available for overlay, action execution, and diagnostics to follow.
  • #15 JSON config template: TOML-only policy enforced; JSON template writer removed in v2.2.0.
  • Launch at startup default: Config::default().launch_at_startup is now true, so a fresh install registers Nex in the Windows Run key on first launch. Users who prefer the previous behaviour can set launch_at_startup = false in %APPDATA%\Nex\config.toml.

Documentation

  • Audit doc refresh: SOURCE_AUDIT_BUGS_FIXES_IMPROVEMENTS.md now marks #10–#19 as fixed with the relevant commit pointers; the overlay architecture map lives in apps/core/src/overlay/mod.rs.
  • Repo layout: v2-verified-gaps.md moved to docs/v2-verified-gaps.md; .commandcode/taste/ excluded from git tracking.

Commit Log

  • 0a94b0f docs: relocate v2-verified-gaps.md under docs/ for repo organization
  • 1e420de docs(audit): mark findings #10, #11, #12 as fixed
  • 343a21d fix(#10): rename crate nex-launch to nex for consistent package naming
  • 78e9152 fix(#11): point update-nex.ps1 default repo at haxllo/nex
  • 7c7abec fix(#12): make build-from-source installer target the nex binary explicitly
  • 99ebe57 fix(#14): drop stale Iced references from overlay doc comments and architecture doc
  • 0156b35 chore: exclude .commandcode/taste/ from git tracking
  • a3eed90 fix(#16): trigger incremental resync when file watcher drops events
  • 8079b23 docs(audit): mark findings #14 and #16 as fixed
  • baab0cb fix(#17): default clipboard history off and encrypt at rest with DPAPI
  • 213d08b fix(#19): clear search worker session on config reload with generation counter
  • 9717bd0 docs(audit): #10-#12 no longer pending branch, all merged to master
  • bca32d1 fix(#19): wire config_generation through search request chain
  • a02bbd9 chore: bump to v2.3.0
  • 7d9b0f7 Merge branch 'master' of https://github.com/haxllo/nex
  • b614bd9 feat(config): default launch_at_startup to true

Binary