Data model

"ENROLLMENT_GROUP_CHANGE_REQUEST" {
  shape: sql_table
  "id": UUID {constraint: primary_key}
  "contract_id": CHAR(32) 
  "last_seen_revision_number": INTEGER 
  "latest_engine_run_id": UUID 
  "primary_global_user_id": VARCHAR 
  "requested_at": DATETIME 
  "requested_by_global_user_id": VARCHAR 
  "requester_comment": VARCHAR 
  "requester_type": VARCHAR(255) 
  "scoped_changes": JSONB 
  "status": VARCHAR(255) 
}
"ENROLLMENT_GROUP_ENGINE_RUN" {
  shape: sql_table
  "id": UUID {constraint: primary_key}
  "contract_id": CHAR(32) 
  "eligibility_timelines": JSONB 
  "error": VARCHAR 
  "git_commit_sha": VARCHAR 
  "input_timelines": JSONB 
  "primary_global_user_id": VARCHAR 
  "produced_revision_number": INTEGER 
  "revision_diffs": JSONB 
  "starting_revision_number": INTEGER 
}
"ENROLLMENT_GROUP_REVISION" {
  shape: sql_table
  "id": UUID {constraint: primary_key}
  "effective_at": DATETIME 
  "enrollment_group_id": UUID 
  "is_migrated": BOOLEAN 
  "revision_number": INTEGER 
}
"ENROLLMENT_GROUP" {
  shape: sql_table
  "id": UUID {constraint: primary_key}
  "contract_id": CHAR(32) 
  "primary_global_user_id": VARCHAR 
}
"ENROLLMENT_GROUP_ID_MAPPING" {
  shape: sql_table
  "id": UUID {constraint: primary_key}
  "enrollment_group_id": UUID 
  "new_contract_id": UUID 
  "primary_user_id": VARCHAR 
}
"ENROLLMENT_PERIOD" {
  shape: sql_table
  "id": UUID {constraint: primary_key}
  "end_date": DATE 
  "enrollment_group_id": UUID 
  "member_id": VARCHAR 
  "membership_type": VARCHAR(255) 
  "module_id": CHAR(32) 
  "start_date": DATE 
  "system_effective_from_datetime": DATETIME 
  "system_effective_from_revision_id": UUID 
  "system_effective_from_revision_number": INTEGER 
  "system_effective_to_datetime": DATETIME 
  "system_effective_to_revision_id": UUID 
  "system_effective_to_revision_number": INTEGER 
}
"MIGRATION_DIFF" {
  shape: sql_table
  "id": UUID {constraint: primary_key}
  "added_periods": JSONB 
  "contract_id": CHAR(32) 
  "core_periods": JSONB 
  "enrollment_group_id": UUID 
  "legacy_periods": JSONB 
  "primary_member_id": VARCHAR 
  "removed_periods": JSONB 
  "resolved_at": DATETIME 
  "review_comment": VARCHAR 
  "review_status": VARCHAR(255) 
  "reviewed_at": DATETIME 
  "reviewed_by": VARCHAR 
}
"ENROLLMENT_GROUP_RECOMPUTE_REQUEST" {
  shape: sql_table
  "id": UUID {constraint: primary_key}
  "contract_id": CHAR(32) 
  "from_revision_at_datetime": DATETIME 
  "handling_attempt_count": INTEGER 
  "ignored_at": DATETIME 
  "latest_engine_run_id": UUID 
  "primary_global_user_id": VARCHAR 
  "status": VARCHAR(255) 
  "successfully_handled_at": DATETIME 
  "trigger_id": UUID 
}
"ENROLLMENT_GROUP_RECOMPUTE_REQUEST_RETRY_AUDIT" {
  shape: sql_table
  "id": UUID {constraint: primary_key}
  "comment": VARCHAR 
  "operator_identifier": VARCHAR 
  "recompute_request_id": UUID 
}
"RECOMPUTE_TRIGGER" {
  shape: sql_table
  "id": UUID {constraint: primary_key}
  "details": JSONB 
  "issued_at": DATETIME 
  "raw_upstream_payload": JSONB 
  "trigger_type": VARCHAR 
  "upstream_event_id": UUID 
}
"ENROLLMENT_GROUP_ENGINE_RUN"."id" -> "ENROLLMENT_GROUP_CHANGE_REQUEST"."latest_engine_run_id": {
  source-arrowhead.shape: cf-one
  target-arrowhead.shape: cf-many
}
"ENROLLMENT_GROUP"."id" -> "ENROLLMENT_GROUP_REVISION"."enrollment_group_id": {
  source-arrowhead.shape: cf-one-required
  target-arrowhead.shape: cf-many
}
"ENROLLMENT_GROUP"."id" -> "ENROLLMENT_PERIOD"."enrollment_group_id": {
  source-arrowhead.shape: cf-one-required
  target-arrowhead.shape: cf-many
}
"ENROLLMENT_GROUP_REVISION"."effective_at" -> "ENROLLMENT_PERIOD"."system_effective_to_datetime": {
  source-arrowhead.shape: cf-one
  target-arrowhead.shape: cf-many
}
"ENROLLMENT_GROUP_REVISION"."enrollment_group_id" -> "ENROLLMENT_PERIOD"."enrollment_group_id": {
  source-arrowhead.shape: cf-one-required
  target-arrowhead.shape: cf-many
}
"ENROLLMENT_GROUP_REVISION"."id" -> "ENROLLMENT_PERIOD"."system_effective_to_revision_id": {
  source-arrowhead.shape: cf-one
  target-arrowhead.shape: cf-many
}
"ENROLLMENT_GROUP_REVISION"."revision_number" -> "ENROLLMENT_PERIOD"."system_effective_from_revision_number": {
  source-arrowhead.shape: cf-one-required
  target-arrowhead.shape: cf-many
}
"ENROLLMENT_GROUP_REVISION"."enrollment_group_id" -> "ENROLLMENT_PERIOD"."enrollment_group_id": {
  source-arrowhead.shape: cf-one-required
  target-arrowhead.shape: cf-many
}
"ENROLLMENT_GROUP_REVISION"."effective_at" -> "ENROLLMENT_PERIOD"."system_effective_from_datetime": {
  source-arrowhead.shape: cf-one-required
  target-arrowhead.shape: cf-many
}
"ENROLLMENT_GROUP_REVISION"."revision_number" -> "ENROLLMENT_PERIOD"."system_effective_to_revision_number": {
  source-arrowhead.shape: cf-one
  target-arrowhead.shape: cf-many
}
"ENROLLMENT_GROUP_REVISION"."id" -> "ENROLLMENT_PERIOD"."system_effective_from_revision_id": {
  source-arrowhead.shape: cf-one-required
  target-arrowhead.shape: cf-many
}
"RECOMPUTE_TRIGGER"."id" -> "ENROLLMENT_GROUP_RECOMPUTE_REQUEST"."trigger_id": {
  source-arrowhead.shape: cf-one-required
  target-arrowhead.shape: cf-many
}
"ENROLLMENT_GROUP_ENGINE_RUN"."id" -> "ENROLLMENT_GROUP_RECOMPUTE_REQUEST"."latest_engine_run_id": {
  source-arrowhead.shape: cf-one
  target-arrowhead.shape: cf-many
}
"ENROLLMENT_GROUP_RECOMPUTE_REQUEST"."id" -> "ENROLLMENT_GROUP_RECOMPUTE_REQUEST_RETRY_AUDIT"."recompute_request_id": {
  source-arrowhead.shape: cf-one-required
  target-arrowhead.shape: cf-many
}
Hold "Alt" / "Option" to enable pan & zoom