Files
orca/docs/bug-reproductions/native-chat-tool-pairing/mobile-rendered-validation.json
T
Neil 8452fc3315 Keep tool results with the right command and reveal all results on mobile (#26968)
* Pair native chat tool results in linear time with provider identity

* Preserve orphan tool output and independent disclosure identity

* Keep mobile tool detail attached to its command after row changes

* Keep named mobile results open across copied history refreshes
2026-10-09 21:47:51 -07:00

268 lines
21 KiB
JSON

{
"recordedAt": "2026-10-10T00:42:45.888Z",
"sourceCommit": "bcfbb8cb6d543aca516fca346c32c47ec880019f",
"primaryWorktree": "/Users/nwparker/orca/workspaces/orca/perf-2",
"command": "ORCA_BACKGROUND_LAUNCH=1 node /tmp/orca-perf-2-pr-proof/mobile-tool-availability-proof.mjs",
"harness": {
"file": "/tmp/orca-perf-2-pr-proof/mobile-tool-availability-proof.mjs",
"sha256": "fe66e12c27a628aaf01b5b0074b8986f440f0b05c08ce10b23e16789717688d4",
"entrySha256": "89e8740ec312d4ad8158f382eda0a39887923c41573f07ea75331adb0b74f174",
"reuse": [
"config/scripts/build-mobile-web-app-bundle.mjs: mobileWebAppBuildOptions, production root reset and parity styles",
"config/scripts/mobile-web-app-render-harness.mjs: createBundleServer and readShellCsp"
],
"sourceSha256": {
"config/scripts/build-mobile-web-app-bundle.mjs": "d5538dc0f33a2270e96515a2b9f155a02ae32e83711b15dfa3882c280c7ea699",
"config/scripts/mobile-web-app-render-harness.mjs": "795218671c3d01a6c982197fa950fbb4b8b7ae079ccc68fc83d4394f1c36f58c",
"mobile/modules/orca-mobile-web-shell/android/src/main/java/expo/modules/orcamobilewebshell/MobileWebShellCsp.kt": "9936abe45e1eb2717154fa7bc2c6daf99ac0bb928ed46208916e90e1209bf479"
},
"productionComponents": [
"mobile/src/session/MobileNativeChatMessage.tsx",
"mobile/src/session/MobileNativeChatToolRun.tsx",
"mobile/src/session/mobile-native-chat-render-data.ts"
],
"viewport": {
"width": 390,
"height": 844
},
"browser": "Headless Chromium",
"reactNativePrimitives": "Actual react-native-web, no renderer mocks or DOM mutations"
},
"before": {
"ref": "b1e44269d655608447dc535f0a4d7d05c37c80b7",
"overlaidFile": "mobile/src/session/MobileNativeChatToolRun.tsx",
"sourceSha256": "4342c807795d9fc7c49d3ce1330845cde265eb4af7bcba8b6e47a98efd01e9bc",
"scope": "Only MobileNativeChatToolRun.tsx overlaid inside the temporary bundle; other production modules and shared matcher stay current. No worktree mutation.",
"scenarios": [
{
"scenario": "named",
"initialRows": 6,
"laterRowsUnavailable": true,
"noDisclosure": true
},
{
"scenario": "orphans",
"initialRows": 6,
"laterRowsUnavailable": true,
"noDisclosure": true
},
{
"scenario": "late",
"initialRows": 6,
"laterRowsUnavailable": true,
"noDisclosure": true
}
],
"otherSourceHashesMatchAfter": true,
"compiledOutputSha256": {
"before/mobile-tool-availability.js": "0077697ff5e9f3173dc5ef64004d210f031033923eaeef08ec09b0f8dabc51f2",
"before/index.html": "f1f04bc442384e86c6bd7687fd5a2df146b9b0d45fb1539a6e79483cd2975fac"
}
},
"after": {
"sourceSha256": {
"mobile/src/theme/mobile-theme.ts": "0b622538ae68934110fb9c8c283c05d125a97358d7a715ff172f3bf2591a3fdd",
"mobile/src/session/MobileNativeChatMessage.tsx": "b21f1da6f3101661416b4e5b694e739395d372caff8b604aca5a8ef9bbfdd17d",
"mobile/src/session/mobile-native-chat-render-data.ts": "0888dcfda84e196d599da009daf4dc3d6384acba46e21f2e20548842b8a1725f",
"mobile/src/session/mobile-native-chat-image-transcript-markers.ts": "ddb44478e79f4addf6207e049ec749efdfa9898810517029fc8c35e42b5c368a",
"src/shared/native-chat-empty-state.ts": "30fb51da467432f19ee668faee56b6690378f8a46229dcf6d0582c3fc02a0692",
"src/shared/agent-type-label.ts": "8caa6b29fcc80aa6675fa9dcc84691d47ba92ec1146f11c29f07a198f5035930",
"src/shared/agent-session-journal-producer.ts": "0f5983d862e36513ef49a5b58901b41f7fffc25fb8ed0191377996759aebfc4e",
"src/shared/native-chat-types.ts": "449b3ed60a5e75de48584d9d4e33ad431342834d6c7a8951571304a21f7f5ded",
"src/shared/native-chat-noise.ts": "052e9ee8883fcac5b38e032670e325a5797d89a5edb0dd747612eb84b6bc680e",
"src/shared/native-chat-provider-frame-summary.ts": "594241490db5a6bd39983280969ce5129eaca2b28c101afe9627906de5669a80",
"src/shared/native-chat-tool-fold.ts": "97b6a7e7bad809827178fd72a3343be9e6d9956c4eb30631de081f35d8126253",
"mobile/src/components/MobileSelectableText.tsx": "6c53f714a5470178f0f3eb3542b57033553a1e99069bef32a7ba1a15afca9eb3",
"mobile/src/session/MobileNativeChatLongPressContent.tsx": "7d6d33f72d1e354fc9c6539d85eaf12c1ee85d57be4de17f99e61adfcb1b3e32",
"mobile/src/components/inline-text-selection.ts": "89fd19e240148b2756cf3b145cfce0a823723068fe598945cd88b83a0e7734ce",
"mobile/src/session/MobileNativeChatMessageActionsSheet.tsx": "d2c53ed525bb27a93f8f2c9675e650f34a8325fd56cafda5db80eb487795494a",
"src/shared/agent-session-host-status-rows.ts": "02c293f1c4e6e3b666ec394c7be85a8edf587e38b00cfb20785ca0b413106d89",
"src/shared/native-chat-subagent-summary.ts": "ff7d5b09a6c241909b11b49681dc987b93c3b3d7b47fa067c8bea403aee2f538",
"src/shared/native-chat-tool-activity.ts": "54102040afefeb4437b36965fe3ef1190eef3e8c4bdf857cad4b6dbbac4ae975",
"mobile/src/components/MobileMarkdown.tsx": "de6faa09a9a0a40c4b761e1fe184d5f2f719af3c7efc1e1538a0b48199c830d5",
"mobile/src/session/MobileNativeChatReasoningRow.tsx": "b4bdc8ec1c8910b8ffad8b7fb8522cfabc12a5ef53c3cf2696cb2a8ee4157f06",
"src/shared/native-chat-row-content.ts": "c777ef1fc78bc5db708321e7751e59713606bfcc39b7aecd81004f8495413ee0",
"mobile/src/session/MobileNativeChatTurnStatus.tsx": "29551eae63e81afe5637b715348f86de143d11b0c4e3e3253f175a05c4561b1d",
"src/shared/agent-session-provider-context.ts": "f3131bee71f7d39255838a0f39f84b4a393eaa5db700948f3aba8dc07474f3f6",
"mobile/src/session/MobileNativeChatSubagentGroup.tsx": "7aaf08e5dedd4a8d761802c5282ae5c6f0322dcd0e3f8e6c5bb46a7e9a0427ea",
"mobile/src/session/MobileNativeChatToolRun.tsx": "a6690578f1fbd89ff2874bc80a069deed5807dd445a21fdaa7f285eee31f59cd",
"mobile/src/session/mobile-agent-message-attribution.ts": "1e5b77808f3b9214310ab07a199e52612238097c145f095df47c01fe04caaedb",
"mobile/src/session/mobile-native-chat-image-preview.ts": "8d99dd562af46fb13d1e3df08628c67332a2d544a018f7f857807e3f12bea141",
"mobile/src/session/mobile-native-chat-message-styles.ts": "689369f350d20813a98f2acaec289e17831f3b15d7b851d15da32b0dc5277faf",
"mobile/src/session/mobile-native-chat-visual-context.ts": "a1e450a69ce996d9f58fd6e88effe556a689c1f5986f696a579529f2f4455a08",
"src/shared/native-chat-visual-directive.ts": "c08a797d572c628839fe8006e6bb6ee2c8b4cc16a9ee79c76cac38de2aef8890",
"src/shared/agent-session-message-source.ts": "3d4461d5f2c3227d8a52433db2a2d0643a5003e347b5d243c9f07142d825f38d",
"src/shared/native-chat-image-transcript-markers.ts": "4c387c3273798706a4b9326e9e17368382012eac3de43e11e70e649fe019fd5b",
"src/shared/zod-salvage.ts": "0c752ffb1d80f98cd1e6d7687adb619d1354ad9b454c40f71144f3a6ec3c640c",
"src/shared/orca-session-address.ts": "cf821ba18a36194293efac045bd826a250c6d000e8442c7c66b92a12ec7d9d0d",
"src/shared/agent-session-conversation-name.ts": "f732ba58dbb855a4df0cc243c9112c06667611f7e790cb3ef610d71c39f439b9",
"src/shared/orca-session-address-prefix.ts": "d44a4bf817c56f7e83c2e4d48991bacb088e6114eefce43c34e6baa949b7c6ee",
"src/shared/structured-worker-handle.ts": "c05edb3002a912b602808c3a6911a789548a3993e5a8d8defd5817a00882a20f",
"src/shared/agent-session-record.ts": "391bd83b0b47c8bde56ab6412337c90cb6fc7f958ba0ae9e5e26bcbef4e8a2b6",
"src/shared/harness-injected-user-turns.ts": "c4ddb96ca6fc15fb9ff8012ef883ca8fdd152ab0bff18dac70e12beec89e0c5b",
"src/shared/native-chat-tool-summary.ts": "501f748758c37eefce9b28b5d65db87111d768a98addbbef652757beb12317bf",
"src/shared/surrogate-safe-text-slice.ts": "c93077a966a142e8c4e4c4145801e219cee54c7616607a3cb989b6dabe7dadfd",
"mobile/src/session/mobile-native-chat-message-plain-text.ts": "69a9d1216f13253754da684e987123a5f343969021993cfc5dd9b5dc073991a6",
"mobile/src/components/BottomDrawer.tsx": "8c5182c9d42dc18ad3a2a0e28cad258428e2dd1205969d22550448c605f449d0",
"mobile/src/components/ActionSheetModal.tsx": "ceddb89c9b178bb82c7d6498c1ac3a760e99aada3338afba73dea4e3b790ebc0",
"mobile/src/platform/clipboard.web.ts": "dea3f5957973553e232ab334e17b7f00e6130c90f47b5510a2d3b51428faae78",
"mobile/src/hooks/use-now.ts": "b9339df6c969927dc67c3be8baf51692ffd4bd1083d978aa93e04767e0110f52",
"src/shared/native-chat-subagent-group-header.ts": "cb235f59f17642f5ac5505a2bed7b7374889a5e6d7a8d0797da9d2360cf4e826",
"src/shared/native-chat-turn-status.ts": "227270f57d7916bb2eaf8bd474ced57de8d7b8aa9ca2c32582c3c0794f577778",
"src/shared/native-chat-prose.ts": "f6800ec105efc72efeb76f69bd91a0d3968d32e3a587baa31b73ffec83c48c06",
"src/shared/native-chat-background-task-row.ts": "de1d0c95b4f8096799caa0a4e563406dbc8a3c3cb4be211a937c0942891f861a",
"mobile/src/components/keyed-bottom-drawer.tsx": "549c8304dbdeea48efd2d63d67590a2f38ef916193887e970808b5fbb3348e01",
"src/shared/native-chat-tool-preview-prefix.ts": "42c2d527b81f8868b22c991da27fc326e2a219c92167d9bcb4850e3b32a63fda",
"src/shared/ansi-escape-sequences.ts": "75c79a88fb91c8b7a128a1ccc133051cde9e3e09f553d4d4fbb8887f89b6d217",
"src/shared/claude-pasted-content.ts": "f155ecaa82274a49f55ed0a4039a3a6b6d377b8c48182ad95234c20da190f308",
"mobile/src/components/mounted-bottom-drawer.tsx": "bc35d578c3f10e1ec5fd8e2fd316adc882678a68861572ef32ad45cdebe612f2",
"src/shared/native-chat-reasoning-row.ts": "8496fd11ea90e4f9e6b3d037ae0642011e323f44857ac7fdb35f172d8faf5932",
"src/shared/native-chat-tool-pairs.ts": "73e0da592a69f0962cba46d7fedfeb1feab01cc39d1d938d7460fabd17a09a33",
"src/shared/native-chat-folded-tool-results.ts": "e563aad787ef7b96fe91077006347121ffb5e4accca44e56a8282a9d278e2881",
"mobile/src/mobile-web-shell/bridge/staged-media-bytes.ts": "c7173bbdb3960f246aab942dadf342ea90f0a06fd7653b91332a8d2fbd845f0a",
"mobile/src/mobile-web-shell/bridge/use-native-verbs.ts": "88de410114191fc8a12f7c7331d49734bb3b338de862fd826d81b9938314ff2b",
"mobile/src/mobile-web-shell/bridge/bridge-media-verbs.ts": "10e10e8298d6afbf87824ac505e762e704147139ad7e6391c56f666970950ebe",
"mobile/src/session/mobile-image-base64-accumulator.ts": "4c61305175000d75aed8fd55926459c503a82d9abf17b5649118b858ca31c305",
"src/shared/native-chat-tool-icon.ts": "ca408c2a609fbfcfa866da8a1933a17817d583b6f527858ba5b6d597397d95c8",
"src/shared/agent-session-account-home.ts": "d4d7fe74f62c7b3075f1fc4256cb4d13f03e56825436d1c9481663fe61e09f52",
"src/shared/agent-session-launch-args.ts": "4001086933c5e189cf9c824df053abb9a139fe812c725f5e7823d5629e5b851f",
"src/shared/agent-session-rewind.ts": "d2568da9ba18b55b4c95aa8a9a36cd38a24f1d7a8fc1dbfd09ae63db9dae94ca",
"src/shared/agent-session-provider-handle-encoding.ts": "d3404ef90f8533fbf37720ae7eac43cd0a1ebdbce335bce20eb05adeabea5d8f",
"src/shared/agent-session-legacy-handoff-lease.ts": "5894948104c7abb90851e5fdb8de2ffcffdaf1da185ae18b9afdd59ee63eab68",
"src/shared/agent-session-conversation-command.ts": "c3c5bac0d9569aadc2f7fde32e453ae317c818cdbcccd357b4fb5eacfedacb1d",
"src/shared/agent-session-provider-handle.ts": "67b1fb7025f84d31fa507340e4757af846ec0be8e341e8b094a43d6b1fe1ce52",
"mobile/src/components/markdown-inline-matcher.ts": "fcb9483e872574c0a75f802c628819f3c985e5bbefd13833f6b11cd5401b8e0d",
"mobile/src/components/pr-sidebar/MermaidDiagram.web.tsx": "98ed187989c5c9d752d1ff5ca0d7f9cd55b36693d2c5ac17dd8e158aa336e4d7",
"mobile/src/platform/external-link.web.ts": "0215a4c4551dd44600595000ee0ea87ebcb5a9ead40bbc1090d4ab497b851705",
"mobile/src/components/markdown-inline-token-rules.ts": "0675e2c59b51c5e329ec2e7f7ce855bb147cd6cb28558840559323703af3832c",
"mobile/src/components/mobile-markdown-styles.ts": "d6050ecf8cee73064ac467349a040865c48ed7cea34cc1ae0307b015c399e114",
"mobile/src/components/mobile-mermaid-language.ts": "372906856bd040c16736cc94569237ca6055751527dc1c0d33f49f249314d963",
"mobile/src/components/markdown-file-path-detection.ts": "e2c3640be6059a508ddfbc7270a84729a8958431698d067a6d3ae34cff44624a",
"src/shared/native-chat-diff.ts": "a78c7a4cd31c3293e288021aabfa86a0871b571f460a9912489d8a83bf4cb227",
"mobile/src/components/markdown-href-routing.ts": "726a20c58b3fdeb97432c1b5ad551d4f35bbe5a9e7c4e45a1c80eb151ca948f7",
"mobile/src/components/use-mobile-markdown-blocks.ts": "48afe73963d31b7308c51f65513b82f6d3cb71db4cd9966a8199c8532cd3259c",
"src/shared/file-link-location.ts": "0caa3537d7b23b5442f82d3738522159011b21a75889273279fd21181b4ab560",
"mobile/src/components/pr-sidebar/mermaid-page-engine.ts": "c2fee924f8922a6a9604528545f73ee013177aaa95673658ca18c35e4d3f585d",
"mobile/src/components/pr-sidebar/mermaid-diagram-config.ts": "09a6b58d7d4966130486c390f004d27ac925d30f478c641a34c313a6ef7285db",
"src/shared/agent-session-journal-schemas.ts": "0962dc85972886bbff8cb8138d0cf2de8dbbe12d2eedbbe2255d6bbdb7d50afc",
"src/shared/agent-session-journal-item-key.ts": "09ebe4758e3f38b5b7591f07f7b4dbfd04c7cc01713c9b0afe03b07b656d1fe8",
"src/shared/agent-session-provider-handle-replacement.ts": "9e236b2c2c082c9c3ec4aca3827ce5d8f75926dd6b139c7053d9264e9b301cf7",
"mobile/src/mobile-web-shell/bridge/bridge-caps.ts": "93f47fc3a6d9819e91d3e071c911c8f8fec783019badb4c13e07fa22b68f3101",
"mobile/src/transport/base64-byte-codec.ts": "bdb75c23300144d42b224f72327ef22a7515f79fce66c5d2817086a6d032c8f4",
"src/shared/native-chat-tool-identity.ts": "8c98eec1a53b26a67ed48a0859c5863f5accbe67e013c4eb5a0f8b32441ee925",
"mobile/src/components/mobile-markdown-visual-lines.ts": "5a2ddf16ba9fa6fd3cbe9c5e93d6bc1f4cc333aed60c59d85ba14049690f9b3a",
"mobile/src/components/mobile-markdown-parser.ts": "6545ec307734bcbff15af08015e78d66d49e867c196277c0fc0f8a74c2571b56",
"mobile/src/components/mobile-markdown-preview-html.ts": "31f376a4c23f520a74d1adfc299fd04d63fa8f46d455ed6113ee487dc3939e73",
"src/shared/agent-session-context-usage-schema.ts": "57c0afc26dd85849b9ca832346c802a1906784a059759ae77e949bcc2678fb77",
"src/shared/agent-session-failure-fact-schema.ts": "b1674dbd7c66c2b9cde0d604217a5e0835eb5d6d747fbf10889d900058ce183b",
"src/shared/agent-session-journal-thread-goal-schema.ts": "f0eb37f8a2bd42688fb8592053fe06a858c35d291666d00576e6471721c3ba08",
"src/shared/agent-session-journal-open-union.ts": "2205366bd9f2c93bd36966d2833d33b5ae3c4d0ad7548d1ee0e0189585e36954",
"mobile/src/components/rich-markdown/markdown-table-rows.ts": "807b3c1fb705c1519d1a9cccef1029a02ae7627c667e652aaebf2d7d81941229",
"mobile/src/components/mobile-markdown-preview-tag-stripper.ts": "a12d4356235063a353a05fbc77333bbbd46836de95193d9a1a65e72a62c7a77b",
"mobile/src/components/bottom-drawer-fill-height.ts": "3db079086cc8d745201d140d1945eff8df2a0bc0ab4805b31bfa8fa4f6cd1c5f",
"mobile/src/components/bottom-drawer-constants.ts": "bae54257c25078dbf1aed42467c516b670c0cbbeaf47dd5c7852e8ce9c476a81",
"mobile/src/components/bottom-drawer-keyboard-inset.ts": "b69bcb461aaf7ffefc539fba9dfd86a75c9adf62ec22fb9b31ecd865e5810ab9",
"mobile/src/components/bottom-drawer-modal-host.tsx": "f81e4360566cb684994024cc10b2fb9829dfc031f9fd838c5558c220f652ef09",
"mobile/src/layout/responsive-layout.ts": "513e4556668d9a15dbae3085a1b7343248454157b7e41ff325da0efdb4c60754",
"mobile/src/navigation/use-back-claim.web.ts": "d22645a431734847d3d03f96e518dba8b4a343c50c1b2886e381b67f3bd89e7d",
"mobile/src/components/bottom-drawer-styles.ts": "4693c6c004beb5a495a9dcbb8b70e285e77c138d870b795424a2d582a6de807b",
"mobile/src/platform/keyboard-occlusion.web.ts": "f41fcea963aa7f41e3177849e886d21a4fa27db1ba24c54087bfd8f27a31e3d0",
"mobile/src/platform/host-os.web.ts": "c9f3f3926a1464c89bc55e28ce9fbc8a70de40e7f5f81c363c8f0f86470a7ce8",
"mobile/src/mobile-web-shell/bridge/bridge-native-verbs.ts": "6b97a355523f25d4b92b0d4495a075644c1bba03a2048bd942212dbbbb8ff714",
"mobile/src/transport/client-context.web.tsx": "41fd1b3504ce82edd294aa962a245fff64f9d33839d2a3d834faa676ef41b03e",
"mobile/src/mobile-web-shell/bridge/bridge-audio-verbs.ts": "eb8d86d8524a836be0ae97afc13b00863fe0d77b9905a40d81bf3e7cab9f05ca",
"src/shared/native-chat-href-routing.ts": "8df6855303d40a03fd9fd10065991e40860199eb95cd85d6b5120d44f5371014",
"src/shared/clipboard-image.ts": "03fc1db2b00c37c5595f7e731aef082bce9730489ff6a166e37379cf41f0aac5",
"mobile/src/session/mobile-clipboard-image-upload-chunk.ts": "3fa39da0385f1d3817d9e7b10f7ff94d44bb6a95219eac7c1320e30fe43ee88b",
"src/shared/agent-session-context-usage.ts": "cf8ce6a5f9b813f0965a784e91f8b5c7d23e20d7858e79ddb7c8e89072469355",
"mobile/src/transport/host-client-hooks.ts": "58aa9aaaa20bfacdbe282567a5e0e8c33f7fbfde6689e4baeab762207a3b9ad5",
"mobile/src/mobile-web-shell/bridge/bridge-page-client-identity.ts": "9e204e7168d88f27d5fabb18f2aef9cc1a0efc3cd63857cd7133e9a7bfb8d655",
"src/shared/cross-platform-path.ts": "d72a91065f535824b17f2d3285f45f6d2f40ec2a2ac7ffb4ae17edaa4f9a97f3",
"mobile/src/layout/responsive-layout-metrics.ts": "65a22518940a77d877ccca8faf565a77701f4e99ba2f641e53dcd4a241211975",
"src/shared/file-uri-path.ts": "e584a0db4780a5742960d0592c05500a98ce137c09ee6fbe0d8f96fe29065571",
"mobile/src/hooks/mobile-dictation-pending-audio-budget.ts": "7c13a7d0ef267c287429849658bd98f4e7b0ee0ac90091c5a9d76ade17eff292",
"mobile/src/components/pr-sidebar/mermaid-page-engine.generated.ts": "e54cc675b81d7eafe1b22a35ac9fa69f7761b79c1de62ffa6886a286a74a93f4",
"src/shared/wsl-paths.ts": "8271d75fb65b85b6bfd279f2a12636f79ddeb3ffe4d9d409dd77f5cce2a46219",
"mobile/src/mobile-web-shell/page-storage-keys.ts": "ef55d07341d5346779bbce693ebc03a0667604a324060102d18042a8f76dbd4f"
},
"compiledOutputSha256": {
"after/mobile-tool-availability.js": "845abfbe2a0b4b1940b89a5511ff9c034e6487bf2e267b61e2e92d367f8b6e47",
"after/index.html": "f1f04bc442384e86c6bd7687fd5a2df146b9b0d45fb1539a6e79483cd2975fac"
},
"scenarios": [
{
"scenario": "named",
"initialRows": 6,
"disclosedRows": 8,
"rowLocalFullBodyCorrect": true,
"showLessHidesLaterRows": true
},
{
"scenario": "orphans",
"initialRows": 6,
"disclosedRows": 8,
"rowLocalFullBodyCorrect": true,
"showLessHidesLaterRows": true
},
{
"scenario": "late",
"initialRows": 6,
"disclosedRows": 18,
"rowLocalFullBodyCorrect": true,
"showLessHidesLaterRows": true
}
]
},
"sourceHashesStableThroughoutBuildAndCapture": true,
"screenshots": [
{
"arm": "before",
"file": "before-orphans.png",
"sha256": "4d26e83ba1de890656b81f98269e8c647546f07ad41c7962f901d60bd10ab3b2",
"scenario": "orphans",
"stage": "six-row ceiling",
"inspected": true,
"url": "https://github.com/user-attachments/assets/6b6b30f1-58f0-4bc7-8149-6f2169a368b2"
},
{
"arm": "after",
"file": "after-named.png",
"sha256": "fe3bbca39c3e69bb11a616f291b76931655ad4d70d20c77bc328d745a899eb7c",
"scenario": "named",
"stage": "later rows disclosed and correct body opened",
"inspected": true,
"url": "https://github.com/user-attachments/assets/26e0559f-3f0c-482e-9ef2-f32903466c82"
},
{
"arm": "after",
"file": "after-orphans.png",
"sha256": "2f445379315f932da2a73e56e534db7780b76e49279f6fceb10197534de45c0c",
"scenario": "orphans",
"stage": "later rows disclosed and correct body opened",
"inspected": true,
"url": "https://github.com/user-attachments/assets/81241691-0dfe-4a88-b3d1-bdf7e8d02adc"
},
{
"arm": "after",
"file": "after-late.png",
"sha256": "4808278ddf1c4e9b9107e6d0e9f9d186ddfc668cb6e1d84925cd42eba7383ba0",
"scenario": "late",
"stage": "later rows disclosed and correct body opened",
"inspected": true,
"url": "https://github.com/user-attachments/assets/69b1e49b-0627-40b3-977d-052b885beef6"
}
],
"cleanup": {
"headless": true,
"ownedBrowserPid": 12062,
"browserAndExactLaunchServerHandlesClosed": true,
"ownedBrowserAbsent": true,
"processCheck": "process.kill(12062, 0) raised ESRCH after close",
"bothLocalServersClosed": true,
"noElectronLaunchOrNativeRuntimeSwitch": true
},
"renderedInspection": "Before: six orphan rows, count 6 and no disclosure; after: eight Result rows with the seventh full body revealed. Reversed seventh/eighth named outputs stay on their respective commands, a named orphan is separate, and a named output behind 17 silent calls belongs only to call 17. Show less hides later rows.",
"scope": "Production mobile Message and fold through shipped RN-web build options and shell CSP, with real DOM clicks. Component disclosure and ownership only; no native phone, full session route, provider decoder, adoption or transport validation.",
"measurementLimits": "Rendered correctness only. Screenshots and disclosure assertions do not measure allocation savings, frame latency or full-fold speed. Before uses one historical component module with current dependencies and matcher, not a full historical mobile app."
}