fix: initialize lsp manager callback to prevent nil pointer panic (#2307)

Andrey Nering created

The `callback` field was `nil` when the app returned early before
`SetCallback` was called, causing a segfault in `startServer`.

💘 Generated with Crush

Assisted-by: Claude Opus 4.6 via Crush <crush@charm.land>

Change summary

internal/lsp/manager.go | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)

Detailed changes

internal/lsp/manager.go 🔗

@@ -59,9 +59,10 @@ func NewManager(cfg *config.Config) *Manager {
 	}
 
 	return &Manager{
-		clients: csync.NewMap[string, *Client](),
-		cfg:     cfg,
-		manager: manager,
+		clients:  csync.NewMap[string, *Client](),
+		cfg:      cfg,
+		manager:  manager,
+		callback: func(string, *Client) {}, // default no-op callback
 	}
 }