Files
probo/pkg/coredata
Émile Ré 46fc755b6e Fix enrichment re-arm and migration backfill gaps
Three crash- and migration-recovery gaps in the unified enrichment
model left rows stuck or misclassified:

- Upsert re-armed a blank, newly-linked tracker pattern without
  clearing its prior enrichment payload. A crash between the worker's
  claim and persist then left the row with a stale payload, so the
  stale-recovery sweep (which only catches rows with a null payload)
  skipped it forever. Clear enrichment on re-arm so the row reads as
  not-yet-completed again, and pin the behavior with a test.

- The migration added last_enrichment_attempt_at to
  common_third_parties without seeding it. Rows with prior attempts
  kept a NULL clock and could never satisfy the stale-reset predicate.
  Backfill from updated_at, the historical claim-time proxy.

- The migration switched the tracker-pattern enriched-state source to
  the enrichment payload without backfilling rows previously marked by
  enriched_at, making already-enriched rows read as unenriched.
  Seed a provenance sentinel for rows that carried the old done-flag.

Signed-off-by: Émile Ré <emile@probo.com>
2026-06-16 17:44:57 +02:00
..
2026-06-16 14:35:16 +02:00
2026-06-16 14:35:16 +02:00
2026-06-16 14:35:16 +02:00
2026-06-16 14:35:16 +02:00
2026-06-16 14:35:16 +02:00
2026-06-16 14:35:16 +02:00
2026-06-16 14:35:16 +02:00
2026-06-16 14:35:16 +02:00
2026-06-16 14:35:16 +02:00
2026-06-16 14:35:16 +02:00
2026-06-16 14:35:16 +02:00
2026-06-16 14:35:16 +02:00
2026-06-16 14:35:16 +02:00