@@ -348,7 +348,79 @@ Format: [Keep a Changelog](https://keepachangelog.com/).
348348
349349---
350350
351- ### Earlier v2.1 (pre-April 17)
351+ ### April 16, 2026
352+
353+ #### Added
354+
355+ - ** Extension registration notification handlers** (` MountainVinegRPCService ` ):
356+ Three new notification handlers process messages from the Cocoon extension
357+ host — ` window.showMessage ` forwards info/warn/error messages to Sky via
358+ ` sky://notification/show ` ; ` registerCommand ` stores proxied extension commands
359+ in ` CommandRegistry ` with ` cocoon-main ` sidecar identifier; provider
360+ registration fallback handles ` register_hover_provider ` ,
361+ ` register_completion_item_provider ` , etc. for providers registered outside
362+ the typed RPC path.
363+ - ** Full language feature provider delegation** (` CocoonService ` ): 18 stub
364+ handlers replaced with actual delegations to ` LanguageFeatureProviderRegistry `
365+ via ` self.environment ` — document highlights, symbols, workspace symbols,
366+ rename edits, document/range/on-type formatting, signature help, code lenses,
367+ folding ranges, selection ranges, semantic tokens (full), inlay hints, type
368+ hierarchy (super/subtypes), call hierarchy (incoming/outgoing), linked editing
369+ ranges.
370+ - ** Remaining 14 ` FeatureMethods ` implementations**
371+ (` LanguageFeatureProviderRegistry ` ): All remaining TODO stubs replaced —
372+ rename edits, document/workspace symbols, signature help, folding ranges,
373+ selection ranges, semantic tokens (full), inlay hints, type hierarchy
374+ (super/subtypes), call hierarchy (incoming/outgoing), linked editing ranges,
375+ on-type formatting. Each delegates to ` FeatureMethods ` →
376+ ` ProviderLookup::get_matching_provider ` → ` invoke_provider ` . ` InsertText `
377+ handling in completion items fixed to properly extract string from JSON value.
378+
379+ #### Changed
380+
381+ - ** ` dev_log! ` macro replaces ` log ` crate** (` b27a154 ` ): All
382+ ` log::{info, debug, error, warn, trace} ` instances replaced with ` dev_log! `
383+ macro accepting a category string across the entire Mountain codebase.
384+ Categories: ` lifecycle ` , ` grpc ` , ` ipc ` , ` cocoon ` , ` extensions ` , ` config ` ,
385+ ` model ` , ` storage ` , ` commands ` , ` output ` , ` terminal ` .
386+ - ** Domain module split — Wind IPC** (` f8dd70e ` ): Monolithic
387+ ` WindServiceHandlers ` (167 KB) broken into 24 focused domain modules:
388+ Command, Configuration, Decoration, Environment, Extension, FileSystem,
389+ History, Keybinding, Label, Lifecycle, Model, NativeHost, Notification,
390+ Output, Progress, QuickInput, Search, Storage, Terminal, TextFile, Theme,
391+ WorkingCopy, Workspace.
392+ - ** Domain module split — Cocoon RPC** (` f8dd70e ` ): 2,800-line monolithic
393+ ` CocoonService ` split into 15 domain modules: Auth, Command, Debug, Extension,
394+ FileSystem, Output, Provider, SCM, Save, Secret, Task, Terminal, TreeView,
395+ Window, Workspace. Language feature provider handlers consolidated in
396+ ` Provider.rs ` .
397+ - ** Vine gRPC binding** changed from IPv6 ` [::1] ` to IPv4 ` 127.0.0.1 ` .
398+ - ** Startup extension activation trigger** (` $activateByEvent("*") ` ) added
399+ after Cocoon handshake.
400+ - ** ` node_modules ` path resolution** in ` vscode-file ` scheme handler corrected
401+ from ` Static/node_modules/ ` to ` Static/Application/node_modules/ ` .
402+ - ** Filesystem asset fallback** added for dev mode when assets aren't embedded.
403+ - ** Tauri CSP** updated to include ` vscode-file: ` protocol in ` connect-src ` .
404+ - ** ` serde_json::json ` macro import** added to ` MountainVinegRPCService ` for
405+ structured JSON payload construction in the Vine protocol service layer.
406+
407+ #### Fixed
408+
409+ - ** ` MutexGuard ` Send fix** (` FeatureMethods.rs ` ): Lock scope narrowed to
410+ prevent ` MutexGuard ` from being held across ` .await ` point.
411+ - ** Duplicate ` dev_log ` imports** removed from ` AdvancedFeatures.rs ` and
412+ ` WindAdvancedSync.rs ` .
413+ - ** ` TraceLog.rs ` ** syntax error and ** ` ConfigurationInitialize.rs ` ** broken
414+ imports resolved.
415+ - ** Provider registration** fixed to use ` self.RunTime.Environment ` instead of
416+ ` self.Environment ` for correct runtime state access.
417+ - ** Command registration locking** corrected — ` CommandRegistry ` now properly
418+ locked before insertion, using correct ` CommandHandler::Proxied ` structure
419+ with ` SideCarIdentifier ` and ` CommandIdentifier ` fields.
420+
421+ ---
422+
423+ ### Earlier v2.1 (pre-April 16)
352424
353425- 14 language feature provider methods in ` FeatureMethods.rs ` (354 lines):
354426 ` renameEdits ` , ` documentSymbols ` , ` workspaceSymbols ` , ` signatureHelp ` ,
0 commit comments