| anaDowntimeEvents | - |
| anaShiftStatisticsEvents | - |
| assetAssignmentClosedDataSchema | hr.asset-assignment.closed — закрепление закрыто (toDate). cause различает источник закрытия: ручное, каскад от списания актива (EAM), каскад от увольнения сотрудника (HR) или замена. Подписчики: Notifications. |
| assetAssignmentCreatedDataSchema | hr.asset-assignment.created — актив закреплён за сотрудником в роли с даты fromDate. Подписчики: Notifications. |
| assetAssignmentRoleEnum | Роль закрепления: основной оператор / сменный оператор / механик. |
| assetCreatedDataSchema | eam.asset.created — актив зарегистрирован и введён в эксплуатацию. Подписчики: ANA (инициализация KTG/КИО), Notifications. |
| assetHoursAccumulatedDataSchema | eam.asset.hours-accumulated — моточасы актива за смену зафиксированы. Подписчики: EAM (учёт износа для maintenance scheduling), ANA (KTG/КИО). |
| assetHoursAccumulatedRevertedDataSchema | eam.asset.hours-accumulated-reverted — counter-event для сторно. Подписчики откатывают моточасы и пересчитывают maintenance schedule. |
| assetMaintenanceDueDataSchema | eam.asset.maintenance-due — по активу наступил срок ТО (норма выработки или календарный срок). Подписчики: EAM (планирование ТО), Notifications (механик). |
| assetMovementOpEnum | Тип операции перемещения: консервация / расконсервация / аудиторский перенос. |
| assetMovementStatusEnum | Статус записи перемещения: черновик / применена. |
| assetStatusChangedDataSchema | eam.asset.status-changed — статус актива изменился (FSM-переход). Несёт fromStatus/toStatus для аудита перехода. Подписчики: ANA, EAM (учёт доступности оборудования), Notifications. |
| assetStatusEnum | Статусы актива: рабочий / на ТО / на консервации / списан. |
| assetTransferredDataSchema | eam.asset.transferred — актив перемещён между производственными объектами. Подписчики: ANA (привязка моточасов к объекту), Notifications. |
| brigadeCompositionChangedDataSchema | hr.brigade.composition-changed — сотрудник добавлен/исключён из состава бригады (action). fromDate/toDate задают период членства. Подписчики: Notifications, downstream-учёт состава смен. |
| brigadeCreatedDataSchema | hr.brigade.created — бригада создана и закреплена за объектом. brigadierId nullable — бригадир может быть назначен позже. Подписчики: Notifications. |
| brigadeDeactivatedDataSchema | hr.brigade.deactivated — бригада расформирована/деактивирована. Подписчики: Notifications. |
| brigadeUpdatedDataSchema | hr.brigade.updated — изменены атрибуты бригады. changedFields перечисляет затронутые поля (для аудита и точечной инвалидации). Подписчики: Notifications. |
| brigadeWorkTypeEnum | Тип работ бригады: буровая / взрывная / вспомогательная. |
| dateRangeSchema | Диапазон дат { from, to } (обе границы включительно, ISO 8601). .refine гарантирует from <= to — невалидный диапазон отвергается на parse. |
| downtimeRecordedDataSchema | ana.downtime.recorded — простой зафиксирован при approve сменного отчёта. Подписчики: ANA (KTG/КИО), EAM (предиктивное ТО). |
| downtimeRecordedRevertedDataSchema | ana.downtime.recorded-reverted — counter-event для сторно. Подписчики откатывают записанный простой из KTG/КИО. |
| eamAssetEvents | Записи каталога EAM/Asset: имя события → { version, schema }. |
| eamAssetHoursEvents | Записи каталога EAM/Asset hours: имя события → { version, schema }. |
| eamMaintenanceEvents | Записи каталога EAM/Maintenance: имя события → { version, schema }. |
| eamMovementEvents | Записи каталога EAM/AssetMovement: имя события → { version, schema }. |
| eventCatalog | - |
| eventEnvelopeSchema | Единый конверт всех доменных событий MineFlow (SSoT формы события). Полезная нагрузка лежит в data, метаданные — снаружи: id, type, version, occurredAt, producedBy, корреляция и organizationId. |
| fuelConsumedDataSchema | scm.fuel.consumed — расход топлива зафиксирован при approve сменного отчёта. |
| fuelConsumedRevertedDataSchema | scm.fuel.consumed-reverted — counter-event для сторно саги. |
| fuelConsumptionAnomalyDetectedDataSchema | scm.fuel-consumption.anomaly-detected — расход за смену превысил норму > 30%. |
| fuelConsumptionRecordedDataSchema | scm.fuel-consumption.recorded — зафиксирован расход топлива из резервуара. kind различает авто-расход (из сменного отчёта) и ручной акт. Подписчики: ANA, Notifications. |
| fuelSupplyRecordedDataSchema | scm.fuel-supply.recorded — зафиксирована поставка топлива в резервуар (приход). supplyRequestId/sagaId опциональны (поставка может быть вне заявки/саги). Подписчики: ANA, Notifications. |
| fuelSupplyRequestApprovedDataSchema | scm.fuel-supply-request.approved. |
| fuelSupplyRequestCreatedDataSchema | scm.fuel-supply-request.created — FSM [*] → draft. |
| fuelSupplyRequestFulfilledDataSchema | scm.fuel-supply-request.fulfilled. |
| fuelSupplyRequestRejectedDataSchema | scm.fuel-supply-request.rejected. |
| fuelSupplyRequestSubmittedDataSchema | scm.fuel-supply-request.submitted — draft → sent. |
| fuelSupplyReversedDataSchema | scm.fuel-supply.reversed — counter-entry для сторно поставки (docs/modules/scm/fuel/events.md § Publish). |
| fuelTankDerivedStatusEnum | Производный статус резервуара по остатку: норма / внимание / критичный. |
| fuelTankLowBalanceDataSchema | scm.fuel-tank.low-balance — производный статус резервуара critical. |
| fuelTankReplenishedDataSchema | scm.fuel-tank.replenished — выход из critical. |
| hrAssetAssignmentEvents | Записи каталога HR/Asset-assignments: имя события → { version, schema }. |
| hrBrigadeEvents | Записи каталога HR/Brigades: имя события → { version, schema }. |
| hrIamEvents | Записи каталога HR/IAM: имя события → { version, schema }. |
| hrPersonnelEvents | Записи каталога HR/Personnel: имя события → { version, schema }. |
| hrPositionEvents | Записи каталога HR/Position: имя события → { version, schema }. |
| hrRoleUpdatedDataSchema | hr.role.updated — обновлена системная роль (code/version). Подписчики: модули, кэширующие справочник ролей / permission-cache. |
| hrTimesheetEvents | Записи каталога HR/Timesheet: имя события → { version, schema }. |
| hrUserAccountEvents | Записи каталога HR/User-accounts: имя события → { version, schema }. |
| hrUserAccountRoleChangedDataSchema | hr.user-account.role-changed — роль учётной записи заменена (oldRoleId → newRoleId). Подписчики: permission-cache invalidation, Notifications. |
| hrWatchEvents | Записи каталога HR/Watches: имя события → { version, schema }. |
| hseEvents | - |
| hseViolationEvents | - |
| hseViolationRelatedToSupplierDataSchema | - |
| hseViolationSeverityEnum | hse.violation.related-to-supplier — HSE-нарушение, связанное с поставщиком. |
| integrationEvents | - |
| integrationOnecEvents | - |
| isoDateSchema | Дата-время в формате ISO 8601 / RFC 3339 (строка). Канон для всех временны́х полей событий (occurredAt-подобные shiftDate, approvedAt, …). Хранится как строка, а не Date, чтобы конверт был JSON-сериализуем без потерь (envelope живёт в outbox / Redis Streams). |
| maintenanceCancelledDataSchema | eam.maintenance.cancelled — запланированное ТО отменено (с причиной). Подписчики: EAM, Notifications. |
| maintenanceCompletedDataSchema | eam.maintenance.completed — ТО завершено, актив возвращается в работу. Несёт startedAt/completedAt для учёта простоя. Подписчики: ANA (KTG), EAM (сброс счётчика выработки до следующего ТО), Notifications. |
| maintenanceScheduledDataSchema | eam.maintenance.scheduled — ТО запланировано на актив. Подписчики: Notifications (механик), EAM (резерв доступности актива). |
| maintenanceStatusEnum | Статус записи ТО: запланировано / в работе / завершено / отменено. |
| moneyAmountSchema | Денежная сумма с валютой: { amount, currency }. amount — целое число в минимальных единицах валюты (тиыны для KZT), чтобы исключить ошибки округления с плавающей точкой; currency — трёхбуквенный код ISO 4217. |
| movementAppliedDataSchema | eam.movement.applied — операция перемещения применена к активу (запись переведена draft → applied). Подписчики: ANA, Notifications. fromObjectId/toObjectId опциональны — заполняются только для переносов. |
| onecSupplierSyncedDataSchema | integration.onec.supplier-synced — обновление реквизитов поставщика из 1С (этап 5). |
| paginationSchema | Курсорная пагинация query-параметров: { limit, cursor }. limit коэрсится из строки (query-string всегда строка), целое 1–200, default 50. cursor — опциональный непрозрачный курсор следующей страницы. |
| personnelCreatedDataSchema | hr.personnel.created — сотрудник принят на работу (нанят). Подписчики: Notifications; downstream-модули, ведущие справочник персонала. objectId nullable — сотрудник может быть нанят без привязки к объекту. |
| personnelDeactivatedDataSchema | hr.personnel.deactivated — сотрудник уволен (terminated, terminal). Запускает HR-каскад: закрытие открытых asset-assignment'ов, деактивация связанного user-account. Подписчики: hr/asset-assignments, hr/user-accounts, Notifications. |
| personnelOffVacationDataSchema | hr.personnel.off-vacation — сотрудник вернулся из отпуска (статус onVacation → active). Подписчики: Notifications. |
| personnelOffWatchDataSchema | hr.personnel.off-watch — сотрудник уехал с вахты (статус onWatch → active). Подписчики: hr/watches, Notifications. |
| personnelOnVacationDataSchema | hr.personnel.on-vacation — сотрудник ушёл в отпуск (статус → onVacation). Подписчики: Notifications. expectedReturnDate опциональна. |
| personnelOnWatchDataSchema | hr.personnel.on-watch — сотрудник заехал на вахту (статус → onWatch). Подписчики: hr/watches, Notifications. watchId опционален, если заезд не привязан к конкретному вахтовому циклу. |
| personnelStatusEnum | Статус сотрудника: активен / на вахте / в отпуске / уволен. |
| personnelTransferredDataSchema | hr.personnel.transferred — сотрудник переведён на другой производственный объект (с даты effectiveFrom). fromObjectId nullable — для первого закрепления ранее непривязанного сотрудника. Подписчики: Notifications. |
| platformEvents | - |
| platformInitializedSchema | Производственный демо-event — будет заменён реальными событиями PRD/EAM/SCM. |
| positionUpdatedDataSchema | hr.position.updated — изменение записи в справочнике должностей (CRUD на /positions/{id}). docs/modules/hr/user-accounts/events.md § Publish. |
| prdProductionPlanEvents | Записи каталога PRD/Production Plans: имя события → { version, schema }. |
| prdShiftReportEvents | Записи каталога PRD/Shift Reports: имя события → { version, schema }. |
| productionPlanAdjustmentRequestedSchema | prd.production-plan.adjustment-requested — Engineer создал amend с delta > 20%, версия в pending_ceo. Подписчики: Notifications (push CEO), ana/kpi. |
| productionPlanAmendedSchema | prd.production-plan.amended — создана новая ProductionPlanVersion в статусе auto_approved (delta ≤ 20% или инициатор = CEO) ИЛИ CEO утвердил pending_ceo. Подписчики: ana/kpi (пересчёт plan_value для оставшихся дней периода), Notifications. |
| productionPlanAmendmentRejectedSchema | prd.production-plan.amendment-rejected — CEO отклонил pending_ceo версию. Подписчики: Notifications (Engineer-инициатор), ana/kpi. |
| productionPlanApprovedSchema | prd.production-plan.approved — план утверждён (FSM draft → approved), создана ProductionPlanVersion v1. Подписчики: ana/kpi (инициализация дашборда план/факт), Notifications. |
| productionPlanCompletionLowSchema | prd.production-plan.completion-low — накопленный факт < 80% от нарастающего плана (PRD-2.5.2). Подписчики: Notifications (Engineer, CEO). |
| productionPlanForecastShortfallSchema | prd.production-plan.forecast-shortfall — прогноз по текущему темпу <100% месячного плана. Подписчики: Notifications (Engineer, Foreman). |
| productionPlanShiftNormViolatedSchema | prd.production-plan.shift-norm-violated — факт смены < 70% от норматива и нет зафикс ированного простоя. Подписчики: Notifications (Foreman, Engineer). |
| productionPlanSupersededSchema | prd.production-plan.superseded — план замещён новым планом на тот же (org, horizon, year, month). Подписчики: ana/kpi, Notifications. |
| refBulkUpdatedDataSchema | - |
| refEntityUpdatedDataSchema | - |
| refsEvents | - |
| scmFuelEvents | Записи каталога SCM/Fuel: имя события → { version, schema }. |
| scmSupplierEvents | Записи каталога SCM/Supplier: имя события → { version, schema }. |
| scmTmcEvents | - |
| shiftCreatedDataSchema | hr.shift.created — создана смена на объекте (shiftType, durationHours). watchId nullable — смена может быть вне вахтового цикла. Подписчики: hr/timesheet (создание draft-табелей), Notifications. |
| shiftForemanAssignedDataSchema | hr.shift.foreman-assigned — критичное событие для PRD 1.0. SLA < 2 сек (см. dependencies.md). При создании ShiftReport мастер смены заполняется автоматически из последнего assigned-события за указанные сутки. |
| shiftForemanMissingDataSchema | hr.shift.foreman-missing — алерт для Notifications, если за shiftDate не назначен foremanId. Публикуется периодическим cron-handler'ом. |
| shiftReportApprovedSchema | prd.shift-report.approved — отчёт утверждён инженером (submitted → approved). Запускает 6-шаговую approve-сагу (см. ApproveShiftReportSaga). Подписчики: SCM/EAM/HR/ANA — каждый выполняет свой эффект из саги. Notifications. |
| shiftReportCreatedSchema | prd.shift-report.created — черновик отчёта создан мастером (status=draft). Подписчики: HR (autofill foreman из последнего hr.shift.foreman-assigned), Notifications (мастер видит подтверждение). |
| shiftReportRejectedAfterApproveSchema | prd.shift-report.rejected-after-approve — сторно ПОСЛЕ утверждения (approved → rejected). Запускает 6-шаговую reverse-сагу. Доступно только CEO (двойное согласование). Подписчики: SCM/EAM/HR/ANA — каждый откатывает свой эффект через counter-entries (ADR-0003). Notifications. |
| shiftReportRejectedSchema | prd.shift-report.rejected — отчёт отклонён инженером ИЗ status=submitted (без бизнес-эффектов, т.к. approve-сага ещё не запускалась). Подписчики: Notifications (мастер получает «нужно исправить»). |
| shiftReportSubmittedSchema | prd.shift-report.submitted — отчёт подан на утверждение (draft → submitted). Подписчики: Notifications (инженер получает «требуется утверждение»). |
| shiftReportSummarySchema | ShiftReport summary — числовой rollup отчёта в момент утверждения. Используется read-side projector'ом shift-report-daily-summary (ADR-0032) как единственный источник данных (projection не читает write-side таблицы). |
| shiftStatisticsRecordedDataSchema | ana.shift.statistics-recorded — производственная статистика отчёта зафиксирована. Подписчики: ANA (dashboard), BI. |
| shiftStatisticsRecordedRevertedDataSchema | ana.shift.statistics-recorded-reverted — counter-event для сторно. Подписчики откатывают агрегаты из ANA dashboard. |
| shiftSubstitutionRegisteredDataSchema | hr.shift.substitution-registered — Foreman регистрирует замену/ подмену (HR 1.3). Не меняет foreman_id; меняет фактический состав смены. |
| shiftTypeEnum | Тип смены — день/ночь. Общая семантика для HR и PRD (один концепт смены), поэтому shiftReportSummarySchema/PRD reuse-ят именно этот enum. |
| supplierActivatedDataSchema | scm.supplier.activated — поставщик утверждён (under_review → active или suspended → active). Подписчики: ana/kpi (satellite cache), Notifications, Reporting. |
| supplierArchivedDataSchema | scm.supplier.archived — поставщик архивирован (terminal). Double-approval для active/suspended. Подписчики: ana/kpi, Reporting, Integration (1С: пометить контрагента архивным). |
| supplierCreatedDataSchema | scm.supplier.created — Supplier зарегистрирован в статусе draft. Подписчики: ana/kpi (satellite cache), Reporting (актам сверки). |
| supplierSentBackToDraftDataSchema | scm.supplier.sent-back-to-draft — финдиректор/admin вернул в draft с комментарием. Подписчики: Notifications (нотификация инициатора с comment). |
| supplierStatusEnum | FSM-статусы поставщика: draft → underReview → active ↔ suspended → archived. |
| supplierSubmittedForReviewDataSchema | scm.supplier.submitted-for-review — реквизиты заполнены, отправлено финдиректору. Подписчики: Notifications (нотификация ceo/admin). |
| supplierSuspendedDataSchema | scm.supplier.suspended — поставщик заблокирован. Подписчики: - scm/tmc (business reaction: cancel draft TmcInbound — SCM-SUP-INV-03c) - scm/fuel (cancel draft FuelSupply) - Notifications (главбух, снабжение) - ana/kpi |
| supplierUpdatedDataSchema | scm.supplier.updated — изменение защищённых полей (iban/bin/iin/legalName/legalAddress) на active supplier. Двойное согласование требуется для iban/bin/iin (docs/modules/scm/suppliers/events.md § Publish). Подписчики: Notifications (гл. бух при смене iban), ana/kpi, Reporting, Integration (1С sync). |
| timesheetAdjustedDataSchema | hr.timesheet.adjusted — manual_adjust инженером/админом. Несёт previousHoursWorked/previousDowntimeHours для аудита и пересчёта KPI. |
| timesheetConfirmedDataSchema | hr.timesheet.confirmed — draft → confirmed после shift-report.approved. Подписчики: ANA (для построения отчётности по фактической отработке). |
| timesheetConfirmRequestedDataSchema | hr.timesheet.confirm-requested — публикуется из шага 6 (record-timesheet) approve-саги по каждому ShiftPersonnel отчёта. HR-handler ловит событие, находит/создаёт TimesheetEntry в draft и переводит в confirmed, после чего публикует hr.timesheet.confirmed. |
| timesheetConfirmRequestedRevertedDataSchema | hr.timesheet.confirm-requested-reverted — counter-event для сторно (шаг 1 reject-after-approve саги). HR-handler переводит подтверждённый timesheet в reverted и публикует hr.timesheet.reverted. |
| timesheetRevertedDataSchema | hr.timesheet.reverted — confirmed/adjusted → reverted после shift-report.rejected-after-approve. Часы обнуляются. previousHoursWorked/previousDowntimeHours сохраняем для возможного повторного approve (revert → confirm). |
| tmcCategoryEnumSchema | - |
| tmcConsumedDataSchema | scm.tmc.consumed — legacy event (использовался до выделения шага write-off-tmc). Сохранён для обратной совместимости подписчиков ana/kpi. Новые потребители подписываются на scm.tmc-consumption.recorded. |
| tmcConsumedRevertedDataSchema | - |
| tmcConsumptionRecordedDataSchema | scm.tmc-consumption.recorded — списание ТМЦ со склада. mode различает авто-списание из сменного отчёта и ручной акт. shiftReportId/assetId/ reason nullable. Подписчики: ana/kpi, Notifications. |
| tmcConsumptionReversedDataSchema | scm.tmc-consumption.reversed — сторно ранее списанного расхода (с причиной). Подписчики: ana/kpi, Notifications. |
| tmcInboundRecordedDataSchema | scm.tmc-inbound.recorded — оприходование ТМЦ на склад (от поставщика, переносом или возвратом). supplierId/requestId nullable. Подписчики: ana/kpi, Notifications. |
| tmcInboundReversedDataSchema | scm.tmc-inbound.reversed — сторно ранее оприходованного прихода (с причиной). Подписчики: ana/kpi, Notifications. |
| tmcInventoryCompletedDataSchema | scm.tmc-inventory.completed — инвентаризация завершена (started → completed), totalVariance — суммарное расхождение по итогам. Подписчики: ana/kpi, Notifications. |
| tmcInventoryStartedDataSchema | scm.tmc-inventory.started — начата инвентаризация склада (FSM → started), lineCount — число позиций к пересчёту. Подписчики: Notifications. |
| tmcInventoryVarianceDetectedDataSchema | - |
| tmcItemCreatedDataSchema | scm.tmc-item.created — создана позиция номенклатуры ТМЦ. assetClassId nullable — связь с классом активов опциональна. Подписчики: Notifications, справочники потребителей. |
| tmcItemDeactivatedDataSchema | scm.tmc-item.deactivated — позиция номенклатуры выведена из обращения. Подписчики: Notifications. |
| tmcItemLowStockDataSchema | scm.tmc-item.low-stock — остаток позиции на складе упал ниже minStock. Подписчики: Notifications (снабжение), ana/kpi. |
| tmcItemStockoutForecastDataSchema | scm.tmc-item.stockout-forecast — прогноз исчерпания остатка по среднему расходу за 30 дней (forecastExhaustionDate/daysToExhaustion). Подписчики: Notifications (снабжение), ana/kpi. |
| tmcItemStockReplenishedDataSchema | scm.tmc-item.stock-replenished — остаток вернулся выше minStock (выход из low-stock). Подписчики: Notifications. |
| tmcItemUpdatedDataSchema | scm.tmc-item.updated — изменены атрибуты позиции (changedFields). Подписчики: Notifications, инвалидация справочников. |
| tmcMovementTypeEnumSchema | - |
| tmcReconciliationMismatchDataSchema | - |
| tmcRequestApprovedDataSchema | scm.tmc-request.approved — заявка утверждена (submitted → approved). Подписчики: снабжение, Notifications. |
| tmcRequestCreatedDataSchema | scm.tmc-request.created — создана заявка на ТМЦ (FSM → draft). Подписчики: Notifications. |
| tmcRequestFulfilledDataSchema | scm.tmc-request.fulfilled — заявка исполнена; linkedInboundIds связывает её с приходами, закрывшими потребность. Подписчики: ana/kpi, Notifications. |
| tmcRequestInProgressDataSchema | scm.tmc-request.in-progress — снабжение взяло заявку в работу (approved → in_progress). Подписчики: Notifications. |
| tmcRequestRejectedDataSchema | scm.tmc-request.rejected — заявка отклонена (с причиной). Подписчики: Notifications (инициатор). |
| tmcRequestSubmittedDataSchema | scm.tmc-request.submitted — заявка подана на утверждение (draft → submitted). Подписчики: Notifications (утверждающий). |
| tmcTransferConfirmedDataSchema | scm.tmc-transfer.confirmed — склад-получатель подтвердил приёмку перемещения (FSM issued → confirmed). Подписчики: ana/kpi, Notifications. |
| tmcTransferIssuedDataSchema | scm.tmc-transfer.issued — перемещение ТМЦ отгружено со склада-источника (FSM → issued). Подписчики: Notifications (склад-получатель). |
| tmcUnitEnumSchema | - |
| userAccountCreatedDataSchema | hr.user-account.created — создана учётная запись для сотрудника с набором системных ролей (systemRoleIds/systemRoleCodes, минимум одна). Подписчики: Keycloak provisioning, permission-cache, Notifications. |
| userAccountDeactivatedDataSchema | hr.user-account.deactivated — учётная запись деактивирована. triggerSource различает ручную деак тивацию и каскад от увольнения сотрудника. Подписчики: Keycloak (отключение subject), Notifications. |
| userAccountLockedDataSchema | hr.user-account.locked — учётная запись заблокирована. triggerSource различает ручную блокировку и авто-блокировку по числу неудачных попыток входа; lockedUntil nullable (null = бессрочно). Подписчики: Notifications. |
| userAccountPasswordResetIssuedDataSchema | hr.user-account.password-reset-issued — выпущен сброс пароля. deliveryChannel — как доставлен временный пароль (email/sms/показ админу), expiresAt — срок действия. Подписчики: Notifications. |
| userAccountRolesChangedDataSchema | hr.user-account.roles-changed — набор ролей учётной записи изменён. Несёт старый/новый наборы и явные дельты (addedRoleCodes/removedRoleCodes) для аудита и точечного обновления. Подписчики: permission-cache invalidation, Keycloak (синхронизация ролей), Notifications. |
| userAccountStatusEnum | Статус учётной записи: активна / заблокирована / деактивирована. |
| userAccountUnlockedDataSchema | hr.user-account.unlocked — блокировка снята. triggerSource различает ручную разблокировку и авто-снятие по истечении lockedUntil. Подписчики: Notifications. |
| uuidSchema | Общая UUID-схема, переиспользуемая во всех payload-схемах каталога событий (uuidSchema в events/<context>/<entity>.ts). .meta({ id: 'Uuid' }) поднимает её в общий $defs при генерации JSON Schema / AsyncAPI, поэтому во всех событиях ссылка идёт на один shared-компонент, а не на инлайн-копию. |
| watchAssignmentActivatedDataSchema | hr.watch-assignment.activated — сотрудник фактически заехал (scheduled → active). Подписчики: hr/personnel (статус → onWatch), Notifications. |
| watchAssignmentCancelledDataSchema | hr.watch-assignment.cancelled — запланированный заезд отменён (с причиной). Подписчики: Notifications. |
| watchAssignmentCompletedDataSchema | hr.watch-assignment.completed — заезд завершён, сотрудник выехал (active → completed). Подписчики: hr/personnel (статус → active), Notifications. |
| watchAssignmentScheduledDataSchema | hr.watch-assignment.scheduled — заезд сотрудника на вахту запланирован (FSM → scheduled), с датами заезда/выезда. Подписчики: Notifications. |
| watchAssignmentStatusEnum | Статус заезда персонала: запланирован / активен / завершён / отменён. |
| watchCreatedDataSchema | hr.watch.created — создан вахтовый цикл на объекте (период start–end). Подписчики: Notifications. |