GCC Build OSv0
/api

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"
}