From b278a153d3e84bffd80af415b25d2d37b793de27 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thomas=20M=C3=BCller?= Date: Fri, 18 Sep 2026 07:31:10 +0000 Subject: [PATCH] :memo: Check off the LSP shutdown bug Record the cause (Session.updateWatches raced against exit) and the stdin-EOF fix now that npm run verify is green with no context-canceled output. --- backlog.tasks | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/backlog.tasks b/backlog.tasks index 39f64a8..45ad514 100644 --- a/backlog.tasks +++ b/backlog.tasks @@ -48,7 +48,9 @@ Matcher: → `{ a, b, _ }` for `T = "a" | "b"` is accepted today; the redundant `_` should be rejected Bugs: - +✔ TS 7 LSP server logs `context canceled` on stderr at shutdown @done + → `handleExit` returns `io.EOF`, cancelling the background context while `Session.updateWatches` is still in flight; the bare error is flushed to stderr and the server exits 1 + → close stdin after `shutdown` instead of sending `exit`; the server exits cleanly (code 0, no output), kill kept as a fallback Enhancements: ☐ Allow boolean literals in primitive union patterns (e.g. `true: () => "yes"`) @medium ☐ Are there other primitive types that should be supported in union patterns? (e.g. `bigint`, `symbol`) @medium