Tracked by #399. Depends on #396 and #401.
Outcome
One shared Registry Stack language server supplies project-aware navigation and editing features to both VS Code and Zed. Editor integrations remain thin clients and do not reimplement the authoring compiler.
Depends on the versioned editor metadata and structured diagnostics contract (#396) and span-preserving authoring YAML parsing (#401).
MVP scope
- Expose a standard-input/standard-output LSP entry point, preferably through
registryctl lsp unless a separate binary has a demonstrated packaging advantage.
- Discover a project from its nearest
registry-stack.yaml without scanning outside the editor workspace.
- Track open and changed buffers so diagnostics and navigation reflect unsaved content.
- Index authored declarations and references across:
- project integrations and their
file targets;
- entities and their
file targets;
- services and consultations;
- integration inputs and outputs;
- claims and credential-profile claim lists;
- fixture names and reviewed fixture references.
- Provide:
- document links and go to definition for authored file paths;
- go to definition for project-local identifiers and qualified output references;
- project-aware completion for references;
- useful hover information;
- document and workspace symbols;
- structured diagnostics from the compiler/editor diagnostic contract.
- Coexist with normal YAML syntax support rather than replacing YAML parsing, formatting, or highlighting unnecessarily.
Security and developer-experience invariants
- Treat only reviewed project authoring files as inputs. Do not execute project scripts for completion, hover, or navigation.
- Do not read secret values or resolve secret references.
- Do not perform network requests while analyzing a project.
- Preserve authored-path confinement and bounded-file rules.
- Avoid expensive full builds or fixture execution on every keystroke.
- Give actionable diagnostics when a project or installed CLI version is unsupported.
Acceptance criteria
Non-goals
- Find references and safe rename
- Deep Rhai or CEL expression analysis
- Editor marketplace publication
Tracked by #399. Depends on #396 and #401.
Outcome
One shared Registry Stack language server supplies project-aware navigation and editing features to both VS Code and Zed. Editor integrations remain thin clients and do not reimplement the authoring compiler.
Depends on the versioned editor metadata and structured diagnostics contract (#396) and span-preserving authoring YAML parsing (#401).
MVP scope
registryctl lspunless a separate binary has a demonstrated packaging advantage.registry-stack.yamlwithout scanning outside the editor workspace.filetargets;filetargets;Security and developer-experience invariants
Acceptance criteria
Non-goals