v0.17.2 — structured event detail + flow zoom/fit
Highlights
Timeline — structured event detail
The expanded payload row no longer dumps raw `JSON.stringify`. Every known shape renders cleanly:
- Key/value grid with small-caps labels and typed values.
- Agent chips for `agent` / `dispatched_agent` / `dispatched_agents` with per-agent color.
- Phosphor numerals for `duration_ms`, `bytes`, `_count`, `_total`. Durations formatted (ms / s / m).
- Severity pills (critical/high crimson, medium amber, low/info accent).
- Percent bars for `percent` on progress events.
- Code chips for paths, checksums, skill names, commands, node ids.
- Nested sub-grids for arrays of objects.
- Event-type badge with tone driven by the event (signal for starts, phosphor for completions, crimson for failures, amber for skips/aborted).
- `raw JSON` toggle kept as a debug escape hatch.
Flow view — zoom & fit, no horizontal scroll
- Dropped the horizontal scrollbar. The chain transform-scales via a CSS variable and wraps gracefully when content exceeds the viewport.
- New zoom toolbar in the flow header: −, FIT (default, auto-fit via ResizeObserver), numeric %, 1:1 (reset to 100%), +.
- Scale math keeps the chain's layout width = container ÷ scale so flex wrap still flows correctly at every zoom level.
Commit: 768476c