620d9cc70f
feat: warm-start LSP server on file read
2026-04-30 11:10:36 -04:00
aa7309b363
test: add unit and integration test suite
...
Add 34 tests (27 unit, 7 integration) using node:test runner:
Unit tests:
- pickServer(), findRoot(), pathToUri(), uriToPath()
- isLspCommand(), listCommands()
- formatHover(), formatDefinition(), formatReferences(), formatDiagnostics()
Integration tests:
- daemon lifecycle (status/stop) on isolated socket
- CLI --no-daemon queries (hover, documentSymbol, diagnostics)
Supporting changes:
- socketPath() honors PI_LSP_SOCKET_PATH env var for test isolation
- test fixtures for valid and broken TypeScript files
- npm test / test:unit / test:integration scripts
2026-04-30 10:36:54 -04:00
e131e0e8cd
feat: add server control commands (disable, enable, destroy)
...
Add /lsp-servers, /lsp-disable, /lsp-enable, and /lsp-destroy TUI commands.
Disabled servers are tracked in-memory per-extension-instance; the shared
daemon is never mutated by disable/enable. When all servers are disabled,
LSP tools are removed from the active tool set so the LLM won't attempt them.
Also adds a destroy_server daemon operation that kills running LspClient
entries by server ID or all entries.
2026-04-30 09:48:01 -04:00
7abe4efa02
refactor: replace string-matching error checks with custom error classes
2026-04-30 08:27:13 -04:00
81ed5c88b8
fix(daemon): auto-shutdown when last LSP server entry is evicted
2026-04-30 08:21:16 -04:00
36b9b0cde4
docs: add AGENTS.md with project context and conventions
2026-04-30 08:21:09 -04:00
a516d80c71
fix(cli): harden no-daemon teardown
2026-04-29 16:18:27 -04:00
d073f2272f
chore: rename project to evan/pi-lsp
2026-04-29 00:16:51 -04:00
46aac3ef39
build: add oxlint
2026-04-29 00:08:34 -04:00
076eee4e96
feat(lsp): add background daemon for language servers
2026-04-29 00:04:06 -04:00
60b8900a09
chore: add nix flake for dev environment
2026-04-26 09:45:41 -04:00
61bca87bba
initial commit
2026-04-25 21:06:15 -04:00