Quick Reference

Group Models
Exceptions & Triage OperationalException · Triage · Assignment
Decisions & Actions DecisionRecord · ExceptionAction · Escalation
Closure & Links ClosureReview · RelatedEvent

8 models in total.

Key status vocabularies (enums)

  • OperationalException.severity: (low·medium·high·critical) · status: open→…→closed
  • Triage.response_class: routine · urgent · emergency
  • DecisionRecord.decision_type / Escalation.level (1/2/3)
  • ClosureReview.closure_decision: closed · reopened · accepted_risk

The demo data set

A SCADA communications loss at the Northgate Solar Farm — exception OEX-2026-0042 (communications, high, regulatory impact). It's triaged (severity confirmed high, urgent, response-due 05:00), assigned to Northgate Energy, a decision DEC-0042 (dispatch technician + constrain to last-known-good), an action to replace the failed RTU module, an escalation to the operations manager, and a closure review CLR-0042 (restored 05:10, low residual risk). A related event links back to the SCADA source event.

8 rows across all 8 models.

Translation & modelling notes

  • Source is the pack's application { entity E { field: type; } } dialect, machine-translated to native DSL by a dedicated converter: each entity gets a surrogate Int pk, its business key kept as a required unique String, ref(T)Int [ref], enum(...) inlined, list → Text.
  • OperationalException.description was renamed summary. subject_id is a polymorphic pointer to whatever raised the exception. regulatory_impact/decision_required/evidence_complete are Booleans; level (escalation) is an Int.
  • Denormalisation is intentional (child rows carry parent codes alongside the FK). Post-seed scan: zero Text leaks.
  • The workflow/governance/events are Phase 2 (page 03).