45 lines
1.3 KiB
SQL
45 lines
1.3 KiB
SQL
create schema if not exists building_blocks;
|
|
create schema if not exists signal_engine;
|
|
|
|
create table if not exists building_blocks.outbox_message (
|
|
message_id uuid primary key,
|
|
event_type text not null,
|
|
schema_version integer not null check (schema_version > 0),
|
|
payload_json jsonb not null,
|
|
correlation_id text not null,
|
|
occurred_at timestamptz not null,
|
|
payload_hash text not null,
|
|
published_at timestamptz null,
|
|
attempt integer not null default 0
|
|
);
|
|
|
|
create table if not exists building_blocks.inbox_message (
|
|
consumer text not null,
|
|
message_id uuid not null,
|
|
received_at timestamptz not null,
|
|
payload_hash text not null,
|
|
primary key (consumer, message_id)
|
|
);
|
|
|
|
create table if not exists building_blocks.job_run (
|
|
job_run_id uuid primary key,
|
|
job_type text not null,
|
|
job_version integer not null,
|
|
scope_key text not null,
|
|
idempotency_key text not null unique,
|
|
watermark text null,
|
|
app_version text not null,
|
|
model_version text null,
|
|
config_version text null,
|
|
data_version text null,
|
|
contract_version text null,
|
|
status text not null,
|
|
input_hash text null,
|
|
output_hash text null,
|
|
started_at timestamptz null,
|
|
heartbeat_at timestamptz null,
|
|
finished_at timestamptz null,
|
|
error_code text null,
|
|
trace_id text null
|
|
);
|