Files
gbrain/test
Garry TanandClaude Fable 5 48ec6d3d49 Merge origin/master into reland/2514 — adapt tombstone to per-claim idempotency index
Conflict resolution + semantic fixes on top of the auto-merge:
- Tombstone ON CONFLICT target now includes md5(claim_text): migration
  take_proposals_per_claim_idempotency (#2138/v125) dropped the 4-col
  unique index, so the old conflict target would error at runtime on
  Postgres. Cache-hit lookup is unchanged (matches any row for the
  per-page 4-tuple), so memoization semantics are identical.
- Tombstone stamps the resolved modelId (#3120) instead of
  opts.model ?? compiled default.
- isWellFormedEmptyExtraction strips <think> reasoning tags, mirroring
  parseExtractorOutput's #2559 handling, so reasoning-model empty
  extractions still memoize.
- Test mock engine: combined branches — records the idempotency key AND
  returns one row per insert (RETURNING id, #2138).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-24 11:03:33 -07:00
..