PR 03 — Socle event-sourcing + infra Postgres partagée #3

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

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

Tranche 3/13 du découpage de feat/authentication (plan : docs/pr-split/feat-authentication.md).

Branche : split/03-event-sourcingBloquée par : #2
Taille : 31 fichiers, +2 302 / −485

Périmètre

  • packages/tooling/event-sourcing : executeCommand générique (remplace les boucles de commande artisanales et CommandHandler, supprimé), helper audit-timeline, hooks d'inline projectors sur EventStreamRepository, évolutions des stores in-memory, exemples bank-account/counter mis à jour
  • packages/infrastructure/postgres-event-store : application des inline projectors dans la même transaction que l'append
  • packages/infrastructure/postgres-snapshot-store : ajustements de signature
  • packages/infrastructure/postgres-projection : sql-projector et pair-lookup-projector partagés, wrapping d'erreurs du query-adapter, supervision des projection runners + ordre des migrations de boot

Focus review

C'est le socle de tout le reste. Sémantique transactionnelle des inline projectors (même TX que l'append — primitive anti-race du write-side), gestion d'erreurs de executeCommand (retry sur ConcurrencyError), supervision des runners.

Commits d'origine

74f550b, ddd5979, 19ca15e, 3bf6e0b, cbcb648, 0f7fe0c, 16f7906, 379844a, 4c4e7f8 (partie codec), 8628dea (partie tooling)

> _Migré depuis [viziertronic/octant#16](https://github.com/viziertronic/octant/issues/16) — ouvert le 2026-06-11 par @momsse._ Tranche 3/13 du découpage de `feat/authentication` (plan : `docs/pr-split/feat-authentication.md`). **Branche** : `split/03-event-sourcing` — **Bloquée par** : #2 **Taille** : 31 fichiers, +2 302 / −485 ## Périmètre - `packages/tooling/event-sourcing` : `executeCommand` générique (remplace les boucles de commande artisanales et `CommandHandler`, supprimé), helper `audit-timeline`, hooks d'inline projectors sur `EventStreamRepository`, évolutions des stores in-memory, exemples bank-account/counter mis à jour - `packages/infrastructure/postgres-event-store` : application des inline projectors dans la même transaction que l'append - `packages/infrastructure/postgres-snapshot-store` : ajustements de signature - `packages/infrastructure/postgres-projection` : `sql-projector` et `pair-lookup-projector` partagés, wrapping d'erreurs du `query-adapter`, supervision des projection runners + ordre des migrations de boot ## Focus review C'est le socle de tout le reste. Sémantique transactionnelle des inline projectors (même TX que l'append — primitive anti-race du write-side), gestion d'erreurs de `executeCommand` (retry sur `ConcurrencyError`), supervision des runners. ## Commits d'origine `74f550b`, `ddd5979`, `19ca15e`, `3bf6e0b`, `cbcb648`, `0f7fe0c`, `16f7906`, `379844a`, `4c4e7f8` (partie codec), `8628dea` (partie tooling)
momsse 2026-07-04 12:10:38 +00:00
  • closed this issue
  • added the
    pr-split
    label
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#3
No description provided.