diff options
| author | Adam Malczewski <[email protected]> | 2026-06-23 21:07:53 +0900 |
|---|---|---|
| committer | Adam Malczewski <[email protected]> | 2026-06-23 21:07:53 +0900 |
| commit | 4158e699e3c8ff556684fe2fc7a39ffab040623e (patch) | |
| tree | 1ca7b3069f6b1cfcb119c4b1fae614baf20f6e69 /notes | |
| parent | 961f564f6de6c6c63970b0aeaa48f730cc028d92 (diff) | |
| download | dispatch-4158e699e3c8ff556684fe2fc7a39ffab040623e.tar.gz dispatch-4158e699e3c8ff556684fe2fc7a39ffab040623e.zip | |
fix(lsp): gate LSP endpoint on persisted cwd; accept workspaceId on PUT cwd
GET /conversations/:id/lsp was calling getEffectiveCwd directly, which falls
through to serverDefaultCwd (process.cwd()) when no conversation cwd is set.
Now gates on getCwd first: returns {cwd:null, servers:[]} when no cwd
persisted; only resolves via getEffectiveCwd + calls lspService.status when
a persisted cwd exists.
PUT /conversations/:id/cwd now accepts optional workspaceId — validates with
isValidWorkspaceSlug, then ensureWorkspace → setWorkspaceId → setCwd (assigns
the workspace before persisting cwd, so getEffectiveCwd resolves relative
cwds against the workspace defaultCwd, not the server default).
transport-contract 0.16.0→0.17.0 (additive SetCwdRequest.workspaceId;
LspStatusResponse.cwd comment updated).
1332 vitest pass.
Diffstat (limited to 'notes')
0 files changed, 0 insertions, 0 deletions
