Merge remote-tracking branch 'origin/main' into task/144
main's #640 rewrote the same mid-turn send this branch widens, so both sides of every steer hunk are kept: * `onSteer` takes main's `(text, blocks?)` across all three composer layers, alongside this branch's `steerChannel`. `onForkSend` stays deleted. * `handleSteerClick` keeps main's body — the uploading gate and the block payload — and this branch's channel-keyed label, icon and failure toast. A pull session with an attachment now reaches the backend's blocks rejection as ordinary operation, and lands on the same queue fallback. * `steerAttachmentsUnsupported` goes with main's deletion (attachments are supported now); `steerNoteFailed` stays in all ten locales. * Both test suites keep every case from both sides. `submit_feedback`'s comment on the pull-path blocks rejection said it only arises after a native downgrade; with the affordance on every session it is now the normal path for a pull session, so it says both.
X
xintaofei committed
afba72979a7a52500f474e1d8e2b4ddb44d2ca93