UAT: agents plan cancel rich output shows single line instead of spec-required 4-panel layout #5525

Open
opened 2026-04-09 07:13:04 +00:00 by HAL9000 · 0 comments
Owner

Summary

The agents plan cancel command's rich output shows a single success line instead of the spec-required 4-panel layout (Plan Cancelled, Sandbox, Child Plans, Recovery).

Expected Behavior (from spec)

$ agents plan cancel 01HXM8C2ZK4Q7C2B3F2R4VYV6J --reason "blocked on credentials"

╭─ Plan Cancelled ─────────────────╮
│ Plan: 01HXM8C2ZK4Q7C2B3F2R4VYV6J │
│ Phase: execute                   │
│ Reason: blocked on credentials   │
│ State: cancelled                 │
│ Cancelled At: 13:02:15           │
╰──────────────────────────────────╯

╭─ Sandbox ────────────────╮
│ Status: preserved        │
│ Files Modified: 3        │
│ Checkpoints: 2           │
╰──────────────────────────╯

╭─ Child Plans ─────────────╮
│ Completed: 1              │
│ Cancelled: 1              │
│ Artifacts Preserved: yes  │
╰───────────────────────────╯

╭─ Recovery ───────────────────────────────────────────╮
│ - Resolve credentials                                │
│ - Run agents plan execute 01HXM8C2ZK4Q7C2B3F2R4VYV6J │
╰──────────────────────────────────────────────────────╯

✓ OK Plan cancelled

Actual Behavior

# src/cleveragents/cli/commands/plan.py lines 2812-2815
else:
    console.print(f"[green]✓[/green] Plan cancelled: {plan.namespaced_name}")
    if reason:
        console.print(f"[dim]Reason: {reason}[/dim]")

This produces:

✓ Plan cancelled: local/code-coverage
Reason: blocked on credentials

Missing:

  1. No "Plan Cancelled" panel with Plan ID, Phase, State, Cancelled At
  2. No "Sandbox" panel with status, files modified, checkpoints
  3. No "Child Plans" panel with completed/cancelled counts
  4. No "Recovery" panel with next steps
  5. No ✓ OK Plan cancelled success line (uses ✓ Plan cancelled: <name> instead)

Code Location

  • File: src/cleveragents/cli/commands/plan.py
  • Function: cancel_plan() at line 2774
  • Lines: 2807-2815 (rich output section)

Spec Reference

  • docs/specification.md lines 14175–14319: agents plan cancel section with Rich/Plain/JSON/YAML output examples

Impact

  • Users don't see sandbox status, child plan counts, or recovery suggestions after cancellation
  • Rich output is significantly less informative than the spec requires
  • Users must run agents plan status separately to get the information that should be in the cancel output

Subtasks

  • Add "Plan Cancelled" panel with Plan ID, Phase, Reason, State, Cancelled At
  • Add "Sandbox" panel with status, files modified, checkpoints count
  • Add "Child Plans" panel with completed/cancelled counts and artifacts preserved flag
  • Add "Recovery" panel with next steps (resolve issue + re-execute command)
  • Change success line to ✓ OK Plan cancelled
  • Update JSON/YAML output to include sandbox, child_plans, recovery sections per spec
  • Add unit tests for the new output elements

Definition of Done

  • Rich output shows all 4 panels: Plan Cancelled, Sandbox, Child Plans, Recovery
  • Success line is ✓ OK Plan cancelled
  • JSON output includes data.sandbox, data.child_plans, data.recovery sections
  • Unit tests pass

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

## Summary The `agents plan cancel` command's rich output shows a single success line instead of the spec-required 4-panel layout (Plan Cancelled, Sandbox, Child Plans, Recovery). ## Expected Behavior (from spec) ``` $ agents plan cancel 01HXM8C2ZK4Q7C2B3F2R4VYV6J --reason "blocked on credentials" ╭─ Plan Cancelled ─────────────────╮ │ Plan: 01HXM8C2ZK4Q7C2B3F2R4VYV6J │ │ Phase: execute │ │ Reason: blocked on credentials │ │ State: cancelled │ │ Cancelled At: 13:02:15 │ ╰──────────────────────────────────╯ ╭─ Sandbox ────────────────╮ │ Status: preserved │ │ Files Modified: 3 │ │ Checkpoints: 2 │ ╰──────────────────────────╯ ╭─ Child Plans ─────────────╮ │ Completed: 1 │ │ Cancelled: 1 │ │ Artifacts Preserved: yes │ ╰───────────────────────────╯ ╭─ Recovery ───────────────────────────────────────────╮ │ - Resolve credentials │ │ - Run agents plan execute 01HXM8C2ZK4Q7C2B3F2R4VYV6J │ ╰──────────────────────────────────────────────────────╯ ✓ OK Plan cancelled ``` ## Actual Behavior ```python # src/cleveragents/cli/commands/plan.py lines 2812-2815 else: console.print(f"[green]✓[/green] Plan cancelled: {plan.namespaced_name}") if reason: console.print(f"[dim]Reason: {reason}[/dim]") ``` This produces: ``` ✓ Plan cancelled: local/code-coverage Reason: blocked on credentials ``` Missing: 1. No "Plan Cancelled" panel with Plan ID, Phase, State, Cancelled At 2. No "Sandbox" panel with status, files modified, checkpoints 3. No "Child Plans" panel with completed/cancelled counts 4. No "Recovery" panel with next steps 5. No `✓ OK Plan cancelled` success line (uses `✓ Plan cancelled: <name>` instead) ## Code Location - **File**: `src/cleveragents/cli/commands/plan.py` - **Function**: `cancel_plan()` at line 2774 - **Lines**: 2807-2815 (rich output section) ## Spec Reference - `docs/specification.md` lines 14175–14319: `agents plan cancel` section with Rich/Plain/JSON/YAML output examples ## Impact - Users don't see sandbox status, child plan counts, or recovery suggestions after cancellation - Rich output is significantly less informative than the spec requires - Users must run `agents plan status` separately to get the information that should be in the cancel output ## Subtasks - [ ] Add "Plan Cancelled" panel with Plan ID, Phase, Reason, State, Cancelled At - [ ] Add "Sandbox" panel with status, files modified, checkpoints count - [ ] Add "Child Plans" panel with completed/cancelled counts and artifacts preserved flag - [ ] Add "Recovery" panel with next steps (resolve issue + re-execute command) - [ ] Change success line to `✓ OK Plan cancelled` - [ ] Update JSON/YAML output to include sandbox, child_plans, recovery sections per spec - [ ] Add unit tests for the new output elements ## Definition of Done - Rich output shows all 4 panels: Plan Cancelled, Sandbox, Child Plans, Recovery - Success line is `✓ OK Plan cancelled` - JSON output includes `data.sandbox`, `data.child_plans`, `data.recovery` sections - Unit tests pass --- **Automated by CleverAgents Bot** Supervisor: UAT Testing | Agent: uat-tester
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.

Reference
cleveragents/cleveragents-core#5525
No description provided.