Reproduced in the real web app on fresh isolated databases, using deterministic ACP replay to execute live MCP calls with each caller's server-issued credential. Chromium, 1280×800, light theme; the manual pairs use device scale 2.

1. Create an independent Full access/default target and get READY.
2. From separate Supervised/default root threads, send once, interrupt, and attempt a rename. The target remains unchanged.
3. Repeat seven write-tool families with Supervised/plan callers against a Supervised/default target, isolating the interaction ceiling.
4. Repeat send and interrupt through a real second same-commit environment linked with Supervised access. Source callers have Full access; the effective ceiling is approval-required/default or approval-required/plan.

The defect proved is the false Child/parent relationship for unrelated root threads. The scenario rejects `/Child runtime mode[\s\S]*parent mode/`; it does not require new advice. Head also adds advice and a conditional linked-call caveat on local calls; those additions are not claimed as separately proven defects.

### Scenario: Cross-thread refusals must not call unrelated sibling threads child and parent

**Proven: the scenario fails on base [7f81aa8386](https://github.com/pingdotgg/t3code/commit/7f81aa8386737ecb244e3fd21c95afdb0649aeb7) and passes on head [2e44ada019](https://github.com/pingdotgg/t3code/commit/2e44ada0197b7ea317707e87b86a7d3e276f795e).**

|  | Base [7f81aa8386](https://github.com/pingdotgg/t3code/commit/7f81aa8386737ecb244e3fd21c95afdb0649aeb7) | Head [2e44ada019](https://github.com/pingdotgg/t3code/commit/2e44ada0197b7ea317707e87b86a7d3e276f795e) |
| --- | --- | --- |
| Result | ❌ failed<br>ASSERTION_FAILED: expected "Code\nPR\nPermission reproduction\nnow\nSettle\nt3_thread_send — Supervised sibling\nmain\nPR\nPermission reproduction\nDone\nSettle\nIndependent target — Full access\nmain\nSettled\n0\nPR\nPermission reproduction\n/\nt3_thread_send — Supervised sibling\nAgent\nAgent\nCall once. REPRO_JSON:{\"name\":\"t3_thread_send\",\"arguments\":{\"threadId\":\"mcp:042ecca7-a7a7-44e6-a89c-40710e0fe725\",\"mode\":\"auto\",\"message\":\"CROSS_THREAD_PROBE\"}}\nT3 Code\n\nActual MCP response for t3_thread_send\n\n{\"_tag\":\"OrchestratorMcpFailure\",\"code\":\"runtime_mode_escalation_denied\",\"message\":\"Child runtime mode full-access is broader than parent mode approval-required.\"}\n\n10:56 PM\n\n\n\n\nAsk anything. @ files, $ skills, / commands\nDeterministic MCP reproduction\nScenario\nOpen in editor\nAdd project script\nmain\nPublish repository\nChanges\nUncommitted\n+0\n-0\nToggle Sidebar" not to match /Child runtime mode[\s\S]*parent mode/ | ✅ passed |
| t3_thread_send refusal | ![Base 7f81aa8386: t3_thread_send refusal](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/93111788904858d2/001-t3_thread_send-refusal.png) | ![Head 2e44ada019: t3_thread_send refusal](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/7c517e2fece33569/001-t3_thread_send-refusal.png) |
| t3_thread_interrupt refusal | ![Base 7f81aa8386: t3_thread_interrupt refusal](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/a2bfc1dd745c1668/002-t3_thread_interrupt-refusal.png) | ![Head 2e44ada019: t3_thread_interrupt refusal](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/a942bf26c846e6a1/002-t3_thread_interrupt-refusal.png) |
| t3_thread_update refusal | ![Base 7f81aa8386: t3_thread_update refusal](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1b319216f2adb440/003-t3_thread_update-refusal.png) | ![Head 2e44ada019: t3_thread_update refusal](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/3674b43201c98d9c/003-t3_thread_update-refusal.png) |
| target unchanged | ![Base 7f81aa8386: target unchanged](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f86f994df76c922f/004-target-unchanged.png) | ![Head 2e44ada019: target unchanged](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/468429f273acde23/004-target-unchanged.png) |
| failure | ![Base 7f81aa8386: failure](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/46052b5dfbb88553/005-failure.png) |  |

[Scenario source](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d645fa20e4aa6a66/cross-thread-refusal-siblings.e2e.ts) · [Replay driver and seed calls](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/682e0575cac94534/reproduction-drivers.zip) · [Actual caller modes, root relationships, refusals and unchanged target reads](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/791780c470723023/runtime-transcript.json)

Additional real-client captures cover the shared write gate and both denial modes. All manual stills were visually inspected after two screenshots 550 ms apart were pixel-identical.

| Operation / ceiling | Before — [7f81aa8386](https://github.com/pingdotgg/t3code/commit/7f81aa8386737ecb244e3fd21c95afdb0649aeb7) | After — [2e44ada019](https://github.com/pingdotgg/t3code/commit/2e44ada0197b7ea317707e87b86a7d3e276f795e) |
| --- | --- | --- |
| runtime-t3_workflow_stop | ![Before: runtime-t3_workflow_stop](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/7774a6fc342ef061/base-runtime-t3_workflow_stop.png) | ![After: runtime-t3_workflow_stop](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8ba0c2f47eefb766/head-runtime-t3_workflow_stop.png) |
| runtime-t3_thread_send_attachments | ![Before: runtime-t3_thread_send_attachments](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/ebfdc0cadb969588/base-runtime-t3_thread_send_attachments.png) | ![After: runtime-t3_thread_send_attachments](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/07b53d949fc6d1e1/head-runtime-t3_thread_send_attachments.png) |
| runtime-link_pull_request | ![Before: runtime-link_pull_request](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/5769334e50ac7c10/base-runtime-link_pull_request.png) | ![After: runtime-link_pull_request](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d7e20b7e0c64bd53/head-runtime-link_pull_request.png) |
| runtime-t3_thread_organize | ![Before: runtime-t3_thread_organize](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b253f2256667df0f/base-runtime-t3_thread_organize.png) | ![After: runtime-t3_thread_organize](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/5eca57b0ccbe9dbf/head-runtime-t3_thread_organize.png) |
| interaction-t3_thread_send | ![Before: interaction-t3_thread_send](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8f864f756062d26e/base-interaction-t3_thread_send.png) | ![After: interaction-t3_thread_send](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1b5a98e35632b4f6/head-interaction-t3_thread_send.png) |
| interaction-t3_thread_interrupt | ![Before: interaction-t3_thread_interrupt](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/63b1986c98a3667d/base-interaction-t3_thread_interrupt.png) | ![After: interaction-t3_thread_interrupt](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d49ebd8cc687c8db/head-interaction-t3_thread_interrupt.png) |
| interaction-t3_thread_update | ![Before: interaction-t3_thread_update](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/2a50367e5b934d2e/base-interaction-t3_thread_update.png) | ![After: interaction-t3_thread_update](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8e79c5513867d822/head-interaction-t3_thread_update.png) |
| interaction-t3_workflow_stop | ![Before: interaction-t3_workflow_stop](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1b81aacbe9d7ee4c/base-interaction-t3_workflow_stop.png) | ![After: interaction-t3_workflow_stop](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/89fac53f0bc02438/head-interaction-t3_workflow_stop.png) |
| interaction-t3_thread_send_attachments | ![Before: interaction-t3_thread_send_attachments](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/aa63c0d09622a2ee/base-interaction-t3_thread_send_attachments.png) | ![After: interaction-t3_thread_send_attachments](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e534d681e5f81734/head-interaction-t3_thread_send_attachments.png) |
| interaction-link_pull_request | ![Before: interaction-link_pull_request](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/bd1343966149591f/base-interaction-link_pull_request.png) | ![After: interaction-link_pull_request](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/2d09e3e220375e4c/head-interaction-link_pull_request.png) |
| interaction-t3_thread_organize | ![Before: interaction-t3_thread_organize](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/00497130507f882c/base-interaction-t3_thread_organize.png) | ![After: interaction-t3_thread_organize](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b231e810a4f15a08/head-interaction-t3_thread_organize.png) |
| linked-runtime-t3_thread_send | ![Before: linked-runtime-t3_thread_send](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/fcc7d444fe42a7ba/base-linked-runtime-t3_thread_send.png) | ![After: linked-runtime-t3_thread_send](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c2821f9dda44b418/head-linked-runtime-t3_thread_send.png) |
| linked-runtime-t3_thread_interrupt | ![Before: linked-runtime-t3_thread_interrupt](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/7b8743d1c6b1d46f/base-linked-runtime-t3_thread_interrupt.png) | ![After: linked-runtime-t3_thread_interrupt](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1798d0efd7293e75/head-linked-runtime-t3_thread_interrupt.png) |
| linked-interaction-t3_thread_send | ![Before: linked-interaction-t3_thread_send](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/cf202a85b2c4d57a/base-linked-interaction-t3_thread_send.png) | ![After: linked-interaction-t3_thread_send](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/31b3f63fc34be4c2/head-linked-interaction-t3_thread_send.png) |
| linked-interaction-t3_thread_interrupt | ![Before: linked-interaction-t3_thread_interrupt](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/5cad8f117f39005d/base-linked-interaction-t3_thread_interrupt.png) | ![After: linked-interaction-t3_thread_interrupt](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/79157d5f62d7eac5/head-linked-interaction-t3_thread_interrupt.png) |

| Recording | Before — [7f81aa8386](https://github.com/pingdotgg/t3code/commit/7f81aa8386737ecb244e3fd21c95afdb0649aeb7) | After — [2e44ada019](https://github.com/pingdotgg/t3code/commit/2e44ada0197b7ea317707e87b86a7d3e276f795e) |
| --- | --- | --- |
| Seven local tools × runtime and interaction ceilings | [Before recording](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/a333263d2af04787/base-local.mp4) | [After recording](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/3235dd56241a6de4/head-local.mp4) |
| Linked send and interrupt × both ceilings | [Before recording](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d54e5fc31c26e355/base-linked.mp4) | [After recording](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/16003a3e260d2136/head-linked.mp4) |

All 36 manual calls were refused. Every target remained at its original prompt and READY reply with zero pending requests. The head local recording includes idle inspection pauses. The PR-link tool returns plain error text; other captured tools preserve the runtime_mode_escalation_denied or interaction_mode_escalation_denied code.

