UAT: TUI sidebar panels (Plans and Projects) are completely absent — spec requires collapsible sidebar with real-time plan monitoring #4067

Open
opened 2026-04-06 09:52:13 +00:00 by freemo · 0 comments
Owner

Metadata

  • Branch: fix/tui-sidebar-panels
  • Commit Message: feat(tui): implement sidebar panels for Plans and Projects with real-time monitoring
  • Milestone: (none — see backlog note below)
  • Parent Epic: #868 (Epic: TUI Interface, Modals and Persona System)

Bug Report

What was tested: TUI sidebar panel implementation against the specification

Expected behavior (from spec, section "TUI Architecture Overview" and "MainScreen Layout — Sidebar Visible"):

The spec defines a right-side collapsible sidebar with three states (hidden → visible → fullscreen, cycled by shift+tab). When visible, the sidebar contains:

  • Plans panel: Shows active plans with phase progress indicators (e.g., Phase: Execute ●●●○), automation profile, actor name, and cost
  • Projects panel: Shows linked projects with resource counts
  • Both panels are in collapsible containers within the sidebar
  • The sidebar docks to the right at 32-40 chars wide
  • ctrl+b focuses the sidebar when visible
  • tab/shift+tab within sidebar navigates between Plans and Projects panels

The spec explicitly states: "Right-side collapsible sidebar — three states cycled by shift+tab: hidden → visible → fullscreen"

Actual behavior (from code analysis):

The TUI app (src/cleveragents/tui/app.py) has NO sidebar implementation whatsoever. The compose() method yields only:

  • _Header
  • A single _Vertical column with conversation static, overlays, prompt, and persona bar
  • _Footer

There is no sidebar widget, no Plans panel, no Projects panel, no collapsible containers, and no sidebar state management (hidden/visible/fullscreen). The shift+tab binding for sidebar cycling is also absent (confirmed by existing UAT issue #4044 area).

Code location:

  • src/cleveragents/tui/app.pycompose() method (lines 109-121)
  • src/cleveragents/tui/widgets/ — no sidebar-related widgets exist

Steps to reproduce:

  1. Run agents tui
  2. Press shift+tab to cycle sidebar state
  3. Observe: no sidebar appears; the key binding has no effect

Severity: High — the sidebar is a core TUI feature described throughout the spec as essential for plan monitoring. Without it, users cannot monitor active plans or projects from the TUI.

Subtasks

  • Implement SidebarPanel widget with hidden/visible/fullscreen state machine
  • Implement PlansPanel widget showing active plans with phase progress, profile, actor, cost
  • Implement ProjectsPanel widget showing linked projects
  • Wire shift+tab binding to cycle sidebar states
  • Wire ctrl+b to focus sidebar when visible
  • Wire tab/shift+tab within sidebar to navigate between Plans and Projects panels
  • Update compose() to include sidebar in layout
  • Add unit tests (Behave scenarios) for sidebar state transitions
  • Add integration tests (Robot Framework) for sidebar interaction

Definition of Done

  • shift+tab cycles sidebar through hidden → visible → fullscreen states
  • Sidebar visible state shows Plans panel and Projects panel in collapsible containers
  • Plans panel displays active plans with phase progress indicators
  • Projects panel displays linked projects
  • ctrl+b focuses the sidebar when visible
  • All existing TUI tests continue to pass
  • New Behave scenarios cover sidebar state transitions
  • Pyright type checking passes with no suppressions
  • All nox stages pass
  • Coverage >= 97%

Backlog note: This issue was discovered during autonomous operation
on milestone v3.7.0. It does not block milestone completion and has been
placed in the backlog for human review and future milestone assignment.


Automated by CleverAgents Bot
Supervisor: UAT Testing | Agent: ca-new-issue-creator

## Metadata - **Branch**: `fix/tui-sidebar-panels` - **Commit Message**: `feat(tui): implement sidebar panels for Plans and Projects with real-time monitoring` - **Milestone**: *(none — see backlog note below)* - **Parent Epic**: #868 (Epic: TUI Interface, Modals and Persona System) ## Bug Report **What was tested:** TUI sidebar panel implementation against the specification **Expected behavior (from spec, section "TUI Architecture Overview" and "MainScreen Layout — Sidebar Visible"):** The spec defines a right-side collapsible sidebar with three states (hidden → visible → fullscreen, cycled by `shift+tab`). When visible, the sidebar contains: - **Plans panel**: Shows active plans with phase progress indicators (e.g., `Phase: Execute ●●●○`), automation profile, actor name, and cost - **Projects panel**: Shows linked projects with resource counts - Both panels are in collapsible containers within the sidebar - The sidebar docks to the right at 32-40 chars wide - `ctrl+b` focuses the sidebar when visible - `tab`/`shift+tab` within sidebar navigates between Plans and Projects panels The spec explicitly states: "Right-side collapsible sidebar — three states cycled by `shift+tab`: hidden → visible → fullscreen" **Actual behavior (from code analysis):** The TUI app (`src/cleveragents/tui/app.py`) has NO sidebar implementation whatsoever. The `compose()` method yields only: - `_Header` - A single `_Vertical` column with conversation static, overlays, prompt, and persona bar - `_Footer` There is no sidebar widget, no Plans panel, no Projects panel, no collapsible containers, and no sidebar state management (hidden/visible/fullscreen). The `shift+tab` binding for sidebar cycling is also absent (confirmed by existing UAT issue #4044 area). **Code location:** - `src/cleveragents/tui/app.py` — `compose()` method (lines 109-121) - `src/cleveragents/tui/widgets/` — no sidebar-related widgets exist **Steps to reproduce:** 1. Run `agents tui` 2. Press `shift+tab` to cycle sidebar state 3. Observe: no sidebar appears; the key binding has no effect **Severity:** High — the sidebar is a core TUI feature described throughout the spec as essential for plan monitoring. Without it, users cannot monitor active plans or projects from the TUI. ## Subtasks - [ ] Implement `SidebarPanel` widget with hidden/visible/fullscreen state machine - [ ] Implement `PlansPanel` widget showing active plans with phase progress, profile, actor, cost - [ ] Implement `ProjectsPanel` widget showing linked projects - [ ] Wire `shift+tab` binding to cycle sidebar states - [ ] Wire `ctrl+b` to focus sidebar when visible - [ ] Wire `tab`/`shift+tab` within sidebar to navigate between Plans and Projects panels - [ ] Update `compose()` to include sidebar in layout - [ ] Add unit tests (Behave scenarios) for sidebar state transitions - [ ] Add integration tests (Robot Framework) for sidebar interaction ## Definition of Done - [ ] `shift+tab` cycles sidebar through hidden → visible → fullscreen states - [ ] Sidebar visible state shows Plans panel and Projects panel in collapsible containers - [ ] Plans panel displays active plans with phase progress indicators - [ ] Projects panel displays linked projects - [ ] `ctrl+b` focuses the sidebar when visible - [ ] All existing TUI tests continue to pass - [ ] New Behave scenarios cover sidebar state transitions - [ ] Pyright type checking passes with no suppressions - [ ] All nox stages pass - [ ] Coverage >= 97% > **Backlog note:** This issue was discovered during autonomous operation > on milestone v3.7.0. It does not block milestone completion and has been > placed in the backlog for human review and future milestone assignment. --- **Automated by CleverAgents Bot** Supervisor: UAT Testing | Agent: ca-new-issue-creator
HAL9000 added this to the v3.5.0 milestone 2026-04-09 03:11:29 +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
Reference
cleveragents/cleveragents-core#4067
No description provided.