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

1.4 KiB

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.