PR 08 — Authorization : relations & sagas de cascade #8

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

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

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

Branche : split/08-authorization-relationsBloquée par : #7
Taille : ~40 fichiers

Périmètre (dans packages/domain/authorization/src/)

  • application/aggregates/ : UserRoleAssignmentAggregate, GroupMembershipAggregate + tests
  • Use-cases de relation (assign/unassign, add/remove membership — idempotents)
  • application/sagas/ : RoleDeletionCascadeSaga, GroupDeletionCascadeSaga + cascade query ports
  • Audit timeline UserRoleAssignment/GroupMembership
  • Extension des RPCs (le groupe ferme à 18 endpoints) et de index.ts

Focus review

Idempotence des relations, rejet des assignments vers des cibles supprimées/inexistantes, sémantique des sagas de cascade (et leur comportement en cas de crash à mi-parcours).

Commits d'origine

58d8f13, 8f99f68, da32d77, 67bcc81, f21979c, a4b61c7, 5ae6d51, fa63fde

> _Migré depuis [viziertronic/octant#21](https://github.com/viziertronic/octant/issues/21) — ouvert le 2026-06-11 par @momsse._ Tranche 8/13 du découpage de `feat/authentication` (plan : `docs/pr-split/feat-authentication.md`). **Branche** : `split/08-authorization-relations` — **Bloquée par** : #7 **Taille** : ~40 fichiers ## Périmètre (dans `packages/domain/authorization/src/`) - `application/aggregates/` : `UserRoleAssignmentAggregate`, `GroupMembershipAggregate` + tests - Use-cases de relation (assign/unassign, add/remove membership — idempotents) - `application/sagas/` : `RoleDeletionCascadeSaga`, `GroupDeletionCascadeSaga` + cascade query ports - Audit timeline UserRoleAssignment/GroupMembership - Extension des RPCs (le groupe ferme à 18 endpoints) et de `index.ts` ## Focus review Idempotence des relations, rejet des assignments vers des cibles supprimées/inexistantes, sémantique des sagas de cascade (et leur comportement en cas de crash à mi-parcours). ## Commits d'origine `58d8f13`, `8f99f68`, `da32d77`, `67bcc81`, `f21979c`, `a4b61c7`, `5ae6d51`, `fa63fde`
momsse 2026-07-04 12:10:44 +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#8
No description provided.