LSP server initialization failure reported as timeout
- Dominant language
- Shell
- Stars
- 11.2k
- Forks
- 1.9k
- Avg merge
- 14h 16m
- Merged PRs (30d)
- 6
Description
### Describe the bug
In some cases, when an LSP server fails to initialize, the logs report the error as a timeout, instead of the real process launch failure. For example this session failed to launch the server due to a configuration error, but is reported as the following:
```
2026-04-22T20:45:35.358Z [ERROR] LSP csharp server for /testbed: failed to start, cleaning up: Error: LSP csharp server for /testbed:: Server initialize timed out after 60000ms. The language server may need more time for initial project analysis. Server exited with code 1.
```
This leads a copilot to believe the server timed out, and missed the real process initialization failure:
The debug logs do capture the actual error, but that is not surfaced.
```
2026-04-22T20:44:35.521Z [DEBUG] LSP csharp server for /testbed: [stderr] Could not execute because the specified command or file was not found.
```
Additionally, the `lsp test ` command doesn't seem to really test the server - it seems to report success if the process can launch (for example run using a trampoline like dnx), even if it fails seconds later due to an error. Ideally the /lsp test would actually verify that the `initialize` / `initialized` request / responses are successful.
### Affected version
v1.0.51-1
### Steps to reproduce the behavior
Create an LSP server that fails seconds after launching the process.
### Expected behavior
Copilot receives the actual server launch error, not a timeout unless the server actually times out.
`lsp test ` actually attempts verifies an LSP server can be initialized.
### Additional context
_No response_
Contributor guide
Assessment
This issue has not been assessed yet.