# D2 — two adjacent delegated children

Captured: real app group collapsed → expanded → hover failed member → open failed child, before and after. Both children genuinely fail by SIGABRT after partial replies; the held parent is then stopped. No harness is used.

Environment: Playwright Chromium 148.0.7778.96, Linux x86_64; 1280×800 dark, DPR 1, font scaling 1, no device emulation.

What else changed:

- Collapsed group is pixel-identical at zero threshold: two subagents, two failed, 0s.
- Expanded members replace the generic result with the SIGABRT sentence; names, statuses, count and layout remain.
- The hovered member's longer result makes the existing tooltip wider and changes its anchored position; its single-line result uses the existing middle truncation.
- Opening the member shows the changed timeline error and wider centered thread error banner, which overlaps more of the existing context/prompt chip. No differences outside those regions were found.

PR [#26086](https://git.cafe/pingdotgg/t3code/pull/26086) ([GitHub mirror](https://github.com/pingdotgg/t3code/pull/26086)). Before [d1c4b52](https://git.cafe/pingdotgg/t3code/commit/d1c4b52b7c7c7e1b7637ec47e4c959ff0c2d8d99); after [652e9c1](https://git.cafe/pingdotgg/t3code/commit/652e9c18cee800df7e255916365967ba211097ae). Synthetic fixtures only; no tracked edits, component harnesses or live databases.

Clock: server and renderer wall time fixed at 2026-10-27 12:00:00 UTC after app boot; timers continue. DPR 1, font scaling 1 (root 16px), no device emulation, reduced motion. Full surfaces; no crops. Each still waited for network idle and fonts, then required two pixel-identical frames at least 500ms apart. Every selected capture and diff was opened for visual inspection; recordings were reviewed at one-second intervals and at their captured milestones.

Diff0 marks any changed channel (>0/255) in full magenta, including one-level changes. DiffT uses >16/255 per channel. Dim grayscale is the before frame. These are whole-frame differences without alignment, masking or region exclusions.

## Scripted interaction and timestamps

| Scripted step | Before timestamp | After timestamp |
|---|---:|---:|
| Settled group collapsed: two failed children | 0s | 0s |
| Expand group; individual failed results are visible | 1.893s | 1.856s |
| Hover first failed child | 4.088s | 4.078s |
| Open failed member; partial reply remains alongside failure | 7.22s | 7.289s |
| End | 8.721s | 8.79s |

| Before [d1c4b52](https://git.cafe/pingdotgg/t3code/commit/d1c4b52b7c7c7e1b7637ec47e4c959ff0c2d8d99) | After [652e9c1](https://git.cafe/pingdotgg/t3code/commit/652e9c18cee800df7e255916365967ba211097ae) |
|---|---|
| [D2-before.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e5559d9faeda32e3/D2-before.mp4) | [D2-after.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/3bcabc447dba9d34/D2-after.mp4) |

[steps.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c133969e12d2f75c/steps.json), [steps.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/083020b222978201/steps.json)

## Whole-surface milestone comparisons

| State / viewport / theme | Before<br>[d1c4b52](https://git.cafe/pingdotgg/t3code/commit/d1c4b52b7c7c7e1b7637ec47e4c959ff0c2d8d99) | After<br>[652e9c1](https://git.cafe/pingdotgg/t3code/commit/652e9c18cee800df7e255916365967ba211097ae) | Diff0<br>[d1c4b52](https://git.cafe/pingdotgg/t3code/commit/d1c4b52b7c7c7e1b7637ec47e4c959ff0c2d8d99) → [652e9c1](https://git.cafe/pingdotgg/t3code/commit/652e9c18cee800df7e255916365967ba211097ae) | DiffT = 16/255<br>[d1c4b52](https://git.cafe/pingdotgg/t3code/commit/d1c4b52b7c7c7e1b7637ec47e4c959ff0c2d8d99) → [652e9c1](https://git.cafe/pingdotgg/t3code/commit/652e9c18cee800df7e255916365967ba211097ae) |
|---|---|---|---|---|
| 00-collapsed / 1280×800 / dark | ![00-collapsed.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/64b8e75f81e190ff/00-collapsed.png) | ![00-collapsed.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/385a944121daeaf9/00-collapsed.png) | ![00-collapsed-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/59105d51ad4c7e48/00-collapsed-diff0.png) | ![00-collapsed-diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/0082cae69af363b3/00-collapsed-diff16.png) |
| 01-expanded / 1280×800 / dark | ![01-expanded.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1323b054ec31a93e/01-expanded.png) | ![01-expanded.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/3fe5e7a5f10f1dd7/01-expanded.png) | ![01-expanded-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d44b4ca518e7c113/01-expanded-diff0.png) | ![01-expanded-diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/6b7bbef5430cbb21/01-expanded-diff16.png) |
| 02-hover / 1280×800 / dark | ![02-hover.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f1645d82fe228127/02-hover.png) | ![02-hover.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c36daf63f3b2a369/02-hover.png) | ![02-hover-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d28b3792266764b6/02-hover-diff0.png) | ![02-hover-diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/a1d3680b077dedad/02-hover-diff16.png) |
| 03-child / 1280×800 / dark | ![03-child.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/364a6510fd6b6a89/03-child.png) | ![03-child.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e34f233960b4def7/03-child.png) | ![03-child-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b53b22ee6f4f0dc8/03-child-diff0.png) | ![03-child-diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/944eb2319a72db18/03-child-diff16.png) |

## Reproduction and runtime evidence

[reproduce-round2.md](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/004e9365be860eb4/reproduce-round2.md), [rpc.mjs](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/885b1dc16355bf1b/rpc.mjs), [browser.mjs](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/7b9e4173c3414e4a/browser.mjs), [seed.mjs](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b9c6a37e909b58bd/seed.mjs), [claude-exit-stub.mjs](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e45e57d6fc897e35/claude-exit-stub.mjs), [frozen-clock.mjs](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c88162503374a97a/frozen-clock.mjs), [start-web.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/047d3b31ce8dca8e/start-web.py)

[delegate.mjs](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e7af7e37129b8a16/delegate.mjs), [delegate-child.mjs](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c29eefc0c5c8e301/delegate-child.mjs), [stop-parent.mjs](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c85aaebc59e8b19b/stop-parent.mjs), [capture-d2.mjs](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c8c48cebd5001abb/capture-d2.mjs)

[runtime-transcript.mjs](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/60b24eb99fa0d11b/runtime-transcript.mjs), [validate-runtime.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c57a246f209e627a/validate-runtime.py), [before-runtime-transcript.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/ed084b59e180e469/before-runtime-transcript.json), [after-runtime-transcript.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f1dc121110e38bb8/after-runtime-transcript.json), [runtime-validation.txt](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b1fad9cf05ff93a5/runtime-validation.txt), [build-diffs.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/febbe054e7e08dc1/build-diffs.py)

Unverified assigned captures: none. 
