---
status: resolved
parent: "[[094-pi-subagent-result-delivery-spec-task|Pi subagent result delivery specification]]"
claimed-by: 019fc055-36a3-7d64-9d17-5e5ca33a7d11
claimed-at: 2026-08-01T22:37:30-04:00
resolved-at: 2026-08-01T22:41:29-04:00
blocked-by:
  - "[[097-pi-subagent-clearable-terminal-work-implementation|Pi subagent clearable terminal work]]"
tags:
  - ticket/implementation
---

# Pi subagent compact and expanded monitor

## Question

Implement the approved compact and expanded Pi-native subagent monitor behavior.

## What to build

The existing subagent widget should become the approved monitor.
Compact mode should show aggregate counts by status rather than one row per child.
Expanded mode should show one row per visible child with label, lifecycle state, elapsed time, and last activity or result marker.
The monitor should make running, queued, settling, completed, failed, timed-out, and cancelled work distinguishable without requiring a blocking wait or JSON notification dump.

## Acceptance criteria

- [x] Compact mode shows aggregate counts by meaningful status groups.
- [x] Expanded mode shows one row per child with label, state, elapsed time, and last activity or result marker.
- [x] Rows truncate cleanly to terminal width.
- [x] Failed, timed-out, cancelled, completed-with-result, running, queued, and settling children are visually distinguishable.
- [x] The existing UI toggle still works.
- [x] Tests cover compact and expanded rendering.

## Implementation Notes

Keep compact mode ambient.
Do not make it a transcript or result preview surface.

Implemented on branch `subagent-labels` in commit `aafc68e feat(pi): render subagent monitor views`.
Compact rendering now aggregates visible children into queued, running, settling, completed, failed, timed out, cancelled, and orphaned groups.
Expanded rendering now emits one truncated row per visible child with an icon, state, elapsed time, label, and activity/result/error marker.
Verification passed with `nix shell nixpkgs#nodejs_24 nixpkgs#tsx -c tsx --test modules/agents/pi/extensions/subagents/ui.test.ts modules/agents/pi/extensions/subagents/supervisor.test.ts modules/agents/pi/extensions/subagents/runner.test.ts modules/agents/pi/extensions/subagents/config.test.ts`.
Review found no blocking findings.
The independent test-writer subagent was read-only, so the implementation agent authored the final tests after recording the blocked TDD attempt.
