UAT: agents plan list Filters panel shows inactive filters (spec says only active filter values) #2940

Open
opened 2026-04-05 02:52:59 +00:00 by freemo · 3 comments
Owner

Metadata

  • Branch: fix/plan-list-filters-panel-active-only
  • Commit Message: fix(cli): agents plan list Filters panel must show only active filter values
  • Milestone: v3.5.0
  • Parent Epic: #397

Background and Context

The spec (docs/reference/plan_cli.md, Rich Output section for agents plan list) states:

Filters panel — shown only when at least one filter (--phase, --state, --project, --action) is active. Lists the active filter values.

The implementation in src/cleveragents/cli/commands/plan.py (lines 2503–2534) renders the Filters panel whenever any single filter is active, but populates it with all filter slots — including inactive ones using a "(any)" placeholder. Additionally, the implementation includes --namespace as a filter slot in the panel, which is not listed in the spec's filter set for agents plan list.

Current Behavior

When only --phase strategize is provided, the Filters panel shows:

Namespace: (any)
Phase:     strategize
State:     (any)
Project:   (any)
Action:    (any)

Code location: src/cleveragents/cli/commands/plan.py, lines 2503–2534

Expected Behavior

Per the spec, the Filters panel must list only the active filter values. For the same invocation (--phase strategize), the panel should show:

Phase: strategize

Inactive filters must be omitted entirely. The --namespace filter slot must also be removed from the panel (it is not in the spec's filter list for agents plan list).

Spec location: docs/reference/plan_cli.md — Rich Output section for agents plan list

Subtasks

  • Read docs/reference/plan_cli.md Rich Output section for agents plan list to confirm exact Filters panel specification
  • Locate the Filters panel rendering code in src/cleveragents/cli/commands/plan.py (lines 2503–2534)
  • Refactor the Filters panel to only include rows for filters that are actively set (non-None / non-default)
  • Remove the --namespace slot from the Filters panel (not in spec's filter list)
  • Write/update Behave BDD scenarios in features/ covering:
    • Filters panel is absent when no filters are active
    • Filters panel shows only active filter values (one filter active)
    • Filters panel shows only active filter values (multiple filters active)
  • Ensure all nox stages pass (nox -e lint, nox -e typecheck, nox -e unit_tests, nox -e integration_tests)
  • Verify coverage remains ≥ 97% (nox -e coverage_report)

Definition of Done

  • Filters panel in agents plan list rich output shows only active filter values
  • --namespace is not shown as a filter row in the Filters panel
  • Filters panel is absent when no filters are active
  • Behave BDD scenarios added/updated and passing
  • All nox stages pass
  • Coverage >= 97%
  • PR merged and this issue closed

Automated by CleverAgents Bot
Supervisor: UAT Testing | Agent: ca-uat-tester

## Metadata - **Branch**: `fix/plan-list-filters-panel-active-only` - **Commit Message**: `fix(cli): agents plan list Filters panel must show only active filter values` - **Milestone**: v3.5.0 - **Parent Epic**: #397 ## Background and Context The spec (`docs/reference/plan_cli.md`, Rich Output section for `agents plan list`) states: > **Filters** panel — shown only when at least one filter (`--phase`, `--state`, `--project`, `--action`) is active. Lists the active filter values. The implementation in `src/cleveragents/cli/commands/plan.py` (lines 2503–2534) renders the Filters panel whenever any single filter is active, but populates it with **all** filter slots — including inactive ones using a `"(any)"` placeholder. Additionally, the implementation includes `--namespace` as a filter slot in the panel, which is not listed in the spec's filter set for `agents plan list`. ## Current Behavior When only `--phase strategize` is provided, the Filters panel shows: ``` Namespace: (any) Phase: strategize State: (any) Project: (any) Action: (any) ``` **Code location**: `src/cleveragents/cli/commands/plan.py`, lines 2503–2534 ## Expected Behavior Per the spec, the Filters panel must list **only the active filter values**. For the same invocation (`--phase strategize`), the panel should show: ``` Phase: strategize ``` Inactive filters must be omitted entirely. The `--namespace` filter slot must also be removed from the panel (it is not in the spec's filter list for `agents plan list`). **Spec location**: `docs/reference/plan_cli.md` — Rich Output section for `agents plan list` ## Subtasks - [ ] Read `docs/reference/plan_cli.md` Rich Output section for `agents plan list` to confirm exact Filters panel specification - [ ] Locate the Filters panel rendering code in `src/cleveragents/cli/commands/plan.py` (lines 2503–2534) - [ ] Refactor the Filters panel to only include rows for filters that are actively set (non-`None` / non-default) - [ ] Remove the `--namespace` slot from the Filters panel (not in spec's filter list) - [ ] Write/update Behave BDD scenarios in `features/` covering: - Filters panel is absent when no filters are active - Filters panel shows only active filter values (one filter active) - Filters panel shows only active filter values (multiple filters active) - [ ] Ensure all nox stages pass (`nox -e lint`, `nox -e typecheck`, `nox -e unit_tests`, `nox -e integration_tests`) - [ ] Verify coverage remains ≥ 97% (`nox -e coverage_report`) ## Definition of Done - [ ] Filters panel in `agents plan list` rich output shows only active filter values - [ ] `--namespace` is not shown as a filter row in the Filters panel - [ ] Filters panel is absent when no filters are active - [ ] Behave BDD scenarios added/updated and passing - [ ] All nox stages pass - [ ] Coverage >= 97% - [ ] PR merged and this issue closed --- **Automated by CleverAgents Bot** Supervisor: UAT Testing | Agent: ca-uat-tester
freemo added this to the v3.5.0 milestone 2026-04-05 02:53:10 +00:00
Author
Owner

Issue triaged by project owner:

  • State: Verified
  • Priority: Confirmed
  • MoSCoW: Should Have

Valid finding verified during batch triage.


Automated by CleverAgents Bot
Supervisor: Project Owner | Agent: ca-project-owner

Issue triaged by project owner: - **State**: Verified - **Priority**: Confirmed - **MoSCoW**: Should Have Valid finding verified during batch triage. --- **Automated by CleverAgents Bot** Supervisor: Project Owner | Agent: ca-project-owner
Author
Owner

Milestone Triage Decision: Moved to Backlog

This CLI output formatting issue has been moved out of v3.5.0 during aggressive milestone triage. While important for spec compliance, it does not block core autonomy hardening functionality.

Reasoning:

  • v3.5.0 focus: Essential autonomy hardening (guard enforcement, A2A facade, plan lifecycle)
  • This issue: CLI output formatting (plan list inactive filters) - spec compliance
  • Impact: UX consistency, not functional capability

Will be addressed in a future milestone focused on CLI polish and spec compliance.

**Milestone Triage Decision: Moved to Backlog** This CLI output formatting issue has been moved out of v3.5.0 during aggressive milestone triage. While important for spec compliance, it does not block core autonomy hardening functionality. **Reasoning:** - v3.5.0 focus: Essential autonomy hardening (guard enforcement, A2A facade, plan lifecycle) - This issue: CLI output formatting (`plan list` inactive filters) - spec compliance - Impact: UX consistency, not functional capability Will be addressed in a future milestone focused on CLI polish and spec compliance.
Author
Owner

This issue has been moved to the backlog as part of an aggressive grooming of the v3.5.0 milestone. It has been deemed non-critical for the minimal viability of the milestone and will be addressed in a future release.

This issue has been moved to the backlog as part of an aggressive grooming of the v3.5.0 milestone. It has been deemed non-critical for the minimal viability of the milestone and will be addressed in a future release.
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
#397 Epic: Server & Autonomy Infrastructure
cleveragents/cleveragents-core
Reference
cleveragents/cleveragents-core#2940
No description provided.