UAT: agents plan status rich output missing spec-required detail sections — Attempt, Timing, Execution Detail, Cost, and Result panels absent #3511

Open
opened 2026-04-05 18:44:50 +00:00 by freemo · 0 comments
Owner

Metadata

  • Branch: fix/plan-status-rich-output-panels
  • Commit Message: fix(cli): add spec-required detail panels to agents plan status rich output
  • Milestone: None (backlog)
  • Parent Epic: #397

Background

Code-level analysis of src/cleveragents/cli/commands/plan.py against docs/specification.md §"agents plan status" reveals that the agents plan status <PLAN_ID> command's rich terminal output is missing multiple structured panels required by the specification.

The implementation renders a single panel with basic plan info via _print_lifecycle_plan() (lines 1192–1389 of plan.py). The spec requires multiple structured panels with detailed execution tracking information.

Note: This is separate from #3435 which covers the JSON output format for agents plan execute. This issue is specifically about the rich (terminal) output format for agents plan status.

Steps to Reproduce

  1. Create a plan: agents plan use <action> <project>
  2. Execute the plan: agents plan execute <PLAN_ID>
  3. Check status: agents plan status <PLAN_ID>
  4. Observe: Single basic panel shown instead of multiple structured panels

Expected Behaviour (from spec §"agents plan status")

The spec requires agents plan status to display multiple structured panels:

  1. Plan header panel: Plan ID, Phase, State, Action, Project, Automation profile, Attempt number
  2. Progress panel: Progress through each phase (Strategize, Execute, Apply) with timing per phase
  3. Timing panel: Started, Elapsed (computed), ETA (estimated), Finished, Total Duration
  4. Execution Detail panel: Sandbox reference, Tool Calls count, Files Modified count, Child Plans count, Checkpoints count
  5. Cost panel: Tokens Used, Cost So Far, Estimated cost
  6. Error Detail panel (when errored): Error message, Tool name, Step number, Checkpoint ID, Recoverable flag
  7. Result panel (when complete/applied): Decisions Made count, Child Plans count, Artifacts count, Validations count, Total Cost

Actual Behaviour (from implementation)

_print_lifecycle_plan() renders a single panel containing only:

  • ID, Name, Action, Phase, Processing State, Projects, Description
  • Strategy Actor, Execution Actor
  • Definition of Done (if set)
  • Execution Environment (if set)
  • Estimation results (if set)
  • Arguments, Automation Profile, Invariants
  • Resume metadata (last_completed_step, last_checkpoint_id)
  • Multi-Project Scopes, Terminal flag
  • Timestamps (Created, Updated, phase start/end times)
  • Error message (if errored)

Missing from Implementation

  • Attempt number (not tracked or displayed)
  • Elapsed time (computed from timestamps, not shown)
  • ETA (estimated time of completion, not shown)
  • Sandbox reference (not shown in status)
  • Tool Calls count (not tracked or displayed)
  • Files Modified count (not tracked or displayed)
  • Child Plans count in status (subplan_statuses length not shown)
  • Checkpoints count (not tracked or displayed)
  • Tokens Used (not shown separately from estimation)
  • Cost So Far (actual cost incurred, not shown)
  • Recoverable flag in error detail (not shown)
  • Result panel with Decisions Made, Artifacts, Validations, Total Cost

Code Locations

  • src/cleveragents/cli/commands/plan.py, function _print_lifecycle_plan() (lines 1192–1389)
  • src/cleveragents/cli/commands/plan.py, function plan_status() (lines 2093–2179)

Subtasks

  • Audit docs/specification.md §"agents plan status" to capture the full canonical panel layout and all required fields
  • Extend the plan lifecycle data model / API response to expose missing fields: attempt number, elapsed time, ETA, sandbox reference, tool calls count, files modified count, checkpoints count, tokens used, cost so far, recoverable flag, and result-panel fields (decisions made, artifacts, validations, total cost)
  • Refactor _print_lifecycle_plan() to render the spec-required multi-panel layout: Plan header, Progress, Timing, Execution Detail, Cost, Error Detail (conditional), Result (conditional)
  • Add computed fields (elapsed, ETA) derived from existing timestamps where the API does not supply them directly
  • Write Behave unit tests (BDD) covering each panel's rendering logic, including conditional panels (Error Detail, Result)
  • Write Robot Framework integration tests verifying agents plan status rich output against the spec panels end-to-end
  • Update performance benchmarks in benchmarks/ if rendering introduces measurable overhead
  • Ensure nox passes (lint, typecheck, unit_tests, integration_tests, coverage_report ≥ 97%)

Definition of Done

  • All subtasks above are completed and checked off
  • _print_lifecycle_plan() renders all seven spec-required panels (Plan header, Progress, Timing, Execution Detail, Cost, Error Detail when errored, Result when complete/applied)
  • All missing fields (attempt number, elapsed, ETA, sandbox ref, tool calls, files modified, checkpoints, tokens used, cost so far, recoverable flag, result-panel fields) are displayed
  • A Git commit is created with the exact first line: fix(cli): add spec-required detail panels to agents plan status rich output
  • The commit is pushed to branch fix/plan-status-rich-output-panels
  • A pull request is submitted, reviewed (≥ 2 approvals), and merged
  • All nox stages pass
  • Coverage >= 97%

Backlog note: This issue was discovered during autonomous operation
on milestone v3.5.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-uat-tester

## Metadata - **Branch**: `fix/plan-status-rich-output-panels` - **Commit Message**: `fix(cli): add spec-required detail panels to agents plan status rich output` - **Milestone**: None (backlog) - **Parent Epic**: #397 ## Background Code-level analysis of `src/cleveragents/cli/commands/plan.py` against `docs/specification.md` §"agents plan status" reveals that the `agents plan status <PLAN_ID>` command's rich terminal output is missing multiple structured panels required by the specification. The implementation renders a single panel with basic plan info via `_print_lifecycle_plan()` (lines 1192–1389 of `plan.py`). The spec requires multiple structured panels with detailed execution tracking information. **Note**: This is separate from #3435 which covers the JSON output format for `agents plan execute`. This issue is specifically about the rich (terminal) output format for `agents plan status`. ## Steps to Reproduce 1. Create a plan: `agents plan use <action> <project>` 2. Execute the plan: `agents plan execute <PLAN_ID>` 3. Check status: `agents plan status <PLAN_ID>` 4. Observe: Single basic panel shown instead of multiple structured panels ## Expected Behaviour (from spec §"agents plan status") The spec requires `agents plan status` to display multiple structured panels: 1. **Plan header panel**: Plan ID, Phase, State, Action, Project, Automation profile, **Attempt number** 2. **Progress panel**: Progress through each phase (Strategize, Execute, Apply) with timing per phase 3. **Timing panel**: Started, **Elapsed** (computed), **ETA** (estimated), Finished, Total Duration 4. **Execution Detail panel**: Sandbox reference, Tool Calls count, Files Modified count, Child Plans count, Checkpoints count 5. **Cost panel**: Tokens Used, Cost So Far, Estimated cost 6. **Error Detail panel** (when errored): Error message, Tool name, Step number, Checkpoint ID, **Recoverable** flag 7. **Result panel** (when complete/applied): Decisions Made count, Child Plans count, Artifacts count, Validations count, Total Cost ## Actual Behaviour (from implementation) `_print_lifecycle_plan()` renders a **single panel** containing only: - ID, Name, Action, Phase, Processing State, Projects, Description - Strategy Actor, Execution Actor - Definition of Done (if set) - Execution Environment (if set) - Estimation results (if set) - Arguments, Automation Profile, Invariants - Resume metadata (last_completed_step, last_checkpoint_id) - Multi-Project Scopes, Terminal flag - Timestamps (Created, Updated, phase start/end times) - Error message (if errored) ## Missing from Implementation - Attempt number (not tracked or displayed) - Elapsed time (computed from timestamps, not shown) - ETA (estimated time of completion, not shown) - Sandbox reference (not shown in status) - Tool Calls count (not tracked or displayed) - Files Modified count (not tracked or displayed) - Child Plans count in status (subplan_statuses length not shown) - Checkpoints count (not tracked or displayed) - Tokens Used (not shown separately from estimation) - Cost So Far (actual cost incurred, not shown) - Recoverable flag in error detail (not shown) - Result panel with Decisions Made, Artifacts, Validations, Total Cost ## Code Locations - `src/cleveragents/cli/commands/plan.py`, function `_print_lifecycle_plan()` (lines 1192–1389) - `src/cleveragents/cli/commands/plan.py`, function `plan_status()` (lines 2093–2179) ## Subtasks - [ ] Audit `docs/specification.md` §"agents plan status" to capture the full canonical panel layout and all required fields - [ ] Extend the plan lifecycle data model / API response to expose missing fields: attempt number, elapsed time, ETA, sandbox reference, tool calls count, files modified count, checkpoints count, tokens used, cost so far, recoverable flag, and result-panel fields (decisions made, artifacts, validations, total cost) - [ ] Refactor `_print_lifecycle_plan()` to render the spec-required multi-panel layout: Plan header, Progress, Timing, Execution Detail, Cost, Error Detail (conditional), Result (conditional) - [ ] Add computed fields (elapsed, ETA) derived from existing timestamps where the API does not supply them directly - [ ] Write Behave unit tests (BDD) covering each panel's rendering logic, including conditional panels (Error Detail, Result) - [ ] Write Robot Framework integration tests verifying `agents plan status` rich output against the spec panels end-to-end - [ ] Update performance benchmarks in `benchmarks/` if rendering introduces measurable overhead - [ ] Ensure `nox` passes (lint, typecheck, unit_tests, integration_tests, coverage_report ≥ 97%) ## Definition of Done - [ ] All subtasks above are completed and checked off - [ ] `_print_lifecycle_plan()` renders all seven spec-required panels (Plan header, Progress, Timing, Execution Detail, Cost, Error Detail when errored, Result when complete/applied) - [ ] All missing fields (attempt number, elapsed, ETA, sandbox ref, tool calls, files modified, checkpoints, tokens used, cost so far, recoverable flag, result-panel fields) are displayed - [ ] A Git commit is created with the exact first line: `fix(cli): add spec-required detail panels to agents plan status rich output` - [ ] The commit is pushed to branch `fix/plan-status-rich-output-panels` - [ ] A pull request is submitted, reviewed (≥ 2 approvals), and merged - [ ] All nox stages pass - [ ] Coverage >= 97% > **Backlog note:** This issue was discovered during autonomous operation > on milestone v3.5.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-uat-tester
freemo added this to the v3.7.0 milestone 2026-04-05 20:36:05 +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
#397 Epic: Server & Autonomy Infrastructure
cleveragents/cleveragents-core
Reference
cleveragents/cleveragents-core#3511
No description provided.