Compose the Transaction Matcher backend in apps/api and activate the scheduler daemons #48

Closed
opened 2026-07-04 12:11:42 +00:00 by momsse · 0 comments
Owner

Migré depuis viziertronic/octant#107 — ouvert le 2026-06-27 par @momsse.

Follow-up from #40 (epic #42).

apps/api currently composes only the authentication/authorization backend. The scheduler daemons from #40 (@octant/scheduling: ReconcileDaemonLayer, CreateAccountingPeriodDaemonLayer, SynchroniseBankAccountsDaemonLayer, SynchronizePartyDocumentsDaemonLayer) are defined and tested-by-construction but not yet wired into the running app, because their dependencies (the banking/documents/reconciliation use-cases, queries, repositories, event stores, inline projections) are not composed in apps/api.

Work

  • Compose the matcher backend into apps/api:
    • postgres event stores + migrations for banking / documents / reconciliation
    • inline projections + projection runners (incl. the #38 matching sagas and the #32/#35 in-context sagas registered as projectors)
    • query adapters + event-stream repositories
    • the banking / documents / reconciliation use-cases
  • Provide SchedulerConfig.layer and add the four @octant/scheduling daemon layers to DaemonsLayer in apps/api/src/di/business.layer.ts.
  • Smoke-test that the daemons tick (short intervals) end-to-end.

This composition is the shared foundation for #41 (API + backoffice), so it likely lands with or just before #41.

> _Migré depuis [viziertronic/octant#107](https://github.com/viziertronic/octant/issues/107) — ouvert le 2026-06-27 par @momsse._ Follow-up from #40 (epic #42). `apps/api` currently composes only the authentication/authorization backend. The scheduler daemons from #40 (`@octant/scheduling`: `ReconcileDaemonLayer`, `CreateAccountingPeriodDaemonLayer`, `SynchroniseBankAccountsDaemonLayer`, `SynchronizePartyDocumentsDaemonLayer`) are defined and tested-by-construction but not yet wired into the running app, because their dependencies (the banking/documents/reconciliation use-cases, queries, repositories, event stores, inline projections) are not composed in `apps/api`. ## Work - Compose the matcher backend into `apps/api`: - postgres event stores + migrations for banking / documents / reconciliation - inline projections + projection runners (incl. the #38 matching sagas and the #32/#35 in-context sagas registered as projectors) - query adapters + event-stream repositories - the banking / documents / reconciliation use-cases - Provide `SchedulerConfig.layer` and add the four `@octant/scheduling` daemon layers to `DaemonsLayer` in `apps/api/src/di/business.layer.ts`. - Smoke-test that the daemons tick (short intervals) end-to-end. This composition is the shared foundation for #41 (API + backoffice), so it likely lands with or just before #41.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
momsse/octant#48
No description provided.