assumls 0.0.4

Language server and CLI checker for enforcing documented assumptions across a codebase
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
- [src/lib.rs]src/lib.rs: module wiring and public exports for LSP and lint entrypoints.
- [src/model.rs]src/model.rs: core data structs for assumption docs, tag hits, and diagnostics.
- [src/parser.rs]src/parser.rs: parses ASSUM.md headings, scans @ASSUME:<name> tags, resolves scopes, and file ignores.
- [src/index.rs]src/index.rs: builds scoped index, sorts completions, computes diagnostics, and serves hover/completion/definition/references/rename via actor.
- [src/lsp.rs]src/lsp.rs: LSP server backend, manages overlays, publishes diagnostics (unused as hints), stdio runner; advertises hover Markdown, completion, definition, references, rename.
- [src/lint.rs]src/lint.rs: static lint entry that reuses the index diagnostics and prints CLI findings using workspace-relative paths when possible.
- [src/main.rs]src/main.rs: CLI mode switch (LSP vs lint) and tracing setup.
- [tests/check_cli.rs]tests/check_cli.rs: CLI snapshots covering valid multi-language nested workspace, failure with missing definitions and unused roots, and tool-missing PATH handling.
- [tests/lsp_e2e.rs]tests/lsp_e2e.rs: LSP hover/completion/rename snapshot over nested web/app.js, with path sanitization and deterministic ordering.
- [test_data/cli_valid]test_data/cli_valid: multi-language nested workspace (Rust, JS, TS, Python) with overlapping shared_name scopes and multi-paragraph definitions; all assumption references live in comments and expect no diagnostics.
- [test_data/cli_invalid]test_data/cli_invalid: nested workspace with missing assumptions across scopes plus unused root definition; references are in comments to avoid syntax errors while still producing warnings/errors.
- [test_data/lsp_ws]test_data/lsp_ws: LSP fixture mirroring multi-scope setup for hover/completion/rename coverage; assumption tags live in comments.