Skip to main content

Module duplicate_sweep

Module duplicate_sweep 

Source
Expand description

Duplicate sweep (T0/T1). Exact triple duplicates (NFC + case-fold) among Facts, and near-duplicate Observations by token-set Jaccard. Consolidation keeps the earliest member canonical and supersedes the rest — structural, non-destructive. (Exact duplicates are auto-apply eligible; near-dups fail the engine’s exact-equality shape check and stay pending — §6.3.)

With a decision backend (Engine::with_decider, proposal row E2): observation pairs the Jaccard rule cannot decide — similarity in [JUDGED_JACCARD_FLOOR, jaccard), same namespace, neither already clustered — are asked “do these two state the same claim?” in batches, at most pair_cap pairs per run. A CALIBRATED p ≥ DECIDE_MIN_P proposes the same supersede draft the Jaccard path does, with the probability on its judged_by record; an uncalibrated backend proposes nothing (a rank means nothing here), and a failed request contributes nothing.

Structs§

DuplicateSweep

Constants§

JUDGED_JACCARD_FLOOR
The lowest token-set Jaccard at which a pair is worth asking a decision backend about. Below it two observations share too little wording for a “same claim” to be the likely reading, and asking would spend the pair cap on noise.