add backend hatchet worker for calendar predue sync

This commit is contained in:
Ruslan Bakiev
2026-03-08 19:15:30 +07:00
parent 0df426d5d6
commit e4870ce669
21 changed files with 1859 additions and 350 deletions

View File

@@ -7,6 +7,7 @@ Core CRM/omni-домен с единственной Prisma-базой.
- принимает входящие telegram-события через GraphQL mutation `ingestTelegramInbound`;
- создает исходящую задачу через GraphQL mutation `requestTelegramOutbound``telegram_backend`, далее в Hatchet);
- принимает отчет о доставке через GraphQL mutation `reportTelegramOutbound`.
- выполняет sync календарных предзаписей через GraphQL mutation `syncCalendarPredueTimeline`.
## API
@@ -27,9 +28,13 @@ Core CRM/omni-домен с единственной Prisma-базой.
- `TELEGRAM_BACKEND_GRAPHQL_URL` (required для `requestTelegramOutbound`)
- `TELEGRAM_BACKEND_GRAPHQL_SHARED_SECRET` (optional)
- `DEFAULT_TEAM_ID` (optional fallback для inbound маршрутизации)
- `TIMELINE_EVENT_PREDUE_MINUTES` (default: `30`)
- `TIMELINE_EVENT_LOOKBACK_MINUTES` (default: `180`)
- `TIMELINE_EVENT_LOOKAHEAD_MINUTES` (default: `1440`)
- `TIMELINE_SCHEDULER_LOCK_KEY` (default: `603001`)
## Prisma policy
- Источник схемы: `Frontend/prisma/schema.prisma`.
- Источник схемы: `frontend/prisma/schema.prisma`.
- Локальная копия в `backend/prisma/schema.prisma` обновляется только через `scripts/prisma-sync.sh`.
- Миграции/`db push` выполняются только в `Frontend`.
- Миграции/`db push` выполняются только в `frontend`.