Variable: MessageEventSchema
constMessageEventSchema:ZodObject<{conversation_id:ZodOptional<ZodString>;message:ZodObject<{attachments:ZodOptional<ZodArray<ZodObject<{attachment_id:ZodOptional<ZodString>;attachment_type:ZodOptional<ZodCustom<AttachmentType,AttachmentType>>;query:ZodOptional<ZodObject<{description: …;id: …;last_updated_timestamp: …;parameters: …;query: …;query_result_metadata: …;statement_id: …;thoughts: …;title: …; },$strip>>;suggested_questions:ZodOptional<ZodObject<{questions: …; },$strip>>;text:ZodOptional<ZodObject<{content: …;id: …;purpose: …; },$strip>>; },$strip>>>;auto_regenerate_count:ZodOptional<ZodNumber>;content:ZodString;conversation_id:ZodString;created_timestamp:ZodOptional<ZodNumber>;error:ZodOptional<ZodObject<{error:ZodOptional<ZodString>;type:ZodOptional<ZodUnion<readonly [ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>]>>; },$strip>>;feedback:ZodOptional<ZodObject<{rating:ZodOptional<ZodUnion<readonly [ZodLiteral<…>,ZodLiteral<…>,ZodLiteral<…>]>>; },$strip>>;id:ZodString;last_updated_timestamp:ZodOptional<ZodNumber>;message_id:ZodString;query_result:ZodOptional<ZodObject<{is_truncated:ZodOptional<ZodBoolean>;row_count:ZodOptional<ZodNumber>;statement_id:ZodOptional<ZodString>;statement_id_signature:ZodOptional<ZodString>; },$strip>>;space_id:ZodString;status:ZodOptional<ZodUnion<readonly [ZodLiteral<"ASKING_AI">,ZodLiteral<"CANCELLED">,ZodLiteral<"COMPLETED">,ZodLiteral<"EXECUTING_QUERY">,ZodLiteral<"FAILED">,ZodLiteral<"FETCHING_METADATA">,ZodLiteral<"FILTERING_CONTEXT">,ZodLiteral<"PENDING_WAREHOUSE">,ZodLiteral<"QUERY_RESULT_EXPIRED">,ZodLiteral<"SUBMITTED">]>>;user_id:ZodOptional<ZodNumber>; },$strip>;message_id:ZodOptional<ZodString>;space_id:ZodString;type:ZodLiteral<"message">; },$strip>
Lifecycle event: raw GenieMessage snapshot for the active
turn. Fires once per poll yield. The full message shape
(including the widened thought / regen / attachment-type
fields) is exposed inline as message; consumers narrow on
event.type === "message" and reach for event.message.