Variable: QuestionEventSchema
constQuestionEventSchema:ZodObject<{content:ZodString;conversation_id:ZodOptional<ZodString>;message_id:ZodOptional<ZodString>;space_id:ZodString;type:ZodLiteral<"question">; },$strip>
Lifecycle event: the question this turn is asking Genie. Fires
once per genieEventChat call, the first time the underlying
genieChat loop yields a GenieMessage. Carries the prompt
text Genie echoed back on message.content and the assigned
message_id so subscribers can group every subsequent event
for this turn under one stable key. conversation_id is
populated for both opening and follow-up turns (Genie assigns
it on startConversation).
Deferred (instead of fired synchronously on entry) so the
message_id is available when the event lands - that one round
trip costs ~200ms but lets UIs render question / thinking /
query / text as a single grouped block per Genie call instead
of a flat stream.
attachment_id is intentionally absent - questions are turn
scoped, not attachment scoped.