Sync CourtListener verification and document safety updates

- Refine CourtListener citation verification, bulk lookup logging, and API fallback behavior
- Persist cancelled chat stream output and render cancellation as the final assistant message
- Add document/version deletion safety fixes and shared warning/modal UI updates
- Sync document panel, case law panel, and response UI styling refinements
- Harden OSS sync script to preserve local env, dependency, and generated files
This commit is contained in:
willchen96 2026-06-09 01:46:58 +08:00
parent 44e868eb42
commit f32a194b33
24 changed files with 2494 additions and 1222 deletions

View file

@ -63,6 +63,8 @@ create table if not exists public.user_api_keys (
create index if not exists idx_user_api_keys_user
on public.user_api_keys(user_id);
alter table public.user_api_keys enable row level security;
-- ---------------------------------------------------------------------------
-- Projects and documents
-- ---------------------------------------------------------------------------
@ -142,6 +144,21 @@ create index if not exists document_versions_document_id_idx
create index if not exists document_versions_doc_vnum_idx
on public.document_versions(document_id, version_number);
do $$
begin
if not exists (
select 1
from pg_constraint
where conname = 'document_versions_doc_version_unique'
and conrelid = 'public.document_versions'::regclass
) then
alter table public.document_versions
add constraint document_versions_doc_version_unique
unique (document_id, version_number);
end if;
end;
$$;
alter table public.documents
add column if not exists current_version_id uuid
references public.document_versions(id) on delete set null;
@ -361,6 +378,8 @@ create index if not exists courtlistener_citation_lookup_idx
create index if not exists courtlistener_citation_cluster_idx
on public.courtlistener_citation_index(cluster_id);
alter table public.courtlistener_citation_index enable row level security;
create table if not exists public.courtlistener_opinion_cluster_index (
id bigint primary key,
case_name text,
@ -375,6 +394,8 @@ create table if not exists public.courtlistener_opinion_cluster_index (
docket_id bigint
);
alter table public.courtlistener_opinion_cluster_index enable row level security;
-- ---------------------------------------------------------------------------
-- Direct client grant hardening
-- ---------------------------------------------------------------------------