Skip to main content

Module WindServiceHandlers

Module WindServiceHandlers 

Source
Expand description

Wind Service Handlers - dispatcher for every MountainIPCInvoke Tauri call from Wind/Output/Sky. The mod.rs inside is the central match that routes wire strings to per-domain atoms or handler files. Atoms live under WindServiceHandlers/<Domain>/<Atom>.rs following the one-export-per-file convention.

The previous WindServiceHandler (singular) sibling was merged here on 2026-04-23: of its 24 files, only 3 functions were live (extensions install/uninstall, nativeHost showOpenDialog) and those now live as atoms under WindServiceHandlers/Extension/ and WindServiceHandlers/NativeDialog/. The remaining 21 files were dead-code duplicates of plural-side implementations. Wind Service Handlers - dispatcher and sub-module aggregator. Domain files handle the individual handler implementations.

Modules§

Cocoon
Cocoon bridge atoms - renderer→Cocoon gRPC forwarding.
Commands
Command registry handlers.
Configuration
Configuration, environment, and workbench-configuration handlers.
Encryption
Encryption handlers for VS Code’s IEncryptionService channel. encryption:encrypt and encryption:decrypt are called by the workbench to store and retrieve secrets (extension secrets, auth tokens, GitHub Copilot key, etc.). We use AES-256-GCM via the ring crate; the 256-bit key is derived once per process from the machine’s hardware UUID (macOS IOPlatformExpertDevice / Linux /etc/machine-id / Windows MachineGuid) so ciphertext is stable across restarts but unreadable on a different machine without the original key.
Extension
Extension-management IPC handler atoms. One pub async fn per file; file name mirrors the exported function name. Dispatcher in WindServiceHandlers/mod.rs routes extensions:install and extensions:uninstall into these atoms.
ExtensionHost
ExtensionHost atoms - VS Code extension-host lifecycle handlers.
Extensions
Extension management handlers
FileSystem
FileSystem atoms - two tiers:
Git
Local Git subprocess handlers
Model
Text Model registry + TextFile handlers
NativeDialog
Native dialog (open / save) handler atoms.
NativeHost
NativeHost atoms - native OS-layer handlers.
Navigation
Navigation history + URI labels
Output
Output channel handlers
Search
Search handlers.
Sky
Sky bridge atoms - Mountain→Sky event replay handlers.
Storage
Persistent Storage handlers
Terminal
Terminal handlers
TreeView
TreeView atoms - renderer-side tree-view RPC handlers.
UI
UI-layer IPC handlers - one pub async fn Fn per file.
Update
Update service atoms - update:* channel stubs. Land has no update server; all methods return idle/true/null so the workbench shows “up to date” and doesn’t retry.
Utilities
Utilities for Wind handlers - one pub fn Fn per atomic file. Shared-state modules (ApplicationRoot, LocalhostUrl, UserdataDir, RecentlyOpened) are directory modules; #[path] overrides are required because the old .rs files still exist in the same directory.

Functions§

mountain_ipc_invoke
Internal dispatcher for the single front-end Tauri command MountainIPCInvoke (registered in Binary/Main/Entry.rs::invoke_handler!, implemented in Binary/IPC/InvokeCommand.rs). The outer Tauri command receives (method: String, params: Value), unwraps params into a Vec<Value>, then delegates here.
register_wind_ipc_handlers

Type Aliases§

ConfigurationOverridesDTO 🔒
ConfigurationTarget 🔒