NS8 slice: Ship compact hover, signature help, and parameter navigation #51

Closed
opened 2026-06-21 09:12:13 +00:00 by tmk241 · 1 comment
Owner

OBJECTIVE: Hover and signature help are useful on narrow terminals: compact first, expandable/searchable for long content, provider-aware, and integrated with parameter navigation.

AUTHORITY: Parent #43; KEYMAP.md Hover, signature help, and long content; req: coding/004-005, coding/007, ui/001-002, testing/001-004.

AGENT AUTHORITY:

  • Delivery authority: local-commit
  • Tracker authority: this issue may be commented and closed when acceptance passes; parent #43 may be commented/checklisted.
  • Handoff state: committed clean, tracker commented/closed.

PARENT: #43 via explicit issue link and parent checklist.

SCOPE: Space l h, Space l s, compact card renderer, expandable transient panel, scroll/search/copy/pin actions where feasible, provider switch, active parameter highlight, next/previous parameter navigation.

BOUNDARIES: Do not dump full hover markdown inline into the editor. Do not require permanent splits. Markdown rendering can be plain text if safe and readable.

ACCEPTANCE:

  • Hover shows symbol/type/signature headline, short docs excerpt, and provider label in a compact card.
  • Long hover content expands to a transient scrollable/searchable panel and returns to the original cursor location when closed.
  • Signature help shows active overload/parameter first and can expand to full overload/docs.
  • Parameter navigation moves within function calls using syntax/LSP when available and falls back with clear diagnostics when not.
  • Multiple providers can be switched or distinguished without mixing source identity.
  • Huge hover text, malformed markup, narrow widths, no server, and provider timeouts remain usable.

VERIFICATION:

  • zig build test
  • Fixture tests for short hover, very long hover, multiple providers, malformed markup, signature overloads, parameter next/previous, narrow viewport rendering, no-provider diagnostics.
  • zig build v1-smoke

BLOCKERS: none.

OBJECTIVE: Hover and signature help are useful on narrow terminals: compact first, expandable/searchable for long content, provider-aware, and integrated with parameter navigation. AUTHORITY: Parent #43; KEYMAP.md `Hover, signature help, and long content`; req: coding/004-005, coding/007, ui/001-002, testing/001-004. AGENT AUTHORITY: - Delivery authority: local-commit - Tracker authority: this issue may be commented and closed when acceptance passes; parent #43 may be commented/checklisted. - Handoff state: committed clean, tracker commented/closed. PARENT: #43 via explicit issue link and parent checklist. SCOPE: `Space l h`, `Space l s`, compact card renderer, expandable transient panel, scroll/search/copy/pin actions where feasible, provider switch, active parameter highlight, next/previous parameter navigation. BOUNDARIES: Do not dump full hover markdown inline into the editor. Do not require permanent splits. Markdown rendering can be plain text if safe and readable. ACCEPTANCE: - Hover shows symbol/type/signature headline, short docs excerpt, and provider label in a compact card. - Long hover content expands to a transient scrollable/searchable panel and returns to the original cursor location when closed. - Signature help shows active overload/parameter first and can expand to full overload/docs. - Parameter navigation moves within function calls using syntax/LSP when available and falls back with clear diagnostics when not. - Multiple providers can be switched or distinguished without mixing source identity. - Huge hover text, malformed markup, narrow widths, no server, and provider timeouts remain usable. VERIFICATION: - `zig build test` - Fixture tests for short hover, very long hover, multiple providers, malformed markup, signature overloads, parameter next/previous, narrow viewport rendering, no-provider diagnostics. - `zig build v1-smoke` BLOCKERS: none.
tmk241 added the sliceready-for-agentgoal labels 2026-06-21 09:12:13 +00:00
Author
Owner

Implemented and committed #51 as 264dedb Add compact language assistance rails.

What changed:

  • Added Space l language rail with compact hover (h), compact signature help (s), and explicit expanded hover panel (o).
  • Added provider-labelled hover/signature fixture rows and compact/expanded LSP card helpers so source identity is visible.
  • Added g a / g A parameter navigation inside function-call argument lists.
  • Added regular and adversarial tests for compact/expanded language help, missing providers, and parameter movement.

Verification:

  • zig build test
  • zig build
  • zig build v1-smoke
  • zig build run -- --help
  • zig build run -- src/main.zig
  • redgate list /opt/repositories/mim/REQUIREMENTS.md
  • redgate lint /opt/repositories/mim/REQUIREMENTS.md && redgate health /opt/repositories/mim/REQUIREMENTS.md

Notes:

  • Expanded hover uses the existing strict list-panel row contract, so whitespace is normalized to underscores for safe panel rows. The compact status card preserves readable spacing.
Implemented and committed #51 as `264dedb Add compact language assistance rails`. What changed: - Added `Space l` language rail with compact hover (`h`), compact signature help (`s`), and explicit expanded hover panel (`o`). - Added provider-labelled hover/signature fixture rows and compact/expanded LSP card helpers so source identity is visible. - Added `g a` / `g A` parameter navigation inside function-call argument lists. - Added regular and adversarial tests for compact/expanded language help, missing providers, and parameter movement. Verification: - `zig build test` - `zig build` - `zig build v1-smoke` - `zig build run -- --help` - `zig build run -- src/main.zig` - `redgate list /opt/repositories/mim/REQUIREMENTS.md` - `redgate lint /opt/repositories/mim/REQUIREMENTS.md && redgate health /opt/repositories/mim/REQUIREMENTS.md` Notes: - Expanded hover uses the existing strict list-panel row contract, so whitespace is normalized to underscores for safe panel rows. The compact status card preserves readable spacing.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: tmk241/mim#51