Merge branch 'ota-fu-bundle-chunk-pipeline' into ota-fu-bundle-gzip-ranges

# Conflicts:
#	mobile/rpc-foundation/goldens/aivault-history-scan-fulfilled.json
#	mobile/rpc-foundation/goldens/aivault-history-scan-unsupported.json
#	mobile/rpc-foundation/goldens/aivault-history-scan-worktrees-late.json
#	mobile/rpc-foundation/goldens/aivault-history-screen-listed.json
#	mobile/rpc-foundation/goldens/aivault-history-screen-worktrees.json
#	mobile/rpc-foundation/goldens/aivault-resume-launch-create-refused.json
#	mobile/rpc-foundation/goldens/aivault-resume-launch-invalid-tab.json
#	mobile/rpc-foundation/goldens/aivault-resume-launch-locked.json
#	mobile/rpc-foundation/goldens/aivault-resume-launch-sent.json
#	mobile/rpc-foundation/goldens/aivault-resume-prepare-refused.json
#	mobile/rpc-foundation/goldens/aivault-resume-prepare-repin.json
#	mobile/rpc-foundation/goldens/aivault-resume-prepare-skipped.json
#	mobile/rpc-foundation/goldens/aivault-resume-prepare-unavailable.json
#	mobile/rpc-foundation/goldens/b1.json
#	mobile/rpc-foundation/goldens/b2.json
#	mobile/rpc-foundation/goldens/b3.json
#	mobile/rpc-foundation/goldens/browser-dialog-accepted.json
#	mobile/rpc-foundation/goldens/browser-dialog-dismissed.json
#	mobile/rpc-foundation/goldens/browser-keyboard-input.json
#	mobile/rpc-foundation/goldens/browser-pointer-click-accepted.json
#	mobile/rpc-foundation/goldens/browser-pointer-click-fallback.json
#	mobile/rpc-foundation/goldens/browser-wheel-scrolled.json
#	mobile/rpc-foundation/goldens/clipboard-image-attachment-anonymous.json
#	mobile/rpc-foundation/goldens/clipboard-image-attachment-blocked-before-send.json
#	mobile/rpc-foundation/goldens/clipboard-image-attachment-cancelled.json
#	mobile/rpc-foundation/goldens/clipboard-image-attachment-pasted.json
#	mobile/rpc-foundation/goldens/clipboard-image-attachment-upload-refused.json
#	mobile/rpc-foundation/goldens/clipboard-image-upload-aborts-on-chunk-failure.json
#	mobile/rpc-foundation/goldens/clipboard-image-upload-chunked.json
#	mobile/rpc-foundation/goldens/clipboard-image-upload-single-frame-fallback.json
#	mobile/rpc-foundation/goldens/clipboard-image-upload-start-refused.json
#	mobile/rpc-foundation/goldens/codex-reset-credit-consumed.json
#	mobile/rpc-foundation/goldens/codex-reset-credit-resumed.json
#	mobile/rpc-foundation/goldens/components-codex-capability.json
#	mobile/rpc-foundation/goldens/components-setup-ask.json
#	mobile/rpc-foundation/goldens/components-target-local.json
#	mobile/rpc-foundation/goldens/components-target-ssh.json
#	mobile/rpc-foundation/goldens/diff-review-branch-compare.json
#	mobile/rpc-foundation/goldens/diff-review-branch-file-diff.json
#	mobile/rpc-foundation/goldens/diff-review-notes-refused-before-compare.json
#	mobile/rpc-foundation/goldens/diff-review-refused-file-diff.json
#	mobile/rpc-foundation/goldens/diff-review-snapshot.json
#	mobile/rpc-foundation/goldens/diff-review-status-unavailable.json
#	mobile/rpc-foundation/goldens/diff-review-worktree-file-diff.json
#	mobile/rpc-foundation/goldens/file-tap-open-refused.json
#	mobile/rpc-foundation/goldens/file-tap-opens-worktree-file.json
#	mobile/rpc-foundation/goldens/file-tap-previews-absolute-artifact.json
#	mobile/rpc-foundation/goldens/file-tap-resolve-miss.json
#	mobile/rpc-foundation/goldens/file-tap-resolve-refused.json
#	mobile/rpc-foundation/goldens/files-explorer-legacy-fallback.json
#	mobile/rpc-foundation/goldens/files-explorer-readdir.json
#	mobile/rpc-foundation/goldens/files-ownership-local.json
#	mobile/rpc-foundation/goldens/files-ownership-ssh.json
#	mobile/rpc-foundation/goldens/files-preview-artifact-direct.json
#	mobile/rpc-foundation/goldens/files-preview-artifact-image-read.json
#	mobile/rpc-foundation/goldens/files-preview-artifact-image.json
#	mobile/rpc-foundation/goldens/files-preview-grant-refresh.json
#	mobile/rpc-foundation/goldens/files-preview-worktree-image-read.json
#	mobile/rpc-foundation/goldens/files-preview-worktree-image.json
#	mobile/rpc-foundation/goldens/files-preview-worktree-text-read.json
#	mobile/rpc-foundation/goldens/files-preview-worktree.json
#	mobile/rpc-foundation/goldens/files-save-blind.json
#	mobile/rpc-foundation/goldens/files-save-verified.json
#	mobile/rpc-foundation/goldens/files-tab-doc-shapes.json
#	mobile/rpc-foundation/goldens/home-host-accounts.json
#	mobile/rpc-foundation/goldens/home-host-stats.json
#	mobile/rpc-foundation/goldens/host-view-settings-sync.json
#	mobile/rpc-foundation/goldens/host-worktree-actions-pin-open-delete.json
#	mobile/rpc-foundation/goldens/host-worktree-delete-refused.json
#	mobile/rpc-foundation/goldens/host-worktree-refresh-stream.json
#	mobile/rpc-foundation/goldens/interruptions-inventory-lifecycle.json
#	mobile/rpc-foundation/goldens/interruptions-settings-bot-overrides-fulfilled.json
#	mobile/rpc-foundation/goldens/inventory-lifecycle.json
#	mobile/rpc-foundation/goldens/inventory-repeat-query.json
#	mobile/rpc-foundation/goldens/lifecycle-b3.json
#	mobile/rpc-foundation/goldens/lifecycle-inventory-lifecycle.json
#	mobile/rpc-foundation/goldens/lifecycle-settings-bot-overrides-fulfilled.json
#	mobile/rpc-foundation/goldens/lifecycle-settings-task-hydration-fulfilled.json
#	mobile/rpc-foundation/goldens/lifecycle-settings-workspace-context-fulfilled.json
#	mobile/rpc-foundation/goldens/linear-select-workspace.json
#	mobile/rpc-foundation/goldens/live-worktree-name-stream.json
#	mobile/rpc-foundation/goldens/matrix-agentsession.structured-create-agentsession.create-1.json
#	mobile/rpc-foundation/goldens/matrix-agentsession.structured-create-agentsession.createsupport-1.json
#	mobile/rpc-foundation/goldens/matrix-agentsession.structured-launch-agentsession.createsupport-1.json
#	mobile/rpc-foundation/goldens/matrix-aivault.history-aivault.listsessions-1.json
#	mobile/rpc-foundation/goldens/matrix-aivault.history-screen-platform-status.json
#	mobile/rpc-foundation/goldens/matrix-aivault.history-screen-status.get-2.json
#	mobile/rpc-foundation/goldens/matrix-aivault.history-screen-worktree.ps-1.json
#	mobile/rpc-foundation/goldens/matrix-aivault.history-status.get-1.json
#	mobile/rpc-foundation/goldens/matrix-aivault.resume-launch-session.tabs.createterminal-1.json
#	mobile/rpc-foundation/goldens/matrix-aivault.resume-launch-terminal.send-1.json
#	mobile/rpc-foundation/goldens/matrix-aivault.resume-preparation-aivault.preparesessionresume-1.json
#	mobile/rpc-foundation/goldens/matrix-browser.dialog-browser.dialogaccept-1.json
#	mobile/rpc-foundation/goldens/matrix-browser.keyboard-browser.keyboardinserttext-1.json
#	mobile/rpc-foundation/goldens/matrix-browser.keyboard-browser.keypress-1.json
#	mobile/rpc-foundation/goldens/matrix-browser.pointer-click-browser.mouseclick-1.json
#	mobile/rpc-foundation/goldens/matrix-browser.pointer-click-browser.mousedown-1.json
#	mobile/rpc-foundation/goldens/matrix-browser.pointer-click-browser.mousemove-1.json
#	mobile/rpc-foundation/goldens/matrix-browser.pointer-click-browser.mouseup-1.json
#	mobile/rpc-foundation/goldens/matrix-browser.wheel-browser.mousemove-1.json
#	mobile/rpc-foundation/goldens/matrix-browser.wheel-browser.mousewheel-1.json
#	mobile/rpc-foundation/goldens/matrix-clipboard.image-attachment-clipboard.startimageupload-1.json
#	mobile/rpc-foundation/goldens/matrix-clipboard.image-upload-clipboard.saveimageastempfile-1.json
#	mobile/rpc-foundation/goldens/matrix-clipboard.image-upload-clipboard.startimageupload-1.json
#	mobile/rpc-foundation/goldens/matrix-components.codex-reset-capability-status.get-1.json
#	mobile/rpc-foundation/goldens/matrix-components.codex-reset-credit-accounts.consumecodexresetcredit-1.json
#	mobile/rpc-foundation/goldens/matrix-components.execution-target-local-preflight.detectagents-1.json
#	mobile/rpc-foundation/goldens/matrix-components.execution-target-preflight.detectremoteagents-1.json
#	mobile/rpc-foundation/goldens/matrix-components.execution-target-ssh.connect-1.json
#	mobile/rpc-foundation/goldens/matrix-components.execution-target-ssh.getstate-1.json
#	mobile/rpc-foundation/goldens/matrix-components.new-workspace-repositories-repo.list-1.json
#	mobile/rpc-foundation/goldens/matrix-components.setup-script-repo.hooks-1.json
#	mobile/rpc-foundation/goldens/matrix-files.explorer-screen-files.list-1.json
#	mobile/rpc-foundation/goldens/matrix-files.explorer-screen-files.readdir-1.json
#	mobile/rpc-foundation/goldens/matrix-files.mutation-ownership-ssh.getstate-1.json
#	mobile/rpc-foundation/goldens/matrix-files.mutation-ownership-status.get-1.json
#	mobile/rpc-foundation/goldens/matrix-files.mutation-ownership-worktree.show-1.json
#	mobile/rpc-foundation/goldens/matrix-files.preview-artifact-image-files.readterminalartifactpreview-1.json
#	mobile/rpc-foundation/goldens/matrix-files.preview-load-files.readterminalartifact-1.json
#	mobile/rpc-foundation/goldens/matrix-files.preview-load-files.readterminalartifact-2.json
#	mobile/rpc-foundation/goldens/matrix-files.preview-load-files.resolveterminalpath-1.json
#	mobile/rpc-foundation/goldens/matrix-files.preview-save-files.readterminalartifact-1.json
#	mobile/rpc-foundation/goldens/matrix-files.preview-save-files.writeterminalartifact-1.json
#	mobile/rpc-foundation/goldens/matrix-files.preview-worktree-image-files.readpreview-1.json
#	mobile/rpc-foundation/goldens/matrix-files.preview-worktree-text-files.read-1.json
#	mobile/rpc-foundation/goldens/matrix-files.tab-doc-files.read-1.json
#	mobile/rpc-foundation/goldens/matrix-files.tab-doc-files.readpreview-1.json
#	mobile/rpc-foundation/goldens/matrix-files.tab-doc-git.diff-1.json
#	mobile/rpc-foundation/goldens/matrix-files.terminal-path-tap-files.open-1.json
#	mobile/rpc-foundation/goldens/matrix-files.terminal-path-tap-files.resolveterminalpath-1.json
#	mobile/rpc-foundation/goldens/matrix-git.base-ref-chain-repo.baserefdefault-1.json
#	mobile/rpc-foundation/goldens/matrix-git.base-ref-chain-repo.list-1.json
#	mobile/rpc-foundation/goldens/matrix-git.base-ref-chain-worktree.show-1.json
#	mobile/rpc-foundation/goldens/matrix-git.branch-diff-preview-git.branchdiff-1.json
#	mobile/rpc-foundation/goldens/matrix-git.changes-load-git.branchcompare-1.json
#	mobile/rpc-foundation/goldens/matrix-git.changes-load-git.status-1.json
#	mobile/rpc-foundation/goldens/matrix-git.changes-load-repo.list-1.json
#	mobile/rpc-foundation/goldens/matrix-git.changes-load-worktree.show-1.json
#	mobile/rpc-foundation/goldens/matrix-git.commit-message-ai-git.generatecommitmessage-1.json
#	mobile/rpc-foundation/goldens/matrix-git.history-commit-files-git.commitcompare-1.json
#	mobile/rpc-foundation/goldens/matrix-git.history-commit-files-git.history-1.json
#	mobile/rpc-foundation/goldens/matrix-git.history-read-git.history-1.json
#	mobile/rpc-foundation/goldens/matrix-git.remote-prerequisite-git.push-1.json
#	mobile/rpc-foundation/goldens/matrix-git.review-preparation-git.status-1.json
#	mobile/rpc-foundation/goldens/matrix-github.pr-comment-mutation-github.addissuecomment-1.json
#	mobile/rpc-foundation/goldens/matrix-github.pr-comment-mutation-github.addprreviewcommentreply-1.json
#	mobile/rpc-foundation/goldens/matrix-github.pr-comment-mutation-github.project.deleteissuecommentbyslug-1.json
#	mobile/rpc-foundation/goldens/matrix-github.pr-comment-mutation-github.project.updateissuecommentbyslug-1.json
#	mobile/rpc-foundation/goldens/matrix-github.pr-comment-mutation-github.resolvereviewthread-1.json
#	mobile/rpc-foundation/goldens/matrix-github.pr-mutation-github.mergepr-1.json
#	mobile/rpc-foundation/goldens/matrix-github.pr-mutation-github.removeprreviewers-1.json
#	mobile/rpc-foundation/goldens/matrix-github.pr-mutation-github.requestprreviewers-1.json
#	mobile/rpc-foundation/goldens/matrix-github.pr-mutation-github.rerunprchecks-1.json
#	mobile/rpc-foundation/goldens/matrix-github.pr-mutation-github.setprautomerge-1.json
#	mobile/rpc-foundation/goldens/matrix-github.pr-mutation-github.updateprstate-1.json
#	mobile/rpc-foundation/goldens/matrix-github.pr-read-github.listassignableusers-1.json
#	mobile/rpc-foundation/goldens/matrix-github.pr-read-github.prcheckdetails-1.json
#	mobile/rpc-foundation/goldens/matrix-github.pr-read-github.prchecks-1.json
#	mobile/rpc-foundation/goldens/matrix-github.pr-read-github.prforbranch-1.json
#	mobile/rpc-foundation/goldens/matrix-github.pr-read-github.reposlug-1.json
#	mobile/rpc-foundation/goldens/matrix-github.pr-read-github.workitemdetails-1.json
#	mobile/rpc-foundation/goldens/matrix-github.pr-read-hostedreview.forbranch-1.json
#	mobile/rpc-foundation/goldens/matrix-github.pr-title-mutation-github.updateprtitle-1.json
#	mobile/rpc-foundation/goldens/matrix-home.host-accounts-accounts.list-1.json
#	mobile/rpc-foundation/goldens/matrix-home.host-stats-stats.summary-1.json
#	mobile/rpc-foundation/goldens/matrix-host-worktree-refresh-runtime.clientevents.subscribe-1-1.json
#	mobile/rpc-foundation/goldens/matrix-host-worktree-refresh-runtime.clientevents.subscribe-1-2.json
#	mobile/rpc-foundation/goldens/matrix-host-worktree-refresh-runtime.clientevents.subscribe-1-3.json
#	mobile/rpc-foundation/goldens/matrix-host-worktree-refresh-runtime.clientevents.subscribe-2-1.json
#	mobile/rpc-foundation/goldens/matrix-host.view-settings-ui.get-1.json
#	mobile/rpc-foundation/goldens/matrix-host.view-settings-ui.set-1.json
#	mobile/rpc-foundation/goldens/matrix-host.worktree-actions-worktree.activate-1.json
#	mobile/rpc-foundation/goldens/matrix-host.worktree-actions-worktree.rm-1.json
#	mobile/rpc-foundation/goldens/matrix-host.worktree-actions-worktree.set-1.json
#	mobile/rpc-foundation/goldens/matrix-hostedreview.create-chain-git.push-1.json
#	mobile/rpc-foundation/goldens/matrix-hostedreview.create-chain-hostedreview.create-1.json
#	mobile/rpc-foundation/goldens/matrix-hostedreview.create-chain-worktree.set-1.json
#	mobile/rpc-foundation/goldens/matrix-hostedreview.create-intent-git.bulkstage-1.json
#	mobile/rpc-foundation/goldens/matrix-hostedreview.create-intent-git.commit-1.json
#	mobile/rpc-foundation/goldens/matrix-hostedreview.create-intent-git.generatecommitmessage-1.json
#	mobile/rpc-foundation/goldens/matrix-hostedreview.create-intent-git.push-1.json
#	mobile/rpc-foundation/goldens/matrix-hostedreview.create-intent-git.status-1.json
#	mobile/rpc-foundation/goldens/matrix-hostedreview.create-intent-git.status-2.json
#	mobile/rpc-foundation/goldens/matrix-hostedreview.create-intent-git.status-3.json
#	mobile/rpc-foundation/goldens/matrix-hostedreview.create-intent-git.status-4.json
#	mobile/rpc-foundation/goldens/matrix-hostedreview.create-intent-hostedreview.create-1.json
#	mobile/rpc-foundation/goldens/matrix-hostedreview.create-intent-hostedreview.getcreationeligibility-1.json
#	mobile/rpc-foundation/goldens/matrix-hostedreview.create-intent-hostedreview.getcreationeligibility-2.json
#	mobile/rpc-foundation/goldens/matrix-hostedreview.create-intent-worktree.set-1.json
#	mobile/rpc-foundation/goldens/matrix-hostedreview.eligibility-hostedreview.getcreationeligibility-1.json
#	mobile/rpc-foundation/goldens/matrix-legacy-inventory-files.searchpaths-1.json
#	mobile/rpc-foundation/goldens/matrix-legacy-inventory-files.searchpaths-2.json
#	mobile/rpc-foundation/goldens/matrix-legacy-inventory-fresh-inventory.json
#	mobile/rpc-foundation/goldens/matrix-legacy-inventory-old-inventory.json
#	mobile/rpc-foundation/goldens/matrix-linear-detail-barrier-linear.getissue-1.json
#	mobile/rpc-foundation/goldens/matrix-linear-detail-barrier-linear.issuecomments-1.json
#	mobile/rpc-foundation/goldens/matrix-linear.select-workspace-picker-linear.selectworkspace-1.json
#	mobile/rpc-foundation/goldens/matrix-live-worktree-name-runtime.clientevents.subscribe-1-1.json
#	mobile/rpc-foundation/goldens/matrix-live-worktree-name-runtime.clientevents.subscribe-1-2.json
#	mobile/rpc-foundation/goldens/matrix-live-worktree-name-runtime.clientevents.subscribe-2-1.json
#	mobile/rpc-foundation/goldens/matrix-live-worktree-name-worktree.show-1.json
#	mobile/rpc-foundation/goldens/matrix-live-worktree-name-worktree.show-2.json
#	mobile/rpc-foundation/goldens/matrix-live-worktree-name-worktree.show-3.json
#	mobile/rpc-foundation/goldens/matrix-mobileweb.bundle-fetch-app-js.json
#	mobile/rpc-foundation/goldens/matrix-mobileweb.bundle-fetch-index-head.json
#	mobile/rpc-foundation/goldens/matrix-mobileweb.bundle-fetch-index-tail.json
#	mobile/rpc-foundation/goldens/matrix-mobileweb.bundle-fetch-mobileweb.bundle.manifest-1.json
#	mobile/rpc-foundation/goldens/matrix-mobileweb.bundle-manifest-mobileweb.bundle.manifest-1.json
#	mobile/rpc-foundation/goldens/matrix-nativechat.image-paste-terminal.send-1.json
#	mobile/rpc-foundation/goldens/matrix-nativechat.image-paste-terminal.send-2.json
#	mobile/rpc-foundation/goldens/matrix-nativechat.image-upload-clipboard.startimageupload-1.json
#	mobile/rpc-foundation/goldens/matrix-nativechat.session-option-pick-settings.mutatenativechatsessionoptions-1.json
#	mobile/rpc-foundation/goldens/matrix-nativechat.terminal-write-orchestration.workerterminaluserinput-1.json
#	mobile/rpc-foundation/goldens/matrix-nativechat.terminal-write-terminal.send-1.json
#	mobile/rpc-foundation/goldens/matrix-notifications.desktop-stream-notifications.getmissedsince-1.json
#	mobile/rpc-foundation/goldens/matrix-notifications.desktop-stream-notifications.subscribe-1-1.json
#	mobile/rpc-foundation/goldens/matrix-notifications.desktop-stream-notifications.subscribe-1-2.json
#	mobile/rpc-foundation/goldens/matrix-notifications.desktop-stream-notifications.unsubscribe-1.json
#	mobile/rpc-foundation/goldens/matrix-notifications.display-test-screen-notifications.testpush-1.json
#	mobile/rpc-foundation/goldens/matrix-notifications.push-dismissal-notifications.getmissedsince-1.json
#	mobile/rpc-foundation/goldens/matrix-notifications.push-registration-notifications.registerpush-1.json
#	mobile/rpc-foundation/goldens/matrix-notifications.push-registration-notifications.unregisterpush-1.json
#	mobile/rpc-foundation/goldens/matrix-pairing.pre-profile-direct-status.json
#	mobile/rpc-foundation/goldens/matrix-pairing.pre-profile-pairing.getendpoints-1.json
#	mobile/rpc-foundation/goldens/matrix-pairing.pre-profile-pairing.provisionrelay-1.json
#	mobile/rpc-foundation/goldens/matrix-pairing.pre-profile-relay-status.json
#	mobile/rpc-foundation/goldens/matrix-project-explicit-false-github.project.updateissuebyslug-1.json
#	mobile/rpc-foundation/goldens/matrix-relay.credential-rotation-pairing.getendpoints-1.json
#	mobile/rpc-foundation/goldens/matrix-relay.credential-rotation-pairing.getendpoints-2.json
#	mobile/rpc-foundation/goldens/matrix-relay.credential-rotation-pairing.provisionrelay-1.json
#	mobile/rpc-foundation/goldens/matrix-relay.direct-upgrade-pairing.getendpoints-1.json
#	mobile/rpc-foundation/goldens/matrix-relay.direct-upgrade-pairing.getendpoints-2.json
#	mobile/rpc-foundation/goldens/matrix-relay.direct-upgrade-pairing.provisionrelay-1.json
#	mobile/rpc-foundation/goldens/matrix-relay.pairing-recovery-pairing.getendpoints-1.json
#	mobile/rpc-foundation/goldens/matrix-session.browser-tab-create-browser.tabcreate-1.json
#	mobile/rpc-foundation/goldens/matrix-session.content-create-files.createfile-1.json
#	mobile/rpc-foundation/goldens/matrix-session.content-create-files.open-1.json
#	mobile/rpc-foundation/goldens/matrix-session.content-create-status.get-1.json
#	mobile/rpc-foundation/goldens/matrix-session.content-create-worktree.show-1.json
#	mobile/rpc-foundation/goldens/matrix-session.create-terminal-session.tabs.createterminal-1.json
#	mobile/rpc-foundation/goldens/matrix-session.create-terminal-terminal.send-1.json
#	mobile/rpc-foundation/goldens/matrix-session.diff-notes-worktree.show-1.json
#	mobile/rpc-foundation/goldens/matrix-session.diff-review-actions-worktree.set-1.json
#	mobile/rpc-foundation/goldens/matrix-session.diff-review-base-ref-show.json
#	mobile/rpc-foundation/goldens/matrix-session.diff-review-git.branchcompare-1.json
#	mobile/rpc-foundation/goldens/matrix-session.diff-review-git.status-1.json
#	mobile/rpc-foundation/goldens/matrix-session.diff-review-repo.list-1.json
#	mobile/rpc-foundation/goldens/matrix-session.diff-review-review-show.json
#	mobile/rpc-foundation/goldens/matrix-session.markdown-disk-fallback-files.read-1.json
#	mobile/rpc-foundation/goldens/matrix-session.markdown-disk-fallback-markdown.readtab-1.json
#	mobile/rpc-foundation/goldens/matrix-session.markdown-save-markdown.savetab-1.json
#	mobile/rpc-foundation/goldens/matrix-session.native-chat-page-nativechat.readsession-1.json
#	mobile/rpc-foundation/goldens/matrix-session.native-chat-page-nativechat.subscribe-1-1.json
#	mobile/rpc-foundation/goldens/matrix-session.native-chat-page-nativechat.subscribe-2-1.json
#	mobile/rpc-foundation/goldens/matrix-session.native-chat-readability-repo.list-1.json
#	mobile/rpc-foundation/goldens/matrix-session.native-chat-stop-orchestration.workerterminaluserinput-1.json
#	mobile/rpc-foundation/goldens/matrix-session.native-chat-stop-terminal.send-1.json
#	mobile/rpc-foundation/goldens/matrix-session.native-chat-stop-terminal.send-2.json
#	mobile/rpc-foundation/goldens/matrix-session.pr-branch-context-git.branchcompare-1.json
#	mobile/rpc-foundation/goldens/matrix-session.pr-branch-context-git.status-1.json
#	mobile/rpc-foundation/goldens/matrix-session.pr-branch-context-repo.list-1.json
#	mobile/rpc-foundation/goldens/matrix-session.pr-branch-context-worktree.show-1.json
#	mobile/rpc-foundation/goldens/matrix-session.pr-sidebar-github.prchecks-1.json
#	mobile/rpc-foundation/goldens/matrix-session.pr-sidebar-github.prforbranch-1.json
#	mobile/rpc-foundation/goldens/matrix-session.pr-sidebar-hostedreview.forbranch-1.json
#	mobile/rpc-foundation/goldens/matrix-session.pr-sidebar-worktree.show-1.json
#	mobile/rpc-foundation/goldens/matrix-session.pr-triage-session.tabs.createterminal-1.json
#	mobile/rpc-foundation/goldens/matrix-session.pr-triage-terminal.send-1.json
#	mobile/rpc-foundation/goldens/matrix-session.review-branch-diff-git.branchdiff-1.json
#	mobile/rpc-foundation/goldens/matrix-session.review-file-diff-git.diff-1.json
#	mobile/rpc-foundation/goldens/matrix-session.review-file-diff-git.diff-2.json
#	mobile/rpc-foundation/goldens/matrix-session.review-file-diff-git.diff-3.json
#	mobile/rpc-foundation/goldens/matrix-session.review-git-mutations-git.discard-1.json
#	mobile/rpc-foundation/goldens/matrix-session.review-git-mutations-git.stage-1.json
#	mobile/rpc-foundation/goldens/matrix-session.review-git-mutations-git.stage-2.json
#	mobile/rpc-foundation/goldens/matrix-session.review-send-sheet-session.tabs.list-1.json
#	mobile/rpc-foundation/goldens/matrix-session.startup-worktree.activate-1.json
#	mobile/rpc-foundation/goldens/matrix-session.startup-worktree.activate-2.json
#	mobile/rpc-foundation/goldens/matrix-session.tab-activation-session.tabs.activate-1.json
#	mobile/rpc-foundation/goldens/matrix-session.tab-activation-terminal.focus-1.json
#	mobile/rpc-foundation/goldens/matrix-session.tab-close-session-session.tabs.close-1.json
#	mobile/rpc-foundation/goldens/matrix-session.tab-close-terminal.close-1.json
#	mobile/rpc-foundation/goldens/matrix-session.tab-documents-markdown.readtab-1.json
#	mobile/rpc-foundation/goldens/matrix-session.tab-rename-terminal.rename-1.json
#	mobile/rpc-foundation/goldens/matrix-session.tab-reveal-session.tabs.activate-1.json
#	mobile/rpc-foundation/goldens/matrix-session.tab-reveal-session.tabs.list-1.json
#	mobile/rpc-foundation/goldens/matrix-session.tabs-stream-health-session.tabs.list-1.json
#	mobile/rpc-foundation/goldens/matrix-session.terminal-display-mode-terminal.setdisplaymode-1.json
#	mobile/rpc-foundation/goldens/matrix-session.terminal-gesture-input-orchestration.workerterminaluserinput-1.json
#	mobile/rpc-foundation/goldens/matrix-session.terminal-gesture-input-terminal.clearbuffer-1.json
#	mobile/rpc-foundation/goldens/matrix-session.terminal-gesture-input-terminal.send-1.json
#	mobile/rpc-foundation/goldens/matrix-session.terminal-input-send-orchestration.workerterminaluserinput-1.json
#	mobile/rpc-foundation/goldens/matrix-session.terminal-input-send-terminal.send-1.json
#	mobile/rpc-foundation/goldens/matrix-session.terminal-inventory-terminal.list-1.json
#	mobile/rpc-foundation/goldens/matrix-session.terminal-paste-orchestration.workerterminaluserinput-1.json
#	mobile/rpc-foundation/goldens/matrix-session.terminal-paste-settings.get-1.json
#	mobile/rpc-foundation/goldens/matrix-session.terminal-paste-terminal.send-1.json
#	mobile/rpc-foundation/goldens/matrix-session.worktree-connection-repo.list-1.json
#	mobile/rpc-foundation/goldens/matrix-session.worktree-connection-settings.get-1.json
#	mobile/rpc-foundation/goldens/matrix-settings-agent-read-preflight.detectremoteagents-1.json
#	mobile/rpc-foundation/goldens/matrix-settings-agent-read-repo.list-1.json
#	mobile/rpc-foundation/goldens/matrix-settings-agent-read-settings.get-1.json
#	mobile/rpc-foundation/goldens/matrix-settings-best-effort-settings.update-1.json
#	mobile/rpc-foundation/goldens/matrix-settings.bot-overrides-settings.get-1.json
#	mobile/rpc-foundation/goldens/matrix-settings.home-providers-linear.status-1.json
#	mobile/rpc-foundation/goldens/matrix-settings.home-providers-preflight.check-1.json
#	mobile/rpc-foundation/goldens/matrix-settings.home-providers-settings.get-1.json
#	mobile/rpc-foundation/goldens/matrix-settings.new-tab-local-agents-preflight.detectagents-1.json
#	mobile/rpc-foundation/goldens/matrix-settings.new-tab-local-agents-repo.list-1.json
#	mobile/rpc-foundation/goldens/matrix-settings.new-tab-local-agents-settings.get-1.json
#	mobile/rpc-foundation/goldens/matrix-settings.quick-commands-settings.getterminalquickcommands-1.json
#	mobile/rpc-foundation/goldens/matrix-settings.quick-commands-settings.updateterminalquickcommands-1.json
#	mobile/rpc-foundation/goldens/matrix-settings.repo-metadata-host.platform-1.json
#	mobile/rpc-foundation/goldens/matrix-settings.repo-metadata-repo.list-1.json
#	mobile/rpc-foundation/goldens/matrix-settings.repo-metadata-settings.get-1.json
#	mobile/rpc-foundation/goldens/matrix-settings.repo-metadata-ssh.listtargetsummaries-1.json
#	mobile/rpc-foundation/goldens/matrix-settings.resume-metadata-folderworkspace.list-1.json
#	mobile/rpc-foundation/goldens/matrix-settings.resume-metadata-projectgroup.list-1.json
#	mobile/rpc-foundation/goldens/matrix-settings.resume-metadata-repo.list-1.json
#	mobile/rpc-foundation/goldens/matrix-settings.resume-metadata-settings.get-1.json
#	mobile/rpc-foundation/goldens/matrix-settings.resume-metadata-worktree.ps-1.json
#	mobile/rpc-foundation/goldens/matrix-settings.task-hydration-linear.status-1.json
#	mobile/rpc-foundation/goldens/matrix-settings.task-hydration-preflight.check-1.json
#	mobile/rpc-foundation/goldens/matrix-settings.task-hydration-settings.get-1.json
#	mobile/rpc-foundation/goldens/matrix-settings.task-hydration-status.get-1.json
#	mobile/rpc-foundation/goldens/matrix-settings.task-hydration-ui.get-1.json
#	mobile/rpc-foundation/goldens/matrix-settings.task-workspace-create-settings.get-1.json
#	mobile/rpc-foundation/goldens/matrix-settings.task-workspace-create-worktree.create-1.json
#	mobile/rpc-foundation/goldens/matrix-settings.task-workspace-settings.get-1.json
#	mobile/rpc-foundation/goldens/matrix-settings.workspace-context-linear.status-1.json
#	mobile/rpc-foundation/goldens/matrix-settings.workspace-context-preflight.check-1.json
#	mobile/rpc-foundation/goldens/matrix-settings.workspace-context-settings.get-1.json
#	mobile/rpc-foundation/goldens/matrix-settings.workspace-context-ui.get-1.json
#	mobile/rpc-foundation/goldens/matrix-settings.workspace-submit-settings.get-1.json
#	mobile/rpc-foundation/goldens/matrix-speech.dictation-chunk-speech.dictation.chunk-1.json
#	mobile/rpc-foundation/goldens/matrix-speech.dictation-session-speech.dictation.finish-1.json
#	mobile/rpc-foundation/goldens/matrix-speech.dictation-session-speech.dictation.start-1.json
#	mobile/rpc-foundation/goldens/matrix-speech.dictation-start-speech.dictation.cancel-1.json
#	mobile/rpc-foundation/goldens/matrix-speech.dictation-start-speech.dictation.start-1.json
#	mobile/rpc-foundation/goldens/matrix-speech.setup-sheet-speech.dictation.setup-1.json
#	mobile/rpc-foundation/goldens/matrix-speech.setup-sheet-speech.models.delete-1.json
#	mobile/rpc-foundation/goldens/matrix-speech.setup-sheet-speech.models.download-1.json
#	mobile/rpc-foundation/goldens/matrix-speech.setup-sheet-speech.models.list-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.item-checks-files-github.addprreviewcomment-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.item-checks-files-github.prfilecontents-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.item-checks-files-github.rerunprchecks-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.item-checks-files-github.resolvereviewthread-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.item-checks-files-github.setprfileviewed-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.item-comment-github-github.addissuecomment-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.item-comment-gitlab-gitlab.addissuecomment-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.item-comment-gitlab-mr-gitlab.addmrcomment-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.item-detail-github-github.workitemdetails-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.item-detail-gitlab-gitlab.workitemdetails-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.item-detail-linear-linear.getissue-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.item-detail-linear-linear.issuecomments-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.item-detail-metadata-github.listassignableusers-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.item-detail-metadata-github.listlabels-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.item-merge-gitlab-gitlab.mergemr-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.item-metadata-github-github.updatepr-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.item-metadata-gitlab-gitlab.updateissue-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.item-metadata-gitlab-mr-gitlab.updatemr-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.item-reply-merge-github.addissuecomment-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.item-reply-merge-github.addprreviewcommentreply-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.item-reply-merge-github.mergepr-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.item-reply-merge-linear.updateissue-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.item-review-github-github.prchecks-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.item-review-github-github.requestprreviewers-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.item-status-gitlab-github.updateissue-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.item-status-gitlab-gitlab.updateissue-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.item-status-gitlab-mr-gitlab.updatemrstate-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.linear-connect-linear.connect-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.linear-item-linear.addissuecomment-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.linear-item-linear.createissue-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.linear-item-linear.getissue-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.linear-team-context-linear.listteams-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.linear-team-context-linear.teamstates-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.paste-lookup-github.reposlug-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.paste-lookup-github.workitem-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.paste-lookup-github.workitembyownerrepo-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.paste-lookup-gitlab.workitembypath-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.project-board-load-github.project.listaccessible-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.project-board-load-github.project.listviews-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.project-board-load-github.project.listviews-2.json
#	mobile/rpc-foundation/goldens/matrix-tasks.project-board-load-github.project.resolveref-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.project-board-load-github.project.viewtable-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.project-repo-slugs-github.reposlug-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.project-row-comments-issue-github.project.addissuecommentbyslug-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.project-row-comments-issue-github.project.updateissuebyslug-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.project-row-comments-issue-github.project.updateissuecommentbyslug-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.project-row-comments-pr-github.project.updatepullrequestbyslug-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.project-row-detail-github.project.workitemdetailsbyslug-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.project-row-fields-github.project.clearitemfield-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.project-row-fields-github.project.updateissuetypebyslug-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.project-row-fields-github.project.updateitemfield-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.project-row-files-merge-github.addprreviewcomment-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.project-row-files-merge-github.mergepr-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.project-row-files-merge-github.prfilecontents-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.project-row-files-merge-github.updateissue-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.project-row-files-merge-github.updateprstate-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.project-row-metadata-load-github.project.listassignableusersbyslug-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.project-row-metadata-load-github.project.listissuetypesbyslug-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.project-row-metadata-load-github.project.listlabelsbyslug-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.project-row-review-checks-github.prchecks-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.project-row-review-checks-github.requestprreviewers-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.project-row-review-checks-github.rerunprchecks-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.project-row-review-checks-github.setprfileviewed-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.project-row-threads-github.addissuecomment-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.project-row-threads-github.addprreviewcommentreply-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.project-row-threads-github.project.deleteissuecommentbyslug-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.project-row-threads-github.resolvereviewthread-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.provider-load-github.countworkitems-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.provider-load-github.listworkitems-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.provider-load-linear.listteams-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.provider-load-linear.status-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.provider-load-settings.update-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.route-repo-list-repo.list-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.smart-source-search-github.listworkitems-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.smart-source-search-gitlab.listworkitems-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.smart-source-search-linear.listissues-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.smart-source-search-linear.searchissues-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.smart-source-search-repo.searchrefs-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.task-create-github-github.createissue-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.task-create-github-repo.update-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.task-create-gitlab-gitlab.createissue-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.task-create-linear-linear.createissue-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.task-list-gitlab-items-gitlab.listworkitems-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.task-list-gitlab-todos-gitlab.todos-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.task-list-linear-linear.listissues-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.task-list-linear-linear.searchissues-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.workspace-source-repo.searchrefs-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.workspace-source-repo.sparsepresets-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.workspace-sparse-repo.savesparsepreset-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.workspace-sparse-ssh.getstate-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.workspace-ssh-local-preflight.detectagents-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.workspace-ssh-preflight.detectremoteagents-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.workspace-ssh-repo.hooks-1.json
#	mobile/rpc-foundation/goldens/matrix-tasks.workspace-ssh-ssh.connect-1.json
#	mobile/rpc-foundation/goldens/matrix-terminal.query-reply-terminal.send-1.json
#	mobile/rpc-foundation/goldens/matrix-terminal.raw-input-orchestration.workerterminaluserinput-1.json
#	mobile/rpc-foundation/goldens/matrix-terminal.raw-input-terminal.send-1.json
#	mobile/rpc-foundation/goldens/matrix-terminal.takeover-report-orchestration.workerterminaluserinput-1.json
#	mobile/rpc-foundation/goldens/matrix-terminal.takeover-report-orchestration.workerterminaluserinput-2.json
#	mobile/rpc-foundation/goldens/matrix-terminal.viewport-refit-terminal.updateviewport-1.json
#	mobile/rpc-foundation/goldens/matrix-transport.capability-probe-status.get-1.json
#	mobile/rpc-foundation/goldens/matrix-transport.host-status-gates-status.get-1.json
#	mobile/rpc-foundation/goldens/matrix-transport.pairing-race-direct-status.json
#	mobile/rpc-foundation/goldens/matrix-transport.pairing-race-relay-status.json
#	mobile/rpc-foundation/goldens/matrix-worktree.agent-launch-create-agent.launch-1.json
#	mobile/rpc-foundation/goldens/matrix-worktree.catalog-snapshot-worktree.ps-1.json
#	mobile/rpc-foundation/goldens/matrix-worktree.create-retry-worktree.create-1.json
#	mobile/rpc-foundation/goldens/matrix-worktree.home-catalog-worktree.ps-1.json
#	mobile/rpc-foundation/goldens/matrix-worktree.hosted-base-worktree.resolvemrbase-1.json
#	mobile/rpc-foundation/goldens/matrix-worktree.hosted-base-worktree.resolveprbase-1.json
#	mobile/rpc-foundation/goldens/matrix-worktree.retired-names-worktree.listretirednames-1.json
#	mobile/rpc-foundation/goldens/matrix-worktree.review-link-worktree.set-1.json
#	mobile/rpc-foundation/goldens/matrix-worktree.runtime-capabilities-status.get-1.json
#	mobile/rpc-foundation/goldens/matrix-worktree.setup-hook-trust-ui.set-1.json
#	mobile/rpc-foundation/goldens/mobile-web-bundle-build-changed.json
#	mobile/rpc-foundation/goldens/mobile-web-bundle-fetch-paged.json
#	mobile/rpc-foundation/goldens/mobile-web-bundle-manifest-read.json
#	mobile/rpc-foundation/goldens/mobile-web-bundle-unavailable.json
#	mobile/rpc-foundation/goldens/native-chat-image-paste-single.json
#	mobile/rpc-foundation/goldens/native-chat-image-paste-stops-on-rejection.json
#	mobile/rpc-foundation/goldens/native-chat-image-paste-trailing-image.json
#	mobile/rpc-foundation/goldens/native-chat-image-paste-two-images.json
#	mobile/rpc-foundation/goldens/native-chat-image-upload-cancelled.json
#	mobile/rpc-foundation/goldens/native-chat-image-upload-second-fails.json
#	mobile/rpc-foundation/goldens/native-chat-image-upload-single.json
#	mobile/rpc-foundation/goldens/native-chat-image-upload-start-refused.json
#	mobile/rpc-foundation/goldens/native-chat-image-upload-two.json
#	mobile/rpc-foundation/goldens/native-chat-page-earlier.json
#	mobile/rpc-foundation/goldens/native-chat-readability-local-repo.json
#	mobile/rpc-foundation/goldens/native-chat-readability-refused.json
#	mobile/rpc-foundation/goldens/native-chat-readability-remote-repo.json
#	mobile/rpc-foundation/goldens/native-chat-session-option-pick-empty.json
#	mobile/rpc-foundation/goldens/native-chat-session-option-pick-refused.json
#	mobile/rpc-foundation/goldens/native-chat-session-option-pick-written.json
#	mobile/rpc-foundation/goldens/native-chat-stop-accepted.json
#	mobile/rpc-foundation/goldens/native-chat-stop-both-rejected.json
#	mobile/rpc-foundation/goldens/native-chat-stop-delivery-unknown.json
#	mobile/rpc-foundation/goldens/native-chat-write-accepted.json
#	mobile/rpc-foundation/goldens/native-chat-write-clear-line.json
#	mobile/rpc-foundation/goldens/native-chat-write-delivery-unknown.json
#	mobile/rpc-foundation/goldens/native-chat-write-rejected.json
#	mobile/rpc-foundation/goldens/native-chat-write-typed-command.json
#	mobile/rpc-foundation/goldens/new-tab-local-agents.json
#	mobile/rpc-foundation/goldens/new-workspace-repositories-fulfilled.json
#	mobile/rpc-foundation/goldens/notifications-desktop-stream-closed.json
#	mobile/rpc-foundation/goldens/notifications-desktop-stream-replayed.json
#	mobile/rpc-foundation/goldens/notifications-desktop-stream.json
#	mobile/rpc-foundation/goldens/notifications-display-test-accepted.json
#	mobile/rpc-foundation/goldens/notifications-display-test-not-registered.json
#	mobile/rpc-foundation/goldens/notifications-display-test-rate-limited.json
#	mobile/rpc-foundation/goldens/notifications-display-test-unknown-reason.json
#	mobile/rpc-foundation/goldens/notifications-push-gateway-rejected.json
#	mobile/rpc-foundation/goldens/notifications-push-registered.json
#	mobile/rpc-foundation/goldens/pairing-pre-profile-direct-wins-and-provisions.json
#	mobile/rpc-foundation/goldens/pairing-pre-profile-provision-unsupported-saves-direct-host.json
#	mobile/rpc-foundation/goldens/pairing-pre-profile-times-out.json
#	mobile/rpc-foundation/goldens/pr-branch-identity.json
#	mobile/rpc-foundation/goldens/pr-branch-repo-context.json
#	mobile/rpc-foundation/goldens/pr-comment-mutation.json
#	mobile/rpc-foundation/goldens/pr-comment-resolve-unconfirmed.json
#	mobile/rpc-foundation/goldens/pr-mutation-in-band-failure.json
#	mobile/rpc-foundation/goldens/pr-mutation-status.json
#	mobile/rpc-foundation/goldens/pr-read-fork-routing.json
#	mobile/rpc-foundation/goldens/pr-read-surface.json
#	mobile/rpc-foundation/goldens/pr-read-upstream-error.json
#	mobile/rpc-foundation/goldens/pr-sidebar-checks-refused.json
#	mobile/rpc-foundation/goldens/pr-sidebar-load.json
#	mobile/rpc-foundation/goldens/pr-title-mutation.json
#	mobile/rpc-foundation/goldens/pr-title-unconfirmed.json
#	mobile/rpc-foundation/goldens/pr-triage-invalid-terminal.json
#	mobile/rpc-foundation/goldens/pr-triage-launch.json
#	mobile/rpc-foundation/goldens/pr-triage-send-locked.json
#	mobile/rpc-foundation/goldens/probe-new-tab-both-refused.json
#	mobile/rpc-foundation/goldens/probe-new-tab-null-sibling-refused.json
#	mobile/rpc-foundation/goldens/probe-new-tab-refused-sibling-rejects.json
#	mobile/rpc-foundation/goldens/probe-new-tab-rejects-sibling-refused.json
#	mobile/rpc-foundation/goldens/push-dismissal-tray-reconciled.json
#	mobile/rpc-foundation/goldens/quick-commands-load-refused.json
#	mobile/rpc-foundation/goldens/quick-commands-loaded-and-saved.json
#	mobile/rpc-foundation/goldens/quick-commands-save-refused-rolls-back.json
#	mobile/rpc-foundation/goldens/relay-direct-upgrade-commits.json
#	mobile/rpc-foundation/goldens/relay-direct-upgrade-unsupported-host-declines.json
#	mobile/rpc-foundation/goldens/relay-pairing-recovery-invite-authorizes.json
#	mobile/rpc-foundation/goldens/relay-pairing-recovery-resume-committed.json
#	mobile/rpc-foundation/goldens/relay-rotation-installs-and-commits.json
#	mobile/rpc-foundation/goldens/relay-rotation-resumes-committed-pending.json
#	mobile/rpc-foundation/goldens/review-branch-diff-shapes.json
#	mobile/rpc-foundation/goldens/review-create-terminal-refused.json
#	mobile/rpc-foundation/goldens/review-file-diff-shapes.json
#	mobile/rpc-foundation/goldens/review-git-mutations-run.json
#	mobile/rpc-foundation/goldens/review-mark-reviewed-persists.json
#	mobile/rpc-foundation/goldens/review-mark-reviewed-rolls-back.json
#	mobile/rpc-foundation/goldens/review-open-in-session.json
#	mobile/rpc-foundation/goldens/review-send-notes-heals-stale-input.json
#	mobile/rpc-foundation/goldens/review-send-sheet-lists-terminals.json
#	mobile/rpc-foundation/goldens/review-stage-file.json
#	mobile/rpc-foundation/goldens/review-stage-refused.json
#	mobile/rpc-foundation/goldens/sc-base-ref-default.json
#	mobile/rpc-foundation/goldens/sc-base-ref-repo-fallback.json
#	mobile/rpc-foundation/goldens/sc-base-ref-unavailable.json
#	mobile/rpc-foundation/goldens/sc-base-ref-worktree-hit.json
#	mobile/rpc-foundation/goldens/sc-branch-diff-previewed.json
#	mobile/rpc-foundation/goldens/sc-changes-loaded.json
#	mobile/rpc-foundation/goldens/sc-commit-message-cancel-rejected.json
#	mobile/rpc-foundation/goldens/sc-commit-message-canceled.json
#	mobile/rpc-foundation/goldens/sc-commit-message-generated.json
#	mobile/rpc-foundation/goldens/sc-create-existing-review.json
#	mobile/rpc-foundation/goldens/sc-create-intent-stage-commit-push-create.json
#	mobile/rpc-foundation/goldens/sc-create-intent-unlisted-provider.json
#	mobile/rpc-foundation/goldens/sc-create-link-failure-is-non-fatal.json
#	mobile/rpc-foundation/goldens/sc-create-pushes-then-creates.json
#	mobile/rpc-foundation/goldens/sc-create-refused-empty-message.json
#	mobile/rpc-foundation/goldens/sc-create-rejected-empty-message.json
#	mobile/rpc-foundation/goldens/sc-eligibility-fetched.json
#	mobile/rpc-foundation/goldens/sc-history-commit-files.json
#	mobile/rpc-foundation/goldens/sc-history-loaded.json
#	mobile/rpc-foundation/goldens/sc-pr-link-hosted-review.json
#	mobile/rpc-foundation/goldens/sc-pr-link-read.json
#	mobile/rpc-foundation/goldens/sc-pr-link-set.json
#	mobile/rpc-foundation/goldens/sc-prefill-unavailable-on-refusal.json
#	mobile/rpc-foundation/goldens/sc-prefill-unavailable-on-rejection.json
#	mobile/rpc-foundation/goldens/sc-prerequisite-force-with-lease.json
#	mobile/rpc-foundation/goldens/sc-prerequisite-publish.json
#	mobile/rpc-foundation/goldens/sc-prerequisite-push.json
#	mobile/rpc-foundation/goldens/sc-prerequisite-skipped.json
#	mobile/rpc-foundation/goldens/sc-reveal-first-poll.json
#	mobile/rpc-foundation/goldens/sc-reveal-timeout.json
#	mobile/rpc-foundation/goldens/sc-review-commit-inner-failure.json
#	mobile/rpc-foundation/goldens/sc-review-commit-refused-empty-message.json
#	mobile/rpc-foundation/goldens/sc-review-commit-rejected.json
#	mobile/rpc-foundation/goldens/sc-review-commit.json
#	mobile/rpc-foundation/goldens/sc-review-status-entries-not-array.json
#	mobile/rpc-foundation/goldens/sc-review-status-normalized.json
#	mobile/rpc-foundation/goldens/schedules-b3.json
#	mobile/rpc-foundation/goldens/schedules-settings-home-providers-fulfilled.json
#	mobile/rpc-foundation/goldens/schedules-settings-new-tab-ssh.json
#	mobile/rpc-foundation/goldens/schedules-settings-repo-metadata-fulfilled.json
#	mobile/rpc-foundation/goldens/schedules-settings-resume-metadata-fulfilled.json
#	mobile/rpc-foundation/goldens/schedules-settings-task-hydration-fulfilled.json
#	mobile/rpc-foundation/goldens/schedules-settings-workspace-context-fulfilled.json
#	mobile/rpc-foundation/goldens/session-browser-tab-created.json
#	mobile/rpc-foundation/goldens/session-create-browser-refused.json
#	mobile/rpc-foundation/goldens/session-create-browser-tab.json
#	mobile/rpc-foundation/goldens/session-create-markdown-name-collision.json
#	mobile/rpc-foundation/goldens/session-create-markdown-note.json
#	mobile/rpc-foundation/goldens/session-create-terminal-ignores-a-second-create-in-flight.json
#	mobile/rpc-foundation/goldens/session-create-terminal-launches-an-agent-quick-command.json
#	mobile/rpc-foundation/goldens/session-create-terminal-refused.json
#	mobile/rpc-foundation/goldens/session-create-terminal-replaces-active.json
#	mobile/rpc-foundation/goldens/session-create-terminal-runs-a-quick-command.json
#	mobile/rpc-foundation/goldens/session-create-terminal-with-prompt.json
#	mobile/rpc-foundation/goldens/session-create-terminal-without-active-tab.json
#	mobile/rpc-foundation/goldens/session-create-terminal-without-handle.json
#	mobile/rpc-foundation/goldens/session-diff-notes-load-refused.json
#	mobile/rpc-foundation/goldens/session-diff-notes-loaded.json
#	mobile/rpc-foundation/goldens/session-file-tab-read.json
#	mobile/rpc-foundation/goldens/session-markdown-disk-read.json
#	mobile/rpc-foundation/goldens/session-markdown-disk-served.json
#	mobile/rpc-foundation/goldens/session-markdown-save-conflict.json
#	mobile/rpc-foundation/goldens/session-markdown-saved.json
#	mobile/rpc-foundation/goldens/session-markdown-tab-disk-fallback.json
#	mobile/rpc-foundation/goldens/session-markdown-tab-read.json
#	mobile/rpc-foundation/goldens/session-markdown-tab-refused.json
#	mobile/rpc-foundation/goldens/session-startup-both-activation-sites.json
#	mobile/rpc-foundation/goldens/session-startup-floating-route-skips-activation.json
#	mobile/rpc-foundation/goldens/session-startup-keeps-terminals-visible-on-reconnect.json
#	mobile/rpc-foundation/goldens/session-startup-refused-tab-load-still-loads-terminals.json
#	mobile/rpc-foundation/goldens/session-tab-activation-focus-and-activate.json
#	mobile/rpc-foundation/goldens/session-tab-activation-refused.json
#	mobile/rpc-foundation/goldens/session-tab-activation-transport-error.json
#	mobile/rpc-foundation/goldens/session-tab-close-refused-keeps-tab.json
#	mobile/rpc-foundation/goldens/session-tab-close-session-tab.json
#	mobile/rpc-foundation/goldens/session-tab-close-terminal.json
#	mobile/rpc-foundation/goldens/session-tab-closed.json
#	mobile/rpc-foundation/goldens/session-tab-rename.json
#	mobile/rpc-foundation/goldens/session-tab-renamed.json
#	mobile/rpc-foundation/goldens/session-tabs-health-errored.json
#	mobile/rpc-foundation/goldens/session-tabs-health-reconciled.json
#	mobile/rpc-foundation/goldens/session-tabs-health-refused.json
#	mobile/rpc-foundation/goldens/session-tabs-health-stale-application-revision.json
#	mobile/rpc-foundation/goldens/session-terminal-display-mode-auto-take-floor.json
#	mobile/rpc-foundation/goldens/session-terminal-display-mode-auto-without-device-token.json
#	mobile/rpc-foundation/goldens/session-terminal-display-mode-auto-without-viewport.json
#	mobile/rpc-foundation/goldens/session-terminal-display-mode-drops-second-toggle.json
#	mobile/rpc-foundation/goldens/session-terminal-display-mode-to-desktop.json
#	mobile/rpc-foundation/goldens/session-terminal-list-dedupes-handles.json
#	mobile/rpc-foundation/goldens/session-terminal-list-empty-guarded.json
#	mobile/rpc-foundation/goldens/session-terminal-list-merged.json
#	mobile/rpc-foundation/goldens/session-terminal-list-refused.json
#	mobile/rpc-foundation/goldens/settings-bot-overrides-fulfilled.json
#	mobile/rpc-foundation/goldens/settings-bot-overrides-refresh-refused.json
#	mobile/rpc-foundation/goldens/settings-bot-overrides-refused.json
#	mobile/rpc-foundation/goldens/settings-bot-overrides-transport-error.json
#	mobile/rpc-foundation/goldens/settings-home-coalesced.json
#	mobile/rpc-foundation/goldens/settings-home-providers-fulfilled.json
#	mobile/rpc-foundation/goldens/settings-home-providers-refuse-after-data.json
#	mobile/rpc-foundation/goldens/settings-home-providers-refused.json
#	mobile/rpc-foundation/goldens/settings-home-providers-transport-error.json
#	mobile/rpc-foundation/goldens/settings-new-tab-refused.json
#	mobile/rpc-foundation/goldens/settings-new-tab-ssh.json
#	mobile/rpc-foundation/goldens/settings-new-tab-transport-error.json
#	mobile/rpc-foundation/goldens/settings-repo-cache-expiry.json
#	mobile/rpc-foundation/goldens/settings-repo-metadata-fulfilled.json
#	mobile/rpc-foundation/goldens/settings-repo-metadata-icons.json
#	mobile/rpc-foundation/goldens/settings-repo-metadata-refuse-after-data.json
#	mobile/rpc-foundation/goldens/settings-repo-metadata-refused.json
#	mobile/rpc-foundation/goldens/settings-repo-metadata-single-host.json
#	mobile/rpc-foundation/goldens/settings-repo-metadata-transport-error.json
#	mobile/rpc-foundation/goldens/settings-resume-metadata-fulfilled.json
#	mobile/rpc-foundation/goldens/settings-resume-metadata-refuse-after-data.json
#	mobile/rpc-foundation/goldens/settings-resume-metadata-refused.json
#	mobile/rpc-foundation/goldens/settings-resume-metadata-transport-error.json
#	mobile/rpc-foundation/goldens/settings-task-hydration-fulfilled.json
#	mobile/rpc-foundation/goldens/settings-task-hydration-refuse-after-data.json
#	mobile/rpc-foundation/goldens/settings-task-hydration-refused.json
#	mobile/rpc-foundation/goldens/settings-task-hydration-transport-error.json
#	mobile/rpc-foundation/goldens/settings-task-workspace-create-linear.json
#	mobile/rpc-foundation/goldens/settings-task-workspace-create-pr-start-point.json
#	mobile/rpc-foundation/goldens/settings-task-workspace-fulfilled.json
#	mobile/rpc-foundation/goldens/settings-task-workspace-refused.json
#	mobile/rpc-foundation/goldens/settings-task-workspace-transport-error.json
#	mobile/rpc-foundation/goldens/settings-task-write.json
#	mobile/rpc-foundation/goldens/settings-workspace-context-fulfilled.json
#	mobile/rpc-foundation/goldens/settings-workspace-context-refuse-after-data.json
#	mobile/rpc-foundation/goldens/settings-workspace-context-refused.json
#	mobile/rpc-foundation/goldens/settings-workspace-context-transport-error.json
#	mobile/rpc-foundation/goldens/settings-workspace-submit-fulfilled.json
#	mobile/rpc-foundation/goldens/settings-workspace-submit-refused.json
#	mobile/rpc-foundation/goldens/settings-workspace-submit-transport-error.json
#	mobile/rpc-foundation/goldens/speech-audio-chunk-acknowledged.json
#	mobile/rpc-foundation/goldens/speech-desktop-start-fulfilled.json
#	mobile/rpc-foundation/goldens/speech-desktop-start-recording-failed.json
#	mobile/rpc-foundation/goldens/speech-desktop-start-superseded.json
#	mobile/rpc-foundation/goldens/speech-dictation-session-cancelled.json
#	mobile/rpc-foundation/goldens/speech-dictation-session-transcript.json
#	mobile/rpc-foundation/goldens/speech-setup-sheet-denied-to-mobile.json
#	mobile/rpc-foundation/goldens/speech-setup-sheet-fulfilled.json
#	mobile/rpc-foundation/goldens/speech-setup-sheet-legacy-desktop.json
#	mobile/rpc-foundation/goldens/speech-setup-sheet-model-vocabulary.json
#	mobile/rpc-foundation/goldens/structured-agent-session-created.json
#	mobile/rpc-foundation/goldens/structured-launch-created.json
#	mobile/rpc-foundation/goldens/structured-launch-definitive-refusal.json
#	mobile/rpc-foundation/goldens/structured-launch-replays-dropped-create.json
#	mobile/rpc-foundation/goldens/structured-launch-support-refused.json
#	mobile/rpc-foundation/goldens/structured-launch-unsupported.json
#	mobile/rpc-foundation/goldens/tasks-route-repo-list.json
#	mobile/rpc-foundation/goldens/terminal-gesture-flush-and-clear.json
#	mobile/rpc-foundation/goldens/terminal-input-send-accepted.json
#	mobile/rpc-foundation/goldens/terminal-input-send-refused.json
#	mobile/rpc-foundation/goldens/terminal-live-input-accepted.json
#	mobile/rpc-foundation/goldens/terminal-paste-accepted.json
#	mobile/rpc-foundation/goldens/terminal-paste-refused.json
#	mobile/rpc-foundation/goldens/terminal-query-reply-accepted.json
#	mobile/rpc-foundation/goldens/terminal-query-reply-unsubscribed.json
#	mobile/rpc-foundation/goldens/terminal-raw-input-refused.json
#	mobile/rpc-foundation/goldens/terminal-raw-input-reported.json
#	mobile/rpc-foundation/goldens/terminal-takeover-report-accepted.json
#	mobile/rpc-foundation/goldens/terminal-takeover-report-retried.json
#	mobile/rpc-foundation/goldens/terminal-viewport-refit-applied.json
#	mobile/rpc-foundation/goldens/terminal-viewport-refit-legacy-desktop.json
#	mobile/rpc-foundation/goldens/terminal-worktree-connection-resolved.json
#	mobile/rpc-foundation/goldens/tk-create-github.json
#	mobile/rpc-foundation/goldens/tk-create-gitlab.json
#	mobile/rpc-foundation/goldens/tk-create-linear.json
#	mobile/rpc-foundation/goldens/tk-item-checks-files.json
#	mobile/rpc-foundation/goldens/tk-item-comment-github.json
#	mobile/rpc-foundation/goldens/tk-item-comment-gitlab-mr.json
#	mobile/rpc-foundation/goldens/tk-item-comment-gitlab.json
#	mobile/rpc-foundation/goldens/tk-item-detail-github-reactions.json
#	mobile/rpc-foundation/goldens/tk-item-detail-github.json
#	mobile/rpc-foundation/goldens/tk-item-detail-gitlab-reactions.json
#	mobile/rpc-foundation/goldens/tk-item-detail-gitlab.json
#	mobile/rpc-foundation/goldens/tk-item-detail-linear.json
#	mobile/rpc-foundation/goldens/tk-item-detail-metadata.json
#	mobile/rpc-foundation/goldens/tk-item-merge-gitlab.json
#	mobile/rpc-foundation/goldens/tk-item-metadata-github.json
#	mobile/rpc-foundation/goldens/tk-item-metadata-gitlab-mr.json
#	mobile/rpc-foundation/goldens/tk-item-metadata-gitlab.json
#	mobile/rpc-foundation/goldens/tk-item-reply-merge.json
#	mobile/rpc-foundation/goldens/tk-item-review-github.json
#	mobile/rpc-foundation/goldens/tk-item-status-gitlab-mr.json
#	mobile/rpc-foundation/goldens/tk-item-status-gitlab.json
#	mobile/rpc-foundation/goldens/tk-linear-connect.json
#	mobile/rpc-foundation/goldens/tk-linear-item.json
#	mobile/rpc-foundation/goldens/tk-linear-team-context.json
#	mobile/rpc-foundation/goldens/tk-list-gitlab-items.json
#	mobile/rpc-foundation/goldens/tk-list-gitlab-todos.json
#	mobile/rpc-foundation/goldens/tk-list-linear.json
#	mobile/rpc-foundation/goldens/tk-project-board-load.json
#	mobile/rpc-foundation/goldens/tk-project-repo-slugs.json
#	mobile/rpc-foundation/goldens/tk-project-row-comments-issue.json
#	mobile/rpc-foundation/goldens/tk-project-row-comments-pr.json
#	mobile/rpc-foundation/goldens/tk-project-row-detail.json
#	mobile/rpc-foundation/goldens/tk-project-row-fields.json
#	mobile/rpc-foundation/goldens/tk-project-row-files-merge.json
#	mobile/rpc-foundation/goldens/tk-project-row-metadata-load.json
#	mobile/rpc-foundation/goldens/tk-project-row-review-checks.json
#	mobile/rpc-foundation/goldens/tk-project-row-threads.json
#	mobile/rpc-foundation/goldens/tk-provider-load.json
#	mobile/rpc-foundation/goldens/transport-capability-probe-cutover-reasks-fast.json
#	mobile/rpc-foundation/goldens/transport-capability-probe-non-string-capabilities-drop.json
#	mobile/rpc-foundation/goldens/transport-capability-probe-publishes.json
#	mobile/rpc-foundation/goldens/transport-capability-probe-refused-backs-off.json
#	mobile/rpc-foundation/goldens/transport-host-status-gates-drop-keeps-capabilities.json
#	mobile/rpc-foundation/goldens/transport-host-status-gates-ready.json
#	mobile/rpc-foundation/goldens/transport-host-status-gates-refused-degrades.json
#	mobile/rpc-foundation/goldens/transport-pairing-race-both-refused.json
#	mobile/rpc-foundation/goldens/transport-pairing-race-direct-completes-first.json
#	mobile/rpc-foundation/goldens/transport-pairing-race-relay-completes-first.json
#	mobile/rpc-foundation/goldens/transport-pairing-race-relay-wins-when-direct-refused.json
#	mobile/rpc-foundation/goldens/tw-capabilities-advertised.json
#	mobile/rpc-foundation/goldens/tw-capabilities-cutover-retried.json
#	mobile/rpc-foundation/goldens/tw-capabilities-legacy-idempotency.json
#	mobile/rpc-foundation/goldens/tw-create-retry-agent-launched.json
#	mobile/rpc-foundation/goldens/tw-create-retry-ambiguous-after-drop.json
#	mobile/rpc-foundation/goldens/tw-create-retry-ambiguous-while-connected.json
#	mobile/rpc-foundation/goldens/tw-create-retry-ambiguous-without-idempotency.json
#	mobile/rpc-foundation/goldens/tw-create-retry-created.json
#	mobile/rpc-foundation/goldens/tw-create-retry-name-collision.json
#	mobile/rpc-foundation/goldens/tw-create-retry-unretryable-refusal.json
#	mobile/rpc-foundation/goldens/tw-create-retry-warning-kept.json
#	mobile/rpc-foundation/goldens/tw-hosted-base-resolved.json
#	mobile/rpc-foundation/goldens/tw-hosted-base-soft-error.json
#	mobile/rpc-foundation/goldens/tw-paste-lookup-resolved.json
#	mobile/rpc-foundation/goldens/tw-paste-lookup-slug-refused.json
#	mobile/rpc-foundation/goldens/tw-paste-lookup-slug-unsupported.json
#	mobile/rpc-foundation/goldens/tw-setup-hook-trust-always.json
#	mobile/rpc-foundation/goldens/tw-setup-hook-trust-approved.json
#	mobile/rpc-foundation/goldens/tw-smart-search-all-providers.json
#	mobile/rpc-foundation/goldens/tw-smart-search-gitlab-provider-error.json
#	mobile/rpc-foundation/goldens/tw-smart-search-linear-listed.json
#	mobile/rpc-foundation/goldens/tw-task-preferences-resume-write.json
#	mobile/rpc-foundation/goldens/tw-workspace-source-presets-refused.json
#	mobile/rpc-foundation/goldens/tw-workspace-source-presets.json
#	mobile/rpc-foundation/goldens/tw-workspace-sparse-missing-preset.json
#	mobile/rpc-foundation/goldens/tw-workspace-sparse-saved.json
#	mobile/rpc-foundation/goldens/tw-workspace-ssh-connect-refused.json
#	mobile/rpc-foundation/goldens/tw-workspace-ssh-connected.json
#	mobile/rpc-foundation/goldens/tw-workspace-ssh-local-agents.json
#	mobile/rpc-foundation/goldens/tw-workspace-ssh-not-ready.json
#	mobile/rpc-foundation/goldens/worktree-catalog-snapshot-unreadable.json
#	mobile/rpc-foundation/goldens/worktree-catalog-snapshot.json
#	mobile/rpc-foundation/goldens/worktree-home-catalog.json
#	mobile/rpc-foundation/goldens/worktree-retired-names.json
#	mobile/rpc-foundation/pilot-scenarios.json
#	mobile/src/transport/mobile-web-bundle-fetch.ts
This commit is contained in:
Jinwoo-H
2026-09-22 23:51:46 -04:00
2 changed files with 14 additions and 7 deletions
@@ -118,7 +118,8 @@ function waveHost(files: Record<string, string>, options: WaveHostOptions = {})
const settleMicrotasks = () => new Promise((resolve) => setTimeout(resolve, 0))
/** Releases wave after wave until `done` settles; returns how many waves it took. */
/** Releases wave after wave until `done` settles and returns how many waves that took, then keeps
* draining, so a read that should have been stopped is counted instead of left unreleased. */
const runWaves = async (
done: Promise<unknown>,
beforeWave?: (wave: number) => void
@@ -138,6 +139,12 @@ function waveHost(files: Record<string, string>, options: WaveHostOptions = {})
wave.forEach((release) => release())
await settleMicrotasks()
}
while (waiting.length > 0) {
const wave = waiting
waiting = []
wave.forEach((release) => release())
await settleMicrotasks()
}
return waves
}
@@ -200,24 +200,24 @@ function verifyReassembledAsset(asset: AssetReassembly): Uint8Array {
* different build, and nothing else in the reply would say so.
*/
function assertWindowDescribesAsset(
window: MobileWebBundleWindowHeader,
reply: MobileWebBundleWindowHeader,
asset: MobileWebBundleAssetRead,
buildId: string,
offset: number
): void {
if (window.buildId !== buildId) {
if (reply.buildId !== buildId) {
throw new MobileWebBundleFetchError(
'build-changed-mid-fetch',
`bundle build changed mid-fetch: asked ${buildId}, served ${window.buildId}`
`bundle build changed mid-fetch: asked ${buildId}, served ${reply.buildId}`
)
}
if (window.path !== asset.path || window.offset !== offset) {
if (reply.path !== asset.path || reply.offset !== offset) {
throw new MobileWebBundleFetchError(
'chunk-misrouted',
`bundle window answered ${window.path} at ${window.offset}, not ${asset.path} at ${offset}`
`bundle window answered ${reply.path} at ${reply.offset}, not ${asset.path} at ${offset}`
)
}
if (window.sha256 !== asset.sha256 || window.assetByteLength !== asset.byteLength) {
if (reply.sha256 !== asset.sha256 || reply.assetByteLength !== asset.byteLength) {
throw new MobileWebBundleFetchError(
'asset-entry-changed',
`bundle asset ${asset.path} no longer matches the manifest entry`