Skip to content

Latest commit

 

History

History
246 lines (180 loc) · 22.3 KB

File metadata and controls

246 lines (180 loc) · 22.3 KB

Explore Better Release Notes

Unreleased

File Safety And Recovery

  • Revalidate snapshot entries and directory membership after the complete traversal, including changes with unchanged timestamps. Undo from older text saves retains later edits while refusing to replace directories.
  • Preserve UTF-16 content in direct and indexed search, return complete substring matches, skip linked descendants, and rebuild outdated background indexes automatically.
  • Avoid repeated background rebuilds when hidden files are excluded, and report exhausted content budgets accurately.
  • Save text through a staged replacement while preserving UTF-8, UTF-16LE, UTF-16BE and their byte-order marks. Undo restores the original bytes; unsupported encodings are rejected before writing.
  • Build ZIP archives before replacing their destination, reject source/destination overlap, and retain recoverable backups in App Trash.
  • Verify persisted source and destination snapshots before finishing an interrupted cross-volume move. Changed files remain intact and produce a recovery conflict.
  • Journal bulk-rename mappings before each rename so recovery remains possible after restart. Same-volume moves use the fast rename path without walking the source tree first.

Interaction Reliability

  • Keep drafts, focus, and terminals alive when Windows opens another folder or the backend recovers. Confirm unsaved changes on window close and finish cleanup before installing an update.
  • Bound health checks even when the backend disconnects mid-response, and finish pending startup and native process shutdown before quitting.
  • Prevent delayed searches, listings, comparisons, previews, and dialog Apply actions from overwriting newer work.
  • Serialize terminal restart and close, avoid duplicate keyboard paste, bound early terminal events, and release exited ports.
  • Preserve operation-control focus, label dialogs for screen readers, and correct STEP mesh normals.
  • Preserve newer drafts when a save finishes, protect dirty dialogs through every close route, and keep focus stable during delayed row and terminal updates.
  • Prefer the current Windows clipboard when pasting and clear completed cuts only while the app still owns that clipboard version.
  • Bound filter-history memory and retain accessible position and focus information for virtualized file lists.
  • Parse STL models in a worker and bound edge generation, keeping browsing responsive during model preparation.
  • Cancel terminal creation when its owner closes, clean up sessions on reload, and wait for native exit during shutdown. Preserve percent signs in folder markers and quote administrator launch arguments correctly.
  • Resolve each PowerShell profile's own modules first, preventing inherited module paths from stalling Windows PowerShell startup.
  • Pin the native terminal component to node-pty@1.2.0-beta.14, which includes Microsoft's fix for concurrent Windows terminal exit races.

AI Bridge Reliability

  • Preserve retained analysis policy bindings, cancel recursive inspection promptly, and recheck permissions after UI waits and allowed-root changes.
  • Observe operation completion even when it happens during the initial status read, and show current authorized progress when a wait times out.
  • Bound resource subscriptions and individual transport frames, serialize subscription state, and clean up interrupted bridge startup and staged files.
  • Preserve existing profiles when configuration reads fail, and require successful backup before replacing malformed configuration.
  • Recheck current permissions when applying previews, controlling operations, reading retained results, and dispatching actions against implicit UI targets. Permission changes invalidate old previews; collection mutations check existing contents too.
  • Keep explicit empty client roots restrictive and fail requests when supported root discovery fails. Serialize configuration updates so concurrent changes preserve revocations.
  • Preserve Unicode across pipe chunks, validate protocol frames, propagate cancellation, and count analysis workers until they actually stop.
  • Bound retained analysis data and responses, stop pagination when scan budgets are exhausted, and decode text pages using the file's encoding.
  • Preserve unrelated client configuration formatting and detect concurrent edits before replacement. Registry publication now uses verified, immutable assets from an explicit published release.

Live Disk Analysis

  • Starts scanning when Disk Map or Analyzer opens and when its target changes, with no entry limit by default.
  • Streams native scan progress into the totals, tables, and treemap while keeping file summaries bounded.
  • Defaults disk maps to allocated size, preserves zero allocation for sparse files, and accounts for volume use that cannot be enumerated.
  • Keeps map header controls clickable and supports cancellation, warm scan reuse, and explicit partial scan limits.

Maintenance

  • Cancel native filesystem work when its parent closes the transport, and preserve Windows timestamps outside the nanosecond conversion range.
  • Update the compatible YAML parser pin to 4.3.2 and correct landing-page clipboard failure feedback and focus restoration.
  • Make native binaries reproducible across Windows checkouts, preserve prior binaries on failed build publication, and update Pages deployment actions to Node 24.
  • Updated vulnerable dependency patches, including the pinned YAML parser, and excluded local editor state and backup files from version control.
  • Preserves path edits during pane refreshes and keeps drive buttons at a readable minimum width.

Local STL And STEP Preview

  • Added interactive 3D previews for .stl, .step, and .stp files in both the Preview inspector and the large Viewer.
  • Keeps an unchanged model canvas alive across selection and folder refreshes, and ignores repeat clicks on the active Viewer item, eliminating unnecessary flashes, refetches, and WebGL reconstruction.
  • Added orbit, pan, wheel and button zoom, fit, isometric/front/top views, edge toggling, dimensions, mesh counts, and triangle counts.
  • Tessellates STEP geometry locally in a dedicated OpenCascade WebAssembly worker; model files never leave the device, and the main app retains its stricter script policy.
  • Lazy-loads the 736 KB 3D renderer only after the first model selection and loads the 7.3 MB CAD engine only for STEP, keeping the normal application runtime at 567 KB.
  • Cancels stale loads and disposes workers, geometry, materials, observers, and WebGL contexts when changing models or closing Viewer. Files above 100 MB receive an explicit bounded fallback.
  • Packages the CAD runtime and complete Three.js/OpenCascade license notices for offline and release builds.

ZIP Extraction

  • Added Extract Here directly to the right-click menu for ZIP files.
  • Changed the Archive dialog's extraction target to the folder containing the selected ZIP instead of the opposite pane, with an explicit Here shortcut to restore that target.
  • Keeps extraction safe and undoable by creating a sibling folder named after the archive rather than scattering files into an existing folder.
  • Made long right-click menus vertically scrollable so lower actions remain reachable on shorter windows.

Compact Tab Overflow

  • Replaced the native horizontal scrollbar in crowded pane headers with compact 68 px minimum tabs and measured overflow—no tab buttons remain off-canvas.
  • Keeps the active tab visible automatically and moves only the tabs that do not fit into an accessible numbered menu with the complete tab name and path.
  • Preserves tab closing, locking, dragging, keyboard cycling, new-tab access, pane activity, and source/target labels in the same 40 px header row.

Verification

  • Added a real-browser STL/STEP suite with 15/15 passing checks across packaged runtime assets/licenses, API classification, list metadata, inspector and Viewer rendering, stable unchanged-model refreshes, every view control, worker output, dimensions/statistics, WebGL replacement/disposal, and clean browser/API diagnostics.
  • Kept startup verification at 12/12 and the focused performance guard at 20/20 with no regression watch items after separating the model runtime.
  • Added an end-to-end ZIP fixture that verifies the right-click label, containing-folder dialog default, safe sibling output, journaled completion, visible outcome, and protection against accidental opposite-pane extraction.
  • Expanded pane-layout coverage to create 13–28 tabs at 1100, 1360, and 1500 px and verify fixed header height, hidden scrollbar chrome, active-tab visibility, complete overflow-menu contents, viewport-safe positioning, Escape dismissal, and focus restoration.

v0.2.6 - 2026-07-20

Existing Default-App Migration

  • Added a packaged-startup migration for people who already made Explore Better their folder and drive default in an earlier release.
  • Replaces only Explore Better-owned legacy PowerShell shell commands with the current installed Explore Better.exe; the existing folder/drive default choice is preserved.
  • Repairs Explore Better context-menu commands without taking ownership when another application is the current folder/drive default.
  • Leaves unconfigured Windows shell state untouched and skips the migration when the packaged executable is unavailable.

Verification

  • Added live HKCU regression coverage for a legacy Explore Better default, automatic startup repair, direct target launch, and preservation of a foreign default.
  • Retained the reversible pre-install shell snapshot so tests and users can restore their exact prior current-user shell configuration.

v0.2.5 - 2026-07-20

Default-App And Transfer Reliability Hotfix

  • Fixed packaged folder and drive handlers so Explore Better remains the Windows default while launching the installed desktop executable directly, without a flashing PowerShell window or a dependency on global Node or the packaged app.asar path.
  • Fixed packaged Start Menu, Desktop, and Win+E launcher generation to retain the actual installed executable even when an older browser-window launch preference is still saved.
  • Fixed quick Paste and Send To so the preview digest and one-use apply token are carried into the transfer request instead of being discarded at the security boundary.
  • Preserved the existing reversible shell backup, explicit File Explorer actions, current-user-only integration, and preview-before-apply safeguards.

Verification

  • Added a packaged-integration regression suite proving default handlers and shortcuts target the desktop executable and never PowerShell.
  • Expanded the real browser dual-pane suite to copy and paste through the clipboard and complete a Send To transfer through the same-origin token boundary.
  • Passed 19/19 dual-pane safety checks, 12/12 live current-user shell checks, 15/15 default-Explorer UI checks, and 11/11 security-boundary checks.
  • Installed the 0.2.5 hotfix locally, matched the installed app.asar to the verified build, invoked a real Windows folder association, and confirmed the resulting Explore Better state through MCP.

v0.2.4 - 2026-07-17

Product-Tested Navigation And Device Experience

  • Kept the Electron title bar to one measured 44 px row from 390 through 1920 px, with deterministic label collapse and keyboard-accessible overflow for Focus, Operations, and Disk Map.
  • Combined Favorites and Aliases into a compact Pinned presentation without changing either saved model, moved Folder Tree above Drives, limited Recent to eight initial entries, and retained one Navigator scroll owner.
  • Replaced the ambiguous This PC shell browser with a capability-aware Devices & Windows locations dashboard. Default loading never waits on the Network provider, and every action says whether it stays in Explore Better or requests File Explorer.
  • Added command outcome chips and plain-language expected results for in-app, File Explorer, external-app, and Windows-dialog actions.

MCP Control And Observability

  • Expanded the additive schema-v1 contract to 32 tools, 6 resources, 4 prompts, and 43 controlled views while preserving existing profile permission lists.
  • Added a renderer-owned, selector-free semantic action registry with validated inputs, disabled reasons, stale-context rejection, correlation IDs, and visible outcomes.
  • Added cancelable event-driven wait_for_ui, proper bridge request cancellation, and standard context/operation resource subscriptions that publish only the changed URI.
  • Added Devices and Health views/resources, updated the Go sidecar and internal bridge protocol atomically, and added native-sidecar tests for semantic boundaries, operation waits, subscriptions, and cancellation.

Recovery, Diagnostics, Preferences, And Performance

  • Added bounded operation timelines with phase/progress deduplication, retry/Undo linkage, recovery events, and synthesized display timelines for older journal rows.
  • Added Health & diagnostics with bounded active probes, scheduler metrics, and a streamed 10 MB support ZIP that redacts paths by default and permanently excludes file contents, terminal output, clipboard data, credentials, nonces, and capability/apply tokens.
  • Added sticky Preferences search, no-results feedback, per-section draft-change badges, and draft-only scoped reset actions for Files and folders, Windows integration, and Terminal.
  • Added shared foreground scheduling so speculative listing and background index work pause for navigation, search, analysis, active operations, or hidden windows and resume without duplicating cached requests.

Website And Verification

  • Repositioned the website around safe shared control: Explore Better is a Windows file manager that both people and AI can operate without screen scraping or unrestricted shell access.
  • Added current Devices, Health, semantic-action, operation-timeline, and foreground-scheduling value propositions plus refreshed release screenshots and measured performance evidence.
  • Preserved the previous 17 July 2026 homepage as a no-index legacy snapshot alongside the earlier 15 July archive.
  • Passed the complete 130-suite acceptance profile with zero internal failures, 175/175 speed-health checks, 31/31 release-readiness checks, and only the documented external hardware, trusted-certificate, and hosted-feed proofs outstanding.

v0.2.3 - 2026-07-16

Complete Brand Replacement

  • Replaced the previous geometric monogram with the supplied Racing Sans One EB artwork as the single canonical brand source.
  • Regenerated the website and in-app SVG, every PNG density, favicon, Windows multi-image ICO, executable and installer resources, AI Bridge tray icon, and standalone MCPB icon from that source.
  • Added explicit branded window and tray assets for both packaged and development runs, and made generated Desktop, Start Menu, shell, and Win+E shortcuts prefer the same ICO.
  • Wired brand generation into every packaging, site-discovery, and MCPB build so later installers cannot silently fall back to stale artwork.
  • Re-recorded the real product walkthrough and Codex handoff, retimed the edit to the new capture, rebuilt the website video and poster, and recaptured every public product screenshot with the new in-app mark.
  • Updated the deprecated homepage's active favicon and header/footer references while preserving its archived copy and layout.

Verification

  • Added an exhaustive brand-asset smoke covering the canonical SVG copies, seven PNG sizes, embedded ICO images, runtime window/tray wiring, shortcut generation, site references, packaging scripts, and demo composition.
  • Visually inspected the generated 256 px icon, live app screenshots, video opening, Codex handoff, and final CTA.

v0.2.2 - 2026-07-16

In-App Updates

  • Added a quiet update check shortly after desktop launch and every six hours while Explore Better remains open.
  • Added a branded, dismissible update card with the available version, release notes, background download progress, and an explicit Restart to update action.
  • Kept downloads user-controlled and allowed verified downloads to install on either the explicit restart action or the next normal app exit.
  • Added a Check for updates Command Palette action and a Windows notification when a new version is detected while the app is minimized.
  • Restricted update status, download, and install requests to the trusted Explore Better renderer.
  • Documented the one-time bootstrap upgrade required for builds that predate the in-app updater experience.

Verification

  • Extended the desktop update-feed smoke through real release detection, installer download and hash verification, visible notification state, and restart-ready state.
  • Verified the public release feed, desktop bridge, responsive layouts, Command Palette, and accessibility with no failures.

v0.2.1 - 2026-07-15

Brand System

  • Replaced the detailed legacy app illustration with a geometric EB dual-pane monogram matched to the website's ink, paper, acid, and teal palette.
  • Added one deterministic brand generator for the SVG master, website and application PNGs, Windows executable and installer ICO sizes, favicons, README, and MCPB icon.

AI Discovery And MCP Evidence

  • Added a dedicated crawlable MCP technical page with the complete value case, tool categories, security model, setup path, deliberate limitations, and links to raw evidence.
  • Added canonical URLs, Open Graph and social metadata, honest SoftwareApplication JSON-LD, robots.txt, sitemap.xml, llms.txt, and a detailed llms-full.txt reference.
  • Explicitly allowed OAI-SearchBot while keeping the public site available to ordinary crawlers and anonymous users.
  • Added a reproducible benchmark that runs the real Electron host and Go stdio sidecar against the same deterministic fixture as equivalent PowerShell scripts.
  • Proved 3 of 3 shared workflows and 6 of 6 MCP-specific controls, while documenting that MCP complements rather than replaces a persistent shell.
  • Added automated crawler, structured-data, benchmark-sync, responsive-layout, and AI-discovery verification to Windows CI.
  • Canonicalized authorized, client, and internal roots before policy comparison so Windows path aliases remain usable without weakening junction-escape protection.
  • Strengthened pagination evidence to verify two bounded, non-overlapping pages and stabilized the warm bridge p95 gate with explicit warm-up and 100 measured calls.
  • Repositioned the website around the human-and-AI file workspace, with focused category, MCP, client integration, security, privacy, terms, and practical workflow pages.
  • Published the measured comparison ratios transparently: 54.7x lower median filename-search latency, 6.2x disk-analysis latency, and 4.5x duplicate-search latency versus equivalent fresh PowerShell processes on the deterministic fixture.
  • Added a standalone Windows MCPB distribution, MIT license, SHA-256 metadata, installed-app discovery, and an official MCP Registry publishing workflow for io.github.terrorproforma/explore-better.
  • Added reversible Cursor configuration alongside Codex, Claude Desktop, and VS Code.

v0.2.0 - 2026-07-14

Explore Better now connects serious file work to both a real shell and structured AI tools. This release adds the local MCP AI Bridge and ships it alongside the per-tab ConPTY terminals introduced in v0.1.3.

AI Bridge And MCP

  • Added a bundled Go ExploreBetterMcp.exe stdio server using the official MCP SDK and protocol 2025-11-25.
  • Added live dual-pane context, bounded discovery, Analyzer and comparison jobs, organization tools, and transactional operation control.
  • Added read-first revocable profiles with authorized roots, individual tool permissions, client-root intersection, and a 30-day content-free audit log.
  • Added one-use preview/apply tokens for all MCP writes and blocked shell execution, terminal control, registry access, elevation, device paths, alternate data streams, and internal app state.
  • Added authenticated same-user named-pipe transport, headless AI-host lifecycle, tray status, heartbeat, reconnect, cancellation, and stable renderer actions.
  • Added reversible setup adapters for Codex/ChatGPT desktop, Claude Desktop, and VS Code plus a generic stdio configuration.
  • Added contract, security, context, analysis, operation, client, performance, and packaged-sidecar verification suites.

Terminal And AI Workspace

  • Made the per-tab terminal and AI Bridge first-class product modules with real desktop release captures and dedicated landing-page sections.
  • Kept arbitrary commands in the terminal while exposing bounded, typed file context, discovery, analysis, and recoverable operations through MCP.
  • Scoped MCP discovery to each client's permitted tools so read-only profiles cannot discover or invoke write planners or apply controls.
  • Added a repeatable packaged-app capture check that proves the terminal is interactive and the AI Bridge profile contract is loaded before release imagery is produced.

Verification

  • Passed the complete 42-check release orchestrator with no failures.
  • Verified the MCP server through the official MCP Inspector with exactly 17 tools exposed to the release read-only profile.
  • Measured 5.3 ms MCP bridge p95, 14.1 MB sidecar RSS, 403.3 ms first visible window, 1.22 s full hydration, and 45 rendered rows in the 100,000-entry fixture.
  • Verified zero production or development audit vulnerabilities.

v0.1.3 - 2026-07-13

Per-Tab Integrated Terminals

  • Added a real interactive terminal to every file tab in the Electron desktop app.
  • Added independently resizable terminal drawers beneath the left and right panes.
  • Added lazy xterm.js rendering and Windows ConPTY sessions through node-pty.
  • Added PowerShell 7, Windows PowerShell, and Command Prompt profile discovery.
  • Added idle-only folder following, queued navigation, current-directory reporting, and explicit pane navigation from the terminal folder.
  • Added terminal search, clear, restart, external launch, drag-and-drop path quoting, and keyboard controls.
  • Added Dark, Light, and High Contrast themes with configurable font size, cursor, and scrollback.
  • Added optional administrator terminals through a one-session UAC broker while keeping the main application non-elevated.
  • Added terminal lifecycle cleanup for tab close, window close, renderer failure, and app exit.
  • Added real ConPTY, hostile IPC, per-tab UI, layout, and cleanup verification.

Stability

  • Fixed an Electron close-handler crash caused by reading a destroyed BrowserWindow while cleaning up terminal sessions.