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

shiftReportSummarySchema

@mineflow/contracts


@mineflow/contracts / shiftReportSummarySchema

Variable: shiftReportSummarySchema

const shiftReportSummarySchema: ZodDefault<ZodObject<{
assetWorkingHours: ZodDefault<ZodArray<ZodObject<{
assetId: ZodUUID;
hoursWorked: ZodNumber;
}, $strip>>>;
blastedBlocks: ZodDefault<ZodNumber>;
blastedExplosiveKg: ZodDefault<ZodNumber>;
blastedVolumeM3: ZodDefault<ZodNumber>;
blastingByBlock: ZodDefault<ZodArray<ZodObject<{
blockCode: ZodString;
volumeM3: ZodNumber;
}, $strip>>>;
drilledMeters: ZodDefault<ZodNumber>;
drillingByBlock: ZodDefault<ZodArray<ZodObject<{
blockCode: ZodString;
depthMeters: ZodNumber;
}, $strip>>>;
fuelConsumedLitres: ZodDefault<ZodNumber>;
holesDrilled: ZodDefault<ZodNumber>;
personnelCount: ZodDefault<ZodNumber>;
}, $strip>>;

Defined in: events/prd/shift-report.ts:15

ShiftReport summary — числовой rollup отчёта в момент утверждения. Используется read-side projector'ом shift-report-daily-summary (ADR-0032) как единственный источник данных (projection не читает write-side таблицы).

Каждое поле имеет default(0) — гарантия backward-compat: envelope без summary парсится как нулевые дельты, projector создаёт корректную (пустую) строку. Это позволяет catch-up'ить старые approved-события из event_outbox без миграции payload'а.