1.2 KiB
1.2 KiB
Card-place aggregation regression fix
This patch changes RuntimeEventAggregationService so that it removes only repeated reads of the same physical source record.
Root cause
The parity implementation performed a second reduction by canonical semantic event key. Distinct same-source support records could therefore be collapsed merely because their normalized event content was equal. File-session card-place identifiers such as CARDPLACE-1 may also repeat in separate XML Places sections, so generated identifiers alone are not a safe physical-record key.
Fix
- Prefer
raw.rawRecordPathas the physical identity for file-session records. - Fall back to
raw.sourceRowId,raw.supportEventId,externalSourceEventId, event UUID, then canonical key. - Include domain, type, semantic lifecycle and timestamp so START/END points of one interval remain separate.
- Remove canonical semantic reduction from aggregation.
- Preserve all card/VU evidence for downstream mixing and all CVU/IW evidence for interval reconciliation.
- Add regression tests for repeated
CARDPLACE-*identifiers across XML sections and semantically equal but physically distinct place records.