doc/EVOLUTION: add LSP Go port to Phase 12
This commit is contained in:
parent
9f947e93ec
commit
ebd994fe7e
|
|
@ -315,9 +315,26 @@ tools/
|
||||||
This decouples metadata from implementation language — compiled Go binaries,
|
This decouples metadata from implementation language — compiled Go binaries,
|
||||||
Python scripts, and bash tools all use the same discovery mechanism.
|
Python scripts, and bash tools all use the same discovery mechanism.
|
||||||
|
|
||||||
|
### LSP tools ported to Go
|
||||||
|
The Python LSP bridge (`_lib/lsp/`) replaced with a pure Go implementation:
|
||||||
|
|
||||||
|
```
|
||||||
|
tools/
|
||||||
|
├── builtin/ ← in-process handlers (shell, reasoning, tool/skill registry)
|
||||||
|
└── lsp/ ← shared LSP client library
|
||||||
|
└── cmd/ ← individual binaries (lsp_definition, lsp_hover, ...)
|
||||||
|
```
|
||||||
|
|
||||||
|
Architecture: each LSP tool binary embeds a bridge daemon (started on first
|
||||||
|
invocation via `--bridge` flag, persists via Unix socket, auto-exits after 5min
|
||||||
|
idle). No Python. No `_lib`. No external dependencies beyond the LSP servers
|
||||||
|
themselves (gopls, clangd, intelephense).
|
||||||
|
|
||||||
### Repo reorganization
|
### Repo reorganization
|
||||||
- `contrib/{prompts,scripts,services,tools,skills,agents}` → `data/`
|
- `contrib/{prompts,scripts,services,tools,skills,agents}` → `data/`
|
||||||
- `contrib/elisp` stays (Emacs frontend contribution)
|
- `contrib/elisp` stays (Emacs frontend contribution)
|
||||||
|
- `tools/builtin/` — built-in tool handlers (moved from `tools/`)
|
||||||
|
- `tools/lsp/` — Go LSP implementation (replaced `data/tools/_lib/lsp/`)
|
||||||
|
|
||||||
## Current Topology
|
## Current Topology
|
||||||
```
|
```
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue