M5: LSP pool and diagnostics wiring

Adds the DiagnosticsSource seam trait in harness-core::lsp (kept out of harness-tools so tools never link the LSP crate directly), and implements it in harness-lsp as a pool that lazily spawns one language server per file extension (rust-analyzer, typescript-language-server, gopls, pyright-langserver) only when the binary is on PATH. Adds harness-tools::diagnostics and wires diagnostics into edit/write/bash/glob/grep output.
This commit is contained in:
2026-07-10 16:20:22 +02:00
parent e32f61e4f8
commit f71a347061
19 changed files with 762 additions and 2 deletions
Generated
+5
View File
@@ -711,7 +711,12 @@ dependencies = [
name = "harness-lsp"
version = "0.1.0"
dependencies = [
"async-trait",
"harness-core",
"serde_json",
"tempfile",
"tokio",
"tracing",
]
[[package]]