eventEnvelopeSchema
@mineflow/contracts / eventEnvelopeSchema
Variable: eventEnvelopeSchema
const eventEnvelopeSchema: ZodObject<{
causationId: ZodOptional<ZodString>;
correlationId: ZodOptional<ZodString>;
data: ZodUnknown;
id: ZodString;
occurredAt: ZodString;
organizationId: ZodString;
producedBy: ZodString;
type: ZodString;
version: ZodString;
}, $strip>;
Defined in: envelope.ts:36
Единый конверт всех доменных событий MineFlow (SSoT формы события).
Полезная нагрузка лежит в data, метаданные — снаружи: id, type,
version, occurredAt, producedBy, корреляция и organizationId.
data намеренно типизирован как unknown — конкретная форма зависит от
type. Сузить её до конкретного события помогает eventCatalog
(EventDataByName<N>). Backend валидирует конверт этой схемой при
publish/consume; на фронте обычно нужен только EventEnvelope-тип.
См. ADR-0013 «Формат доменных событий (Event Envelope)» и ADR-0020 «Multi-tenancy через shared DB + organization_id».