Expand description
Portfolio — portefeuille immeubles d’un utilisateur (favoris/équipe).
Story 2.1 — Slice 2 Refonte UX multi-rôle ACP.
Source : docs/maury/refonte-ux-multi-role-acp/architecture.md §2.5 + ADR-0011.
Un portefeuille (Portfolio) regroupe N immeubles (building_id, is_favorite)
pour un propriétaire owner_user_id. Il peut être partagé en lecture
(option can_edit) avec d’autres User (typiquement équipe d’un cabinet
syndic).
§Invariants
namenon vide après trim, longueur ∈ [2, 120] caractères.descriptionoptionnel (longueur ≤ 1000 si présent, post-trim).
§Hexagonal
Aucune dépendance sqlx / actix_web. Les erreurs domaine retournent
PortfolioError (enum), mappé vers AppError::Validation côté
application (application/error.rs, pattern WP-A* #433).
Structs§
- Portfolio
- Représente un portefeuille (Aggregate Root).
- Portfolio
Building - Entité de liaison M:N — un building dans un portfolio.
- Portfolio
Share - Entité de liaison — partage portfolio ↔ user.
Enums§
- Portfolio
Error - Erreurs métier produites par le domaine
Portfolio.