UAT: plan correct rich output missing spec-required panels (Correction, Affected Subtree, Sandbox Rollback, Recompute) #5312

Open
opened 2026-04-09 05:49:14 +00:00 by HAL9000 · 1 comment
Owner

Bug Report

Feature Area: plan-correction-modes
Severity: Medium
Priority: Backlog
Found by: UAT Testing (uat-pool-1, worker: plan-correction-modes)


What was tested

The rich terminal output of agents plan correct --mode=revert and agents plan correct --mode=append.

Expected behavior (from spec §agents plan correct)

The spec defines rich output with multiple structured panels for --mode=revert:

╭─ Correction ────────────────────────────────────────╮
│ Mode: revert                                        │
│ Impact: 3 decisions, 2 child plans, 5 artifacts     │
│ New Decision: 01HXM9B7Z3Q1Q8K2E9H7K3W2M8            │
│ Corrects: 01HXM9A1C2Q7W3R5G8Z0P4Q1X9                │
│ Attempt: 2                                          │
╰─────────────────────────────────────────────────────╯

╭─ Affected Subtree ──────────────╮
│ Decisions Invalidated: 3        │
│ Child Plans Rolled Back: 2      │
│ Artifacts Archived: 5           │
│ Unaffected Decisions: 2         │
╰─────────────────────────────────╯

╭─ Sandbox Rollback ─────────────╮
│ Checkpoint: cp_01HXM8C2        │
│ Files Reverted: 5              │
│ Status: restored               │
╰────────────────────────────────╯

╭─ Recompute ──────────╮
│ Queued: 2 child plans │
│ ETA: 4m              │
╰──────────────────────╯

╭─ History ───────────────────────────────────────────╮
│ - Original decision superseded                      │
│ - Prior artifacts archived for comparison           │
│ - agents plan diff --correction 01HXM9B7Z3Q1Q8K2..  │
╰─────────────────────────────────────────────────────╯

✓ OK Correction applied

For --mode=append, the spec requires:

╭─ Correction ─────────────────────────────────────╮
│ Mode: append                                     │
│ Impact: adds to existing subtree, no rollback    │
│ New Decision: 01HXM9C3Z5T2Q8K2E9H7K3W2M8         │
│ Appended After: 01HXM9A1C2Q7W3R5G8Z0P4Q1X9       │
│ Attempt: 2                                       │
╰──────────────────────────────────────────────────╯

╭─ Append Detail ─────────────────────────────────────────────────╮
│ Original decision preserved: yes                                │
│ Existing artifacts kept: yes                                    │
│ Additional work: appended as new child plan                     │
╰─────────────────────────────────────────────────────────────────╯

╭─ Queued ──────────╮
│ New child: 1      │
│ ETA: 2m           │
╰───────────────────╯

✓ OK Append correction queued

Actual behavior (from code analysis)

In src/cleveragents/cli/commands/plan.py, lines 3334–3341, the rich output is:

console.print(
    f"[green]✓[/green] Correction applied: {result.correction_id}"
)
if result.reverted_decisions:
    console.print(f"  Reverted: {', '.join(result.reverted_decisions)}")
if result.new_decisions:
    console.print(f"  New decisions: {', '.join(result.new_decisions)}")

This produces only a single line with the correction ID, and optionally a list of reverted/new decision IDs. None of the spec-required panels are rendered.

Code location

  • src/cleveragents/cli/commands/plan.py, lines 3334–3341 (rich output block in correct_decision())

Impact

The rich terminal UX for plan correction is significantly degraded compared to the spec. Users cannot see the affected subtree size, sandbox rollback status, or recompute queue from the rich output. This is a UX regression for the v3.2.0 correction feature.


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

## Bug Report **Feature Area:** plan-correction-modes **Severity:** Medium **Priority:** Backlog **Found by:** UAT Testing (uat-pool-1, worker: plan-correction-modes) --- ### What was tested The rich terminal output of `agents plan correct --mode=revert` and `agents plan correct --mode=append`. ### Expected behavior (from spec §agents plan correct) The spec defines rich output with multiple structured panels for `--mode=revert`: ``` ╭─ Correction ────────────────────────────────────────╮ │ Mode: revert │ │ Impact: 3 decisions, 2 child plans, 5 artifacts │ │ New Decision: 01HXM9B7Z3Q1Q8K2E9H7K3W2M8 │ │ Corrects: 01HXM9A1C2Q7W3R5G8Z0P4Q1X9 │ │ Attempt: 2 │ ╰─────────────────────────────────────────────────────╯ ╭─ Affected Subtree ──────────────╮ │ Decisions Invalidated: 3 │ │ Child Plans Rolled Back: 2 │ │ Artifacts Archived: 5 │ │ Unaffected Decisions: 2 │ ╰─────────────────────────────────╯ ╭─ Sandbox Rollback ─────────────╮ │ Checkpoint: cp_01HXM8C2 │ │ Files Reverted: 5 │ │ Status: restored │ ╰────────────────────────────────╯ ╭─ Recompute ──────────╮ │ Queued: 2 child plans │ │ ETA: 4m │ ╰──────────────────────╯ ╭─ History ───────────────────────────────────────────╮ │ - Original decision superseded │ │ - Prior artifacts archived for comparison │ │ - agents plan diff --correction 01HXM9B7Z3Q1Q8K2.. │ ╰─────────────────────────────────────────────────────╯ ✓ OK Correction applied ``` For `--mode=append`, the spec requires: ``` ╭─ Correction ─────────────────────────────────────╮ │ Mode: append │ │ Impact: adds to existing subtree, no rollback │ │ New Decision: 01HXM9C3Z5T2Q8K2E9H7K3W2M8 │ │ Appended After: 01HXM9A1C2Q7W3R5G8Z0P4Q1X9 │ │ Attempt: 2 │ ╰──────────────────────────────────────────────────╯ ╭─ Append Detail ─────────────────────────────────────────────────╮ │ Original decision preserved: yes │ │ Existing artifacts kept: yes │ │ Additional work: appended as new child plan │ ╰─────────────────────────────────────────────────────────────────╯ ╭─ Queued ──────────╮ │ New child: 1 │ │ ETA: 2m │ ╰───────────────────╯ ✓ OK Append correction queued ``` ### Actual behavior (from code analysis) In `src/cleveragents/cli/commands/plan.py`, lines 3334–3341, the rich output is: ```python console.print( f"[green]✓[/green] Correction applied: {result.correction_id}" ) if result.reverted_decisions: console.print(f" Reverted: {', '.join(result.reverted_decisions)}") if result.new_decisions: console.print(f" New decisions: {', '.join(result.new_decisions)}") ``` This produces only a single line with the correction ID, and optionally a list of reverted/new decision IDs. None of the spec-required panels are rendered. ### Code location - `src/cleveragents/cli/commands/plan.py`, lines 3334–3341 (rich output block in `correct_decision()`) ### Impact The rich terminal UX for plan correction is significantly degraded compared to the spec. Users cannot see the affected subtree size, sandbox rollback status, or recompute queue from the rich output. This is a UX regression for the v3.2.0 correction feature. --- **Automated by CleverAgents Bot** Supervisor: UAT Testing | Agent: uat-tester
HAL9000 added this to the v3.3.0 milestone 2026-04-09 05:52:52 +00:00
Author
Owner

Label compliance fix applied:

  • Assigned milestone: v3.3.0 (Correction Engine milestone)
  • Reason: Bug issue related to plan correct functionality was missing a milestone. Assigned to v3.3.0 based on correction engine scope.

Automated by CleverAgents Bot
Supervisor: Backlog Grooming | Agent: backlog-groomer

Label compliance fix applied: - Assigned milestone: `v3.3.0` (Correction Engine milestone) - Reason: Bug issue related to `plan correct` functionality was missing a milestone. Assigned to v3.3.0 based on correction engine scope. --- **Automated by CleverAgents Bot** Supervisor: Backlog Grooming | Agent: backlog-groomer
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.

Dependencies

No dependencies set.

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