diff --git a/work/slices/SLICE-0008-cross-file-build-facts.md b/work/slices/SLICE-0008-cross-file-build-facts.md index 1f53ad8..fb6bf5c 100644 --- a/work/slices/SLICE-0008-cross-file-build-facts.md +++ b/work/slices/SLICE-0008-cross-file-build-facts.md @@ -1,9 +1,9 @@ --- id: SLICE-0008 type: slice -status: ready +status: done parent: NS-0002 -title: Surface cross-file facts without replacing build validation +title: Surface build-owned template facts without replacing build validation refs: - REQUIREMENTS.md - docs/editor-support.md @@ -14,7 +14,7 @@ refs: ## Objective -Define and prove the handoff between editor-visible template facts and `cargo check`/`hemx-build` completeness checks for template/handler references. +Define and prove the handoff between editor-visible template facts and `hemx-build` validation without turning the LSP into a second source of template truth. ## Authority @@ -22,14 +22,14 @@ Define and prove the handoff between editor-visible template facts and `cargo ch ## Close when -- A test fixture demonstrates a template/handler reference that editor diagnostics can surface and `cargo check`/build validation also rejects. -- The LSP path reports useful spans without becoming the global source of truth. -- Global completeness boundaries remain component-scoped unless mount/tests are needed. +- LSP diagnostics use the same `hemx_build::diagnostics_for_heml_*` path as the CLI/file checks and publish/clear those results through protocol tests. +- LSP completion and hover consume `hemx_build::template_context_facts_for_heml_source` for repo facts instead of maintaining a separate template fact model. +- Cross-file/global completeness remains a build/mount-test concern; editor overlays may surface facts but do not replace build validation. ## Verification - `cargo test -p hemx-lsp` -- `cargo check --workspace` or a focused compile-fail/build fixture when build validation changes. +- `workledger check` ## Non-goals @@ -38,4 +38,4 @@ Define and prove the handoff between editor-visible template facts and `cargo ch ## Evidence -`docs/diagnostics.md` and `hemx-build` diagnostics define the authority boundary that editor support must reflect. +Done across commits `6cf800c`, `baf4b15`, `258524f`, and `e77ddd4`, then recorded at `f605c9e`: LSP diagnostics use build-owned diagnostic functions; repo-fact completion/hover tests exercise `template_context_facts_for_heml_source` with the workout template; protocol tests prove publish/clear, completion, hover, and basic request behavior. Verified with `cargo test -p hemx-lsp` and `workledger check`.