Send preview error fix requests directly instead of prefilling the composer (#2459)
Clicking the error pill in the artifact panel (or the error button in the
fullscreen HTML preview) now sends the "ask to fix" message immediately
through the normal send pipeline instead of dropping it into the chat
input. On mobile, where the panel is a fullscreen overlay hiding the
chat, sending also closes the panel so the user sees their message and
the streaming reply; the panel auto-reopens when the fixed version
starts streaming. On desktop the panel stays open and receives the fix.
ChatWindow owns a single sendFixRequest handler, passed to ArtifactPanel
as a prop and exposed to CodeBlock's preview modal via the artifacts
context. The pill is disabled while a response streams and hidden when
the conversation cannot accept messages. Sending bypasses the draft so a
half-typed message survives, and queued attachments are stashed around
the send (with a matching consumed-only clear in the conversation page)
so they are neither attached to the fix request nor lost.
The shared message text lives in composeFixRequest in previewSrcdoc.ts,
replacing duplicated logic, and the now-unused pendingChatInput store is
removed.