Files
hemx/work/northstars/NS-0003-hemplate-highlighting.md
T
slhx agent df0fabd4fb docs(work): map testing and editor northstars
Add repo-local northstars and ready slices for testing strategy, LSP/editor completion, and hemplate highlighting boundaries.
2026-06-25 22:20:50 +02:00

45 lines
2.1 KiB
Markdown

---
id: NS-0003
type: northstar
status: ready
title: Hemplate highlighting and editor grammar boundary
refs:
- docs/editor-support.md
- docs/hemplate-syntax.md
- REQUIREMENTS.md
- README.md
---
## Objective
Make `.heml` highlighting predictable in editors by defining the repo-owned highlighting boundary: HTML/tree-sitter remains the base, hemplate overlays cover only the documented syntax facts, and diagnostics/completion stay owned by `hemx-build`/`hemx-lsp`.
## Authority
- `docs/editor-support.md` says `.heml` should keep normal HTML highlighting and layer hemx-specific editor support on top.
- `docs/hemplate-syntax.md` defines escaped/trusted text, dynamic attributes, control flow, generated hemx targets, and boundaries.
- `REQUIREMENTS.md` `diagnostics/004` through `diagnostics/008` require optional overlays to share authority with `hemx-build` and avoid a second template language or custom editor framework.
## Close when
- Highlighting ownership is explicit: repo-owned fixtures/queries can cover documented hemplate tokens, while external editor distribution remains a separate slice or blocker.
- Tree-sitter work is bounded to syntax highlighting/injection facts and never owns diagnostics, completion, formatting, Rust type checking, or template validation.
- Ready slices distinguish repo-testable grammar/query behavior from editor packaging/publishing work that may require external authority.
## Verification
- `work check`
- `work list`
- Later implementation slices should use repo-owned fixture/query tests where available; provider-specific visual/manual checks must name the editor and blocker.
## Non-goals
- Do not create a second `.heml` parser for hemx-build.
- Do not make highlighting responsible for compiler diagnostics, completion, hover, formatting, or generated Rust facts.
- Do not publish editor extensions or tree-sitter packages without explicit release authority.
## Evidence
- Current docs already frame `.heml` as HTML first with a small hemplate overlay.
- No current repo authority grants external package publishing; that is represented as a separate blocked/future slice rather than assumed.