RoleAssignedevent type
A stakeholder was assigned a RACI role on a specific object. Projection writer creates a has_role_on edge with state=active. Approval-step roles include an approval_step_index per Q2.
Full spec
{
"name": "RoleAssigned",
"description": "A stakeholder was assigned a RACI role on a specific object. Projection writer creates a has_role_on edge with state=active. Approval-step roles include an approval_step_index per Q2.",
"current_version": 1,
"actor_type_allowed": [
"human",
"system"
],
"object_type": "Stakeholder",
"payload_versions": {
"v1": {
"type": "object",
"additionalProperties": false,
"required": [
"stakeholder_id",
"target_object_type",
"target_object_id",
"raci_role",
"assigned_by"
],
"properties": {
"stakeholder_id": {
"type": "string",
"format": "uuid"
},
"target_object_type": {
"type": "string",
"minLength": 1,
"description": "Node type the role applies to (Decision, Question, Capability, Milestone, Gate, Risk, Assumption, Issue, Workstream, etc.)."
},
"target_object_id": {
"type": "string",
"format": "uuid"
},
"raci_role": {
"type": "string",
"enum": [
"decision_maker",
"approver",
"reviewer",
"contributor",
"informed"
]
},
"approval_step_index": {
"type": [
"integer",
"null"
],
"minimum": 0,
"description": "Q2 ordered-approver step index when raci_role is approver in a multi-step chain. Null for single-step approvers or non-approver roles."
},
"assigned_by": {
"type": "string",
"format": "uuid"
}
}
}
},
"projections_consuming": [
"role_assignments_view",
"raci_view",
"audit_log"
],
"canonicalizer_module": "event-canonicalizers/role_assigned.ts"
}