From 8b5a49d827e3df4cdfc53facba67ffb6f6d1af05 Mon Sep 17 00:00:00 2001 From: Jinwoo-H Date: Tue, 15 Sep 2026 18:05:11 -0400 Subject: [PATCH] docs(mobile): state what actually gates the native chat paging read The `nativeChat.readSession` send sits in the paging callback, not in the mount effect. What blocks recording it is that the mount effect's `nativeChat.subscribe` is what arms the offset and generation the callback pages against, and the request-only runner refuses to open a subscription. Claude-Session: https://claude.ai/code/session_01JNnE9qzUZMMnqpZWCqM3nb --- .../src/transport/unvalidated-rpc-request-port-inventory.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/mobile/src/transport/unvalidated-rpc-request-port-inventory.ts b/mobile/src/transport/unvalidated-rpc-request-port-inventory.ts index 5519728d72a..4cf1301d1ac 100644 --- a/mobile/src/transport/unvalidated-rpc-request-port-inventory.ts +++ b/mobile/src/transport/unvalidated-rpc-request-port-inventory.ts @@ -115,9 +115,9 @@ export const UNVALIDATED_RPC_REQUEST_PORT_PENDING: readonly UnvalidatedRpcReques // effect as a `runtime.clientEvents` subscription, and the request-only recording runner refuses // to open one, so no golden can hold this file's behaviour. { file: 'src/session/use-live-worktree-name.ts', references: 1 }, - // Holdout: unrecorded site, record-first rule. Mounting the hook runs a `nativeChat.subscribe` - // in the same effect, which the request-only runner refuses; the paging read next to it cannot - // be reached without it. + // Holdout: unrecorded site, record-first rule. The `nativeChat.readSession` read lives in the + // paging callback, not in an effect, but only the mount effect's `nativeChat.subscribe` arms the + // offset and generation it pages against — and the request-only runner refuses to open one. { file: 'src/session/use-mobile-native-chat-session.ts', references: 1 }, // Holdout: unrecorded site, record-first rule. The hook reads the pasteboard and the PTY mode // registry before the send, so a recording would pin device state rather than the wire.