GCC Build OSv0
/api

DecisionReversedevent type

Locked decision reopened by an Approver (build plan section 6.7.5). MUST emit alongside a MemoryEventRecorded with type=reversal-reason in the same D1 transaction; reversal_reason_memory_event_id references that event.

Full spec

{
  "name": "DecisionReversed",
  "description": "Locked decision reopened by an Approver (build plan section 6.7.5). MUST emit alongside a MemoryEventRecorded with type=reversal-reason in the same D1 transaction; reversal_reason_memory_event_id references that event.",
  "current_version": 1,
  "actor_type_allowed": [
    "human"
  ],
  "object_type": "Decision",
  "payload_versions": {
    "v1": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "decision_id",
        "reversed_by",
        "reversal_reason_memory_event_id"
      ],
      "properties": {
        "decision_id": {
          "type": "string",
          "format": "uuid"
        },
        "reversed_by": {
          "type": "string",
          "format": "uuid"
        },
        "reversal_reason_memory_event_id": {
          "type": "string",
          "format": "uuid",
          "description": "Required reference to the MemoryEventRecorded event written in the same transaction. Writer enforces same-transaction invariant."
        }
      }
    }
  },
  "projections_consuming": [
    "decisions_view",
    "programme_memory_view",
    "blast_radius_view",
    "audit_log"
  ],
  "canonicalizer_module": "event-canonicalizers/decision_reversed.ts"
}