Teknium
bed4abd106
fix(lsp): look up nested single-root clients and version docs before didChange send
...
Two LSP freshness bugs reported by @tobific (#108882 , #108881 ):
- `_current_diags_async()` keyed the client lookup by the enclosing
workspace root while `_get_or_spawn()` stores single-root servers under
`srv.resolve_root(...)` (a nested package.json project). The lookup
returned [] for a live client with diagnostics, so the delta baseline was
refreshed from nothing. Use the same resolved-root key.
- `open_or_change()` published `_DocState.version` only after awaiting the
didChange write. A versionless publishDiagnostics read during that await
was credited with the OLD version and judged stale once the send resumed.
Bump the version before the send; a failed send (swallowed by
`_send_notification`) leaves a version nothing satisfies, i.e. "no
verdict", which is the existing contract.
The mock server gains a push-only `versionless` script so the race is
reproducible without a real language server.
2026-09-12 05:09:11 -07:00
..
2026-09-12 05:09:11 -07:00
2026-09-07 16:48:29 -07:00
2026-09-11 01:37:22 -07:00
2026-09-10 11:48:01 -07:00
2026-09-06 20:50:02 +05:30
2026-09-10 18:08:16 -07:00
2026-09-10 18:08:16 -07:00
2026-09-09 12:21:28 +05:30
2026-09-12 01:35:05 -07:00
2026-09-07 08:07:26 -07:00
2026-09-06 05:37:03 -07:00
2026-09-06 05:37:03 -07:00
2026-09-12 01:35:05 -07:00
2026-09-11 19:39:12 -07:00
2026-09-07 06:02:22 -07:00
2026-09-12 01:35:05 -07:00
2026-09-07 07:06:58 -07:00
2026-09-09 12:19:13 +05:30
2026-09-12 01:35:05 -07:00
2026-09-11 03:45:33 +05:30
2026-09-07 05:24:15 -07:00
2026-09-07 05:24:15 -07:00
2026-09-10 18:08:16 -07:00
2026-09-07 21:43:54 +05:30
2026-09-10 15:13:02 -04:00
2026-09-06 22:45:31 +05:30
2026-09-07 21:22:49 -07:00
2026-09-07 08:13:01 -07:00
2026-09-07 05:59:08 -07:00
2026-09-11 02:07:48 -07:00
2026-09-11 02:07:48 -07:00
2026-09-10 03:04:51 -07:00
2026-09-11 03:45:33 +05:30
2026-09-07 08:06:48 -07:00
2026-09-11 03:45:31 +05:30
2026-09-11 03:45:33 +05:30
2026-09-07 06:15:43 -07:00
2026-09-07 08:19:32 -07:00
2026-09-07 07:10:28 -07:00
2026-09-11 03:45:33 +05:30
2026-09-09 16:30:24 -07:00
2026-09-09 11:29:56 -07:00
2026-09-10 10:35:07 -07:00
2026-09-07 21:10:50 -07:00
2026-09-11 15:26:46 -07:00
2026-09-07 08:08:04 -07:00
2026-09-12 01:35:05 -07:00
2026-09-11 15:26:46 -07:00
2026-09-11 06:24:54 -07:00
2026-09-09 13:08:25 +05:30
2026-09-09 10:58:16 -07:00
2026-09-07 08:28:43 -07:00
2026-09-11 11:54:49 -07:00
2026-09-10 10:27:07 -07:00
2026-09-10 10:27:07 -07:00
2026-09-10 18:11:25 -07:00
2026-09-12 01:35:05 -07:00
2026-09-11 16:50:20 -07:00
2026-09-06 09:09:00 -07:00
2026-09-06 09:11:04 -07:00
2026-09-11 15:26:46 -07:00
2026-09-09 12:17:57 +05:30
2026-09-12 01:35:05 -07:00
2026-09-11 03:45:33 +05:30
2026-09-07 21:43:54 +05:30
2026-09-07 08:24:54 -07:00
2026-09-10 09:22:31 -07:00
2026-09-11 19:39:12 -07:00
2026-09-10 13:23:24 -07:00
2026-09-08 04:38:47 -07:00
2026-09-07 06:15:43 -07:00
2026-09-06 05:35:12 -07:00
2026-09-09 10:32:01 +05:30
2026-09-11 15:44:00 -07:00
2026-09-07 07:10:28 -07:00
2026-09-11 11:54:49 -07:00
2026-09-09 10:31:26 +05:30
2026-09-09 10:31:26 +05:30
2026-09-10 02:21:16 +05:30
2026-09-11 19:39:12 -07:00
2026-09-06 22:56:51 +05:30
2026-09-11 03:45:33 +05:30
2026-09-09 11:29:56 -07:00
2026-09-10 10:45:57 -07:00
2026-09-06 13:21:17 -07:00
2026-09-10 10:27:07 -07:00
2026-09-11 06:37:27 -07:00
2026-09-09 12:17:57 +05:30
2026-09-10 13:23:24 -07:00
2026-09-11 06:24:11 -07:00
2026-09-09 09:51:31 -07:00
2026-09-09 12:17:57 +05:30
2026-09-06 13:21:17 -07:00
2026-09-06 13:21:17 -07:00
2026-09-12 10:00:06 +05:30
2026-09-07 06:15:43 -07:00
2026-09-11 01:37:22 -07:00
2026-09-09 11:42:43 -07:00
2026-09-06 14:19:42 -07:00
2026-09-06 13:21:17 -07:00
2026-09-10 02:44:26 -07:00
2026-09-10 11:48:01 -07:00
2026-09-10 11:48:01 -07:00
2026-09-09 02:35:41 -07:00