Keeps both sides of the native-chat rework: main's restructured turn status,
live tool progress, inline diff cards, Codex tool row labels and selectable
prose land in the native mobile path unchanged, while the hybrid branch's
injected device operations (onCopyText, onOpenLink) and operations-based chat
transport survive.
- MobileMarkdown: main's `selectable` prose plus the branch's onOpenLink route.
- MobileNativeChatMessage: main's ToolRun/TurnStatus split and structured
activity gating, minus the direct expo-clipboard import the branch replaced
with an injected copy operation.
- MobileNativeChatView: main's MobileNativeChatPromptCard extraction and turn
disclosure, with the branch's onOpenLink/onCopyText row props.
- use-mobile-native-chat-session-lane: main's lane extraction re-targeted at the
branch's operations/connected transport instead of client/connState.
- terminal-links: main dropped countPathStarts for an incremental scan; the
branch's multi-path reject now drains that same lazy scan.
Claude-Session: https://claude.ai/code/session_01JNnE9qzUZMMnqpZWCqM3nb