📝 Track protocol-backed LSP helper

The autocomplete helper still carries a hand-rolled JSON-RPC client
(Content-Length framing, a pending-request map, server-request replies).
vscode-languageserver-protocol provides all of it plus typed requests, so
track the move as a task with subtasks.
This commit is contained in:
tmu committed 2026-09-18 07:14:18 +00:00
1 parent 6f87c2f3b5
commit 0b97632a7c
1 file changed
+5
+5
View File
@@ -32,6 +32,11 @@ Testing:
→ `src/util/__tests__/lsp-completion.ts` (`#test-utils/…`) is the helper; the suite asserts its labels (see development/testing.md § Autocomplete)
→ wire it into `node --test` so a test asserts the offered labels
→ note: `Parameters<typeof factory>[0]` resolves only the *last* overload; use `@ts-expect-error` call sites for factory negatives, not `not.toExtend<Parameters<…>>`
☐ Drive the LSP completion helper through the LSP protocol library instead of a hand-rolled JSON-RPC client @medium
☐ Add `vscode-languageserver-protocol` and record the tooling decision
☐ Rewrite `src/util/__tests__/lsp-completion.ts` onto `createMessageConnection` and typed requests
☐ Update `development/testing.md § Autocomplete` for the new client
☐ Run `npm run verify` and check the task off
Matcher:
✔ Clean up: adopt the 3-overload matcher (`src/prototype-ac2.ts`) and delete the prototypes @high @done