RoleRevokedevent type
A previously assigned RACI role was revoked. Projection writer transitions the has_role_on edge to state=terminated (never deletes; preserves I2 immutability of historical truth).
Full spec
{
"name": "RoleRevoked",
"description": "A previously assigned RACI role was revoked. Projection writer transitions the has_role_on edge to state=terminated (never deletes; preserves I2 immutability of historical truth).",
"current_version": 1,
"actor_type_allowed": [
"human",
"system"
],
"object_type": "Stakeholder",
"payload_versions": {
"v1": {
"type": "object",
"additionalProperties": false,
"required": [
"edge_id",
"revoked_by",
"reason"
],
"properties": {
"edge_id": {
"type": "string",
"format": "uuid",
"description": "ID of the has_role_on edge being terminated. Edge stays in the edges table with state=terminated and terminated_at populated."
},
"revoked_by": {
"type": "string",
"format": "uuid"
},
"reason": {
"type": "string",
"enum": [
"role_change",
"stakeholder_removed",
"reassignment",
"administrative_correction",
"other"
]
},
"reason_note": {
"type": "string"
}
}
}
},
"projections_consuming": [
"role_assignments_view",
"raci_view",
"audit_log"
],
"canonicalizer_module": "event-canonicalizers/role_revoked.ts"
}