Перейти к основному содержимому

eventEnvelopeSchema

@mineflow/contracts


@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».