PR 04 — Authentication : modèle de domaine #4

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

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

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

Branche : split/04-authentication-modelBloquée par : #3
Taille : ~30 fichiers (sous-ensemble des 76 du package ; PRs 04+05 = ~12 700 lignes)

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

  • application/aggregates/ : UserAggregate (decide par commande + fold) et ses tests
  • application/entities/, application/value-objects/ : User, Session, LinkedAccount (avec expiry des tokens), SecuritySignal…
  • application/events/, application/commands/, application/errors/
  • application/repositories/, application/read-models/, application/config/
  • infrastructure/crypto.ts, infrastructure/encrypted-string.schema.ts (chiffrement at-rest des tokens OAuth via codec Schema)
  • index.ts réduit aux exports ci-dessus

Focus review

Invariants de l'agrégat User (cycle de vie suspend/anonymize/delete, expiry de session + sliding refresh, conflit de provider en erreur typée, garde terminal-status), modélisation des events (DateTimeUtcFromString pour le round-trip JSONB), codec de chiffrement.

Commits d'origine

4e4c43f, c78eaa6, ddd5979, 4c4e7f8, fd25446, 732269f, 34abff8, 042c0b1, 06bdcc1, 89debd8, 8e1715d, a2ce298

> _Migré depuis [viziertronic/octant#17](https://github.com/viziertronic/octant/issues/17) — ouvert le 2026-06-11 par @momsse._ Tranche 4/13 du découpage de `feat/authentication` (plan : `docs/pr-split/feat-authentication.md`). **Branche** : `split/04-authentication-model` — **Bloquée par** : #3 **Taille** : ~30 fichiers (sous-ensemble des 76 du package ; PRs 04+05 = ~12 700 lignes) ## Périmètre (dans `packages/domain/authentication/src/`) - `application/aggregates/` : `UserAggregate` (decide par commande + fold) et ses tests - `application/entities/`, `application/value-objects/` : User, Session, LinkedAccount (avec expiry des tokens), SecuritySignal… - `application/events/`, `application/commands/`, `application/errors/` - `application/repositories/`, `application/read-models/`, `application/config/` - `infrastructure/crypto.ts`, `infrastructure/encrypted-string.schema.ts` (chiffrement at-rest des tokens OAuth via codec Schema) - `index.ts` **réduit** aux exports ci-dessus ## Focus review Invariants de l'agrégat User (cycle de vie suspend/anonymize/delete, expiry de session + sliding refresh, conflit de provider en erreur typée, garde terminal-status), modélisation des events (DateTimeUtcFromString pour le round-trip JSONB), codec de chiffrement. ## Commits d'origine `4e4c43f`, `c78eaa6`, `ddd5979`, `4c4e7f8`, `fd25446`, `732269f`, `34abff8`, `042c0b1`, `06bdcc1`, `89debd8`, `8e1715d`, `a2ce298`
momsse 2026-07-04 12:10:39 +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#4
No description provided.