Permission Deletion Cascade
When a permission is deleted, any role that references it is automatically updated to remove the dangling reference.
Design
- Event-driven. The permission service doesn't know about roles. It fires an event, and a subscriber handles the cleanup.
- No service orchestration. The subscriber calls the role store directly — it's a data operation, not a business rule.
- Works for bulk deletes. Each deleted permission fires its own event, so bulk operations cascade correctly.