registrystack / registrystack/registry-stack
Add safe rename, references, and embedded Rhai/CEL editor assistance
- Lingua principale
- Rust
- Stelle
- 2
- Fork
- 0
- Merge medio
- 2h 55m
- PR unite (30g)
- 130
Descrizione
Tracked by #399. Depends on #393.
## Outcome
The shared Registry Stack language server moves beyond MVP navigation to safe project-wide refactoring and useful assistance inside authored Rhai and CEL expressions.
Depends on the shared language-server MVP.
## Scope
- Find all references for integrations, entities, services, consultation aliases, outputs, claims, credential profiles, and fixtures.
- Prepare and apply safe project-wide rename edits.
- Reject renames that collide, violate identifier constraints, or would produce an invalid project graph.
- Use the generated `xw.v1` editor metadata for Rhai helper completion, hover, and signature help.
- Provide context-aware completion for project symbols referenced inside supported CEL and authored expression strings.
- Add targeted quick fixes where the compiler can identify an unambiguous correction.
- Keep expression assistance aligned with the released compiler/runtime ABI rather than a handwritten editor-only function list.
## Acceptance criteria
- [ ] Find references returns all and only semantic references across a golden project workspace.
- [ ] Rename produces a project that passes schema and compiler validation.
- [ ] Invalid, ambiguous, or security-sensitive renames are refused with an actionable explanation.
- [ ] Rhai `xw.v1` completion, hover, and signature help are generated from the same registration catalogue used by Relay.
- [ ] CEL completion is limited to symbols actually available in the selected authored context.
- [ ] Expression parsing never executes authored code or resolves credentials.
- [ ] Regression tests cover flow-style and block-style YAML, quoted scalars, aliases supported by the authoring parser, and multiple project roots.
- [ ] VS Code and Zed expose equivalent LSP-backed behavior where each editor supports the protocol capability.
## Non-goals
- A general-purpose Rhai or CEL IDE
- Runtime debugging
- Live source inspection
Guida per i contributori
Apri la guida per i contributori
Direzione di ricerca
Inizia con l’MVP condiviso di language-server in #393 e il lavoro tracciato in #399, quindi esamina i metadati dell’editor xw.v1 generati e il catalogo di registrazione di Relay. Convalida l’implementazione rispetto a un workspace di progetto golden e ai criteri di accettazione elencati, inclusi la convalida sicura della ridenominazione, il supporto per Rhai e CEL, le regressioni del parser e un comportamento equivalente in VS Code e Zed.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- rust, vscode
- Ambito
- developer-experience, devtools, tooling
- Tipo di issue
- Funzionalità
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Stato di attività
- Tranquilla
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 25/100