6b3977b577
uploadComposerAttachment's remote/local decision (image.attach vs image.attach_bytes) read $connection.get()?.mode — the window's ambient connection — at all three call sites. Since the multi-connection routing work landed, a session can be owned by a different, registered connection than the ambient one (Bot Mode, the unified Sessions list): the RPC itself already routes to that owner via requestForSessionProfile, but the byte-vs-path decision did not, so a local-ambient window chatting in a remote-owned session shipped a client-local composer-images path to a backend that can't read it (#94640). isSessionRemote() resolves the session's own owner route (falling back to ambient only when no owner route is known, matching the existing RPC routing behavior in session-states.ts) and replaces the three ambient reads in use-prompt-actions/index.ts, session-tile-actions.ts, and user-edit-composer.tsx.