df0fabd4fb
Add repo-local northstars and ready slices for testing strategy, LSP/editor completion, and hemplate highlighting boundaries.
41 lines
1.4 KiB
Markdown
41 lines
1.4 KiB
Markdown
---
|
|
id: SLICE-0006
|
|
type: slice
|
|
status: ready
|
|
parent: NS-0002
|
|
title: Complete context-aware hemplate completions
|
|
refs:
|
|
- REQUIREMENTS.md
|
|
- docs/editor-support.md
|
|
- docs/hemplate-syntax.md
|
|
- hemx-lsp/src/main.rs
|
|
---
|
|
|
|
## Objective
|
|
|
|
Make completion useful for the real hemplate surface: directives, dynamic attributes, and `data-hemx-*` facts should complete in context without inventing syntax.
|
|
|
|
## Authority
|
|
|
|
`docs/hemplate-syntax.md` defines the public syntax; `docs/editor-support.md` and `REQUIREMENTS.md` `diagnostics/006` require completions to support that surface while remaining subordinate to build validation.
|
|
|
|
## Close when
|
|
|
|
- Completion items cover `h-if`, `h-for`, `h-key`, `h-match`, `h-case`, `{+ +}`, `{+= =+}`, `+attr`, and known `data-hemx-*` authoring facts.
|
|
- Tests prove context filters: directive completions in tag attributes, snippet/text completions in text positions, and no irrelevant completions inside quoted Rust expressions.
|
|
- Completion docs/details point to the existing syntax docs rather than new invented rules.
|
|
|
|
## Verification
|
|
|
|
- `cargo test -p hemx-lsp`
|
|
- Manual check if needed: request `textDocument/completion` against a fixture through the LSP test harness.
|
|
|
|
## Non-goals
|
|
|
|
- Do not add Rust type inference or project-wide symbol completion in this slice.
|
|
- Do not make completion acceptance a build authority.
|
|
|
|
## Evidence
|
|
|
|
`hemx-lsp/src/main.rs` already exposes `completionProvider` and `hemplate_completion_items` anchors.
|