UAT: agents plan list JSON/YAML output missing spec-required command envelope and uses wrong field names #6278

Open
opened 2026-04-09 19:47:41 +00:00 by HAL9000 · 0 comments
Owner

Spec Reference

Spec §agents plan list (lines 12180–12244) defines the JSON output envelope:

{
  "command": "plan list",
  "status": "ok",
  "exit_code": 0,
  "data": {
    "plans": [
      {
        "id": "01HXM7A9",
        "phase": "execute",
        "state": "processing",
        "action": "local/code-coverage",
        "project": "local/api-service",
        "elapsed": "00:01:12"
      }
    ],
    "filters": {"phase": "execute", "state": null, "project": null, "action": null},
    "summary": {"total": 1, "processing": 1, "completed": 0, "errored": 0}
  },
  "timing": {"started": "...", "duration_ms": 95},
  "messages": ["1 plan listed"]
}

Expected Behavior

agents plan list --format json should return the full spec-required JSON envelope with:

  • Top-level command, status, exit_code, data, timing, messages keys
  • data.plans[] with id (truncated), phase, state, action, project, elapsed
  • data.filters showing active filter values
  • data.summary with total/processing/completed/errored counts

Actual Behavior

The implementation returns a flat list of _plan_spec_dict(p) objects (see src/cleveragents/cli/commands/plan.py line 3004):

[
  {
    "plan_id": "...",
    "namespaced_name": "...",
    "phase": "strategize",
    "processing_state": "queued",
    "action_name": "...",
    "project_links": [...],
    ...
  }
]

Missing: command envelope, filters, summary, elapsed, timing, messages.
Wrong field names: action_name instead of action, project_links instead of project, plan_id (full ULID) instead of id (truncated).

Code Location

  • src/cleveragents/cli/commands/plan.py lines 3002–3006 (lifecycle_list_plans, non-rich output)

Steps to Reproduce

agents plan list --format json

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

## Spec Reference Spec §agents plan list (lines 12180–12244) defines the JSON output envelope: ```json { "command": "plan list", "status": "ok", "exit_code": 0, "data": { "plans": [ { "id": "01HXM7A9", "phase": "execute", "state": "processing", "action": "local/code-coverage", "project": "local/api-service", "elapsed": "00:01:12" } ], "filters": {"phase": "execute", "state": null, "project": null, "action": null}, "summary": {"total": 1, "processing": 1, "completed": 0, "errored": 0} }, "timing": {"started": "...", "duration_ms": 95}, "messages": ["1 plan listed"] } ``` ## Expected Behavior `agents plan list --format json` should return the full spec-required JSON envelope with: - Top-level `command`, `status`, `exit_code`, `data`, `timing`, `messages` keys - `data.plans[]` with `id` (truncated), `phase`, `state`, `action`, `project`, `elapsed` - `data.filters` showing active filter values - `data.summary` with total/processing/completed/errored counts ## Actual Behavior The implementation returns a flat list of `_plan_spec_dict(p)` objects (see `src/cleveragents/cli/commands/plan.py` line 3004): ```json [ { "plan_id": "...", "namespaced_name": "...", "phase": "strategize", "processing_state": "queued", "action_name": "...", "project_links": [...], ... } ] ``` Missing: command envelope, `filters`, `summary`, `elapsed`, `timing`, `messages`. Wrong field names: `action_name` instead of `action`, `project_links` instead of `project`, `plan_id` (full ULID) instead of `id` (truncated). ## Code Location - `src/cleveragents/cli/commands/plan.py` lines 3002–3006 (lifecycle_list_plans, non-rich output) ## Steps to Reproduce ```bash agents plan list --format json ``` --- **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.

Dependencies

No dependencies set.

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