One authority.
Examples
Platform spec article
Examples
Spec standingStandard
-
Hub authority
Context
Decision
Hub owns snapshot/refresh MUST/SHOULD.
Consequences
IDE parity.
Verification anchors
beskid_lsp tests.
-
Invalidation
Context
Stale snapshots.
Decision
Invalidate on focus, manifest, lock; debounce watchers.
Consequences
Config notification.
Verification anchors
session store.
- Contracts and edge cases Strict guarantees for LSP snapshot lifecycle and refresh behavior.
- Design model Conceptual model for `Snapshot and refresh contract` and its subsystem boundaries.
- Examples Observable LSP refresh scenarios for snapshots and diagnostics.
- FAQ and troubleshooting Common LSP snapshot and refresh issues.
- Flow and algorithm End-to-end refresh flow for LSP workspace snapshots and diagnostics.
- Verification and traceability Tests and traceability for the LSP snapshot and refresh contract.
0 revisions (git unavailable at build; counts may be empty)
No commits recorded for this path.
| Section id | Required | Found |
|---|---|---|
what-this-feature-specifies | yes | yes |
implementation-anchors | yes | yes |
Full tree: run pnpm verify:platform-spec-layout (writes src/generated/platform-spec-layout-report.json).
Focused project switch
Section titled “Focused project switch”- User selects a workspace member in Project view.
- Extension sends focused
Project.projURI to the LSP. - Server invalidates
compilation_context_cacheand schedulesrefresh_workspace_scan. - Diagnostics on open
.bdfiles refresh against the new graph.
Edit loop
Section titled “Edit loop”didChangeupdates buffer text and hash.- Analysis rebuilds snapshot with current
CompilationContext. - After ~120ms quiet period,
textDocument/publishDiagnosticsfires.
Close and reopen
Section titled “Close and reopen”didCloseremoves open buffer entry.hydrate_disk_after_closereads file from disk intoworkspace_index.- Reopen uses
didOpen→ fresh open snapshot (disk index entry removed).
CI parity check
Section titled “CI parity check”Run beskid analyze --project <same Project.proj> and compare diagnostic codes to the Problems panel for the same file generation—discrepancies indicate cache or focus mismatch, not intentional divergence.