Skip to content

Conversation

@Spencer-Smith
Copy link
Collaborator

Description

To help track identity for users that are not leveraging ECID, this feature stores the identity map made on send event calls so that it can be populated on follow-up calls (not originated directly by user, eg proposition display).

Related Issue

Jira

Motivation and Context

(see description)

Screenshots (if appropriate):

N/A

Checklist:

  • I have signed the Adobe Open Source CLA or I'm an Adobe employee.
  • I have made any necessary test changes and all tests pass.
  • I have run the Sandbox successfully.

Copy link
Contributor

@carterworks carterworks left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is huge and a great add. I have two small questions, but no real blockers.

event.setUserXdm(xdm);
event.setUserData(data);

if (xdm && xdm.identityMap) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
if (xdm && xdm.identityMap) {
if (xdm?.identityMap) {


if (xdm && xdm.identityMap) {
identityMapStorage.store(xdm.identityMap);
}
Copy link
Contributor

@carterworks carterworks Dec 1, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What do you think about something like this, to be able to clear the stored identity map? @jonsnyder & @dompuiu let me know your thoughts, too

if (xdm?.identityMap === null) {
  identityMapStorage.clear();
}

Copy link
Contributor

@jonsnyder jonsnyder left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a tricky feature. Consider this use-case:

  1. sendEvent1 is sent with identityMapA
  2. sendEvent2 is send with identityMapB
  3. sendEvent1 returns, renders and sends a display notification
  4. sendEvent2 returns, renders and sends a display notification

Ideally, 3 would contain identityMapA, but with this solution it has identityMapB.

I think to solve this, you would need to add the identityMap to the lifecycle onBeforeEvent call (at the top level or part of one of the params) and pass it through to the collect call.

Copy link
Contributor

@carterworks carterworks left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As-is, this attaches the identity map to a proposition display event (given that an identity map is provided when fetching/rendering the proposition) but it doesn't include identity map for automatic click tracking.

@Spencer-Smith Spencer-Smith dismissed jonsnyder’s stale review December 17, 2025 16:43

Requested changes have been implemented

@Spencer-Smith Spencer-Smith merged commit ba1c103 into main Dec 17, 2025
6 of 8 checks passed
@Spencer-Smith Spencer-Smith deleted the feat/identityMapPropDisplay branch December 17, 2025 16:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants