@adtrackify/at-service-common 4.0.13 → 4.0.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. package/dist/cjs/__tests__/identity-cache/helpers.spec.js +37 -38
  2. package/dist/cjs/__tests__/identity-cache/helpers.spec.js.map +1 -1
  3. package/dist/cjs/__tests__/identity-cache/identity-cache-tier-routing.spec.js +83 -344
  4. package/dist/cjs/__tests__/identity-cache/identity-cache-tier-routing.spec.js.map +1 -1
  5. package/dist/cjs/__tests__/identity-cache/identity-client.spec.js +360 -0
  6. package/dist/cjs/__tests__/identity-cache/identity-client.spec.js.map +1 -0
  7. package/dist/cjs/__tests__/identity-cache/identity-gateway-service.spec.js +335 -1261
  8. package/dist/cjs/__tests__/identity-cache/identity-gateway-service.spec.js.map +1 -1
  9. package/dist/cjs/clients/internal-api/identity-client.d.ts +12 -2
  10. package/dist/cjs/clients/internal-api/identity-client.js +59 -13
  11. package/dist/cjs/clients/internal-api/identity-client.js.map +1 -1
  12. package/dist/cjs/services/db/identity-cache-dynamodb-service/identity-cache-dynamodb-db-service.d.ts +1 -7
  13. package/dist/cjs/services/db/identity-cache-dynamodb-service/identity-cache-dynamodb-db-service.js +0 -305
  14. package/dist/cjs/services/db/identity-cache-dynamodb-service/identity-cache-dynamodb-db-service.js.map +1 -1
  15. package/dist/cjs/services/db/identity-cache-dynamodb-service/identity-gateway-service.d.ts +10 -9
  16. package/dist/cjs/services/db/identity-cache-dynamodb-service/identity-gateway-service.js +116 -321
  17. package/dist/cjs/services/db/identity-cache-dynamodb-service/identity-gateway-service.js.map +1 -1
  18. package/dist/cjs/services/db/identity-cache-dynamodb-service/index.d.ts +0 -1
  19. package/dist/cjs/services/db/identity-cache-dynamodb-service/index.js +0 -1
  20. package/dist/cjs/services/db/identity-cache-dynamodb-service/index.js.map +1 -1
  21. package/dist/cjs/services/db/identity-cache-dynamodb-service/types.d.ts +9 -157
  22. package/dist/cjs/services/db/identity-cache-dynamodb-service/types.js +1 -15
  23. package/dist/cjs/services/db/identity-cache-dynamodb-service/types.js.map +1 -1
  24. package/dist/esm/__tests__/identity-cache/helpers.spec.js +26 -27
  25. package/dist/esm/__tests__/identity-cache/helpers.spec.js.map +1 -1
  26. package/dist/esm/__tests__/identity-cache/identity-cache-tier-routing.spec.js +83 -344
  27. package/dist/esm/__tests__/identity-cache/identity-cache-tier-routing.spec.js.map +1 -1
  28. package/dist/esm/__tests__/identity-cache/identity-client.spec.js +358 -0
  29. package/dist/esm/__tests__/identity-cache/identity-client.spec.js.map +1 -0
  30. package/dist/esm/__tests__/identity-cache/identity-gateway-service.spec.js +335 -1261
  31. package/dist/esm/__tests__/identity-cache/identity-gateway-service.spec.js.map +1 -1
  32. package/dist/esm/clients/internal-api/identity-client.d.ts +12 -2
  33. package/dist/esm/clients/internal-api/identity-client.js +60 -14
  34. package/dist/esm/clients/internal-api/identity-client.js.map +1 -1
  35. package/dist/esm/services/db/identity-cache-dynamodb-service/identity-cache-dynamodb-db-service.d.ts +1 -7
  36. package/dist/esm/services/db/identity-cache-dynamodb-service/identity-cache-dynamodb-db-service.js +1 -303
  37. package/dist/esm/services/db/identity-cache-dynamodb-service/identity-cache-dynamodb-db-service.js.map +1 -1
  38. package/dist/esm/services/db/identity-cache-dynamodb-service/identity-gateway-service.d.ts +10 -9
  39. package/dist/esm/services/db/identity-cache-dynamodb-service/identity-gateway-service.js +119 -321
  40. package/dist/esm/services/db/identity-cache-dynamodb-service/identity-gateway-service.js.map +1 -1
  41. package/dist/esm/services/db/identity-cache-dynamodb-service/index.d.ts +0 -1
  42. package/dist/esm/services/db/identity-cache-dynamodb-service/index.js +0 -1
  43. package/dist/esm/services/db/identity-cache-dynamodb-service/index.js.map +1 -1
  44. package/dist/esm/services/db/identity-cache-dynamodb-service/types.d.ts +9 -157
  45. package/dist/esm/services/db/identity-cache-dynamodb-service/types.js +0 -14
  46. package/dist/esm/services/db/identity-cache-dynamodb-service/types.js.map +1 -1
  47. package/package.json +2 -2
  48. package/dist/cjs/__tests__/identity-cache/identity-cache-dynamodb-db-service-v2-comparison.spec.js +0 -646
  49. package/dist/cjs/__tests__/identity-cache/identity-cache-dynamodb-db-service-v2-comparison.spec.js.map +0 -1
  50. package/dist/cjs/__tests__/identity-cache/identity-cache-dynamodb-service-v2-comparison.spec.js +0 -325
  51. package/dist/cjs/__tests__/identity-cache/identity-cache-dynamodb-service-v2-comparison.spec.js.map +0 -1
  52. package/dist/cjs/__tests__/identity-cache/identity-cache-dynamodb-service.spec.d.ts +0 -1
  53. package/dist/cjs/__tests__/identity-cache/identity-cache-dynamodb-service.spec.js +0 -1286
  54. package/dist/cjs/__tests__/identity-cache/identity-cache-dynamodb-service.spec.js.map +0 -1
  55. package/dist/cjs/services/db/identity-cache-dynamodb-service/helpers.d.ts +0 -26
  56. package/dist/cjs/services/db/identity-cache-dynamodb-service/helpers.js +0 -252
  57. package/dist/cjs/services/db/identity-cache-dynamodb-service/helpers.js.map +0 -1
  58. package/dist/esm/__tests__/identity-cache/identity-cache-dynamodb-db-service-v2-comparison.spec.d.ts +0 -1
  59. package/dist/esm/__tests__/identity-cache/identity-cache-dynamodb-db-service-v2-comparison.spec.js +0 -644
  60. package/dist/esm/__tests__/identity-cache/identity-cache-dynamodb-db-service-v2-comparison.spec.js.map +0 -1
  61. package/dist/esm/__tests__/identity-cache/identity-cache-dynamodb-service-v2-comparison.spec.d.ts +0 -1
  62. package/dist/esm/__tests__/identity-cache/identity-cache-dynamodb-service-v2-comparison.spec.js +0 -323
  63. package/dist/esm/__tests__/identity-cache/identity-cache-dynamodb-service-v2-comparison.spec.js.map +0 -1
  64. package/dist/esm/__tests__/identity-cache/identity-cache-dynamodb-service.spec.d.ts +0 -1
  65. package/dist/esm/__tests__/identity-cache/identity-cache-dynamodb-service.spec.js +0 -1284
  66. package/dist/esm/__tests__/identity-cache/identity-cache-dynamodb-service.spec.js.map +0 -1
  67. package/dist/esm/services/db/identity-cache-dynamodb-service/helpers.d.ts +0 -26
  68. package/dist/esm/services/db/identity-cache-dynamodb-service/helpers.js +0 -235
  69. package/dist/esm/services/db/identity-cache-dynamodb-service/helpers.js.map +0 -1
  70. /package/dist/cjs/__tests__/identity-cache/{identity-cache-dynamodb-db-service-v2-comparison.spec.d.ts → identity-client.spec.d.ts} +0 -0
  71. /package/dist/{cjs/__tests__/identity-cache/identity-cache-dynamodb-service-v2-comparison.spec.d.ts → esm/__tests__/identity-cache/identity-client.spec.d.ts} +0 -0
@@ -1,17 +1,26 @@
1
- import { IDENTITY_CACHE_STALENESS_TIER } from '@adtrackify/at-shared-utils';
2
- import fastDeepEqual from 'fast-deep-equal';
3
- import { LambdaInvokeClient, SQSClient } from '../../../clients/index.js';
1
+ import { mergeAndComputeIdentityStaleness, computeTraitChanges } from '@adtrackify/at-shared-utils';
2
+ import { SQSClient } from '../../../clients/index.js';
3
+ import { IdentityClient } from '../../../clients/internal-api/identity-client.js';
4
4
  import { Logger } from '../../../helpers/index.js';
5
- import { computeTraitChanges, createIdentityCacheWithCachingResultFromState, processCacheHit, stripAddressTimestamps } from './helpers.js';
6
- import { extractStaleTraitNames } from '@adtrackify/at-shared-utils';
7
5
  import { IdentityCacheDynamoDbDbService } from './identity-cache-dynamodb-db-service.js';
8
- import { CACHE_WRITE_REASON, IDENTITY_CACHE_WITH_CACHING_OUTCOME, } from './types.js';
6
+ import { IDENTITY_CACHE_WITH_CACHING_OUTCOME, } from './types.js';
9
7
  const IDENTIFY_ASYNC_UPDATE_MESSAGE_TYPE = 'identify.updateAsync';
10
8
  export class IdentityGatewayService {
11
- static lambdaInvokeClient;
9
+ static identityClient;
12
10
  static sqsClient;
13
11
  static sqsQueueUrl;
14
12
  static configure(options) {
13
+ if (options.identifyPrivateLambdaArn) {
14
+ this.identityClient = new IdentityClient({
15
+ baseApiUrl: options.identityBaseApiUrl ?? '',
16
+ identifyPrivateLambdaArn: options.identifyPrivateLambdaArn,
17
+ });
18
+ }
19
+ else if (options.identityBaseApiUrl) {
20
+ this.identityClient = new IdentityClient({
21
+ baseApiUrl: options.identityBaseApiUrl,
22
+ });
23
+ }
15
24
  if (options.asyncUpdateQueueUrl) {
16
25
  const urlMatch = options.asyncUpdateQueueUrl.match(/^https:\/\/sqs\.([^.]+)\.amazonaws\.com\/(\d+)\/(.+)$/);
17
26
  if (urlMatch) {
@@ -33,165 +42,38 @@ export class IdentityGatewayService {
33
42
  }
34
43
  }
35
44
  }
36
- static getLambdaInvokeClient() {
37
- if (!this.lambdaInvokeClient) {
38
- this.lambdaInvokeClient = new LambdaInvokeClient();
45
+ static resolveIdentityWithCaching = async (pixelId, incomingIdentity) => {
46
+ const result = this.createInitialResult(pixelId, incomingIdentity);
47
+ if (!pixelId || !incomingIdentity) {
48
+ Logger.error('IdentityGateway - missing required params', { pixelId, incomingIdentity });
49
+ result.outcome = IDENTITY_CACHE_WITH_CACHING_OUTCOME.INVALID_INPUT;
50
+ return result;
39
51
  }
40
- return this.lambdaInvokeClient;
41
- }
42
- static getIdentityWithCaching = async (pixelId, incomingIdentity, identifyPrivateLambdaArn) => {
43
52
  try {
44
- if (!pixelId || !incomingIdentity) {
45
- Logger.error('IdentityGateway - missing required params', { pixelId, incomingIdentity });
46
- return undefined;
47
- }
48
- const cacheResponse = await this.readFromCache(pixelId, incomingIdentity);
49
- let resolvedIdentity = cacheResponse.resolvedIdentity;
50
- const isCacheStale = cacheResponse.isCacheStale;
51
- const cachedIdentity = cacheResponse.cachedIdentity;
52
- const staleTracker = cacheResponse.staleTracker;
53
- const writeReason = cacheResponse.writeReason;
54
- const staleTier = cacheResponse.staleTier;
55
- const skipNeptune = cacheResponse.skipNeptune;
56
- if (resolvedIdentity && !isCacheStale) {
57
- const tierLabel = staleTier === IDENTITY_CACHE_STALENESS_TIER.VOLATILE_ONLY ? 'volatile_traits_only' : 'fresh';
58
- Logger.debug(`IdentityGateway - identity cache hit - ${tierLabel}`, {
59
- pixelId,
60
- identityId: resolvedIdentity.identityId,
61
- staleTier,
62
- cachedIdentity: cachedIdentity ?? null,
63
- incomingIdentity,
64
- resolvedIdentity,
65
- incomingClick: incomingIdentity?.traits?.click ?? null,
66
- cachedClick: cachedIdentity?.traits?.click ?? null,
67
- resolvedClick: resolvedIdentity?.traits?.click ?? null,
68
- });
69
- return resolvedIdentity;
70
- }
71
- if (resolvedIdentity && skipNeptune && writeReason === CACHE_WRITE_REASON.ADDRESS_UPDATE) {
72
- const staleTraits = staleTracker ? extractStaleTraitNames(staleTracker) : [];
73
- Logger.debug('IdentityGateway - identity cache write: address update only (skipping Neptune)', {
74
- pixelId,
75
- identityId: resolvedIdentity.identityId,
76
- writeReason,
77
- staleTier,
78
- staleTraits,
79
- cachedIdentity: cachedIdentity ?? null,
80
- incomingIdentity,
81
- resolvedIdentity,
82
- incomingClick: incomingIdentity?.traits?.click ?? null,
83
- cachedClick: cachedIdentity?.traits?.click ?? null,
84
- resolvedClick: resolvedIdentity?.traits?.click ?? null,
85
- traitChanges: cachedIdentity ? computeTraitChanges(cachedIdentity, resolvedIdentity) : { reason: 'no cached identity' },
86
- });
87
- await this.safeWriteBackToCache(pixelId, resolvedIdentity, 'address update');
88
- return resolvedIdentity;
89
- }
90
- const identityForNeptune = resolvedIdentity ?? incomingIdentity;
91
- Logger.debug('IdentityGateway - identity cache stale - fetching from Neptune', {
92
- pixelId,
93
- identityId: identityForNeptune?.identityId,
94
- staleTier,
95
- writeReason,
96
- staleTraits: staleTracker ? extractStaleTraitNames(staleTracker) : [],
97
- cachedIdentity: cachedIdentity ?? null,
98
- incomingIdentity,
99
- identityForNeptune,
100
- incomingClick: incomingIdentity?.traits?.click ?? null,
101
- cachedClick: cachedIdentity?.traits?.click ?? null,
102
- hasDiscoveredIdentityId: !!resolvedIdentity?.identityId,
103
- });
104
- const neptuneIdentity = await this.resolveFromNeptune(pixelId, identityForNeptune, identifyPrivateLambdaArn);
105
- if (neptuneIdentity) {
106
- resolvedIdentity = neptuneIdentity;
107
- const cachedForComparison = cachedIdentity ? stripAddressTimestamps(cachedIdentity) : undefined;
108
- const neptuneForComparison = stripAddressTimestamps(neptuneIdentity);
109
- const shouldWrite = !cachedForComparison || !fastDeepEqual(cachedForComparison, neptuneForComparison);
110
- if (shouldWrite) {
111
- const staleTraits = staleTracker ? extractStaleTraitNames(staleTracker) : [];
112
- const cacheWriteType = (() => {
113
- switch (writeReason) {
114
- case CACHE_WRITE_REASON.CACHE_MISS:
115
- return 'cache_miss';
116
- case CACHE_WRITE_REASON.EMAIL_POINTER_DISCOVERY:
117
- return 'email_discovery';
118
- case CACHE_WRITE_REASON.ADDRESS_UPDATE:
119
- return 'address_update';
120
- case CACHE_WRITE_REASON.STALE_TRAITS:
121
- default:
122
- return 'stale_traits_update';
123
- }
124
- })();
125
- Logger.debug(`IdentityGateway - identity cache write: ${cacheWriteType}`, {
126
- pixelId,
127
- identityId: neptuneIdentity.identityId,
128
- writeReason,
129
- staleTier,
130
- staleTraits,
131
- cachedIdentity: cachedIdentity ?? null,
132
- incomingIdentity,
133
- neptuneIdentity,
134
- incomingClick: incomingIdentity?.traits?.click ?? null,
135
- cachedClick: cachedIdentity?.traits?.click ?? null,
136
- neptuneClick: neptuneIdentity?.traits?.click ?? null,
137
- traitChanges: cachedIdentity
138
- ? computeTraitChanges(cachedIdentity, neptuneIdentity)
139
- : { reason: 'no cached identity' },
140
- });
141
- await this.safeWriteBackToCache(pixelId, resolvedIdentity, 'neptune write-back');
142
- }
143
- else {
144
- Logger.debug('IdentityGateway - identity cache skip write - Neptune matches cached', {
145
- pixelId,
146
- identityId: neptuneIdentity.identityId,
147
- staleTier,
148
- cachedIdentity: cachedIdentity ?? null,
149
- incomingIdentity,
150
- neptuneIdentity,
151
- incomingClick: incomingIdentity?.traits?.click ?? null,
152
- cachedClick: cachedIdentity?.traits?.click ?? null,
153
- neptuneClick: neptuneIdentity?.traits?.click ?? null,
154
- });
155
- }
156
- }
157
- else {
158
- Logger.error('IdentityGateway - Neptune resolution failed', {
159
- pixelId,
160
- staleTier,
161
- writeReason,
162
- cachedIdentity: cachedIdentity ?? null,
163
- incomingIdentity,
164
- identityForNeptune,
165
- incomingClick: incomingIdentity?.traits?.click ?? null,
166
- });
167
- }
168
- if (!resolvedIdentity) {
169
- Logger.error('IdentityGateway - no identity found, using incoming', {
170
- pixelId,
171
- incomingIdentity,
172
- incomingClick: incomingIdentity?.traits?.click ?? null,
173
- });
174
- resolvedIdentity = incomingIdentity;
53
+ const pureCacheResult = await IdentityCacheDynamoDbDbService.getIdentityFromCachePure(pixelId, incomingIdentity);
54
+ result.didReadCache = true;
55
+ if (!pureCacheResult.cacheHit || !pureCacheResult.cachedIdentity) {
56
+ return await this.resolveViaNeptune(result, { discoveredIdentityId: pureCacheResult.discoveredIdentityId });
175
57
  }
176
- return resolvedIdentity;
58
+ return await this.processCacheHit(result, pureCacheResult.cachedIdentity);
177
59
  }
178
60
  catch (error) {
179
- Logger.error('IdentityGateway - getIdentityWithCaching failed', {
61
+ Logger.error('IdentityGateway - resolveIdentityWithCaching failed', {
180
62
  error,
181
63
  errorMessage: error instanceof Error ? error.message : String(error),
182
64
  pixelId,
183
- incomingIdentity,
184
- incomingClick: incomingIdentity?.traits?.click ?? null,
65
+ identityId: incomingIdentity?.identityId,
185
66
  });
186
- return undefined;
67
+ result.outcome = IDENTITY_CACHE_WITH_CACHING_OUTCOME.FAILED;
68
+ result.errorMessage = error instanceof Error ? error.message : String(error);
69
+ return result;
187
70
  }
188
71
  };
189
- static getIdentityWithCachingV2 = async (pixelId, incomingIdentity, identifyPrivateLambdaArn, options) => {
190
- const state = {
72
+ static createInitialResult(pixelId, incomingIdentity) {
73
+ return {
74
+ outcome: IDENTITY_CACHE_WITH_CACHING_OUTCOME.FAILED,
191
75
  pixelId,
192
76
  incomingIdentity,
193
- identifyPrivateLambdaArn,
194
- staleTraits: [],
195
77
  didReadCache: false,
196
78
  didCallNeptune: false,
197
79
  didWriteCache: false,
@@ -199,190 +81,116 @@ export class IdentityGatewayService {
199
81
  didFallbackToIncoming: false,
200
82
  didEnqueueAsync: false,
201
83
  };
202
- if (!pixelId || !incomingIdentity) {
203
- Logger.error('IdentityGateway - missing required params', { pixelId, incomingIdentity });
204
- return createIdentityCacheWithCachingResultFromState(state, undefined, {
205
- outcome: IDENTITY_CACHE_WITH_CACHING_OUTCOME.INVALID_INPUT,
206
- });
207
- }
208
- try {
209
- const pureCacheResult = await IdentityCacheDynamoDbDbService.getIdentityFromCachePure(pixelId, incomingIdentity);
210
- state.didReadCache = true;
211
- if (!pureCacheResult.cacheHit || !pureCacheResult.cachedIdentity) {
212
- const neptuneResult = await this.resolveViaNeptune(pixelId, incomingIdentity, identifyPrivateLambdaArn, state, { isCacheMiss: true, discoveredIdentityId: pureCacheResult.discoveredIdentityId });
213
- return createIdentityCacheWithCachingResultFromState(state, state.resolvedIdentity, {
214
- outcome: neptuneResult.outcome,
215
- traitChanges: neptuneResult.traitChanges,
216
- });
217
- }
218
- state.cachedIdentity = pureCacheResult.cachedIdentity;
219
- const cacheHit = processCacheHit(incomingIdentity, pureCacheResult.cachedIdentity);
220
- state.resolvedIdentity = cacheHit.mergedIdentity;
221
- state.staleTraits = cacheHit.staleTraits;
222
- if (!cacheHit.isCacheStale) {
223
- const outcome = cacheHit.isVolatileOnly && !cacheHit.isDeepEqual
224
- ? IDENTITY_CACHE_WITH_CACHING_OUTCOME.VOLATILE_ONLY_CACHE_HIT
225
- : IDENTITY_CACHE_WITH_CACHING_OUTCOME.FRESH_CACHE_HIT;
226
- const tierLabel = cacheHit.isVolatileOnly ? 'volatile_traits_only' : 'fresh';
227
- Logger.debug(`IdentityGateway - cache hit: ${tierLabel}`, {
228
- pixelId,
229
- identityId: state.resolvedIdentity?.identityId,
230
- staleTier: cacheHit.staleTier,
231
- outcome,
232
- });
233
- return createIdentityCacheWithCachingResultFromState(state, state.resolvedIdentity, {
234
- outcome,
235
- staleTier: cacheHit.staleTier,
236
- });
237
- }
238
- if (cacheHit.isAddressUpdate) {
239
- state.didSkipNeptune = true;
240
- const enqueueResult = await this.enqueueAsyncIdentityUpdate({
241
- pixelId,
242
- identity: state.resolvedIdentity,
243
- context: { identity: incomingIdentity },
244
- reason: 'address_update',
245
- });
246
- state.didEnqueueAsync = enqueueResult.success;
247
- Logger.debug('IdentityGateway - address update: enqueued async (skipping Neptune)', {
248
- pixelId,
249
- identityId: state.resolvedIdentity?.identityId,
250
- staleTier: cacheHit.staleTier,
251
- staleTraits: cacheHit.staleTraits,
252
- didEnqueueAsync: enqueueResult.success,
253
- });
254
- return createIdentityCacheWithCachingResultFromState(state, state.resolvedIdentity, {
255
- outcome: IDENTITY_CACHE_WITH_CACHING_OUTCOME.ADDRESS_UPDATE_ASYNC,
256
- staleTier: cacheHit.staleTier,
257
- writeReason: cacheHit.writeReason,
258
- traitChanges: computeTraitChanges(pureCacheResult.cachedIdentity, state.resolvedIdentity),
259
- });
260
- }
261
- Logger.debug('IdentityGateway - cache stale: calling Neptune', {
262
- pixelId,
263
- identityId: incomingIdentity?.identityId,
264
- staleTier: cacheHit.staleTier,
265
- staleTraits: cacheHit.staleTraits,
266
- });
267
- const neptuneResult = await this.resolveViaNeptune(pixelId, incomingIdentity, identifyPrivateLambdaArn, state, { isCacheMiss: false, cachedIdentity: pureCacheResult.cachedIdentity });
268
- return createIdentityCacheWithCachingResultFromState(state, state.resolvedIdentity, {
269
- outcome: neptuneResult.outcome,
270
- staleTier: cacheHit.staleTier,
271
- traitChanges: neptuneResult.traitChanges,
272
- });
273
- }
274
- catch (error) {
275
- Logger.error('IdentityGateway - getIdentityWithCachingV2 failed', {
276
- error,
277
- errorMessage: error instanceof Error ? error.message : String(error),
278
- pixelId,
279
- identityId: incomingIdentity?.identityId,
280
- });
281
- return createIdentityCacheWithCachingResultFromState(state, undefined, {
282
- outcome: IDENTITY_CACHE_WITH_CACHING_OUTCOME.FAILED,
283
- errorMessage: error instanceof Error ? error.message : String(error),
284
- });
84
+ }
85
+ static async processCacheHit(result, cachedIdentity) {
86
+ const incomingIdentity = result.incomingIdentity;
87
+ result.cachedIdentity = cachedIdentity;
88
+ result.stalenessResult = mergeAndComputeIdentityStaleness(incomingIdentity, cachedIdentity);
89
+ result.identity = result.stalenessResult.mergedIdentity;
90
+ result.identityId = result.identity?.identityId;
91
+ result.staleTier = result.stalenessResult.staleTier;
92
+ Logger.debug('IdentityGateway - cache hit staleness computed', {
93
+ pixelId: result.pixelId,
94
+ identityId: result.identityId,
95
+ stalenessResult: result.stalenessResult,
96
+ });
97
+ if (!result.stalenessResult.isCacheStale) {
98
+ return this.processFreshCacheHit(result);
285
99
  }
286
- };
287
- static resolveViaNeptune = async (pixelId, incomingIdentity, identifyPrivateLambdaArn, state, context) => {
100
+ return this.processStaleCacheHit(result);
101
+ }
102
+ static processFreshCacheHit(result) {
103
+ const stalenessResult = result.stalenessResult;
104
+ result.outcome = stalenessResult.isVolatileOnly && !stalenessResult.isDeepEqual
105
+ ? IDENTITY_CACHE_WITH_CACHING_OUTCOME.VOLATILE_ONLY_CACHE_HIT
106
+ : IDENTITY_CACHE_WITH_CACHING_OUTCOME.FRESH_CACHE_HIT;
107
+ const tierLabel = stalenessResult.isVolatileOnly ? 'volatile_traits_only' : 'fresh';
108
+ Logger.debug(`IdentityGateway - cache hit: ${tierLabel}`, {
109
+ pixelId: result.pixelId,
110
+ identityId: result.identityId,
111
+ staleTier: result.staleTier,
112
+ outcome: result.outcome,
113
+ });
114
+ return result;
115
+ }
116
+ static async processStaleCacheHit(result) {
117
+ Logger.debug('IdentityGateway - cache stale: calling Neptune', {
118
+ pixelId: result.pixelId,
119
+ identityId: result.incomingIdentity?.identityId,
120
+ stalenessResult: result.stalenessResult,
121
+ cachedIdentity: result.cachedIdentity,
122
+ });
123
+ return this.resolveViaNeptune(result);
124
+ }
125
+ static async resolveViaNeptune(result, context) {
126
+ const incomingIdentity = result.incomingIdentity;
127
+ const discoveredIdentityId = context?.discoveredIdentityId;
288
128
  const identityForNeptune = incomingIdentity.identityId
289
129
  ? incomingIdentity
290
- : context.discoveredIdentityId
291
- ? { ...incomingIdentity, identityId: context.discoveredIdentityId }
130
+ : discoveredIdentityId
131
+ ? { ...incomingIdentity, identityId: discoveredIdentityId }
292
132
  : incomingIdentity;
293
- state.identityForNeptune = identityForNeptune;
294
- state.didCallNeptune = true;
295
- state.neptuneIdentity = await this.resolveFromNeptune(pixelId, identityForNeptune, identifyPrivateLambdaArn);
296
- if (state.neptuneIdentity) {
297
- state.resolvedIdentity = state.neptuneIdentity;
298
- const contextLabel = context.isCacheMiss ? 'cache miss' : 'stale cache';
133
+ const isCacheMiss = !result.cachedIdentity;
134
+ const contextLabel = isCacheMiss ? 'cache miss' : 'stale cache';
135
+ result.identityForNeptune = identityForNeptune;
136
+ result.didCallNeptune = true;
137
+ result.neptuneIdentity = await this.resolveIdentity(result.pixelId, identityForNeptune);
138
+ if (result.neptuneIdentity) {
139
+ result.identity = result.neptuneIdentity;
140
+ result.identityId = result.neptuneIdentity.identityId;
141
+ result.outcome = IDENTITY_CACHE_WITH_CACHING_OUTCOME.NEPTUNE_RESOLVED;
142
+ result.traitChanges = result.cachedIdentity
143
+ ? computeTraitChanges(result.cachedIdentity, result.neptuneIdentity)
144
+ : { reason: { resolved: 'no cached identity' } };
299
145
  Logger.debug(`IdentityGateway - ${contextLabel}: Neptune resolved`, {
300
- pixelId,
301
- identityId: state.neptuneIdentity.identityId,
302
- isCacheMiss: context.isCacheMiss,
303
- usedDiscoveredId: !incomingIdentity.identityId && !!context.discoveredIdentityId,
146
+ pixelId: result.pixelId,
147
+ identityId: result.identityId,
148
+ isCacheMiss,
149
+ usedDiscoveredId: !incomingIdentity.identityId && !!discoveredIdentityId,
304
150
  });
305
- return {
306
- outcome: IDENTITY_CACHE_WITH_CACHING_OUTCOME.NEPTUNE_RESOLVED,
307
- traitChanges: context.cachedIdentity
308
- ? computeTraitChanges(context.cachedIdentity, state.neptuneIdentity)
309
- : { reason: { resolved: 'no cached identity' } },
310
- };
151
+ return result;
311
152
  }
312
- state.resolvedIdentity = identityForNeptune;
313
- state.didFallbackToIncoming = true;
314
- const contextLabel = context.isCacheMiss ? 'cache miss' : 'stale cache';
153
+ result.identity = identityForNeptune;
154
+ result.identityId = identityForNeptune?.identityId;
155
+ result.didFallbackToIncoming = true;
156
+ result.outcome = IDENTITY_CACHE_WITH_CACHING_OUTCOME.NEPTUNE_RESOLUTION_FAILED;
315
157
  Logger.warn(`IdentityGateway - ${contextLabel}: Neptune failed, using incoming`, {
316
- pixelId,
317
- identityId: identityForNeptune?.identityId,
158
+ pixelId: result.pixelId,
159
+ identityId: result.identityId,
318
160
  });
319
- return {
320
- outcome: IDENTITY_CACHE_WITH_CACHING_OUTCOME.NEPTUNE_RESOLUTION_FAILED,
321
- };
322
- };
323
- static readFromCache = async (pixelId, incomingIdentity) => {
324
- return await IdentityCacheDynamoDbDbService.getIdentityFromCache(pixelId, incomingIdentity);
325
- };
326
- static resolveFromNeptune = async (pixelId, incomingIdentity, identifyPrivateLambdaArn) => {
161
+ return result;
162
+ }
163
+ static async resolveIdentity(pixelId, incomingIdentity) {
164
+ if (!this.identityClient) {
165
+ Logger.error('IdentityGateway - identity client not configured, call configure() first', { pixelId });
166
+ return undefined;
167
+ }
327
168
  try {
328
- const client = this.getLambdaInvokeClient();
329
- const response = await client.invokeFunction(identifyPrivateLambdaArn, {
330
- pixelId,
331
- context: { identity: incomingIdentity },
332
- });
333
- if (response?.statusCode === 200 && response?.body) {
334
- const identifyResponse = JSON.parse(response.body);
335
- return identifyResponse?.identity;
336
- }
337
- return incomingIdentity;
169
+ const identityResult = await this.identityClient.getIdentity(pixelId, { identity: incomingIdentity });
170
+ return identityResult ?? undefined;
338
171
  }
339
172
  catch (error) {
340
- Logger.error('IdentityGateway - Neptune resolution failed', {
173
+ Logger.error('IdentityGateway - identity resolution failed', {
341
174
  error,
342
175
  errorMessage: error instanceof Error ? error.message : String(error),
343
176
  pixelId,
344
177
  incomingIdentity,
345
- incomingClick: incomingIdentity?.traits?.click ?? null,
346
178
  });
347
179
  return undefined;
348
180
  }
349
- };
350
- static writeBackToCache = async (pixelId, resolvedIdentity) => {
351
- return await IdentityCacheDynamoDbDbService.updateIdentityCache(pixelId, resolvedIdentity);
352
- };
353
- static safeWriteBackToCache = async (pixelId, resolvedIdentity, context) => {
354
- try {
355
- return await this.writeBackToCache(pixelId, resolvedIdentity);
356
- }
357
- catch (writeError) {
358
- Logger.error(`IdentityGateway - write back failed (${context})`, {
359
- error: writeError,
360
- errorMessage: writeError instanceof Error ? writeError.message : String(writeError),
361
- pixelId,
362
- identityId: resolvedIdentity?.identityId,
363
- resolvedClick: resolvedIdentity?.traits?.click ?? null,
364
- });
365
- return undefined;
366
- }
367
- };
181
+ }
368
182
  static enqueueAsyncIdentityUpdate = async (request) => {
369
183
  const { pixelId, identity, context, reason, eventId } = request;
370
184
  const identityId = identity?.identityId;
371
185
  if (!this.sqsClient) {
372
186
  Logger.warn('IdentityGateway - enqueueAsyncIdentityUpdate: SQS client not configured', {
373
- pixelId,
374
- identityId,
375
- reason,
376
- eventId,
187
+ pixelId, identityId, reason, eventId,
377
188
  });
378
189
  return { success: false, error: 'SQS client not configured' };
379
190
  }
380
191
  if (!pixelId || !identityId) {
381
192
  Logger.warn('IdentityGateway - enqueueAsyncIdentityUpdate: missing required params', {
382
- pixelId,
383
- identityId,
384
- reason,
385
- eventId,
193
+ pixelId, identityId, reason, eventId,
386
194
  });
387
195
  return { success: false, error: 'Missing required pixelId or identityId' };
388
196
  }
@@ -394,25 +202,15 @@ export class IdentityGatewayService {
394
202
  };
395
203
  const response = await this.sqsClient.buildAndSendMessage(IDENTIFY_ASYNC_UPDATE_MESSAGE_TYPE, message);
396
204
  Logger.debug('IdentityGateway - enqueueAsyncIdentityUpdate: message sent', {
397
- pixelId,
398
- identityId,
399
- reason,
400
- eventId,
401
- sqsMessageId: response.MessageId,
205
+ pixelId, identityId, reason, eventId, sqsMessageId: response.MessageId,
402
206
  });
403
- return {
404
- success: true,
405
- messageId: response.MessageId,
406
- };
207
+ return { success: true, messageId: response.MessageId };
407
208
  }
408
209
  catch (error) {
409
210
  Logger.warn('IdentityGateway - enqueueAsyncIdentityUpdate: failed to enqueue (failing open)', {
410
211
  error,
411
212
  errorMessage: error instanceof Error ? error.message : String(error),
412
- pixelId,
413
- identityId,
414
- reason,
415
- eventId,
213
+ pixelId, identityId, reason, eventId,
416
214
  });
417
215
  return {
418
216
  success: false,
@@ -1 +1 @@
1
- {"version":3,"file":"identity-gateway-service.js","sourceRoot":"","sources":["../../../../../src/services/db/identity-cache-dynamodb-service/identity-gateway-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"identity-gateway-service.js","sourceRoot":"","sources":["../../../../../src/services/db/identity-cache-dynamodb-service/identity-gateway-service.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,4 @@
1
1
  export * from './types.js';
2
2
  export * from './key-builders.js';
3
- export * from './helpers.js';
4
3
  export * from './identity-gateway-service.js';
5
4
  export * from './identity-cache-dynamodb-db-service.js';
@@ -1,6 +1,5 @@
1
1
  export * from './types.js';
2
2
  export * from './key-builders.js';
3
- export * from './helpers.js';
4
3
  export * from './identity-gateway-service.js';
5
4
  export * from './identity-cache-dynamodb-db-service.js';
6
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/services/db/identity-cache-dynamodb-service/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,+BAA+B,CAAC;AAC9C,cAAc,yCAAyC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/services/db/identity-cache-dynamodb-service/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,yCAAyC,CAAC"}