Language: English Español Source of truth:
Ums.Domainsource code. This documentation tracks every aggregate’s state machine, dependency guards, broken rules and orphan risks. Update this section whenever you add a new aggregate, child entity, state transition, or domain rule.
This section documents the consistency rules that every aggregate in UMS must enforce.
A consistency rule is any invariant that must hold:
Suspend, Deactivate, Archive, Delete, etc.)Rules are organised by Bounded Context. Each document lists:
| BC | Document | Aggregates covered |
|---|---|---|
| Identity | identity-bc.md | Tenant, UserAccount, UserManagementDelegation, TenantSignupRequest |
| Authorization | authorization-bc.md | SystemSuite, Role, PermissionTemplate, Profile |
| Configuration | configuration-bc.md | AppConfiguration, IdpConfiguration, FeatureFlag, ParameterDefinition, ParameterGlobalValue, ParameterTenantValue |
| Approvals | approvals-bc.md | ApprovalWorkflow, ApprovalRequest, DocumentType, NotificationRule, UserDocument, AccessEnforcementPolicy |
| IGA | iga-bc.md | PromotionRequest, RoleMaturityStatus |
| Audit | Append-only — no state transitions | AuditRecord |
AGGREGATE_REASON (e.g. TENANT_HAS_ACTIVE_USERS).Archived status once set.See broken-rules-registry.md for the full, searchable list of every broken rule code, its aggregate, trigger operation, and implementation status.
When you add a new aggregate, child entity, state transition or domain rule:
docs/domain-es/consistency-rules/.docs/domain/index.md aggregate count.Last reviewed: 2026-06-03 — based on Ums.Domain source analysis.