fix(chat): default the mid-turn send to the weaker promise and lock its copy
`steerChannel` now defaults to `pull`, matching `FeedbackDialog.channel`: a caller that wires `onSteer` without declaring a channel understates delivery instead of promising an insert the session cannot perform. The pull menu item carries the notes strip's Clock instead of the instant-insert Zap. `steerAvailable` folds in `connectionId`, so it means what its name says on every render rather than only after the reset effect has run; `canSubmit` composes from it unchanged. Tests: the "no steer channel" case now waits for both snapshot reads to settle (it previously asserted the initial `false` and passed against a hook that enabled the channel after the snapshot resolved); new cases cover the `pull` default and the `steerNoteFailed` toast.
X
xintaofei committed
a462935b1b33724e2f28164e849419a848ebe08a
Parent: 877f40e