---
status: open
parent: "[[027-pi-subagents-implementation-spec-task]]"
blocked-by:
  - "[[046-pi-subagents-minimal-tracer-bullet-task]]"
tags:
  - ticket/task/afk
---

# Add durable status milestones and optional Pi-native status UI

## Question

Connect the public status model to durable milestone entries and an optional Pi-native status UI without making the UI required for status or result retrieval.

## What to build

Add the presentation layer around the existing status data model.
The extension should append durable lifecycle milestones, show a collapsed live summary by default, offer an expanded inspector, and keep the UI replaceable by another extension.
Disabling the bundled UI should not disable status records, status events, or tools.

## Acceptance criteria

- [ ] Spawn accepted, completed, failed, cancelled, and timed-out milestones are appended as durable entries.
- [ ] Milestone entries do not inject child transcripts into normal LLM context.
- [ ] The collapsed UI summary shows live counts.
- [ ] The expanded inspector shows child id, label, context, state, elapsed time, model, tools, last event, and result availability.
- [ ] Disabling `ui` hides bundled UI components but leaves list, status, result, and cancel tools working.

## Implementation Notes

Use the status data model as the source of truth.
Do not stream every child event into the parent transcript.
