33 lines
825 B
SQL
33 lines
825 B
SQL
-- migrate:up
|
|
create table conversation_runs (
|
|
id uuid primary key default gen_random_uuid(),
|
|
tenant_id uuid not null references tenants(id) on delete cascade,
|
|
wa_chat_id text not null,
|
|
message_id text not null,
|
|
|
|
ts timestamptz not null default now(),
|
|
prev_state text null,
|
|
user_text text null,
|
|
|
|
llm_output jsonb null,
|
|
tools jsonb not null default '[]'::jsonb,
|
|
invariants jsonb not null default '{}'::jsonb,
|
|
|
|
final_reply text null,
|
|
order_id bigint null,
|
|
payment_link text null,
|
|
|
|
status text not null default 'ok', -- ok | warn | error
|
|
error_code text null,
|
|
error_detail text null,
|
|
latency_ms int null,
|
|
|
|
unique (tenant_id, message_id)
|
|
);
|
|
|
|
create index idx_runs_tenant_chat_ts
|
|
on conversation_runs (tenant_id, wa_chat_id, ts desc);
|
|
|
|
-- migrate:down
|
|
drop table if exists conversation_runs;
|