shiftReportSummarySchema
@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'а.