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