alter table public.tasks add column if not exists help_requested_to_user_id uuid null, add column if not exists help_requested_by_user_id uuid null, add column if not exists help_requested_at timestamptz null; alter table public.task_steps add column if not exists help_requested_to_user_id uuid null, add column if not exists help_requested_by_user_id uuid null, add column if not exists help_requested_at timestamptz null; do $$ begin if not exists ( select 1 from pg_constraint where conname = 'tasks_help_requested_to_user_id_fkey' ) then alter table public.tasks add constraint tasks_help_requested_to_user_id_fkey foreign key (help_requested_to_user_id) references public.users(id); end if; if not exists ( select 1 from pg_constraint where conname = 'tasks_help_requested_by_user_id_fkey' ) then alter table public.tasks add constraint tasks_help_requested_by_user_id_fkey foreign key (help_requested_by_user_id) references public.users(id); end if; if not exists ( select 1 from pg_constraint where conname = 'task_steps_help_requested_to_user_id_fkey' ) then alter table public.task_steps add constraint task_steps_help_requested_to_user_id_fkey foreign key (help_requested_to_user_id) references public.users(id); end if; if not exists ( select 1 from pg_constraint where conname = 'task_steps_help_requested_by_user_id_fkey' ) then alter table public.task_steps add constraint task_steps_help_requested_by_user_id_fkey foreign key (help_requested_by_user_id) references public.users(id); end if; end $$; create index if not exists tasks_help_requested_to_user_id_idx on public.tasks(help_requested_to_user_id); create index if not exists tasks_help_requested_by_user_id_idx on public.tasks(help_requested_by_user_id); create index if not exists task_steps_help_requested_to_user_id_idx on public.task_steps(help_requested_to_user_id); create index if not exists task_steps_help_requested_by_user_id_idx on public.task_steps(help_requested_by_user_id);