create table if not exists thought_links (
  from_id    bigint      not null references thoughts(id) on delete cascade,
  to_id      bigint      not null references thoughts(id) on delete cascade,
  relation   text        not null,
  created_at timestamptz default now(),
  primary key (from_id, to_id, relation)
);

create index if not exists thought_links_from_idx on thought_links (from_id);
create index if not exists thought_links_to_idx on thought_links (to_id);
