GCC Build OSv0
/api

DecisionStepApprovedevent type

Q2 multi-step approval: one event per approval step, in order. The projection enforces step_index = next-expected; out-of-order writes are rejected by the writer (state machine check). Emitted exactly ONCE per step.

Full spec

{
  "name": "DecisionStepApproved",
  "description": "Q2 multi-step approval: one event per approval step, in order. The projection enforces step_index = next-expected; out-of-order writes are rejected by the writer (state machine check). Emitted exactly ONCE per step.",
  "current_version": 1,
  "actor_type_allowed": [
    "human"
  ],
  "object_type": "Decision",
  "payload_versions": {
    "v1": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "decision_id",
        "step_index",
        "approver_id"
      ],
      "properties": {
        "decision_id": {
          "type": "string",
          "format": "uuid"
        },
        "step_index": {
          "type": "integer",
          "minimum": 0
        },
        "approver_id": {
          "type": "string",
          "format": "uuid"
        },
        "approval_note": {
          "type": "string"
        }
      }
    }
  },
  "projections_consuming": [
    "decisions_view",
    "raci_view",
    "audit_log"
  ],
  "canonicalizer_module": "event-canonicalizers/decision_step_approved.ts"
}