@adtrackify/at-service-common 5.0.2 → 5.0.4

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.
@@ -8,6 +8,7 @@ jest.mock('../../clients/index.js', () => ({
8
8
  safeBatchGet: jest.fn(),
9
9
  safeBatchWrite: jest.fn(),
10
10
  safeQueryByGSI: jest.fn(),
11
+ batchGet: jest.fn(),
11
12
  batchWrite: jest.fn(),
12
13
  },
13
14
  }));
@@ -22,6 +23,7 @@ jest.mock('../../helpers/index.js', () => ({
22
23
  const identity_cache_dynamodb_db_service_js_1 = require("../../services/db/identity-cache-dynamodb-service/identity-cache-dynamodb-db-service.js");
23
24
  const index_js_1 = require("../../clients/index.js");
24
25
  const index_js_2 = require("../../helpers/index.js");
26
+ const constants_js_1 = require("../../services/db/identity-cache-dynamodb-service/constants.js");
25
27
  const mockedDynamoDbClient = index_js_1.DynamoDbClient;
26
28
  const mockedLogger = index_js_2.Logger;
27
29
  describe('IdentityCacheDynamoDbDbService.getIdentityFromCachePure()', () => {
@@ -31,6 +33,8 @@ describe('IdentityCacheDynamoDbDbService.getIdentityFromCachePure()', () => {
31
33
  mockedDynamoDbClient.safeGet.mockReset();
32
34
  mockedDynamoDbClient.safePut.mockReset();
33
35
  mockedDynamoDbClient.safeBatchWrite.mockReset();
36
+ mockedDynamoDbClient.batchGet.mockReset();
37
+ mockedDynamoDbClient.batchWrite.mockReset();
34
38
  });
35
39
  describe('cache hit by identity ID', () => {
36
40
  it('should return cachedIdentity with lookupPath=identity_id and cacheHit=true', async () => {
@@ -439,6 +443,174 @@ describe('IdentityCacheDynamoDbDbService.getIdentityFromCachePure()', () => {
439
443
  });
440
444
  });
441
445
  });
446
+ describe('IdentityCacheDynamoDbDbService cluster traits operations', () => {
447
+ const pixelId = 'pixel-cluster';
448
+ const primaryIdentityId = 'identity-primary';
449
+ const secondaryIdentityId = 'identity-secondary';
450
+ beforeEach(() => {
451
+ jest.clearAllMocks();
452
+ });
453
+ it('returns records by requested identity ID when every key is processed', async () => {
454
+ const primaryRecord = {
455
+ pk: `identity#${pixelId}#${primaryIdentityId}`,
456
+ pixelId,
457
+ identityId: primaryIdentityId,
458
+ response: { identityId: primaryIdentityId, traits: { emails: ['primary@test.com'] } },
459
+ updatedAt: '2026-09-04T12:00:00.000Z',
460
+ };
461
+ mockedDynamoDbClient.batchGet.mockResolvedValue({
462
+ Responses: { [constants_js_1.IDENTITY_CACHE_TABLE_NAME]: [primaryRecord] },
463
+ UnprocessedKeys: {},
464
+ $metadata: {},
465
+ });
466
+ const result = await identity_cache_dynamodb_db_service_js_1.IdentityCacheDynamoDbDbService.getClusterIdentityRecords(pixelId, [primaryIdentityId, secondaryIdentityId]);
467
+ expect(result.complete).toBe(true);
468
+ expect(result.failedIdentityIds).toEqual([]);
469
+ expect(result.recordsByIdentityId.get(primaryIdentityId)).toEqual(primaryRecord);
470
+ expect(result.recordsByIdentityId.has(secondaryIdentityId)).toBe(false);
471
+ });
472
+ it('treats an unprocessed key as a failed read', async () => {
473
+ mockedDynamoDbClient.batchGet.mockResolvedValue({
474
+ Responses: { [constants_js_1.IDENTITY_CACHE_TABLE_NAME]: [] },
475
+ UnprocessedKeys: {
476
+ [constants_js_1.IDENTITY_CACHE_TABLE_NAME]: {
477
+ Keys: [{ pk: `identity#${pixelId}#${secondaryIdentityId}` }],
478
+ },
479
+ },
480
+ $metadata: {},
481
+ });
482
+ const result = await identity_cache_dynamodb_db_service_js_1.IdentityCacheDynamoDbDbService.getClusterIdentityRecords(pixelId, [primaryIdentityId, secondaryIdentityId]);
483
+ expect(result.complete).toBe(false);
484
+ expect(result.failedIdentityIds).toEqual([secondaryIdentityId]);
485
+ });
486
+ it('marks every key in a failed chunk as a failed read', async () => {
487
+ mockedDynamoDbClient.batchGet.mockRejectedValue(new Error('read failed'));
488
+ const result = await identity_cache_dynamodb_db_service_js_1.IdentityCacheDynamoDbDbService.getClusterIdentityRecords(pixelId, [primaryIdentityId, secondaryIdentityId]);
489
+ expect(result.complete).toBe(false);
490
+ expect(result.failedIdentityIds).toEqual([primaryIdentityId, secondaryIdentityId]);
491
+ });
492
+ it('writes final primary traits and the migration marker in one item', async () => {
493
+ mockedDynamoDbClient.safePut.mockResolvedValue({ $metadata: { httpStatusCode: 200 } });
494
+ const success = await identity_cache_dynamodb_db_service_js_1.IdentityCacheDynamoDbDbService.putPrimaryIdentityTraits({
495
+ pixelId,
496
+ primaryIdentityId,
497
+ traits: { emails: ['merged@test.com'] },
498
+ traitsInDynamo: true,
499
+ });
500
+ expect(success).toBe(true);
501
+ expect(mockedDynamoDbClient.safePut).toHaveBeenCalledWith(expect.any(String), expect.objectContaining({
502
+ pk: `identity#${pixelId}#${primaryIdentityId}`,
503
+ identityId: primaryIdentityId,
504
+ traitsInDynamo: true,
505
+ response: {
506
+ identityId: primaryIdentityId,
507
+ traits: { emails: ['merged@test.com'] },
508
+ },
509
+ }));
510
+ });
511
+ it('reports a failed primary traits write', async () => {
512
+ mockedDynamoDbClient.safePut.mockResolvedValue(null);
513
+ const success = await identity_cache_dynamodb_db_service_js_1.IdentityCacheDynamoDbDbService.putPrimaryIdentityTraits({
514
+ pixelId,
515
+ primaryIdentityId,
516
+ traits: {},
517
+ traitsInDynamo: true,
518
+ });
519
+ expect(success).toBe(false);
520
+ });
521
+ it('deletes exact identity keys and returns unprocessed identity IDs', async () => {
522
+ mockedDynamoDbClient.batchWrite.mockResolvedValue({
523
+ UnprocessedItems: {
524
+ [constants_js_1.IDENTITY_CACHE_TABLE_NAME]: [{
525
+ DeleteRequest: { Key: { pk: `identity#${pixelId}#${secondaryIdentityId}` } },
526
+ }],
527
+ },
528
+ $metadata: {},
529
+ });
530
+ const failedIdentityIds = await identity_cache_dynamodb_db_service_js_1.IdentityCacheDynamoDbDbService.deleteIdentityRecords(pixelId, [primaryIdentityId, secondaryIdentityId]);
531
+ expect(failedIdentityIds).toEqual([secondaryIdentityId]);
532
+ expect(mockedDynamoDbClient.batchWrite).toHaveBeenCalledWith({
533
+ RequestItems: {
534
+ [constants_js_1.IDENTITY_CACHE_TABLE_NAME]: [
535
+ { DeleteRequest: { Key: { pk: `identity#${pixelId}#${primaryIdentityId}` } } },
536
+ { DeleteRequest: { Key: { pk: `identity#${pixelId}#${secondaryIdentityId}` } } },
537
+ ],
538
+ },
539
+ });
540
+ });
541
+ it('returns every identity ID when an exact delete chunk fails', async () => {
542
+ mockedDynamoDbClient.batchWrite.mockRejectedValue(new Error('delete failed'));
543
+ const failedIdentityIds = await identity_cache_dynamodb_db_service_js_1.IdentityCacheDynamoDbDbService.deleteIdentityRecords(pixelId, [primaryIdentityId, secondaryIdentityId]);
544
+ expect(failedIdentityIds).toEqual([primaryIdentityId, secondaryIdentityId]);
545
+ });
546
+ it('deduplicates requested identity IDs before issuing batchGet', async () => {
547
+ mockedDynamoDbClient.batchGet.mockResolvedValue({
548
+ Responses: { [constants_js_1.IDENTITY_CACHE_TABLE_NAME]: [] },
549
+ UnprocessedKeys: {},
550
+ $metadata: {},
551
+ });
552
+ await identity_cache_dynamodb_db_service_js_1.IdentityCacheDynamoDbDbService.getClusterIdentityRecords(pixelId, [primaryIdentityId, primaryIdentityId, secondaryIdentityId]);
553
+ expect(mockedDynamoDbClient.batchGet).toHaveBeenCalledWith({
554
+ RequestItems: {
555
+ [constants_js_1.IDENTITY_CACHE_TABLE_NAME]: {
556
+ Keys: [
557
+ { pk: `identity#${pixelId}#${primaryIdentityId}` },
558
+ { pk: `identity#${pixelId}#${secondaryIdentityId}` },
559
+ ],
560
+ },
561
+ },
562
+ });
563
+ });
564
+ it('treats a processed key with no returned item as a successful miss', async () => {
565
+ mockedDynamoDbClient.batchGet.mockResolvedValue({
566
+ Responses: { [constants_js_1.IDENTITY_CACHE_TABLE_NAME]: [] },
567
+ UnprocessedKeys: {},
568
+ $metadata: {},
569
+ });
570
+ const result = await identity_cache_dynamodb_db_service_js_1.IdentityCacheDynamoDbDbService.getClusterIdentityRecords(pixelId, [primaryIdentityId, secondaryIdentityId]);
571
+ expect(result.complete).toBe(true);
572
+ expect(result.failedIdentityIds).toEqual([]);
573
+ expect(result.recordsByIdentityId.size).toBe(0);
574
+ });
575
+ it('reports a failed primary traits write when safePut throws', async () => {
576
+ mockedDynamoDbClient.safePut.mockRejectedValue(new Error('put failed'));
577
+ const success = await identity_cache_dynamodb_db_service_js_1.IdentityCacheDynamoDbDbService.putPrimaryIdentityTraits({
578
+ pixelId,
579
+ primaryIdentityId,
580
+ traits: { emails: ['merged@test.com'] },
581
+ traitsInDynamo: true,
582
+ });
583
+ expect(success).toBe(false);
584
+ expect(mockedLogger.error).toHaveBeenCalledWith('IdentityCache [primary traits write]: failed', expect.objectContaining({ pixelId, primaryIdentityId }));
585
+ });
586
+ it('deletes exact identity PKs without querying GSI1', async () => {
587
+ mockedDynamoDbClient.batchWrite.mockResolvedValue({
588
+ UnprocessedItems: {},
589
+ $metadata: {},
590
+ });
591
+ await identity_cache_dynamodb_db_service_js_1.IdentityCacheDynamoDbDbService.deleteIdentityRecords(pixelId, [secondaryIdentityId]);
592
+ expect(mockedDynamoDbClient.safeQueryByGSI).not.toHaveBeenCalled();
593
+ expect(mockedDynamoDbClient.batchWrite).toHaveBeenCalledWith({
594
+ RequestItems: {
595
+ [constants_js_1.IDENTITY_CACHE_TABLE_NAME]: [
596
+ { DeleteRequest: { Key: { pk: `identity#${pixelId}#${secondaryIdentityId}` } } },
597
+ ],
598
+ },
599
+ });
600
+ });
601
+ it('logs cluster read completion with requested identity IDs', async () => {
602
+ mockedDynamoDbClient.batchGet.mockResolvedValue({
603
+ Responses: { [constants_js_1.IDENTITY_CACHE_TABLE_NAME]: [] },
604
+ UnprocessedKeys: {},
605
+ $metadata: {},
606
+ });
607
+ await identity_cache_dynamodb_db_service_js_1.IdentityCacheDynamoDbDbService.getClusterIdentityRecords(pixelId, [primaryIdentityId]);
608
+ expect(mockedLogger.debug).toHaveBeenCalledWith('IdentityCache [cluster traits read]: completed', expect.objectContaining({
609
+ pixelId,
610
+ identityIds: [primaryIdentityId],
611
+ }));
612
+ });
613
+ });
442
614
  describe('mergeAndComputeIdentityStaleness (pure function)', () => {
443
615
  const { mergeAndComputeIdentityStaleness, IDENTITY_CACHE_STALENESS_TIER } = jest.requireActual('@adtrackify/at-shared-utils');
444
616
  describe('merge behavior', () => {
@@ -1 +1 @@
1
- {"version":3,"file":"identity-cache-dynamodb-db-service.spec.js","sourceRoot":"","sources":["../../../../src/__tests__/identity-cache/identity-cache-dynamodb-db-service.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"identity-cache-dynamodb-db-service.spec.js","sourceRoot":"","sources":["../../../../src/__tests__/identity-cache/identity-cache-dynamodb-db-service.spec.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { EventIdentity, IdentityMapDynamoDbCache } from '@adtrackify/at-tracking-event-types';
2
- import { PureCacheLookupResult } from './types.js';
2
+ import { ClusterIdentityRecordsResult, PutPrimaryIdentityTraitsInput, PureCacheLookupResult } from './types.js';
3
3
  export declare class IdentityCacheDynamoDbDbService {
4
4
  static getIdentityFromCachePure: (pixelId: string, incomingIdentity: EventIdentity) => Promise<PureCacheLookupResult>;
5
5
  private static resolveCacheByIdentityIdPure;
@@ -7,6 +7,9 @@ export declare class IdentityCacheDynamoDbDbService {
7
7
  static getIdentityMap: (pixelId: string, identityId: string) => Promise<IdentityMapDynamoDbCache | undefined>;
8
8
  static getForcePurgeFlag: (pixelId: string, identityId: string) => Promise<boolean>;
9
9
  static updateIdentityCache: (pixelId: string, response: EventIdentity) => Promise<void>;
10
+ static getClusterIdentityRecords: (pixelId: string, identityIds: string[]) => Promise<ClusterIdentityRecordsResult>;
11
+ static putPrimaryIdentityTraits: (input: PutPrimaryIdentityTraitsInput) => Promise<boolean>;
12
+ static deleteIdentityRecords: (pixelId: string, identityIds: string[]) => Promise<string[]>;
10
13
  static putIdentityMap: (pixelId: string, identityId: string, linkedIdentities: string[]) => Promise<void>;
11
14
  static setForcePurgeFlag: (pixelId: string, identityId: string, ttlSeconds?: number) => Promise<void>;
12
15
  static deleteIdentityCache: (pixelId: string, incomingIdentity: EventIdentity, resolvedIdentity: EventIdentity) => Promise<void>;
@@ -14,6 +17,8 @@ export declare class IdentityCacheDynamoDbDbService {
14
17
  static deleteForcePurgeFlag: (pixelId: string, identityId: string) => Promise<void>;
15
18
  private static getIdentityIdFromEmailLookup;
16
19
  private static getItemByPk;
20
+ private static getClusterIdentityRecordsChunk;
21
+ private static deleteIdentityRecordsChunk;
17
22
  private static queryByGsi1;
18
23
  private static safeBatchDelete;
19
24
  private static chunkArray;
@@ -141,6 +141,83 @@ class IdentityCacheDynamoDbDbService {
141
141
  });
142
142
  }
143
143
  };
144
+ static getClusterIdentityRecords = async (pixelId, identityIds) => {
145
+ const uniqueIdentityIds = [...new Set(identityIds)];
146
+ const recordsByIdentityId = new Map();
147
+ const failedIdentityIds = [];
148
+ const chunks = this.chunkArray(uniqueIdentityIds, 100);
149
+ for (const chunk of chunks) {
150
+ const chunkResult = await this.getClusterIdentityRecordsChunk(pixelId, chunk);
151
+ for (const [identityId, record] of chunkResult.recordsByIdentityId) {
152
+ recordsByIdentityId.set(identityId, record);
153
+ }
154
+ failedIdentityIds.push(...chunkResult.failedIdentityIds);
155
+ }
156
+ const result = {
157
+ complete: failedIdentityIds.length === 0,
158
+ recordsByIdentityId,
159
+ failedIdentityIds: [...new Set(failedIdentityIds)],
160
+ };
161
+ index_js_2.Logger.debug('IdentityCache [cluster traits read]: completed', {
162
+ pixelId,
163
+ identityIds: uniqueIdentityIds,
164
+ result: {
165
+ ...result,
166
+ recordsByIdentityId: [...recordsByIdentityId.entries()],
167
+ },
168
+ });
169
+ return result;
170
+ };
171
+ static putPrimaryIdentityTraits = async (input) => {
172
+ const { pixelId, primaryIdentityId, traits } = input;
173
+ const response = { identityId: primaryIdentityId, traits };
174
+ const item = {
175
+ pk: (0, key_builders_js_1.buildIdentityPk)(pixelId, primaryIdentityId),
176
+ pixelId,
177
+ identityId: primaryIdentityId,
178
+ response,
179
+ updatedAt: new Date().toISOString(),
180
+ gsi1pk: primaryIdentityId,
181
+ traitsInDynamo: true,
182
+ };
183
+ try {
184
+ const writeResult = await index_js_1.DynamoDbClient.safePut(constants_js_1.IDENTITY_CACHE_TABLE_NAME, item);
185
+ const success = writeResult !== null;
186
+ index_js_2.Logger.debug('IdentityCache [primary traits write]: completed', {
187
+ pixelId,
188
+ primaryIdentityId,
189
+ item,
190
+ writeResult,
191
+ success,
192
+ });
193
+ return success;
194
+ }
195
+ catch (error) {
196
+ index_js_2.Logger.error('IdentityCache [primary traits write]: failed', {
197
+ error,
198
+ pixelId,
199
+ primaryIdentityId,
200
+ item,
201
+ });
202
+ return false;
203
+ }
204
+ };
205
+ static deleteIdentityRecords = async (pixelId, identityIds) => {
206
+ const uniqueIdentityIds = [...new Set(identityIds)];
207
+ const failedIdentityIds = [];
208
+ const chunks = this.chunkArray(uniqueIdentityIds, 25);
209
+ for (const chunk of chunks) {
210
+ const chunkFailedIdentityIds = await this.deleteIdentityRecordsChunk(pixelId, chunk);
211
+ failedIdentityIds.push(...chunkFailedIdentityIds);
212
+ }
213
+ const uniqueFailedIdentityIds = [...new Set(failedIdentityIds)];
214
+ index_js_2.Logger.debug('IdentityCache [exact identity delete]: completed', {
215
+ pixelId,
216
+ identityIds: uniqueIdentityIds,
217
+ failedIdentityIds: uniqueFailedIdentityIds,
218
+ });
219
+ return uniqueFailedIdentityIds;
220
+ };
144
221
  static putIdentityMap = async (pixelId, identityId, linkedIdentities) => {
145
222
  try {
146
223
  if (!pixelId || !identityId) {
@@ -314,6 +391,74 @@ class IdentityCacheDynamoDbDbService {
314
391
  return undefined;
315
392
  }
316
393
  };
394
+ static getClusterIdentityRecordsChunk = async (pixelId, identityIds) => {
395
+ const keys = identityIds.map((identityId) => ({
396
+ pk: (0, key_builders_js_1.buildIdentityPk)(pixelId, identityId),
397
+ }));
398
+ const identityIdByPk = new Map(identityIds.map((identityId) => [(0, key_builders_js_1.buildIdentityPk)(pixelId, identityId), identityId]));
399
+ try {
400
+ const response = await index_js_1.DynamoDbClient.batchGet({
401
+ RequestItems: { [constants_js_1.IDENTITY_CACHE_TABLE_NAME]: { Keys: keys } },
402
+ });
403
+ const records = (response.Responses?.[constants_js_1.IDENTITY_CACHE_TABLE_NAME] ?? []);
404
+ const unprocessedKeys = (response.UnprocessedKeys?.[constants_js_1.IDENTITY_CACHE_TABLE_NAME]?.Keys ?? []);
405
+ const recordsByIdentityId = new Map();
406
+ for (const record of records) {
407
+ const lookupIdentityId = identityIdByPk.get(record.pk);
408
+ if (lookupIdentityId) {
409
+ recordsByIdentityId.set(lookupIdentityId, record);
410
+ }
411
+ }
412
+ const failedIdentityIds = unprocessedKeys
413
+ .map((key) => identityIdByPk.get(key.pk))
414
+ .filter((identityId) => Boolean(identityId));
415
+ return {
416
+ complete: failedIdentityIds.length === 0,
417
+ recordsByIdentityId,
418
+ failedIdentityIds,
419
+ };
420
+ }
421
+ catch (error) {
422
+ index_js_2.Logger.error('IdentityCache [cluster traits read]: chunk failed', {
423
+ error,
424
+ pixelId,
425
+ identityIds,
426
+ keys,
427
+ });
428
+ return {
429
+ complete: false,
430
+ recordsByIdentityId: new Map(),
431
+ failedIdentityIds: identityIds,
432
+ };
433
+ }
434
+ };
435
+ static deleteIdentityRecordsChunk = async (pixelId, identityIds) => {
436
+ const identityIdByPk = new Map(identityIds.map((identityId) => [(0, key_builders_js_1.buildIdentityPk)(pixelId, identityId), identityId]));
437
+ const deleteRequests = [...identityIdByPk.keys()].map((pk) => ({
438
+ DeleteRequest: { Key: { pk } },
439
+ }));
440
+ try {
441
+ const response = await index_js_1.DynamoDbClient.batchWrite({
442
+ RequestItems: { [constants_js_1.IDENTITY_CACHE_TABLE_NAME]: deleteRequests },
443
+ });
444
+ const unprocessedItems = (response.UnprocessedItems?.[constants_js_1.IDENTITY_CACHE_TABLE_NAME] ?? []);
445
+ return unprocessedItems
446
+ .map((item) => {
447
+ const pk = item.DeleteRequest?.Key?.pk;
448
+ return pk ? identityIdByPk.get(pk) : undefined;
449
+ })
450
+ .filter((identityId) => Boolean(identityId));
451
+ }
452
+ catch (error) {
453
+ index_js_2.Logger.error('IdentityCache [exact identity delete]: chunk failed', {
454
+ error,
455
+ pixelId,
456
+ identityIds,
457
+ deleteRequests,
458
+ });
459
+ return identityIds;
460
+ }
461
+ };
317
462
  static queryByGsi1 = async (identityId) => {
318
463
  try {
319
464
  const results = await index_js_1.DynamoDbClient.safeQueryByGSI(constants_js_1.IDENTITY_CACHE_TABLE_NAME, constants_js_1.IDENTITY_CACHE_GSI1_NAME, 'gsi1pk', identityId);
@@ -1 +1 @@
1
- {"version":3,"file":"identity-cache-dynamodb-db-service.js","sourceRoot":"","sources":["../../../../../src/services/db/identity-cache-dynamodb-service/identity-cache-dynamodb-db-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"identity-cache-dynamodb-db-service.js","sourceRoot":"","sources":["../../../../../src/services/db/identity-cache-dynamodb-service/identity-cache-dynamodb-db-service.ts"],"names":[],"mappings":";;;AAOA,iCAAiC;AACjC,wDAA2D;AAC3D,wDAAmD;AACnD,iDAA8G;AAC9G,uDAK2B;AAC3B,yCAKoB;AAMpB,MAAa,8BAA8B;IAMzC,MAAM,CAAC,wBAAwB,GAAG,KAAK,EACrC,OAAe,EACf,gBAA+B,EACC,EAAE;QAClC,IAAI;YACF,IAAI,CAAC,OAAO,IAAI,CAAC,gBAAgB,EAAE;gBACjC,OAAO,EAAE,UAAU,EAAE,iCAAsB,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;aACrE;YAED,IAAI,gBAAgB,CAAC,UAAU,EAAE;gBAC/B,OAAO,MAAM,IAAI,CAAC,4BAA4B,CAAC,OAAO,EAAE,gBAAgB,CAAC,UAAU,CAAC,CAAC;aACtF;YAED,OAAO,MAAM,IAAI,CAAC,8BAA8B,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;SAC7E;QAAC,OAAO,KAAK,EAAE;YACd,iBAAM,CAAC,KAAK,CAAC,iDAAiD,EAAE;gBAC9D,KAAK;gBACL,YAAY,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBACpE,OAAO;gBACP,gBAAgB;aACjB,CAAC,CAAC;YACH,OAAO,EAAE,UAAU,EAAE,iCAAsB,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;SACrE;IACH,CAAC,CAAC;IAEM,MAAM,CAAC,4BAA4B,GAAG,KAAK,EACjD,OAAe,EACf,UAAkB,EACc,EAAE;QAClC,MAAM,EAAE,GAAG,IAAA,iCAAe,EAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QAChD,iBAAM,CAAC,KAAK,CAAC,2CAA2C,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;QAEvF,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAE1D,IAAI,CAAC,sBAAsB,EAAE,QAAQ,EAAE;YACrC,iBAAM,CAAC,KAAK,CAAC,kCAAkC,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;YAC1E,OAAO,EAAE,UAAU,EAAE,iCAAsB,CAAC,WAAW,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;SAC5E;QAED,iBAAM,CAAC,KAAK,CAAC,iCAAiC,EAAE;YAC9C,OAAO;YACP,UAAU;YACV,cAAc,EAAE,sBAAsB,CAAC,QAAQ;SAChD,CAAC,CAAC;QAEH,OAAO;YACL,cAAc,EAAE,sBAAsB,CAAC,QAAQ;YAC/C,UAAU,EAAE,iCAAsB,CAAC,WAAW;YAC9C,QAAQ,EAAE,IAAI;SACf,CAAC;IACJ,CAAC,CAAC;IAEM,MAAM,CAAC,8BAA8B,GAAG,KAAK,EACnD,OAAe,EACf,gBAA+B,EACC,EAAE;QAClC,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,4BAA4B,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;QAEhG,IAAI,CAAC,oBAAoB,EAAE;YACzB,iBAAM,CAAC,KAAK,CAAC,yCAAyC,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC,CAAC;YACvF,OAAO,EAAE,UAAU,EAAE,iCAAsB,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;SACrE;QAED,iBAAM,CAAC,KAAK,CAAC,8CAA8C,EAAE;YAC3D,OAAO;YACP,oBAAoB;YACpB,gBAAgB;SACjB,CAAC,CAAC;QAEH,OAAO;YACL,UAAU,EAAE,iCAAsB,CAAC,aAAa;YAChD,oBAAoB;YACpB,QAAQ,EAAE,IAAI;SACf,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,CAAC,cAAc,GAAG,KAAK,EAC3B,OAAe,EACf,UAAkB,EAC6B,EAAE;QACjD,IAAI;YACF,IAAI,CAAC,OAAO,IAAI,CAAC,UAAU,EAAE;gBAC3B,OAAO,SAAS,CAAC;aAClB;YAED,MAAM,EAAE,GAAG,IAAA,oCAAkB,EAAC,OAAO,EAAE,UAAU,CAAC,CAAC;YACnD,MAAM,MAAM,GAAG,CAAC,MAAM,yBAAc,CAAC,OAAO,CAAC,wCAAyB,EAAE,IAAI,EAAE,EAAE,CAAC,CAAoC,CAAC;YACtH,OAAO,MAAM,IAAI,SAAS,CAAC;SAC5B;QAAC,OAAO,KAAK,EAAE;YACd,iBAAM,CAAC,KAAK,CAAC,uCAAuC,EAAE;gBACpD,KAAK;gBACL,YAAY,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBACpE,OAAO;gBACP,UAAU;aACX,CAAC,CAAC;YACH,OAAO,SAAS,CAAC;SAClB;IACH,CAAC,CAAC;IAEF,MAAM,CAAC,iBAAiB,GAAG,KAAK,EAAE,OAAe,EAAE,UAAkB,EAAoB,EAAE;QACzF,IAAI;YACF,IAAI,CAAC,OAAO,IAAI,CAAC,UAAU,EAAE;gBAC3B,OAAO,KAAK,CAAC;aACd;YAED,MAAM,EAAE,GAAG,IAAA,mCAAiB,EAAC,OAAO,EAAE,UAAU,CAAC,CAAC;YAClD,MAAM,MAAM,GAAG,MAAM,yBAAc,CAAC,OAAO,CAAC,wCAAyB,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACjF,OAAO,MAAM,KAAK,IAAI,CAAC;SACxB;QAAC,OAAO,KAAK,EAAE;YACd,iBAAM,CAAC,KAAK,CAAC,0CAA0C,EAAE;gBACvD,KAAK;gBACL,YAAY,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBACpE,OAAO;gBACP,UAAU;aACX,CAAC,CAAC;YACH,OAAO,KAAK,CAAC;SACd;IACH,CAAC,CAAC;IAEF,MAAM,CAAC,mBAAmB,GAAG,KAAK,EAAE,OAAe,EAAE,QAAuB,EAAiB,EAAE;QAC7F,IAAI;YACF,IAAI,CAAC,QAAQ,EAAE,UAAU,IAAI,CAAC,OAAO,EAAE;gBACrC,OAAO;aACR;YAED,MAAM,KAAK,GAAsD,EAAE,CAAC;YACpE,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YAErC,KAAK,CAAC,IAAI,CAAC;gBACT,EAAE,EAAE,IAAA,iCAAe,EAAC,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC;gBACjD,QAAQ;gBACR,SAAS,EAAE,GAAG;gBACd,OAAO;gBACP,UAAU,EAAE,QAAQ,CAAC,UAAU;gBAC/B,MAAM,EAAE,QAAQ,CAAC,UAAU;aAC5B,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE,MAAM,IAAI,EAAE,CAAC;YAC7C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;gBAC1B,IAAI,KAAK,EAAE;oBACT,MAAM,aAAa,GAA0B;wBAC3C,EAAE,EAAE,IAAA,8BAAY,EAAC,OAAO,EAAE,KAAK,CAAC;wBAChC,SAAS,EAAE,GAAG;wBACd,OAAO;wBACP,UAAU,EAAE,QAAQ,CAAC,UAAU;wBAC/B,MAAM,EAAE,QAAQ,CAAC,UAAU;qBAC5B,CAAC;oBACF,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;iBAC3B;aACF;YAED,MAAM,yBAAc,CAAC,cAAc,CAAC,wCAAyB,EAAE,KAAK,CAAC,CAAC;YACtE,iBAAM,CAAC,KAAK,CAAC,+BAA+B,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,CAAC,UAAU,EAAE,SAAS,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;SACtH;QAAC,OAAO,KAAK,EAAE;YACd,iBAAM,CAAC,KAAK,CAAC,4CAA4C,EAAE;gBACzD,KAAK;gBACL,YAAY,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBACpE,OAAO;aACR,CAAC,CAAC;SACJ;IACH,CAAC,CAAC;IAEF,MAAM,CAAC,yBAAyB,GAAG,KAAK,EACtC,OAAe,EACf,WAAqB,EACkB,EAAE;QACzC,MAAM,iBAAiB,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QACpD,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAiC,CAAC;QACrE,MAAM,iBAAiB,GAAa,EAAE,CAAC;QACvC,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC;QAEvD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;YAC1B,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,8BAA8B,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC9E,KAAK,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,IAAI,WAAW,CAAC,mBAAmB,EAAE;gBAClE,mBAAmB,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;aAC7C;YACD,iBAAiB,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,iBAAiB,CAAC,CAAC;SAC1D;QAED,MAAM,MAAM,GAAG;YACb,QAAQ,EAAE,iBAAiB,CAAC,MAAM,KAAK,CAAC;YACxC,mBAAmB;YACnB,iBAAiB,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,iBAAiB,CAAC,CAAC;SACnD,CAAC;QACF,iBAAM,CAAC,KAAK,CAAC,gDAAgD,EAAE;YAC7D,OAAO;YACP,WAAW,EAAE,iBAAiB;YAC9B,MAAM,EAAE;gBACN,GAAG,MAAM;gBACT,mBAAmB,EAAE,CAAC,GAAG,mBAAmB,CAAC,OAAO,EAAE,CAAC;aACxD;SACF,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IAEF,MAAM,CAAC,wBAAwB,GAAG,KAAK,EACrC,KAAoC,EAClB,EAAE;QACpB,MAAM,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;QACrD,MAAM,QAAQ,GAAkB,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,EAAE,CAAC;QAC1E,MAAM,IAAI,GAAqD;YAC7D,EAAE,EAAE,IAAA,iCAAe,EAAC,OAAO,EAAE,iBAAiB,CAAC;YAC/C,OAAO;YACP,UAAU,EAAE,iBAAiB;YAC7B,QAAQ;YACR,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,MAAM,EAAE,iBAAiB;YACzB,cAAc,EAAE,IAAI;SACrB,CAAC;QACF,IAAI;YACF,MAAM,WAAW,GAAG,MAAM,yBAAc,CAAC,OAAO,CAAC,wCAAyB,EAAE,IAAI,CAAC,CAAC;YAClF,MAAM,OAAO,GAAG,WAAW,KAAK,IAAI,CAAC;YACrC,iBAAM,CAAC,KAAK,CAAC,iDAAiD,EAAE;gBAC9D,OAAO;gBACP,iBAAiB;gBACjB,IAAI;gBACJ,WAAW;gBACX,OAAO;aACR,CAAC,CAAC;YACH,OAAO,OAAO,CAAC;SAChB;QAAC,OAAO,KAAK,EAAE;YACd,iBAAM,CAAC,KAAK,CAAC,8CAA8C,EAAE;gBAC3D,KAAK;gBACL,OAAO;gBACP,iBAAiB;gBACjB,IAAI;aACL,CAAC,CAAC;YACH,OAAO,KAAK,CAAC;SACd;IACH,CAAC,CAAC;IAEF,MAAM,CAAC,qBAAqB,GAAG,KAAK,EAClC,OAAe,EACf,WAAqB,EACF,EAAE;QACrB,MAAM,iBAAiB,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QACpD,MAAM,iBAAiB,GAAa,EAAE,CAAC;QACvC,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC;QACtD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;YAC1B,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YACrF,iBAAiB,CAAC,IAAI,CAAC,GAAG,sBAAsB,CAAC,CAAC;SACnD;QACD,MAAM,uBAAuB,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC;QAChE,iBAAM,CAAC,KAAK,CAAC,kDAAkD,EAAE;YAC/D,OAAO;YACP,WAAW,EAAE,iBAAiB;YAC9B,iBAAiB,EAAE,uBAAuB;SAC3C,CAAC,CAAC;QACH,OAAO,uBAAuB,CAAC;IACjC,CAAC,CAAC;IAEF,MAAM,CAAC,cAAc,GAAG,KAAK,EAAE,OAAe,EAAE,UAAkB,EAAE,gBAA0B,EAAiB,EAAE;QAC/G,IAAI;YACF,IAAI,CAAC,OAAO,IAAI,CAAC,UAAU,EAAE;gBAC3B,OAAO;aACR;YAED,MAAM,IAAI,GAA6B;gBACrC,EAAE,EAAE,IAAA,oCAAkB,EAAC,OAAO,EAAE,UAAU,CAAC;gBAC3C,OAAO;gBACP,UAAU;gBACV,gBAAgB;gBAChB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACpC,CAAC;YAEF,MAAM,yBAAc,CAAC,OAAO,CAAC,wCAAyB,EAAE,IAAI,CAAC,CAAC;YAC9D,iBAAM,CAAC,KAAK,CAAC,sCAAsC,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,CAAC,CAAC;SACjG;QAAC,OAAO,KAAK,EAAE;YACd,iBAAM,CAAC,KAAK,CAAC,uCAAuC,EAAE;gBACpD,KAAK;gBACL,YAAY,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBACpE,OAAO;gBACP,UAAU;aACX,CAAC,CAAC;SACJ;IACH,CAAC,CAAC;IAEF,MAAM,CAAC,iBAAiB,GAAG,KAAK,EAC9B,OAAe,EACf,UAAkB,EAClB,aAAqB,sCAAuB,EAC7B,EAAE;QACjB,IAAI;YACF,IAAI,CAAC,OAAO,IAAI,CAAC,UAAU,EAAE;gBAC3B,OAAO;aACR;YAED,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YACrC,MAAM,GAAG,GAAG,gBAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC;YAErE,MAAM,IAAI,GAA4B;gBACpC,EAAE,EAAE,IAAA,mCAAiB,EAAC,OAAO,EAAE,UAAU,CAAC;gBAC1C,OAAO;gBACP,UAAU;gBACV,SAAS,EAAE,GAAG;gBACd,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;aACrB,CAAC;YAEF,MAAM,yBAAc,CAAC,OAAO,CAAC,wCAAyB,EAAE,IAAI,CAAC,CAAC;YAC9D,iBAAM,CAAC,KAAK,CAAC,sCAAsC,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC,CAAC;SAC3F;QAAC,OAAO,KAAK,EAAE;YACd,iBAAM,CAAC,KAAK,CAAC,0CAA0C,EAAE;gBACvD,KAAK;gBACL,YAAY,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBACpE,OAAO;gBACP,UAAU;aACX,CAAC,CAAC;SACJ;IACH,CAAC,CAAC;IAEF,MAAM,CAAC,mBAAmB,GAAG,KAAK,EAChC,OAAe,EACf,gBAA+B,EAC/B,gBAA+B,EAChB,EAAE;QACjB,IAAI;YACF,IAAI,CAAC,OAAO,EAAE;gBACZ,OAAO;aACR;YAED,MAAM,UAAU,GAAqB,EAAE,CAAC;YAExC,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAU,CAAC;YAC9C,IAAI,gBAAgB,EAAE,UAAU,EAAE;gBAChC,mBAAmB,CAAC,GAAG,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;aACtD;YACD,IAAI,gBAAgB,EAAE,UAAU,EAAE;gBAChC,mBAAmB,CAAC,GAAG,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;aACtD;YAED,KAAK,MAAM,UAAU,IAAI,mBAAmB,EAAE;gBAC5C,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;gBACxD,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE;oBAC/B,IAAI,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,OAAO,KAAK,OAAO,EAAE;wBACvC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;qBAClC;iBACF;aACF;YAED,IAAI,gBAAgB,EAAE,MAAM,EAAE,MAAM,EAAE;gBACpC,KAAK,MAAM,KAAK,IAAI,gBAAgB,CAAC,MAAM,CAAC,MAAM,EAAE;oBAClD,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAA,8BAAY,EAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;iBACvD;aACF;YACD,IAAI,gBAAgB,EAAE,MAAM,EAAE,MAAM,EAAE;gBACpC,KAAK,MAAM,KAAK,IAAI,gBAAgB,CAAC,MAAM,CAAC,MAAM,EAAE;oBAClD,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAA,8BAAY,EAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;iBACvD;aACF;YAED,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;YAE1F,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;gBACzB,MAAM,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;gBACvC,iBAAM,CAAC,KAAK,CAAC,qCAAqC,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC;aACnG;SACF;QAAC,OAAO,KAAK,EAAE;YACd,iBAAM,CAAC,KAAK,CAAC,4CAA4C,EAAE;gBACzD,KAAK;gBACL,YAAY,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBACpE,OAAO;aACR,CAAC,CAAC;SACJ;IACH,CAAC,CAAC;IAEF,MAAM,CAAC,iBAAiB,GAAG,KAAK,EAAE,OAAe,EAAE,UAAkB,EAAiB,EAAE;QACtF,IAAI;YACF,IAAI,CAAC,OAAO,IAAI,CAAC,UAAU,EAAE;gBAC3B,OAAO;aACR;YAED,MAAM,EAAE,GAAG,IAAA,oCAAkB,EAAC,OAAO,EAAE,UAAU,CAAC,CAAC;YACnD,MAAM,yBAAc,CAAC,UAAU,CAAC,wCAAyB,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACrE,iBAAM,CAAC,KAAK,CAAC,sCAAsC,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;SAC/E;QAAC,OAAO,KAAK,EAAE;YACd,iBAAM,CAAC,KAAK,CAAC,0CAA0C,EAAE;gBACvD,KAAK;gBACL,YAAY,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBACpE,OAAO;gBACP,UAAU;aACX,CAAC,CAAC;SACJ;IACH,CAAC,CAAC;IAEF,MAAM,CAAC,oBAAoB,GAAG,KAAK,EAAE,OAAe,EAAE,UAAkB,EAAiB,EAAE;QACzF,IAAI;YACF,IAAI,CAAC,OAAO,IAAI,CAAC,UAAU,EAAE;gBAC3B,OAAO;aACR;YAED,MAAM,EAAE,GAAG,IAAA,mCAAiB,EAAC,OAAO,EAAE,UAAU,CAAC,CAAC;YAClD,MAAM,yBAAc,CAAC,UAAU,CAAC,wCAAyB,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACrE,iBAAM,CAAC,KAAK,CAAC,0CAA0C,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;SACnF;QAAC,OAAO,KAAK,EAAE;YACd,iBAAM,CAAC,KAAK,CAAC,6CAA6C,EAAE;gBAC1D,KAAK;gBACL,YAAY,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBACpE,OAAO;gBACP,UAAU;aACX,CAAC,CAAC;SACJ;IACH,CAAC,CAAC;IAEM,MAAM,CAAC,4BAA4B,GAAG,KAAK,EACjD,OAAe,EACf,gBAA+B,EACF,EAAE;QAC/B,IAAI;YACF,IAAI,CAAC,OAAO,IAAI,CAAC,gBAAgB,EAAE;gBACjC,OAAO,SAAS,CAAC;aAClB;YAED,MAAM,UAAU,GAAG,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;YACxD,IAAI,CAAC,UAAU,EAAE;gBACf,OAAO,SAAS,CAAC;aAClB;YAED,MAAM,EAAE,GAAG,IAAA,8BAAY,EAAC,OAAO,EAAE,UAAU,CAAC,CAAC;YAC7C,iBAAM,CAAC,KAAK,CAAC,wCAAwC,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;YAE3F,MAAM,MAAM,GAAG,CAAC,MAAM,yBAAc,CAAC,OAAO,CAAC,wCAAyB,EAAE,IAAI,EAAE,EAAE,CAAC,CAGzE,CAAC;YAET,IAAI,CAAC,MAAM,EAAE;gBACX,OAAO,SAAS,CAAC;aAClB;YAED,iBAAM,CAAC,KAAK,CAAC,8CAA8C,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;YAC5H,OAAO,MAAM,CAAC,UAAU,CAAC;SAC1B;QAAC,OAAO,KAAK,EAAE;YACd,iBAAM,CAAC,KAAK,CAAC,qCAAqC,EAAE;gBAClD,KAAK;gBACL,YAAY,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBACpE,OAAO;gBACP,gBAAgB;aACjB,CAAC,CAAC;YACH,OAAO,SAAS,CAAC;SAClB;IACH,CAAC,CAAC;IAEM,MAAM,CAAC,WAAW,GAAG,KAAK,EAAE,EAAU,EAA8C,EAAE;QAC5F,IAAI;YACF,MAAM,MAAM,GAAG,CAAC,MAAM,yBAAc,CAAC,OAAO,CAAC,wCAAyB,EAAE,IAAI,EAAE,EAAE,CAAC,CAAiC,CAAC;YACnH,OAAO,MAAM,IAAI,SAAS,CAAC;SAC5B;QAAC,OAAO,KAAK,EAAE;YACd,iBAAM,CAAC,KAAK,CAAC,oCAAoC,EAAE;gBACjD,KAAK;gBACL,YAAY,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBACpE,EAAE;aACH,CAAC,CAAC;YACH,OAAO,SAAS,CAAC;SAClB;IACH,CAAC,CAAC;IAEM,MAAM,CAAC,8BAA8B,GAAG,KAAK,EACnD,OAAe,EACf,WAAqB,EACkB,EAAE;QACzC,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;YAC5C,EAAE,EAAE,IAAA,iCAAe,EAAC,OAAO,EAAE,UAAU,CAAC;SACzC,CAAC,CAAC,CAAC;QACJ,MAAM,cAAc,GAAG,IAAI,GAAG,CAC5B,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,IAAA,iCAAe,EAAC,OAAO,EAAE,UAAU,CAAC,EAAE,UAAU,CAAC,CAAC,CACpF,CAAC;QACF,IAAI;YACF,MAAM,QAAQ,GAAG,MAAM,yBAAc,CAAC,QAAQ,CAAC;gBAC7C,YAAY,EAAE,EAAE,CAAC,wCAAyB,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;aAC9D,CAAC,CAAC;YACH,MAAM,OAAO,GAAG,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,wCAAyB,CAAC,IAAI,EAAE,CAA4B,CAAC;YACnG,MAAM,eAAe,GAAG,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC,wCAAyB,CAAC,EAAE,IAAI,IAAI,EAAE,CAA0B,CAAC;YACrH,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAiC,CAAC;YACrE,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;gBAC5B,MAAM,gBAAgB,GAAG,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBACvD,IAAI,gBAAgB,EAAE;oBACpB,mBAAmB,CAAC,GAAG,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;iBACnD;aACF;YACD,MAAM,iBAAiB,GAAG,eAAe;iBACtC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;iBACxC,MAAM,CAAC,CAAC,UAAU,EAAwB,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;YACrE,OAAO;gBACL,QAAQ,EAAE,iBAAiB,CAAC,MAAM,KAAK,CAAC;gBACxC,mBAAmB;gBACnB,iBAAiB;aAClB,CAAC;SACH;QAAC,OAAO,KAAK,EAAE;YACd,iBAAM,CAAC,KAAK,CAAC,mDAAmD,EAAE;gBAChE,KAAK;gBACL,OAAO;gBACP,WAAW;gBACX,IAAI;aACL,CAAC,CAAC;YACH,OAAO;gBACL,QAAQ,EAAE,KAAK;gBACf,mBAAmB,EAAE,IAAI,GAAG,EAAE;gBAC9B,iBAAiB,EAAE,WAAW;aAC/B,CAAC;SACH;IACH,CAAC,CAAC;IAEM,MAAM,CAAC,0BAA0B,GAAG,KAAK,EAC/C,OAAe,EACf,WAAqB,EACF,EAAE;QACrB,MAAM,cAAc,GAAG,IAAI,GAAG,CAC5B,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,IAAA,iCAAe,EAAC,OAAO,EAAE,UAAU,CAAC,EAAE,UAAU,CAAC,CAAC,CACpF,CAAC;QACF,MAAM,cAAc,GAAG,CAAC,GAAG,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;YAC7D,aAAa,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE;SAC/B,CAAC,CAAC,CAAC;QACJ,IAAI;YACF,MAAM,QAAQ,GAAG,MAAM,yBAAc,CAAC,UAAU,CAAC;gBAC/C,YAAY,EAAE,EAAE,CAAC,wCAAyB,CAAC,EAAE,cAAc,EAAE;aAC9D,CAAC,CAAC;YACH,MAAM,gBAAgB,GAAG,CACvB,QAAQ,CAAC,gBAAgB,EAAE,CAAC,wCAAyB,CAAC,IAAI,EAAE,CACL,CAAC;YAC1D,OAAO,gBAAgB;iBACpB,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBACZ,MAAM,EAAE,GAAG,IAAI,CAAC,aAAa,EAAE,GAAG,EAAE,EAAE,CAAC;gBACvC,OAAO,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACjD,CAAC,CAAC;iBACD,MAAM,CAAC,CAAC,UAAU,EAAwB,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;SACtE;QAAC,OAAO,KAAK,EAAE;YACd,iBAAM,CAAC,KAAK,CAAC,qDAAqD,EAAE;gBAClE,KAAK;gBACL,OAAO;gBACP,WAAW;gBACX,cAAc;aACf,CAAC,CAAC;YACH,OAAO,WAAW,CAAC;SACpB;IACH,CAAC,CAAC;IAEM,MAAM,CAAC,WAAW,GAAG,KAAK,EAAE,UAAkB,EAAoC,EAAE;QAC1F,IAAI;YACF,MAAM,OAAO,GAAG,MAAM,yBAAc,CAAC,cAAc,CAAC,wCAAyB,EAAE,uCAAwB,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;YAC/H,OAAO,CAAC,OAAO,IAAI,EAAE,CAA4B,CAAC;SACnD;QAAC,OAAO,KAAK,EAAE;YACd,iBAAM,CAAC,KAAK,CAAC,oCAAoC,EAAE;gBACjD,KAAK;gBACL,YAAY,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBACpE,UAAU;aACX,CAAC,CAAC;YACH,OAAO,EAAE,CAAC;SACX;IACH,CAAC,CAAC;IAEM,MAAM,CAAC,eAAe,GAAG,KAAK,EAAE,IAAsB,EAAiB,EAAE;QAC/E,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;YACrB,OAAO;SACR;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAEzC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;YAC1B,IAAI;gBACF,MAAM,cAAc,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;oBACzC,aAAa,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE;iBACvC,CAAC,CAAC,CAAC;gBAEJ,MAAM,yBAAc,CAAC,UAAU,CAAC;oBAC9B,YAAY,EAAE,EAAE,CAAC,wCAAyB,CAAC,EAAE,cAAc,EAAE;iBAC9D,CAAC,CAAC;aACJ;YAAC,OAAO,KAAK,EAAE;gBACd,iBAAM,CAAC,KAAK,CAAC,qCAAqC,EAAE;oBAClD,KAAK;oBACL,YAAY,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;oBACpE,SAAS,EAAE,KAAK,CAAC,MAAM;iBACxB,CAAC,CAAC;aACJ;SACF;IACH,CAAC,CAAC;IAEM,MAAM,CAAC,UAAU,CAAI,KAAU,EAAE,IAAY;QACnD,MAAM,MAAM,GAAU,EAAE,CAAC;QACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,IAAI,EAAE;YAC3C,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;SACvC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;;AA5kBH,wEA6kBC"}
@@ -1,4 +1,4 @@
1
- import { EventContext, EventIdentity } from '@adtrackify/at-tracking-event-types';
1
+ import { EventContext, EventIdentity, EventIdentityTraits, IdentityDynamoDbCache } from '@adtrackify/at-tracking-event-types';
2
2
  import { IDENTITY_CACHE_STALENESS_TIER, IdentityCacheTraitChanges, MergeAndComputeIdentityStalenessResult } from '@adtrackify/at-shared-utils';
3
3
  export declare enum CACHE_WRITE_REASON {
4
4
  CACHE_MISS = "cache_miss",
@@ -69,3 +69,14 @@ export interface PureCacheLookupResult {
69
69
  discoveredIdentityId?: string;
70
70
  cacheHit: boolean;
71
71
  }
72
+ export interface ClusterIdentityRecordsResult {
73
+ complete: boolean;
74
+ recordsByIdentityId: Map<string, IdentityDynamoDbCache>;
75
+ failedIdentityIds: string[];
76
+ }
77
+ export interface PutPrimaryIdentityTraitsInput {
78
+ pixelId: string;
79
+ primaryIdentityId: string;
80
+ traits: EventIdentityTraits;
81
+ traitsInDynamo: true;
82
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/services/db/identity-cache-dynamodb-service/types.ts"],"names":[],"mappings":";;;AAOA,IAAY,kBAKX;AALD,WAAY,kBAAkB;IAC5B,+CAAyB,CAAA;IACzB,mDAA6B,CAAA;IAC7B,yEAAmD,CAAA;IACnD,uDAAiC,CAAA;AACnC,CAAC,EALW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAK7B;AAED,IAAY,mCAUX;AAVD,WAAY,mCAAmC;IAC7C,sEAA+B,CAAA;IAC/B,0EAAmC,CAAA;IACnC,0FAAmD,CAAA;IACnD,oFAA6C,CAAA;IAC7C,sEAA+B,CAAA;IAC/B,4EAAqC,CAAA;IACrC,8FAAuD,CAAA;IACvD,8EAAuC,CAAA;IACvC,wDAAiB,CAAA;AACnB,CAAC,EAVW,mCAAmC,GAAnC,2CAAmC,KAAnC,2CAAmC,QAU9C;AAiED,IAAY,sBAIX;AAJD,WAAY,sBAAsB;IAChC,qDAA2B,CAAA;IAC3B,yDAA+B,CAAA;IAC/B,uCAAa,CAAA;AACf,CAAC,EAJW,sBAAsB,GAAtB,8BAAsB,KAAtB,8BAAsB,QAIjC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/services/db/identity-cache-dynamodb-service/types.ts"],"names":[],"mappings":";;;AASA,IAAY,kBAKX;AALD,WAAY,kBAAkB;IAC5B,+CAAyB,CAAA;IACzB,mDAA6B,CAAA;IAC7B,yEAAmD,CAAA;IACnD,uDAAiC,CAAA;AACnC,CAAC,EALW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAK7B;AAED,IAAY,mCAUX;AAVD,WAAY,mCAAmC;IAC7C,sEAA+B,CAAA;IAC/B,0EAAmC,CAAA;IACnC,0FAAmD,CAAA;IACnD,oFAA6C,CAAA;IAC7C,sEAA+B,CAAA;IAC/B,4EAAqC,CAAA;IACrC,8FAAuD,CAAA;IACvD,8EAAuC,CAAA;IACvC,wDAAiB,CAAA;AACnB,CAAC,EAVW,mCAAmC,GAAnC,2CAAmC,KAAnC,2CAAmC,QAU9C;AAiED,IAAY,sBAIX;AAJD,WAAY,sBAAsB;IAChC,qDAA2B,CAAA;IAC3B,yDAA+B,CAAA;IAC/B,uCAAa,CAAA;AACf,CAAC,EAJW,sBAAsB,GAAtB,8BAAsB,KAAtB,8BAAsB,QAIjC"}
@@ -6,6 +6,7 @@ jest.mock('../../clients/index.js', () => ({
6
6
  safeBatchGet: jest.fn(),
7
7
  safeBatchWrite: jest.fn(),
8
8
  safeQueryByGSI: jest.fn(),
9
+ batchGet: jest.fn(),
9
10
  batchWrite: jest.fn(),
10
11
  },
11
12
  }));
@@ -20,6 +21,7 @@ jest.mock('../../helpers/index.js', () => ({
20
21
  import { IdentityCacheDynamoDbDbService } from '../../services/db/identity-cache-dynamodb-service/identity-cache-dynamodb-db-service.js';
21
22
  import { DynamoDbClient } from '../../clients/index.js';
22
23
  import { Logger } from '../../helpers/index.js';
24
+ import { IDENTITY_CACHE_TABLE_NAME } from '../../services/db/identity-cache-dynamodb-service/constants.js';
23
25
  const mockedDynamoDbClient = DynamoDbClient;
24
26
  const mockedLogger = Logger;
25
27
  describe('IdentityCacheDynamoDbDbService.getIdentityFromCachePure()', () => {
@@ -29,6 +31,8 @@ describe('IdentityCacheDynamoDbDbService.getIdentityFromCachePure()', () => {
29
31
  mockedDynamoDbClient.safeGet.mockReset();
30
32
  mockedDynamoDbClient.safePut.mockReset();
31
33
  mockedDynamoDbClient.safeBatchWrite.mockReset();
34
+ mockedDynamoDbClient.batchGet.mockReset();
35
+ mockedDynamoDbClient.batchWrite.mockReset();
32
36
  });
33
37
  describe('cache hit by identity ID', () => {
34
38
  it('should return cachedIdentity with lookupPath=identity_id and cacheHit=true', async () => {
@@ -437,6 +441,174 @@ describe('IdentityCacheDynamoDbDbService.getIdentityFromCachePure()', () => {
437
441
  });
438
442
  });
439
443
  });
444
+ describe('IdentityCacheDynamoDbDbService cluster traits operations', () => {
445
+ const pixelId = 'pixel-cluster';
446
+ const primaryIdentityId = 'identity-primary';
447
+ const secondaryIdentityId = 'identity-secondary';
448
+ beforeEach(() => {
449
+ jest.clearAllMocks();
450
+ });
451
+ it('returns records by requested identity ID when every key is processed', async () => {
452
+ const primaryRecord = {
453
+ pk: `identity#${pixelId}#${primaryIdentityId}`,
454
+ pixelId,
455
+ identityId: primaryIdentityId,
456
+ response: { identityId: primaryIdentityId, traits: { emails: ['primary@test.com'] } },
457
+ updatedAt: '2026-09-04T12:00:00.000Z',
458
+ };
459
+ mockedDynamoDbClient.batchGet.mockResolvedValue({
460
+ Responses: { [IDENTITY_CACHE_TABLE_NAME]: [primaryRecord] },
461
+ UnprocessedKeys: {},
462
+ $metadata: {},
463
+ });
464
+ const result = await IdentityCacheDynamoDbDbService.getClusterIdentityRecords(pixelId, [primaryIdentityId, secondaryIdentityId]);
465
+ expect(result.complete).toBe(true);
466
+ expect(result.failedIdentityIds).toEqual([]);
467
+ expect(result.recordsByIdentityId.get(primaryIdentityId)).toEqual(primaryRecord);
468
+ expect(result.recordsByIdentityId.has(secondaryIdentityId)).toBe(false);
469
+ });
470
+ it('treats an unprocessed key as a failed read', async () => {
471
+ mockedDynamoDbClient.batchGet.mockResolvedValue({
472
+ Responses: { [IDENTITY_CACHE_TABLE_NAME]: [] },
473
+ UnprocessedKeys: {
474
+ [IDENTITY_CACHE_TABLE_NAME]: {
475
+ Keys: [{ pk: `identity#${pixelId}#${secondaryIdentityId}` }],
476
+ },
477
+ },
478
+ $metadata: {},
479
+ });
480
+ const result = await IdentityCacheDynamoDbDbService.getClusterIdentityRecords(pixelId, [primaryIdentityId, secondaryIdentityId]);
481
+ expect(result.complete).toBe(false);
482
+ expect(result.failedIdentityIds).toEqual([secondaryIdentityId]);
483
+ });
484
+ it('marks every key in a failed chunk as a failed read', async () => {
485
+ mockedDynamoDbClient.batchGet.mockRejectedValue(new Error('read failed'));
486
+ const result = await IdentityCacheDynamoDbDbService.getClusterIdentityRecords(pixelId, [primaryIdentityId, secondaryIdentityId]);
487
+ expect(result.complete).toBe(false);
488
+ expect(result.failedIdentityIds).toEqual([primaryIdentityId, secondaryIdentityId]);
489
+ });
490
+ it('writes final primary traits and the migration marker in one item', async () => {
491
+ mockedDynamoDbClient.safePut.mockResolvedValue({ $metadata: { httpStatusCode: 200 } });
492
+ const success = await IdentityCacheDynamoDbDbService.putPrimaryIdentityTraits({
493
+ pixelId,
494
+ primaryIdentityId,
495
+ traits: { emails: ['merged@test.com'] },
496
+ traitsInDynamo: true,
497
+ });
498
+ expect(success).toBe(true);
499
+ expect(mockedDynamoDbClient.safePut).toHaveBeenCalledWith(expect.any(String), expect.objectContaining({
500
+ pk: `identity#${pixelId}#${primaryIdentityId}`,
501
+ identityId: primaryIdentityId,
502
+ traitsInDynamo: true,
503
+ response: {
504
+ identityId: primaryIdentityId,
505
+ traits: { emails: ['merged@test.com'] },
506
+ },
507
+ }));
508
+ });
509
+ it('reports a failed primary traits write', async () => {
510
+ mockedDynamoDbClient.safePut.mockResolvedValue(null);
511
+ const success = await IdentityCacheDynamoDbDbService.putPrimaryIdentityTraits({
512
+ pixelId,
513
+ primaryIdentityId,
514
+ traits: {},
515
+ traitsInDynamo: true,
516
+ });
517
+ expect(success).toBe(false);
518
+ });
519
+ it('deletes exact identity keys and returns unprocessed identity IDs', async () => {
520
+ mockedDynamoDbClient.batchWrite.mockResolvedValue({
521
+ UnprocessedItems: {
522
+ [IDENTITY_CACHE_TABLE_NAME]: [{
523
+ DeleteRequest: { Key: { pk: `identity#${pixelId}#${secondaryIdentityId}` } },
524
+ }],
525
+ },
526
+ $metadata: {},
527
+ });
528
+ const failedIdentityIds = await IdentityCacheDynamoDbDbService.deleteIdentityRecords(pixelId, [primaryIdentityId, secondaryIdentityId]);
529
+ expect(failedIdentityIds).toEqual([secondaryIdentityId]);
530
+ expect(mockedDynamoDbClient.batchWrite).toHaveBeenCalledWith({
531
+ RequestItems: {
532
+ [IDENTITY_CACHE_TABLE_NAME]: [
533
+ { DeleteRequest: { Key: { pk: `identity#${pixelId}#${primaryIdentityId}` } } },
534
+ { DeleteRequest: { Key: { pk: `identity#${pixelId}#${secondaryIdentityId}` } } },
535
+ ],
536
+ },
537
+ });
538
+ });
539
+ it('returns every identity ID when an exact delete chunk fails', async () => {
540
+ mockedDynamoDbClient.batchWrite.mockRejectedValue(new Error('delete failed'));
541
+ const failedIdentityIds = await IdentityCacheDynamoDbDbService.deleteIdentityRecords(pixelId, [primaryIdentityId, secondaryIdentityId]);
542
+ expect(failedIdentityIds).toEqual([primaryIdentityId, secondaryIdentityId]);
543
+ });
544
+ it('deduplicates requested identity IDs before issuing batchGet', async () => {
545
+ mockedDynamoDbClient.batchGet.mockResolvedValue({
546
+ Responses: { [IDENTITY_CACHE_TABLE_NAME]: [] },
547
+ UnprocessedKeys: {},
548
+ $metadata: {},
549
+ });
550
+ await IdentityCacheDynamoDbDbService.getClusterIdentityRecords(pixelId, [primaryIdentityId, primaryIdentityId, secondaryIdentityId]);
551
+ expect(mockedDynamoDbClient.batchGet).toHaveBeenCalledWith({
552
+ RequestItems: {
553
+ [IDENTITY_CACHE_TABLE_NAME]: {
554
+ Keys: [
555
+ { pk: `identity#${pixelId}#${primaryIdentityId}` },
556
+ { pk: `identity#${pixelId}#${secondaryIdentityId}` },
557
+ ],
558
+ },
559
+ },
560
+ });
561
+ });
562
+ it('treats a processed key with no returned item as a successful miss', async () => {
563
+ mockedDynamoDbClient.batchGet.mockResolvedValue({
564
+ Responses: { [IDENTITY_CACHE_TABLE_NAME]: [] },
565
+ UnprocessedKeys: {},
566
+ $metadata: {},
567
+ });
568
+ const result = await IdentityCacheDynamoDbDbService.getClusterIdentityRecords(pixelId, [primaryIdentityId, secondaryIdentityId]);
569
+ expect(result.complete).toBe(true);
570
+ expect(result.failedIdentityIds).toEqual([]);
571
+ expect(result.recordsByIdentityId.size).toBe(0);
572
+ });
573
+ it('reports a failed primary traits write when safePut throws', async () => {
574
+ mockedDynamoDbClient.safePut.mockRejectedValue(new Error('put failed'));
575
+ const success = await IdentityCacheDynamoDbDbService.putPrimaryIdentityTraits({
576
+ pixelId,
577
+ primaryIdentityId,
578
+ traits: { emails: ['merged@test.com'] },
579
+ traitsInDynamo: true,
580
+ });
581
+ expect(success).toBe(false);
582
+ expect(mockedLogger.error).toHaveBeenCalledWith('IdentityCache [primary traits write]: failed', expect.objectContaining({ pixelId, primaryIdentityId }));
583
+ });
584
+ it('deletes exact identity PKs without querying GSI1', async () => {
585
+ mockedDynamoDbClient.batchWrite.mockResolvedValue({
586
+ UnprocessedItems: {},
587
+ $metadata: {},
588
+ });
589
+ await IdentityCacheDynamoDbDbService.deleteIdentityRecords(pixelId, [secondaryIdentityId]);
590
+ expect(mockedDynamoDbClient.safeQueryByGSI).not.toHaveBeenCalled();
591
+ expect(mockedDynamoDbClient.batchWrite).toHaveBeenCalledWith({
592
+ RequestItems: {
593
+ [IDENTITY_CACHE_TABLE_NAME]: [
594
+ { DeleteRequest: { Key: { pk: `identity#${pixelId}#${secondaryIdentityId}` } } },
595
+ ],
596
+ },
597
+ });
598
+ });
599
+ it('logs cluster read completion with requested identity IDs', async () => {
600
+ mockedDynamoDbClient.batchGet.mockResolvedValue({
601
+ Responses: { [IDENTITY_CACHE_TABLE_NAME]: [] },
602
+ UnprocessedKeys: {},
603
+ $metadata: {},
604
+ });
605
+ await IdentityCacheDynamoDbDbService.getClusterIdentityRecords(pixelId, [primaryIdentityId]);
606
+ expect(mockedLogger.debug).toHaveBeenCalledWith('IdentityCache [cluster traits read]: completed', expect.objectContaining({
607
+ pixelId,
608
+ identityIds: [primaryIdentityId],
609
+ }));
610
+ });
611
+ });
440
612
  describe('mergeAndComputeIdentityStaleness (pure function)', () => {
441
613
  const { mergeAndComputeIdentityStaleness, IDENTITY_CACHE_STALENESS_TIER } = jest.requireActual('@adtrackify/at-shared-utils');
442
614
  describe('merge behavior', () => {
@@ -1 +1 @@
1
- {"version":3,"file":"identity-cache-dynamodb-db-service.spec.js","sourceRoot":"","sources":["../../../../src/__tests__/identity-cache/identity-cache-dynamodb-db-service.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"identity-cache-dynamodb-db-service.spec.js","sourceRoot":"","sources":["../../../../src/__tests__/identity-cache/identity-cache-dynamodb-db-service.spec.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { EventIdentity, IdentityMapDynamoDbCache } from '@adtrackify/at-tracking-event-types';
2
- import { PureCacheLookupResult } from './types.js';
2
+ import { ClusterIdentityRecordsResult, PutPrimaryIdentityTraitsInput, PureCacheLookupResult } from './types.js';
3
3
  export declare class IdentityCacheDynamoDbDbService {
4
4
  static getIdentityFromCachePure: (pixelId: string, incomingIdentity: EventIdentity) => Promise<PureCacheLookupResult>;
5
5
  private static resolveCacheByIdentityIdPure;
@@ -7,6 +7,9 @@ export declare class IdentityCacheDynamoDbDbService {
7
7
  static getIdentityMap: (pixelId: string, identityId: string) => Promise<IdentityMapDynamoDbCache | undefined>;
8
8
  static getForcePurgeFlag: (pixelId: string, identityId: string) => Promise<boolean>;
9
9
  static updateIdentityCache: (pixelId: string, response: EventIdentity) => Promise<void>;
10
+ static getClusterIdentityRecords: (pixelId: string, identityIds: string[]) => Promise<ClusterIdentityRecordsResult>;
11
+ static putPrimaryIdentityTraits: (input: PutPrimaryIdentityTraitsInput) => Promise<boolean>;
12
+ static deleteIdentityRecords: (pixelId: string, identityIds: string[]) => Promise<string[]>;
10
13
  static putIdentityMap: (pixelId: string, identityId: string, linkedIdentities: string[]) => Promise<void>;
11
14
  static setForcePurgeFlag: (pixelId: string, identityId: string, ttlSeconds?: number) => Promise<void>;
12
15
  static deleteIdentityCache: (pixelId: string, incomingIdentity: EventIdentity, resolvedIdentity: EventIdentity) => Promise<void>;
@@ -14,6 +17,8 @@ export declare class IdentityCacheDynamoDbDbService {
14
17
  static deleteForcePurgeFlag: (pixelId: string, identityId: string) => Promise<void>;
15
18
  private static getIdentityIdFromEmailLookup;
16
19
  private static getItemByPk;
20
+ private static getClusterIdentityRecordsChunk;
21
+ private static deleteIdentityRecordsChunk;
17
22
  private static queryByGsi1;
18
23
  private static safeBatchDelete;
19
24
  private static chunkArray;
@@ -138,6 +138,83 @@ export class IdentityCacheDynamoDbDbService {
138
138
  });
139
139
  }
140
140
  };
141
+ static getClusterIdentityRecords = async (pixelId, identityIds) => {
142
+ const uniqueIdentityIds = [...new Set(identityIds)];
143
+ const recordsByIdentityId = new Map();
144
+ const failedIdentityIds = [];
145
+ const chunks = this.chunkArray(uniqueIdentityIds, 100);
146
+ for (const chunk of chunks) {
147
+ const chunkResult = await this.getClusterIdentityRecordsChunk(pixelId, chunk);
148
+ for (const [identityId, record] of chunkResult.recordsByIdentityId) {
149
+ recordsByIdentityId.set(identityId, record);
150
+ }
151
+ failedIdentityIds.push(...chunkResult.failedIdentityIds);
152
+ }
153
+ const result = {
154
+ complete: failedIdentityIds.length === 0,
155
+ recordsByIdentityId,
156
+ failedIdentityIds: [...new Set(failedIdentityIds)],
157
+ };
158
+ Logger.debug('IdentityCache [cluster traits read]: completed', {
159
+ pixelId,
160
+ identityIds: uniqueIdentityIds,
161
+ result: {
162
+ ...result,
163
+ recordsByIdentityId: [...recordsByIdentityId.entries()],
164
+ },
165
+ });
166
+ return result;
167
+ };
168
+ static putPrimaryIdentityTraits = async (input) => {
169
+ const { pixelId, primaryIdentityId, traits } = input;
170
+ const response = { identityId: primaryIdentityId, traits };
171
+ const item = {
172
+ pk: buildIdentityPk(pixelId, primaryIdentityId),
173
+ pixelId,
174
+ identityId: primaryIdentityId,
175
+ response,
176
+ updatedAt: new Date().toISOString(),
177
+ gsi1pk: primaryIdentityId,
178
+ traitsInDynamo: true,
179
+ };
180
+ try {
181
+ const writeResult = await DynamoDbClient.safePut(IDENTITY_CACHE_TABLE_NAME, item);
182
+ const success = writeResult !== null;
183
+ Logger.debug('IdentityCache [primary traits write]: completed', {
184
+ pixelId,
185
+ primaryIdentityId,
186
+ item,
187
+ writeResult,
188
+ success,
189
+ });
190
+ return success;
191
+ }
192
+ catch (error) {
193
+ Logger.error('IdentityCache [primary traits write]: failed', {
194
+ error,
195
+ pixelId,
196
+ primaryIdentityId,
197
+ item,
198
+ });
199
+ return false;
200
+ }
201
+ };
202
+ static deleteIdentityRecords = async (pixelId, identityIds) => {
203
+ const uniqueIdentityIds = [...new Set(identityIds)];
204
+ const failedIdentityIds = [];
205
+ const chunks = this.chunkArray(uniqueIdentityIds, 25);
206
+ for (const chunk of chunks) {
207
+ const chunkFailedIdentityIds = await this.deleteIdentityRecordsChunk(pixelId, chunk);
208
+ failedIdentityIds.push(...chunkFailedIdentityIds);
209
+ }
210
+ const uniqueFailedIdentityIds = [...new Set(failedIdentityIds)];
211
+ Logger.debug('IdentityCache [exact identity delete]: completed', {
212
+ pixelId,
213
+ identityIds: uniqueIdentityIds,
214
+ failedIdentityIds: uniqueFailedIdentityIds,
215
+ });
216
+ return uniqueFailedIdentityIds;
217
+ };
141
218
  static putIdentityMap = async (pixelId, identityId, linkedIdentities) => {
142
219
  try {
143
220
  if (!pixelId || !identityId) {
@@ -311,6 +388,74 @@ export class IdentityCacheDynamoDbDbService {
311
388
  return undefined;
312
389
  }
313
390
  };
391
+ static getClusterIdentityRecordsChunk = async (pixelId, identityIds) => {
392
+ const keys = identityIds.map((identityId) => ({
393
+ pk: buildIdentityPk(pixelId, identityId),
394
+ }));
395
+ const identityIdByPk = new Map(identityIds.map((identityId) => [buildIdentityPk(pixelId, identityId), identityId]));
396
+ try {
397
+ const response = await DynamoDbClient.batchGet({
398
+ RequestItems: { [IDENTITY_CACHE_TABLE_NAME]: { Keys: keys } },
399
+ });
400
+ const records = (response.Responses?.[IDENTITY_CACHE_TABLE_NAME] ?? []);
401
+ const unprocessedKeys = (response.UnprocessedKeys?.[IDENTITY_CACHE_TABLE_NAME]?.Keys ?? []);
402
+ const recordsByIdentityId = new Map();
403
+ for (const record of records) {
404
+ const lookupIdentityId = identityIdByPk.get(record.pk);
405
+ if (lookupIdentityId) {
406
+ recordsByIdentityId.set(lookupIdentityId, record);
407
+ }
408
+ }
409
+ const failedIdentityIds = unprocessedKeys
410
+ .map((key) => identityIdByPk.get(key.pk))
411
+ .filter((identityId) => Boolean(identityId));
412
+ return {
413
+ complete: failedIdentityIds.length === 0,
414
+ recordsByIdentityId,
415
+ failedIdentityIds,
416
+ };
417
+ }
418
+ catch (error) {
419
+ Logger.error('IdentityCache [cluster traits read]: chunk failed', {
420
+ error,
421
+ pixelId,
422
+ identityIds,
423
+ keys,
424
+ });
425
+ return {
426
+ complete: false,
427
+ recordsByIdentityId: new Map(),
428
+ failedIdentityIds: identityIds,
429
+ };
430
+ }
431
+ };
432
+ static deleteIdentityRecordsChunk = async (pixelId, identityIds) => {
433
+ const identityIdByPk = new Map(identityIds.map((identityId) => [buildIdentityPk(pixelId, identityId), identityId]));
434
+ const deleteRequests = [...identityIdByPk.keys()].map((pk) => ({
435
+ DeleteRequest: { Key: { pk } },
436
+ }));
437
+ try {
438
+ const response = await DynamoDbClient.batchWrite({
439
+ RequestItems: { [IDENTITY_CACHE_TABLE_NAME]: deleteRequests },
440
+ });
441
+ const unprocessedItems = (response.UnprocessedItems?.[IDENTITY_CACHE_TABLE_NAME] ?? []);
442
+ return unprocessedItems
443
+ .map((item) => {
444
+ const pk = item.DeleteRequest?.Key?.pk;
445
+ return pk ? identityIdByPk.get(pk) : undefined;
446
+ })
447
+ .filter((identityId) => Boolean(identityId));
448
+ }
449
+ catch (error) {
450
+ Logger.error('IdentityCache [exact identity delete]: chunk failed', {
451
+ error,
452
+ pixelId,
453
+ identityIds,
454
+ deleteRequests,
455
+ });
456
+ return identityIds;
457
+ }
458
+ };
314
459
  static queryByGsi1 = async (identityId) => {
315
460
  try {
316
461
  const results = await DynamoDbClient.safeQueryByGSI(IDENTITY_CACHE_TABLE_NAME, IDENTITY_CACHE_GSI1_NAME, 'gsi1pk', identityId);
@@ -1 +1 @@
1
- {"version":3,"file":"identity-cache-dynamodb-db-service.js","sourceRoot":"","sources":["../../../../../src/services/db/identity-cache-dynamodb-service/identity-cache-dynamodb-db-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"identity-cache-dynamodb-db-service.js","sourceRoot":"","sources":["../../../../../src/services/db/identity-cache-dynamodb-service/identity-cache-dynamodb-db-service.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { EventContext, EventIdentity } from '@adtrackify/at-tracking-event-types';
1
+ import { EventContext, EventIdentity, EventIdentityTraits, IdentityDynamoDbCache } from '@adtrackify/at-tracking-event-types';
2
2
  import { IDENTITY_CACHE_STALENESS_TIER, IdentityCacheTraitChanges, MergeAndComputeIdentityStalenessResult } from '@adtrackify/at-shared-utils';
3
3
  export declare enum CACHE_WRITE_REASON {
4
4
  CACHE_MISS = "cache_miss",
@@ -69,3 +69,14 @@ export interface PureCacheLookupResult {
69
69
  discoveredIdentityId?: string;
70
70
  cacheHit: boolean;
71
71
  }
72
+ export interface ClusterIdentityRecordsResult {
73
+ complete: boolean;
74
+ recordsByIdentityId: Map<string, IdentityDynamoDbCache>;
75
+ failedIdentityIds: string[];
76
+ }
77
+ export interface PutPrimaryIdentityTraitsInput {
78
+ pixelId: string;
79
+ primaryIdentityId: string;
80
+ traits: EventIdentityTraits;
81
+ traitsInDynamo: true;
82
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/services/db/identity-cache-dynamodb-service/types.ts"],"names":[],"mappings":"AAOA,MAAM,CAAN,IAAY,kBAKX;AALD,WAAY,kBAAkB;IAC5B,+CAAyB,CAAA;IACzB,mDAA6B,CAAA;IAC7B,yEAAmD,CAAA;IACnD,uDAAiC,CAAA;AACnC,CAAC,EALW,kBAAkB,KAAlB,kBAAkB,QAK7B;AAED,MAAM,CAAN,IAAY,mCAUX;AAVD,WAAY,mCAAmC;IAC7C,sEAA+B,CAAA;IAC/B,0EAAmC,CAAA;IACnC,0FAAmD,CAAA;IACnD,oFAA6C,CAAA;IAC7C,sEAA+B,CAAA;IAC/B,4EAAqC,CAAA;IACrC,8FAAuD,CAAA;IACvD,8EAAuC,CAAA;IACvC,wDAAiB,CAAA;AACnB,CAAC,EAVW,mCAAmC,KAAnC,mCAAmC,QAU9C;AAiED,MAAM,CAAN,IAAY,sBAIX;AAJD,WAAY,sBAAsB;IAChC,qDAA2B,CAAA;IAC3B,yDAA+B,CAAA;IAC/B,uCAAa,CAAA;AACf,CAAC,EAJW,sBAAsB,KAAtB,sBAAsB,QAIjC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/services/db/identity-cache-dynamodb-service/types.ts"],"names":[],"mappings":"AASA,MAAM,CAAN,IAAY,kBAKX;AALD,WAAY,kBAAkB;IAC5B,+CAAyB,CAAA;IACzB,mDAA6B,CAAA;IAC7B,yEAAmD,CAAA;IACnD,uDAAiC,CAAA;AACnC,CAAC,EALW,kBAAkB,KAAlB,kBAAkB,QAK7B;AAED,MAAM,CAAN,IAAY,mCAUX;AAVD,WAAY,mCAAmC;IAC7C,sEAA+B,CAAA;IAC/B,0EAAmC,CAAA;IACnC,0FAAmD,CAAA;IACnD,oFAA6C,CAAA;IAC7C,sEAA+B,CAAA;IAC/B,4EAAqC,CAAA;IACrC,8FAAuD,CAAA;IACvD,8EAAuC,CAAA;IACvC,wDAAiB,CAAA;AACnB,CAAC,EAVW,mCAAmC,KAAnC,mCAAmC,QAU9C;AAiED,MAAM,CAAN,IAAY,sBAIX;AAJD,WAAY,sBAAsB;IAChC,qDAA2B,CAAA;IAC3B,yDAA+B,CAAA;IAC/B,uCAAa,CAAA;AACf,CAAC,EAJW,sBAAsB,KAAtB,sBAAsB,QAIjC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adtrackify/at-service-common",
3
- "version": "5.0.2",
3
+ "version": "5.0.4",
4
4
  "description": "",
5
5
  "files": [
6
6
  "dist/*"