5d3c340243
test(ingest): stub recompute_searchable in FU-1 fixture (FU-2a interaction)
...
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-05-30 20:59:11 +00:00
358d82e90e
feat(retrieval): require practice_area only for internal/cases; enable searchable filter + health visibility (GAP-13, FU-2a)
...
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-05-30 20:57:27 +00:00
6dbcb7e798
feat(ingest): recompute searchable on ingest + metadata completion (GAP-13, FU-2a)
...
Wire db.recompute_searchable into the ingest pipeline (after statuses are set) and into
extract_and_apply (after fields are persisted to DB, success path only).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-05-30 20:47:51 +00:00
4b8bbc3794
feat(data-model): V21 searchable flag + recompute_searchable (GAP-13, FU-2a)
...
Add SCHEMA_V21_SQL (searchable boolean column + index on case_law), wire it
into _run_schema_migrations, and implement _compute_searchable (pure predicate)
+ recompute_searchable (idempotent async backfill/update). All 5 unit tests pass.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-05-30 20:46:29 +00:00
cd0f6cda0a
feat(ingest): atomic ON CONFLICT upsert in create_*_case_law (GAP-03, FU-2a)
...
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-05-30 20:44:31 +00:00
2b91173f25
feat(ingest): write-time canonical case_number normalization (GAP-06, FU-2a)
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-05-30 20:42:47 +00:00
bcd226ac1a
test(ingest): failing tests for idempotent ingest + searchable (FU-2a)
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-05-30 20:41:34 +00:00
a16f8cd933
docs(plan): FU-2a idempotent-ingest implementation plan (7 tasks, TDD)
...
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-05-30 20:04:49 +00:00
a8b780765d
docs(spec): FU-2a idempotent-ingest design + split FU-2b migration to #67
...
FU-2 split (chair decision 2026-05-30): FU-2a = pure-code (GAP-03 ON CONFLICT
upsert, GAP-06 write-time type-aware normalization, GAP-13 materialized
searchable flag); FU-2b (#67 ) = data-migration for GAP-07/08 (identifier
reconciliation + dedup) deferred as separate chair-involved task.
DB check 2026-05-30: ~52/56 internal_committee rows hold full citation in
case_number, >=1 duplicate (8047-23). Architecture verified vs 3+ sources
(PostgreSQL ON CONFLICT, DDD write-boundary normalization, materialized
validity flag). No identifier migration in FU-2a.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-05-30 19:56:07 +00:00