- Added asynchronous LSP server discovery and warmup at startup via `discoverStartupLspServers()` function. - Added LSP startup event channel (`lsp:startup`) for real-time server status notifications during warmup. - Added `LspStartupServerInfo` type to track LSP server status (connecting, ready, error) throughout lifecycle. - Changed LSP server warmup from blocking synchronous operation to non-blocking background task. - Refactored interactive mode to subscribe to LSP startup events and display real-time server status updates.
14 lines
294 B
TypeScript
14 lines
294 B
TypeScript
import type { LspStartupServerInfo } from "./index";
|
|
|
|
export const LSP_STARTUP_EVENT_CHANNEL = "lsp:startup";
|
|
|
|
export type LspStartupEvent =
|
|
| {
|
|
type: "completed";
|
|
servers: Array<LspStartupServerInfo & { status: "ready" | "error" }>;
|
|
}
|
|
| {
|
|
type: "failed";
|
|
error: string;
|
|
};
|