# Bundle B — runtime evidence

**Additional differences outside child exclusion are present; see “What else changed”.**

Both sides: fs-18, Linux x86_64 6.1.102, Node v26.12.1, OpenCode 1.18.18 / `anthropic/claude-haiku-5-5`, Python 3.12 + websocket-client 1.9.2. Before home `/tmp/lead-26983-r1/evidence-capture/20261029T150359-before-measured/home`, port 19684; after home `/tmp/lead-26983-r1/evidence-capture/20261029T151950-after-final/home`, port 19685. Each source checkout is pinned and clean; external Node load-hook observation is disclosed in the transcripts, with its exact SHA-256. Every restart has its spawn PID, actual server PID, source SHA, port, home, observer hash and UTC time above the corresponding capture. Independent fresh databases; `T3CODE_DEV_SEED=0`. No browser, rendering, viewport/theme, Diff0 or DiffT applies. Timed captures use the real UTC clock and real one-minute scheduler, with the same scripted waits and activity leases; no fake clock is claimed.


Counts are completed `branchPullRequest` service calls (L), with descendant git subprocess attempts (G), attributed through trace/parent ancestry beneath each `ThreadPullRequestServiceV2.synchronize`. A cache hit is still a lookup. F separates failed wrapper attempts from real git executions. These are scoped service counts, not whole-server/provider process totals.


Before recording: [B-before.txt](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/4bbb6e7e7e30a52c/B-before.txt)  
After recording: [B-after.txt](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/0fd7d6f19b14e962/B-after.txt)  
Raw evidence, complete state/events, scripts and counter: [runtime-evidence.tar.gz](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e2ef042f050fc63c/runtime-evidence.tar.gz)  
Reproduction: [reproduce.md](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1aaf0741be193d03/reproduce.md)

The ordered driver steps, exact UTC timestamps and restart environment appear before the paired trace excerpts inside each recording. Each per-request row contains trace/span IDs, branch attribution, discovery/validation counts, subprocess arguments/status and raw original service span objects.

The transcripts first show each genuine creation and stored origin/lineage. For each variant, only parent + shared child are active. They share one tuple. After the first active minute, the parent is settled through public RPC without restarting, while its child stays active.

## R03 — genuine app-owned shared delegate

| Measured interval or event | Before [37fbefd](https://github.com/pingdotgg/t3code/commit/37fbefd147197fab9d88f9c120560c3f21b52cfc) | After [45c1162](https://github.com/pingdotgg/t3code/commit/45c1162b91872e5e7a7ddd7843b24364caca0f4d) |
|---|---|---|
| Both active, next eligible minute | 1 L / 0 G | 1 L / 0 G |
| Parent settled after startup, next minute | 1 L / 0 G | 0 L / 0 G |

## R04 — genuine provider-native shared child

| Measured interval or event | Before [37fbefd](https://github.com/pingdotgg/t3code/commit/37fbefd147197fab9d88f9c120560c3f21b52cfc) | After [45c1162](https://github.com/pingdotgg/t3code/commit/45c1162b91872e5e7a7ddd7843b24364caca0f4d) |
|---|---|---|
| Both active, next eligible minute | 1 L / 0 G | 1 L / 0 G |
| Parent settled after startup, next minute | 1 L / 0 G | 0 L / 0 G |


## What else changed

Measured active and isolated minute git counts stay zero. Setup-only parent unsettle differs for the native variant (0 L / 1 G → 1 L / 2 G), before both sides are restarted into the same measured fixture. Early before B-local trace event labels differ from the final observer; raw request/order data is retained. The complete difference inventory below includes unmatched provider-boundary requests; those are not attributed to the predicate.

Synthetic IDs, provider transcript wording, real UTC timestamps, process IDs and scratch paths differ naturally. Same normalized fixture data and public actions are compared. Earlier after pilots are excluded from acceptance and retained separately.

Complete non-equal request-count inventory for these recording windows (including setup and provider boundary requests). An absent side means no corresponding request in that phase window; it is not silently treated as zero. The JSON inventory retains exact timestamps and span IDs. [count-differences.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/ac35fe3a11109701/count-differences.json).

| Phase / request (thread, event, status, refresh, ordinal) | Before L/G | After L/G |
|---|---|---|
| B-local / `["A-parent", "run.updated", "completed", true, 1]` | absent | 0/0 |
| B-local / `["A-parent", "targeted", null, true, 1]` | 0/0 | absent |
| B-local / `["B-local-parent", "targeted", null, false, 1]` | 1/0 | absent |
| B-local / `["B-local-parent", "targeted", null, true, 1]` | 1/3 | absent |
| B-local / `["B-local-parent", "thread.unarchived", null, false, 1]` | absent | 1/0 |
| B-local / `["B-local-parent", "thread.unsettled", null, true, 1]` | absent | 1/3 |
| B-local / `["all", "sweep", null, false, 2]` | 1/0 | 0/0 |
| B-native / `["B-native-parent", "thread.unsettled", null, true, 1]` | 0/1 | 1/2 |
| B-native / `["all", "sweep", null, false, 2]` | 1/0 | 0/0 |
