feat(lsp): add missing LspCapability enum values (hover, definitions, signature_help, document_symbols, workspace_symbols) #834

Closed
opened 2026-03-13 20:16:12 +00:00 by freemo · 0 comments
Owner

Metadata

  • Commit Message: feat(lsp): add missing LspCapability enum values
  • Branch: feature/lsp-capability-enum
  • Type: Feature
  • Priority: Medium
  • MoSCoW: Should have
  • Points: 2
  • Milestone: v3.6.0

Background and Context

The specification defines 11 LSP capabilities. The LspCapability enum in src/cleveragents/lsp/models.py currently has 8 values but is missing 3 (the spec lists hover, definitions, and signature_help among others). Additionally, document_symbols and workspace_symbols are defined in the spec but absent from the enum.

Currently present (8): diagnostics, completions, formatting, code_actions, references, rename, folding_range, semantic_tokens

Missing (3-5, depends on exact spec count): hover, definitions, signature_help, document_symbols, workspace_symbols

These capabilities are needed for the LSP tool adapter to generate correct tool specifications and for capability negotiation during LSP server initialization.

Acceptance Criteria

  • LspCapability enum includes all 11 spec-defined values
  • LspToolAdapter generates tool specs for the new capabilities
  • LSP server initialization requests the new capabilities during capability negotiation
  • Documentation updated with full capability list

Definition of Done

This issue is complete when:

  • All subtasks below are completed and checked off.
  • A Git commit is created where the first line of the commit message matches the Commit Message in Metadata exactly.
  • The commit is pushed to the remote on the branch matching the Branch in Metadata exactly.
  • The commit is submitted as a pull request to master, reviewed, and merged before this issue is marked done.

Subtasks

  • Add hover, definitions, signature_help, document_symbols, workspace_symbols to LspCapability enum
  • Update LspToolAdapter to generate tool specs for new capabilities
  • Update LSP server initialization capability negotiation
  • Tests (Behave): Add scenarios verifying all capabilities are present and generate tools
  • Verify coverage >=97% via nox -s coverage_report
  • Run nox (all default sessions), fix any errors
## Metadata - **Commit Message**: `feat(lsp): add missing LspCapability enum values` - **Branch**: `feature/lsp-capability-enum` - **Type**: Feature - **Priority**: Medium - **MoSCoW**: Should have - **Points**: 2 - **Milestone**: v3.6.0 ## Background and Context The specification defines 11 LSP capabilities. The `LspCapability` enum in `src/cleveragents/lsp/models.py` currently has 8 values but is missing 3 (the spec lists hover, definitions, and signature_help among others). Additionally, `document_symbols` and `workspace_symbols` are defined in the spec but absent from the enum. **Currently present** (8): diagnostics, completions, formatting, code_actions, references, rename, folding_range, semantic_tokens **Missing** (3-5, depends on exact spec count): hover, definitions, signature_help, document_symbols, workspace_symbols These capabilities are needed for the LSP tool adapter to generate correct tool specifications and for capability negotiation during LSP server initialization. ## Acceptance Criteria - [ ] `LspCapability` enum includes all 11 spec-defined values - [ ] `LspToolAdapter` generates tool specs for the new capabilities - [ ] LSP server initialization requests the new capabilities during capability negotiation - [ ] Documentation updated with full capability list ## Definition of Done This issue is complete when: - All subtasks below are completed and checked off. - A Git commit is created where the **first line** of the commit message matches the Commit Message in Metadata exactly. - The commit is pushed to the remote on the branch matching the **Branch** in Metadata exactly. - The commit is submitted as a **pull request** to `master`, reviewed, and **merged** before this issue is marked done. ## Subtasks - [ ] Add hover, definitions, signature_help, document_symbols, workspace_symbols to LspCapability enum - [ ] Update LspToolAdapter to generate tool specs for new capabilities - [ ] Update LSP server initialization capability negotiation - [ ] Tests (Behave): Add scenarios verifying all capabilities are present and generate tools - [ ] Verify coverage >=97% via `nox -s coverage_report` - [ ] Run `nox` (all default sessions), fix any errors
freemo added this to the v3.6.0 milestone 2026-03-13 20:20:04 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Blocks
#824 Epic: LSP Functional Runtime
cleveragents/cleveragents-core
Reference
cleveragents/cleveragents-core#834
No description provided.