Files
mopac-pmo/archive/TASK-20260828-1915-lsp-stack.md

27 lines
1.4 KiB
Markdown

# TASK: LSP stack in docker, wired into crush (MOPAC dev env)
## Objective
Language servers containerized + wired into crush config so agent/human Go
dev on MOPAC gets diagnostics. Home: /home/reachableceo/projects/meta/MOPAC/lsp/
(wrappers + compose + README).
## Deliverables
1. Containers (compose file, isolated network, no host mounts beyond workspace):
- gopls (Go toolchain image; the critical one for MOPAC/harness)
- dockerfile-language-server (node-based: sanctioned exception, containerized)
- marksman (markdown; Go binary)
- yaml-language-server + bash-language-server (node-based: same exception)
2. Wrapper scripts per KNEL-AIMiddleware lsp-*wrapper.sh pattern (see
../siblings/KNEL-AIMiddleware/lsp-bash-wrapper.sh) adapted to MOPAC/lsp/.
3. Crush wiring: add servers to crush config (study how crush declares LSP:
reference/crush docs/code) for gopls at minimum; others best-effort.
4. Verify: open/edit a .go file in a MOPAC project via a headless crush turn ->
diagnostics actually flow (capture proof in REPORT).
5. REPORT to inbox-pmo: what runs, ports, how crush is wired, node-exception
list (for supply-chain ledger), failures if any.
## Constraints
No secrets involved. Reuse golang official images, pin digests. If crush LSP
config needs per-project setup, document exactly where. Do not touch live
screens. Node-based servers stay containerized and unpinned-to-host.