STRATCONN-6767 - [GEC] Treat updated events as add in mirror sync mode#3731
STRATCONN-6767 - [GEC] Treat updated events as add in mirror sync mode#3731joe-ayoub-segment merged 6 commits intomainfrom
Conversation
When syncMode is mirror, RETL sends updated events but the Customer Match User List action had no handler for them, causing "Could not determine operation type" errors. Updated events now map to the ADD operation since identifiers may have changed.
There was a problem hiding this comment.
Pull request overview
Fixes Google Enhanced Conversions (Customer Match User List) handling of RETL updated events in mirror sync mode by treating them as add, preventing “Could not determine operation type” failures and ensuring identifiers are re-synced.
Changes:
- Map
event_name = updated→addwhensyncMode = mirrorin both non-batch and batch operation-determination paths. - Add unit tests covering
updatedevents in mirror mode for single-event and batch execution.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
packages/destination-actions/src/destinations/google-enhanced-conversions/functions.ts |
Updates mirror-mode operation logic to treat updated as an add in both non-batch identifier extraction and batch operation detection. |
packages/destination-actions/src/destinations/google-enhanced-conversions/__tests__/userList.test.ts |
Adds tests for updated mirror-mode behavior (single-event + batch) and extends coverage around sync mode handling. |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #3731 +/- ##
==========================================
- Coverage 81.07% 80.87% -0.20%
==========================================
Files 1655 1347 -308
Lines 32088 25057 -7031
Branches 7090 5201 -1889
==========================================
- Hits 26014 20266 -5748
+ Misses 5101 3844 -1257
+ Partials 973 947 -26 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
| payload.event_name === 'Audience Entered' || | ||
| syncMode === 'add' || | ||
| (syncMode === 'mirror' && payload.event_name === 'new') | ||
| (syncMode === 'mirror' && (payload.event_name === 'new' || payload.event_name === 'updated')) |
There was a problem hiding this comment.
More improvements for this are on the way with standardized audience membership evaluators
|
deployed |
Fixes the Customer Match User List action in the Google Enhanced Conversions destination failing with "Could not determine operation type" when RETL sends
updatedevents in mirror sync mode.When syncMode is
mirror, RETL subscribes tonew,updated, anddeletedevents. However, the destination only handlednew(→ ADD) anddeleted(→ REMOVE), silently dropping or erroring onupdatedevents. Since Google's API doesn't support an Update operation,updatedevents should be treated asadd— the user identifiers may have changed and need to be re-synced.Changes
functions.ts: Two places wheremirrormode determines operation type now includeupdated→addmapping:determineOperationType(batch path)__tests__/userList.test.ts: Two new tests covering theupdatedevent in mirror mode (single-event and batch paths)Testing
Had to test directly on staging with Integrations as we don't have RETL subscription. This chane is pretty much contained to RETL -> GEC flow. So, this testing is sufficient.
Test Results
Security Review
type: 'password'New Destination Checklist
verioning-info.tsfile. example