Add hover and definition support to LspClient and LspRuntime.
- LspClient.get_hover(): sends textDocument/hover, returns Hover dict or None
- LspClient.get_definitions(): sends textDocument/definition, handles
Location, Location[], and LocationLink[] responses
- LspRuntime wrappers: input validation, file reading, language
detection, 1-based to 0-based line/column conversion
- try/finally for did_close() safety on both new methods
- Tool adapter: HOVER and DEFINITIONS dispatch to runtime instead of
raising LspNotAvailableError
- Updated lsp_tool_adapter_coverage test (HOVER -> REFERENCES)
- 21 Behave BDD scenarios with full path coverage
Closes#1243
Co-authored-by: Hamza Khyari <hamza.khyari@cleverthis.com>
Co-committed-by: Hamza Khyari <hamza.khyari@cleverthis.com>
Adds missing CLI flags to `resource add`, `resource list`, `resource tree`, `resource type list`, and `lsp list` per specification.
Changes:
- Added --update, --clone-into to resource_add; expanded --mount for devcontainer-instance
- Added --all to resource_list; changed --depth default to 3
- Added [REGEX] positional to type_list and lsp list
- Added include_auto_discovered parameter to resource registry ops
- 12 new BDD scenarios with step definitions
- Fixed critical bug: clone-into URL parsing used split() instead of rsplit(), causing HTTPS URLs to be stored with incorrect data
Closes#904
Co-authored-by: Jeffrey Phillips Freeman <the@jeffreyfreeman.me>
Co-committed-by: Jeffrey Phillips Freeman <the@jeffreyfreeman.me>