cmux NEXT: keep Send enabled while trust state loads

Closed
TE
13d ago
+171-14

What broke

When cmux NEXT was reading a folder's trust state, useFolderTrustAsk exposed an empty {} block. The composer treated any block object as a hard Send disable, so the draft stayed in the field and clicking Send did nothing without an explanation.

Fix

  • Treat only a block with a concrete reason as a trust send block.
  • Keep the new-chat folder-choice flow as an explicit blockSend hard stop.
  • Keep Send, queueing, and prompt suggestions active while trust is being read.

The UI work remains under the Session Rail name; this PR only repairs composer delivery state.

Verification

  • python3 scripts/cmux-next/prepush-gate.py — passed.
  • scripts/web-lint.sh — passed.
  • git diff --check — passed.
  • Targeted Bun tests were attempted but could not start because this checkout has no webviews/node_modules (@base-ui/utils/useIsoLayoutEffect missing).

Agent session: cosmic-gray


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need.


Summary by cubic

Fixes the cmux NEXT composer so Send stays enabled while a folder's trust state is loading. When trust was being read, useFolderTrustAsk exposed an empty {} block, which the composer treated as a hard Send disable, leaving the draft stuck with no explanation.

Now only a block with a concrete reason disables Send; the new-chat folder-choice wait is a separate blockSend hard stop. Send, queueing, and prompt suggestions stay active during trust reads.