a RunView bound to the detector's request-scoped provider; threaded into the comparison engine so the load happens on the correct connection.
Build the field deltas for a matched set.
the entity being deduped (already resolved by the detector)
the source key first, then each candidate key (order preserved)
OptionalcontextUser: UserInfothe run's context user
the differing-field deltas plus a record-id → label map; empty on load failure
ProtectedbuildMap each loaded record's key string to its display label (the engine resolves the name-field value, falling back to the key). Lets the reasoner address records by name.
ProtectedprojectProject the engine's rich delta matrix into the reasoning contract: differing fields only, each cell flattened to its record-key string + stringified value.
ProtectedtoStringify a loaded value for the prompt; null/undefined → null.
Builds the differing-field deltas for a matched set by delegating to the shared RecordComparisonEngine and projecting the result into ReasoningFieldDelta.