@sudobility/testomniac_runner_service 0.1.124 → 0.1.126

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 (50) hide show
  1. package/dist/analyzer/page-analyzer/generators/content.d.ts.map +1 -1
  2. package/dist/analyzer/page-analyzer/generators/content.js +26 -15
  3. package/dist/analyzer/page-analyzer/generators/content.js.map +1 -1
  4. package/dist/analyzer/page-analyzer/generators/dialogs.d.ts.map +1 -1
  5. package/dist/analyzer/page-analyzer/generators/dialogs.js +26 -18
  6. package/dist/analyzer/page-analyzer/generators/dialogs.js.map +1 -1
  7. package/dist/analyzer/page-analyzer/generators/e2e.d.ts.map +1 -1
  8. package/dist/analyzer/page-analyzer/generators/e2e.js +17 -12
  9. package/dist/analyzer/page-analyzer/generators/e2e.js.map +1 -1
  10. package/dist/analyzer/page-analyzer/generators/forms.d.ts.map +1 -1
  11. package/dist/analyzer/page-analyzer/generators/forms.js +46 -27
  12. package/dist/analyzer/page-analyzer/generators/forms.js.map +1 -1
  13. package/dist/analyzer/page-analyzer/generators/hover-follow-up.d.ts.map +1 -1
  14. package/dist/analyzer/page-analyzer/generators/hover-follow-up.js +10 -4
  15. package/dist/analyzer/page-analyzer/generators/hover-follow-up.js.map +1 -1
  16. package/dist/analyzer/page-analyzer/generators/keyboard-disclosure.d.ts.map +1 -1
  17. package/dist/analyzer/page-analyzer/generators/keyboard-disclosure.js +26 -15
  18. package/dist/analyzer/page-analyzer/generators/keyboard-disclosure.js.map +1 -1
  19. package/dist/analyzer/page-analyzer/generators/login.d.ts.map +1 -1
  20. package/dist/analyzer/page-analyzer/generators/login.js +17 -12
  21. package/dist/analyzer/page-analyzer/generators/login.js.map +1 -1
  22. package/dist/analyzer/page-analyzer/generators/navigation.d.ts.map +1 -1
  23. package/dist/analyzer/page-analyzer/generators/navigation.js +11 -10
  24. package/dist/analyzer/page-analyzer/generators/navigation.js.map +1 -1
  25. package/dist/analyzer/page-analyzer/generators/render.d.ts.map +1 -1
  26. package/dist/analyzer/page-analyzer/generators/render.js +17 -12
  27. package/dist/analyzer/page-analyzer/generators/render.js.map +1 -1
  28. package/dist/analyzer/page-analyzer/generators/scaffolds.d.ts.map +1 -1
  29. package/dist/analyzer/page-analyzer/generators/scaffolds.js +26 -15
  30. package/dist/analyzer/page-analyzer/generators/scaffolds.js.map +1 -1
  31. package/dist/analyzer/page-analyzer/generators/semantic-journeys.d.ts.map +1 -1
  32. package/dist/analyzer/page-analyzer/generators/semantic-journeys.js +26 -18
  33. package/dist/analyzer/page-analyzer/generators/semantic-journeys.js.map +1 -1
  34. package/dist/analyzer/page-analyzer/generators/variants.d.ts.map +1 -1
  35. package/dist/analyzer/page-analyzer/generators/variants.js +26 -15
  36. package/dist/analyzer/page-analyzer/generators/variants.js.map +1 -1
  37. package/dist/analyzer/page-analyzer/index.d.ts +3 -0
  38. package/dist/analyzer/page-analyzer/index.d.ts.map +1 -1
  39. package/dist/analyzer/page-analyzer/index.js +49 -49
  40. package/dist/analyzer/page-analyzer/index.js.map +1 -1
  41. package/dist/api/client.d.ts +22 -1
  42. package/dist/api/client.d.ts.map +1 -1
  43. package/dist/api/client.js +30 -0
  44. package/dist/api/client.js.map +1 -1
  45. package/dist/orchestrator/runner.js +12 -5
  46. package/dist/orchestrator/runner.js.map +1 -1
  47. package/dist/orchestrator/test-interaction-executor.d.ts.map +1 -1
  48. package/dist/orchestrator/test-interaction-executor.js +20 -4
  49. package/dist/orchestrator/test-interaction-executor.js.map +1 -1
  50. package/package.json +3 -3
@@ -97,18 +97,19 @@ export async function generateNavigationTestInteractions(analyzer, context) {
97
97
  const navSurfaceRun = surfaceRuns.find((sr) => sr.testSurfaceId === navSurfaceId);
98
98
  if (!navSurfaceRun)
99
99
  return;
100
+ const batchItems = [];
100
101
  for (const path of navPaths) {
101
102
  const navInteraction = analyzer.buildNavigationTestInteraction(path, sizeClass, uid);
102
- const saved = await api.ensureTestInteraction(runnerId, navSurfaceId, navInteraction, testEnvironmentId);
103
- try {
104
- await api.createTestInteractionRun({
105
- testInteractionId: saved.id,
106
- testSurfaceRunId: navSurfaceRun.id,
107
- });
108
- }
109
- catch {
110
- // Run may already exist
111
- }
103
+ batchItems.push({
104
+ runnerId,
105
+ testSurfaceId: navSurfaceId,
106
+ testInteraction: navInteraction,
107
+ testEnvironmentId,
108
+ testSurfaceRunId: navSurfaceRun.id,
109
+ });
110
+ }
111
+ if (batchItems.length > 0) {
112
+ await api.ensureTestInteractionBatch(batchItems);
112
113
  }
113
114
  // Do NOT reconcile — other navigation interactions (from hover-click
114
115
  // discovery or scan bootstrap) should not be retired.
@@ -1 +1 @@
1
- {"version":3,"file":"navigation.js","sourceRoot":"","sources":["../../../../src/analyzer/page-analyzer/generators/navigation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"navigation.js","sourceRoot":"","sources":["../../../../src/analyzer/page-analyzer/generators/navigation.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../../../../src/analyzer/page-analyzer/generators/render.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAEhD,wBAAsB,8BAA8B,CAClD,QAAQ,EAAE,GAAG,EACb,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,IAAI,CAAC,CAsDf"}
1
+ {"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../../../../src/analyzer/page-analyzer/generators/render.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAEhD,wBAAsB,8BAA8B,CAClD,QAAQ,EAAE,GAAG,EACb,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,IAAI,CAAC,CAkDf"}
@@ -1,22 +1,27 @@
1
1
  export async function generateRenderTestInteractions(analyzer, context) {
2
2
  const { api, runnerId, testEnvironmentId, sizeClass, uid, bundleRun } = context;
3
3
  const surfaceTitle = `Render: ${context.currentPath}`;
4
- const surface = await api.ensureTestSurface(runnerId, {
5
- title: surfaceTitle,
6
- description: `Render validation for ${context.currentPath}`,
7
- startingPageStateId: context.currentPageStateId,
8
- startingPath: context.currentPath,
9
- sizeClass,
10
- priority: 5,
11
- surface_tags: ["render"],
12
- uid,
13
- }, testEnvironmentId);
4
+ const { surface, surfaceRun } = await api.ensureTestSurfaceWithRun({
5
+ runnerId,
6
+ testEnvironmentId,
7
+ testSurface: {
8
+ title: surfaceTitle,
9
+ description: `Render validation for ${context.currentPath}`,
10
+ startingPageStateId: context.currentPageStateId,
11
+ startingPath: context.currentPath,
12
+ sizeClass,
13
+ priority: 5,
14
+ surface_tags: ["render"],
15
+ uid,
16
+ },
17
+ testSurfaceBundleId: bundleRun.testSurfaceBundleId,
18
+ testSurfaceBundleRunId: bundleRun.id,
19
+ });
20
+ analyzer.invalidateSurfacesCache();
14
21
  context.events.onTestSurfaceCreated({
15
22
  surfaceId: surface.id,
16
23
  title: surface.title,
17
24
  });
18
- await api.ensureBundleSurfaceLink(bundleRun.testSurfaceBundleId, surface.id);
19
- const surfaceRun = await analyzer.ensureSurfaceRun(api, surface.id, bundleRun.id);
20
25
  const testInteraction = analyzer.buildRenderTestInteraction(context.currentPath, sizeClass, uid, context.currentPageStateId, context.pageId);
21
26
  const tc = await api.ensureTestInteraction(runnerId, surface.id, testInteraction, testEnvironmentId);
22
27
  await api.createTestInteractionRun({
@@ -1 +1 @@
1
- {"version":3,"file":"render.js","sourceRoot":"","sources":["../../../../src/analyzer/page-analyzer/generators/render.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,KAAK,UAAU,8BAA8B,CAClD,QAAa,EACb,OAAwB;IAExB,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,iBAAiB,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,GACnE,OAAO,CAAC;IACV,MAAM,YAAY,GAAG,WAAW,OAAO,CAAC,WAAW,EAAE,CAAC;IAEtD,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,iBAAiB,CACzC,QAAQ,EACR;QACE,KAAK,EAAE,YAAY;QACnB,WAAW,EAAE,yBAAyB,OAAO,CAAC,WAAW,EAAE;QAC3D,mBAAmB,EAAE,OAAO,CAAC,kBAAkB;QAC/C,YAAY,EAAE,OAAO,CAAC,WAAW;QACjC,SAAS;QACT,QAAQ,EAAE,CAAC;QACX,YAAY,EAAE,CAAC,QAAQ,CAAC;QACxB,GAAG;KACJ,EACD,iBAAiB,CAClB,CAAC;IACF,OAAO,CAAC,MAAM,CAAC,oBAAoB,CAAC;QAClC,SAAS,EAAE,OAAO,CAAC,EAAE;QACrB,KAAK,EAAE,OAAO,CAAC,KAAK;KACrB,CAAC,CAAC;IAEH,MAAM,GAAG,CAAC,uBAAuB,CAAC,SAAS,CAAC,mBAAmB,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;IAC7E,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,gBAAgB,CAChD,GAAG,EACH,OAAO,CAAC,EAAE,EACV,SAAS,CAAC,EAAE,CACb,CAAC;IAEF,MAAM,eAAe,GAAG,QAAQ,CAAC,0BAA0B,CACzD,OAAO,CAAC,WAAW,EACnB,SAAS,EACT,GAAG,EACH,OAAO,CAAC,kBAAkB,EAC1B,OAAO,CAAC,MAAM,CACf,CAAC;IACF,MAAM,EAAE,GAAG,MAAM,GAAG,CAAC,qBAAqB,CACxC,QAAQ,EACR,OAAO,CAAC,EAAE,EACV,eAAe,EACf,iBAAiB,CAClB,CAAC;IACF,MAAM,GAAG,CAAC,wBAAwB,CAAC;QACjC,iBAAiB,EAAE,EAAE,CAAC,EAAE;QACxB,gBAAgB,EAAE,UAAU,CAAC,EAAE;KAChC,CAAC,CAAC;IAEH,MAAM,QAAQ,CAAC,iCAAiC,CAAC,OAAO,EAAE;QACxD,SAAS,EAAE,OAAO,CAAC,EAAE;QACrB,YAAY;QACZ,WAAW,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;KACzD,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"render.js","sourceRoot":"","sources":["../../../../src/analyzer/page-analyzer/generators/render.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,KAAK,UAAU,8BAA8B,CAClD,QAAa,EACb,OAAwB;IAExB,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,iBAAiB,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,GACnE,OAAO,CAAC;IACV,MAAM,YAAY,GAAG,WAAW,OAAO,CAAC,WAAW,EAAE,CAAC;IAEtD,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,MAAM,GAAG,CAAC,wBAAwB,CAAC;QACjE,QAAQ;QACR,iBAAiB;QACjB,WAAW,EAAE;YACX,KAAK,EAAE,YAAY;YACnB,WAAW,EAAE,yBAAyB,OAAO,CAAC,WAAW,EAAE;YAC3D,mBAAmB,EAAE,OAAO,CAAC,kBAAkB;YAC/C,YAAY,EAAE,OAAO,CAAC,WAAW;YACjC,SAAS;YACT,QAAQ,EAAE,CAAC;YACX,YAAY,EAAE,CAAC,QAAQ,CAAC;YACxB,GAAG;SACJ;QACD,mBAAmB,EAAE,SAAS,CAAC,mBAAmB;QAClD,sBAAsB,EAAE,SAAS,CAAC,EAAE;KACrC,CAAC,CAAC;IACH,QAAQ,CAAC,uBAAuB,EAAE,CAAC;IACnC,OAAO,CAAC,MAAM,CAAC,oBAAoB,CAAC;QAClC,SAAS,EAAE,OAAO,CAAC,EAAE;QACrB,KAAK,EAAE,OAAO,CAAC,KAAK;KACrB,CAAC,CAAC;IAEH,MAAM,eAAe,GAAG,QAAQ,CAAC,0BAA0B,CACzD,OAAO,CAAC,WAAW,EACnB,SAAS,EACT,GAAG,EACH,OAAO,CAAC,kBAAkB,EAC1B,OAAO,CAAC,MAAM,CACf,CAAC;IACF,MAAM,EAAE,GAAG,MAAM,GAAG,CAAC,qBAAqB,CACxC,QAAQ,EACR,OAAO,CAAC,EAAE,EACV,eAAe,EACf,iBAAiB,CAClB,CAAC;IACF,MAAM,GAAG,CAAC,wBAAwB,CAAC;QACjC,iBAAiB,EAAE,EAAE,CAAC,EAAE;QACxB,gBAAgB,EAAE,UAAU,CAAC,EAAE;KAChC,CAAC,CAAC;IAEH,MAAM,QAAQ,CAAC,iCAAiC,CAAC,OAAO,EAAE;QACxD,SAAS,EAAE,OAAO,CAAC,EAAE;QACrB,YAAY;QACZ,WAAW,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;KACzD,CAAC,CAAC;AACL,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"scaffolds.d.ts","sourceRoot":"","sources":["../../../../src/analyzer/page-analyzer/generators/scaffolds.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAEhD,wBAAsB,gCAAgC,CACpD,QAAQ,EAAE,GAAG,EACb,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,IAAI,CAAC,CA6Gf"}
1
+ {"version":3,"file":"scaffolds.d.ts","sourceRoot":"","sources":["../../../../src/analyzer/page-analyzer/generators/scaffolds.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAEhD,wBAAsB,gCAAgC,CACpD,QAAQ,EAAE,GAAG,EACb,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,IAAI,CAAC,CAuGf"}
@@ -10,34 +10,45 @@ export async function generateScaffoldTestInteractions(analyzer, context) {
10
10
  desiredKeysBySurface.set(surfaceTitle, []);
11
11
  continue;
12
12
  }
13
- const surface = await api.ensureTestSurface(runnerId, {
14
- title: surfaceTitle,
15
- description: `Tests for ${scaffold.type} scaffold`,
16
- startingPageStateId: context.currentPageStateId,
17
- startingPath: context.currentPath,
18
- sizeClass,
19
- priority: 3,
20
- surface_tags: ["scaffold", scaffold.type],
21
- uid,
22
- }, testEnvironmentId);
13
+ const { surface, surfaceRun } = await api.ensureTestSurfaceWithRun({
14
+ runnerId,
15
+ testEnvironmentId,
16
+ testSurface: {
17
+ title: surfaceTitle,
18
+ description: `Tests for ${scaffold.type} scaffold`,
19
+ startingPageStateId: context.currentPageStateId,
20
+ startingPath: context.currentPath,
21
+ sizeClass,
22
+ priority: 3,
23
+ surface_tags: ["scaffold", scaffold.type],
24
+ uid,
25
+ },
26
+ testSurfaceBundleId: bundleRun.testSurfaceBundleId,
27
+ testSurfaceBundleRunId: bundleRun.id,
28
+ });
29
+ analyzer.invalidateSurfacesCache();
23
30
  context.events.onTestSurfaceCreated({
24
31
  surfaceId: surface.id,
25
32
  title: surface.title,
26
33
  });
27
- await api.ensureBundleSurfaceLink(bundleRun.testSurfaceBundleId, surface.id);
28
- const surfaceRun = await analyzer.ensureSurfaceRun(api, surface.id, bundleRun.id);
29
34
  const desiredKeys = [];
35
+ const batchItems = [];
30
36
  for (const item of scaffoldItems) {
31
37
  const testInteraction = analyzer.shouldUseDirectControlInteraction(item)
32
38
  ? analyzer.buildControlInteractionTestInteraction(item, context.currentPath, sizeClass, uid, context.currentPageStateId, context.currentTestInteractionId)
33
39
  : analyzer.buildHoverTestInteraction(item, context.currentPath, sizeClass, uid, context.currentPageStateId, context.currentTestInteractionId);
34
40
  desiredKeys.push(analyzer.getGeneratedKey(testInteraction));
35
- const tc = await api.ensureTestInteraction(runnerId, surface.id, testInteraction, testEnvironmentId);
36
- await api.createTestInteractionRun({
37
- testInteractionId: tc.id,
41
+ batchItems.push({
42
+ runnerId,
43
+ testSurfaceId: surface.id,
44
+ testInteraction,
45
+ testEnvironmentId,
38
46
  testSurfaceRunId: surfaceRun.id,
39
47
  });
40
48
  }
49
+ if (batchItems.length > 0) {
50
+ await api.ensureTestInteractionBatch(batchItems);
51
+ }
41
52
  desiredKeysBySurface.set(surfaceTitle, desiredKeys);
42
53
  await analyzer.reconcileGeneratedSurfaceElements(context, {
43
54
  surfaceId: surface.id,
@@ -1 +1 @@
1
- {"version":3,"file":"scaffolds.js","sourceRoot":"","sources":["../../../../src/analyzer/page-analyzer/generators/scaffolds.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,KAAK,UAAU,gCAAgC,CACpD,QAAa,EACb,OAAwB;IAExB,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,iBAAiB,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,GACnE,OAAO,CAAC;IACV,MAAM,sBAAsB,GAAG,IAAI,GAAG,EAAU,CAAC;IACjD,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAAoB,CAAC;IAEzD,KAAK,MAAM,QAAQ,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QACzC,MAAM,aAAa,GAAG,QAAQ,CAAC,yBAAyB,CACtD,QAAQ,CAAC,uBAAuB,CAAC,OAAO,EAAE,QAAQ,CAAC,CACpD,CAAC;QAEF,MAAM,YAAY,GAAG,aAAa,QAAQ,CAAC,IAAI,EAAE,CAAC;QAClD,sBAAsB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QACzC,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,oBAAoB,CAAC,GAAG,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;YAC3C,SAAS;QACX,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,iBAAiB,CACzC,QAAQ,EACR;YACE,KAAK,EAAE,YAAY;YACnB,WAAW,EAAE,aAAa,QAAQ,CAAC,IAAI,WAAW;YAClD,mBAAmB,EAAE,OAAO,CAAC,kBAAkB;YAC/C,YAAY,EAAE,OAAO,CAAC,WAAW;YACjC,SAAS;YACT,QAAQ,EAAE,CAAC;YACX,YAAY,EAAE,CAAC,UAAU,EAAE,QAAQ,CAAC,IAAI,CAAC;YACzC,GAAG;SACJ,EACD,iBAAiB,CAClB,CAAC;QACF,OAAO,CAAC,MAAM,CAAC,oBAAoB,CAAC;YAClC,SAAS,EAAE,OAAO,CAAC,EAAE;YACrB,KAAK,EAAE,OAAO,CAAC,KAAK;SACrB,CAAC,CAAC;QAEH,MAAM,GAAG,CAAC,uBAAuB,CAC/B,SAAS,CAAC,mBAAmB,EAC7B,OAAO,CAAC,EAAE,CACX,CAAC;QACF,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,gBAAgB,CAChD,GAAG,EACH,OAAO,CAAC,EAAE,EACV,SAAS,CAAC,EAAE,CACb,CAAC;QAEF,MAAM,WAAW,GAAa,EAAE,CAAC;QACjC,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;YACjC,MAAM,eAAe,GAAG,QAAQ,CAAC,iCAAiC,CAAC,IAAI,CAAC;gBACtE,CAAC,CAAC,QAAQ,CAAC,sCAAsC,CAC7C,IAAI,EACJ,OAAO,CAAC,WAAW,EACnB,SAAS,EACT,GAAG,EACH,OAAO,CAAC,kBAAkB,EAC1B,OAAO,CAAC,wBAAwB,CACjC;gBACH,CAAC,CAAC,QAAQ,CAAC,yBAAyB,CAChC,IAAI,EACJ,OAAO,CAAC,WAAW,EACnB,SAAS,EACT,GAAG,EACH,OAAO,CAAC,kBAAkB,EAC1B,OAAO,CAAC,wBAAwB,CACjC,CAAC;YACN,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC,CAAC;YAC5D,MAAM,EAAE,GAAG,MAAM,GAAG,CAAC,qBAAqB,CACxC,QAAQ,EACR,OAAO,CAAC,EAAE,EACV,eAAe,EACf,iBAAiB,CAClB,CAAC;YACF,MAAM,GAAG,CAAC,wBAAwB,CAAC;gBACjC,iBAAiB,EAAE,EAAE,CAAC,EAAE;gBACxB,gBAAgB,EAAE,UAAU,CAAC,EAAE;aAChC,CAAC,CAAC;QACL,CAAC;QAED,oBAAoB,CAAC,GAAG,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;QACpD,MAAM,QAAQ,CAAC,iCAAiC,CAAC,OAAO,EAAE;YACxD,SAAS,EAAE,OAAO,CAAC,EAAE;YACrB,YAAY;YACZ,WAAW;YACX,2BAA2B,EAAE,OAAO,CAAC,wBAAwB;SAC9D,CAAC,CAAC;IACL,CAAC;IAED,MAAM,gBAAgB,GAAG,MAAM,GAAG,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC;IACrE,KAAK,MAAM,OAAO,IAAI,gBAAgB,CAAC,MAAM,CAAC,CAAC,IAAS,EAAE,EAAE,CAC1D,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,CACpC,EAAE,CAAC;QACF,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/C,MAAM,QAAQ,CAAC,iCAAiC,CAAC,OAAO,EAAE;gBACxD,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,YAAY,EAAE,OAAO,CAAC,KAAK;gBAC3B,WAAW,EAAE,EAAE;gBACf,2BAA2B,EAAE,OAAO,CAAC,wBAAwB;aAC9D,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,KAAK,MAAM,CAAC,YAAY,EAAE,WAAW,CAAC,IAAI,oBAAoB,EAAE,CAAC;QAC/D,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC;YAAE,SAAS;QACrC,MAAM,QAAQ,CAAC,iCAAiC,CAAC,OAAO,EAAE;YACxD,YAAY;YACZ,WAAW;YACX,2BAA2B,EAAE,OAAO,CAAC,wBAAwB;SAC9D,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"scaffolds.js","sourceRoot":"","sources":["../../../../src/analyzer/page-analyzer/generators/scaffolds.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"semantic-journeys.d.ts","sourceRoot":"","sources":["../../../../src/analyzer/page-analyzer/generators/semantic-journeys.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAEhD,wBAAsB,uCAAuC,CAC3D,QAAQ,EAAE,GAAG,EACb,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,IAAI,CAAC,CA0Df"}
1
+ {"version":3,"file":"semantic-journeys.d.ts","sourceRoot":"","sources":["../../../../src/analyzer/page-analyzer/generators/semantic-journeys.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAEhD,wBAAsB,uCAAuC,CAC3D,QAAQ,EAAE,GAAG,EACb,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,IAAI,CAAC,CAsDf"}
@@ -9,28 +9,36 @@ export async function generateSemanticJourneyTestInteractions(analyzer, context)
9
9
  return;
10
10
  }
11
11
  const { api, runnerId, testEnvironmentId, bundleRun } = context;
12
- const surface = await api.ensureTestSurface(runnerId, {
13
- title: surfaceTitle,
14
- description: `Semantic multi-step journeys from ${context.currentPath}`,
15
- startingPageStateId: context.currentPageStateId,
16
- startingPath: context.currentPath,
17
- sizeClass: context.sizeClass,
18
- priority: 6,
19
- surface_tags: ["e2e", "semantic-journey"],
20
- uid: context.uid,
21
- }, testEnvironmentId);
12
+ const { surface, surfaceRun } = await api.ensureTestSurfaceWithRun({
13
+ runnerId,
14
+ testEnvironmentId,
15
+ testSurface: {
16
+ title: surfaceTitle,
17
+ description: `Semantic multi-step journeys from ${context.currentPath}`,
18
+ startingPageStateId: context.currentPageStateId,
19
+ startingPath: context.currentPath,
20
+ sizeClass: context.sizeClass,
21
+ priority: 6,
22
+ surface_tags: ["e2e", "semantic-journey"],
23
+ uid: context.uid,
24
+ },
25
+ testSurfaceBundleId: bundleRun.testSurfaceBundleId,
26
+ testSurfaceBundleRunId: bundleRun.id,
27
+ });
28
+ analyzer.invalidateSurfacesCache();
22
29
  context.events.onTestSurfaceCreated({
23
30
  surfaceId: surface.id,
24
31
  title: surface.title,
25
32
  });
26
- await api.ensureBundleSurfaceLink(bundleRun.testSurfaceBundleId, surface.id);
27
- const surfaceRun = await analyzer.ensureSurfaceRun(api, surface.id, bundleRun.id);
28
- for (const journey of journeys) {
29
- const tc = await api.ensureTestInteraction(runnerId, surface.id, journey, testEnvironmentId);
30
- await api.createTestInteractionRun({
31
- testInteractionId: tc.id,
32
- testSurfaceRunId: surfaceRun.id,
33
- });
33
+ const batchItems = journeys.map((journey) => ({
34
+ runnerId,
35
+ testSurfaceId: surface.id,
36
+ testInteraction: journey,
37
+ testEnvironmentId,
38
+ testSurfaceRunId: surfaceRun.id,
39
+ }));
40
+ if (batchItems.length > 0) {
41
+ await api.ensureTestInteractionBatch(batchItems);
34
42
  }
35
43
  await analyzer.reconcileGeneratedSurfaceElements(context, {
36
44
  surfaceId: surface.id,
@@ -1 +1 @@
1
- {"version":3,"file":"semantic-journeys.js","sourceRoot":"","sources":["../../../../src/analyzer/page-analyzer/generators/semantic-journeys.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,KAAK,UAAU,uCAAuC,CAC3D,QAAa,EACb,OAAwB;IAExB,MAAM,QAAQ,GAAG,QAAQ,CAAC,oCAAoC,CAAC,OAAO,CAAC,CAAC;IACxE,MAAM,YAAY,GAAG,aAAa,OAAO,CAAC,WAAW,EAAE,CAAC;IACxD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,MAAM,QAAQ,CAAC,iCAAiC,CAAC,OAAO,EAAE;YACxD,YAAY;YACZ,WAAW,EAAE,EAAE;SAChB,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IAED,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,iBAAiB,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC;IAChE,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,iBAAiB,CACzC,QAAQ,EACR;QACE,KAAK,EAAE,YAAY;QACnB,WAAW,EAAE,qCAAqC,OAAO,CAAC,WAAW,EAAE;QACvE,mBAAmB,EAAE,OAAO,CAAC,kBAAkB;QAC/C,YAAY,EAAE,OAAO,CAAC,WAAW;QACjC,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,QAAQ,EAAE,CAAC;QACX,YAAY,EAAE,CAAC,KAAK,EAAE,kBAAkB,CAAC;QACzC,GAAG,EAAE,OAAO,CAAC,GAAG;KACjB,EACD,iBAAiB,CAClB,CAAC;IACF,OAAO,CAAC,MAAM,CAAC,oBAAoB,CAAC;QAClC,SAAS,EAAE,OAAO,CAAC,EAAE;QACrB,KAAK,EAAE,OAAO,CAAC,KAAK;KACrB,CAAC,CAAC;IAEH,MAAM,GAAG,CAAC,uBAAuB,CAAC,SAAS,CAAC,mBAAmB,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;IAC7E,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,gBAAgB,CAChD,GAAG,EACH,OAAO,CAAC,EAAE,EACV,SAAS,CAAC,EAAE,CACb,CAAC;IAEF,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,EAAE,GAAG,MAAM,GAAG,CAAC,qBAAqB,CACxC,QAAQ,EACR,OAAO,CAAC,EAAE,EACV,OAAO,EACP,iBAAiB,CAClB,CAAC;QACF,MAAM,GAAG,CAAC,wBAAwB,CAAC;YACjC,iBAAiB,EAAE,EAAE,CAAC,EAAE;YACxB,gBAAgB,EAAE,UAAU,CAAC,EAAE;SAChC,CAAC,CAAC;IACL,CAAC;IAED,MAAM,QAAQ,CAAC,iCAAiC,CAAC,OAAO,EAAE;QACxD,SAAS,EAAE,OAAO,CAAC,EAAE;QACrB,YAAY;QACZ,WAAW,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAY,EAAE,EAAE,CACzC,QAAQ,CAAC,eAAe,CAAC,OAAO,CAAC,CAClC;KACF,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"semantic-journeys.js","sourceRoot":"","sources":["../../../../src/analyzer/page-analyzer/generators/semantic-journeys.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,KAAK,UAAU,uCAAuC,CAC3D,QAAa,EACb,OAAwB;IAExB,MAAM,QAAQ,GAAG,QAAQ,CAAC,oCAAoC,CAAC,OAAO,CAAC,CAAC;IACxE,MAAM,YAAY,GAAG,aAAa,OAAO,CAAC,WAAW,EAAE,CAAC;IACxD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,MAAM,QAAQ,CAAC,iCAAiC,CAAC,OAAO,EAAE;YACxD,YAAY;YACZ,WAAW,EAAE,EAAE;SAChB,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IAED,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,iBAAiB,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC;IAChE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,MAAM,GAAG,CAAC,wBAAwB,CAAC;QACjE,QAAQ;QACR,iBAAiB;QACjB,WAAW,EAAE;YACX,KAAK,EAAE,YAAY;YACnB,WAAW,EAAE,qCAAqC,OAAO,CAAC,WAAW,EAAE;YACvE,mBAAmB,EAAE,OAAO,CAAC,kBAAkB;YAC/C,YAAY,EAAE,OAAO,CAAC,WAAW;YACjC,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,QAAQ,EAAE,CAAC;YACX,YAAY,EAAE,CAAC,KAAK,EAAE,kBAAkB,CAAC;YACzC,GAAG,EAAE,OAAO,CAAC,GAAG;SACjB;QACD,mBAAmB,EAAE,SAAS,CAAC,mBAAmB;QAClD,sBAAsB,EAAE,SAAS,CAAC,EAAE;KACrC,CAAC,CAAC;IACH,QAAQ,CAAC,uBAAuB,EAAE,CAAC;IACnC,OAAO,CAAC,MAAM,CAAC,oBAAoB,CAAC;QAClC,SAAS,EAAE,OAAO,CAAC,EAAE;QACrB,KAAK,EAAE,OAAO,CAAC,KAAK;KACrB,CAAC,CAAC;IAEH,MAAM,UAAU,GAA+B,QAAQ,CAAC,GAAG,CACzD,CAAC,OAAY,EAAE,EAAE,CAAC,CAAC;QACjB,QAAQ;QACR,aAAa,EAAE,OAAO,CAAC,EAAE;QACzB,eAAe,EAAE,OAAO;QACxB,iBAAiB;QACjB,gBAAgB,EAAE,UAAU,CAAC,EAAE;KAChC,CAAC,CACH,CAAC;IACF,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,MAAM,GAAG,CAAC,0BAA0B,CAAC,UAAU,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,QAAQ,CAAC,iCAAiC,CAAC,OAAO,EAAE;QACxD,SAAS,EAAE,OAAO,CAAC,EAAE;QACrB,YAAY;QACZ,WAAW,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAY,EAAE,EAAE,CACzC,QAAQ,CAAC,eAAe,CAAC,OAAO,CAAC,CAClC;KACF,CAAC,CAAC;AACL,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"variants.d.ts","sourceRoot":"","sources":["../../../../src/analyzer/page-analyzer/generators/variants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAEhD,wBAAsB,+BAA+B,CACnD,QAAQ,EAAE,GAAG,EACb,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,IAAI,CAAC,CAuFf"}
1
+ {"version":3,"file":"variants.d.ts","sourceRoot":"","sources":["../../../../src/analyzer/page-analyzer/generators/variants.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAEhD,wBAAsB,+BAA+B,CACnD,QAAQ,EAAE,GAAG,EACb,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,IAAI,CAAC,CAoFf"}
@@ -24,26 +24,34 @@ export async function generateVariantTestInteractions(analyzer, context) {
24
24
  return;
25
25
  }
26
26
  const { api, runnerId, testEnvironmentId, bundleRun } = context;
27
- const surface = await api.ensureTestSurface(runnerId, {
28
- title: surfaceTitle,
29
- description: `Variant and option state checks for ${context.currentPath}`,
30
- startingPageStateId: context.currentPageStateId,
31
- startingPath: context.currentPath,
32
- sizeClass: context.sizeClass,
33
- priority: 2,
34
- surface_tags: ["variant", "option"],
35
- uid: context.uid,
36
- }, testEnvironmentId);
27
+ const { surface, surfaceRun } = await api.ensureTestSurfaceWithRun({
28
+ runnerId,
29
+ testEnvironmentId,
30
+ testSurface: {
31
+ title: surfaceTitle,
32
+ description: `Variant and option state checks for ${context.currentPath}`,
33
+ startingPageStateId: context.currentPageStateId,
34
+ startingPath: context.currentPath,
35
+ sizeClass: context.sizeClass,
36
+ priority: 2,
37
+ surface_tags: ["variant", "option"],
38
+ uid: context.uid,
39
+ },
40
+ testSurfaceBundleId: bundleRun.testSurfaceBundleId,
41
+ testSurfaceBundleRunId: bundleRun.id,
42
+ });
43
+ analyzer.invalidateSurfacesCache();
37
44
  context.events.onTestSurfaceCreated({
38
45
  surfaceId: surface.id,
39
46
  title: surface.title,
40
47
  });
41
- await api.ensureBundleSurfaceLink(bundleRun.testSurfaceBundleId, surface.id);
42
- const surfaceRun = await analyzer.ensureSurfaceRun(api, surface.id, bundleRun.id);
48
+ const batchItems = [];
43
49
  for (const test of tests) {
44
- const tc = await api.ensureTestInteraction(runnerId, surface.id, test, testEnvironmentId);
45
- await api.createTestInteractionRun({
46
- testInteractionId: tc.id,
50
+ batchItems.push({
51
+ runnerId,
52
+ testSurfaceId: surface.id,
53
+ testInteraction: test,
54
+ testEnvironmentId,
47
55
  testSurfaceRunId: surfaceRun.id,
48
56
  });
49
57
  const selector = test.steps?.[0]?.action?.path;
@@ -52,6 +60,9 @@ export async function generateVariantTestInteractions(analyzer, context) {
52
60
  await analyzer.markGeneratedSelectorForBasePath(context.currentPath, actionType, selector);
53
61
  }
54
62
  }
63
+ if (batchItems.length > 0) {
64
+ await api.ensureTestInteractionBatch(batchItems);
65
+ }
55
66
  await analyzer.reconcileGeneratedSurfaceElements(context, {
56
67
  surfaceId: surface.id,
57
68
  surfaceTitle,
@@ -1 +1 @@
1
- {"version":3,"file":"variants.js","sourceRoot":"","sources":["../../../../src/analyzer/page-analyzer/generators/variants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"variants.js","sourceRoot":"","sources":["../../../../src/analyzer/page-analyzer/generators/variants.ts"],"names":[],"mappings":"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"}
@@ -15,7 +15,10 @@ type AppendActionResult = {
15
15
  */
16
16
  export declare class PageAnalyzer {
17
17
  private store;
18
+ private surfacesCache;
18
19
  constructor(dedupStore?: DedupStore);
20
+ private getCachedSurfaces;
21
+ private invalidateSurfacesCache;
19
22
  /** Check whether generation already happened for a given path in this run. */
20
23
  hasGeneratedForPath(path: string): Promise<boolean>;
21
24
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/analyzer/page-analyzer/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/analyzer/page-analyzer/index.ts"],"names":[],"mappings":"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"}
@@ -60,9 +60,19 @@ function basePathOf(raw) {
60
60
  */
61
61
  export class PageAnalyzer {
62
62
  store;
63
+ surfacesCache = null;
63
64
  constructor(dedupStore) {
64
65
  this.store = dedupStore ?? new InMemoryDedupStore();
65
66
  }
67
+ async getCachedSurfaces(context) {
68
+ if (!this.surfacesCache) {
69
+ this.surfacesCache = await context.api.getTestSurfacesByRunner(context.runnerId);
70
+ }
71
+ return this.surfacesCache;
72
+ }
73
+ invalidateSurfacesCache() {
74
+ this.surfacesCache = null;
75
+ }
66
76
  /** Check whether generation already happened for a given path in this run. */
67
77
  hasGeneratedForPath(path) {
68
78
  return this.store.has("generatedPaths", normalizePathForDedup(path));
@@ -431,53 +441,38 @@ export class PageAnalyzer {
431
441
  await generateNavigationTestInteractions(this, contextForFullPass);
432
442
  }
433
443
  async reconcileGeneratedSurfaceElements(context, params) {
434
- const surface = params.surfaceId != null
435
- ? { id: params.surfaceId, title: params.surfaceTitle }
436
- : await this.findExistingSurfaceByTitle(context, params.surfaceTitle);
437
- if (!surface) {
438
- logAnalyzer("reconcile:surface-missing", {
439
- requestedSurfaceId: params.surfaceId ?? null,
440
- requestedSurfaceTitle: params.surfaceTitle,
441
- dependencyTestInteractionId: params.dependencyTestInteractionId ?? null,
442
- desiredKeysCount: params.desiredKeys.length,
443
- });
444
- return;
445
- }
446
- const existing = await context.api.getTestInteractionsByTestSurface(surface.id, true);
447
- const desiredKeys = new Set(params.desiredKeys.map(key => key.trim()).filter(Boolean));
448
- const obsoleteIds = existing
449
- .filter(testInteraction => {
450
- const isGenerated = Boolean(testInteraction.isGenerated);
451
- const isActive = testInteraction.isActive !== false;
452
- if (!isGenerated || !isActive)
453
- return false;
454
- if ((testInteraction.dependencyTestInteractionId ?? null) !==
455
- (params.dependencyTestInteractionId ?? null)) {
456
- return false;
444
+ let surfaceId;
445
+ if (params.surfaceId != null) {
446
+ surfaceId = params.surfaceId;
447
+ }
448
+ else {
449
+ const surface = await this.findExistingSurfaceByTitle(context, params.surfaceTitle);
450
+ if (!surface) {
451
+ logAnalyzer("reconcile:surface-missing", {
452
+ requestedSurfaceId: params.surfaceId ?? null,
453
+ requestedSurfaceTitle: params.surfaceTitle,
454
+ dependencyTestInteractionId: params.dependencyTestInteractionId ?? null,
455
+ desiredKeysCount: params.desiredKeys.length,
456
+ });
457
+ return;
457
458
  }
458
- const existingKey = this.getPersistedGeneratedKey(testInteraction);
459
- return !existingKey || !desiredKeys.has(existingKey);
460
- })
461
- .map(testInteraction => testInteraction.id);
462
- logAnalyzer("reconcile:evaluated", {
463
- surfaceId: surface.id,
464
- surfaceTitle: surface.title,
465
- dependencyTestInteractionId: params.dependencyTestInteractionId ?? null,
466
- desiredKeysCount: desiredKeys.size,
467
- existingCount: existing.length,
468
- obsoleteIds,
459
+ surfaceId = surface.id;
460
+ }
461
+ const result = await context.api.reconcileTestInteractions({
462
+ testSurfaceId: surfaceId,
463
+ desiredKeys: params.desiredKeys,
464
+ dependencyTestInteractionId: params.dependencyTestInteractionId,
469
465
  });
470
- if (obsoleteIds.length === 0)
471
- return;
472
- await context.api.retireTestInteractions(obsoleteIds);
473
- logAnalyzer("reconcile:retired", {
474
- surfaceId: surface.id,
475
- surfaceTitle: surface.title,
476
- obsoleteIds,
466
+ logAnalyzer("reconcile:completed", {
467
+ surfaceId,
468
+ surfaceTitle: params.surfaceTitle,
469
+ dependencyTestInteractionId: params.dependencyTestInteractionId ?? null,
470
+ desiredKeysCount: params.desiredKeys.length,
471
+ retiredIds: result.retiredIds,
477
472
  });
478
473
  }
479
474
  async findExistingSurfaceByTitle(context, title) {
480
- const surfaces = await context.api.getTestSurfacesByRunner(context.runnerId);
475
+ const surfaces = await this.getCachedSurfaces(context);
481
476
  const surface = surfaces.find(candidate => candidate.title === title);
482
477
  return surface ? { id: surface.id, title: surface.title } : null;
483
478
  }
@@ -808,13 +803,18 @@ export class PageAnalyzer {
808
803
  }
809
804
  async ensureScaffolds(context) {
810
805
  const scaffoldIdsBySelector = new Map();
811
- for (const scaffold of context.scaffolds) {
812
- const result = await context.api.findOrCreateScaffold({
813
- runnerId: context.runnerId,
814
- type: scaffold.type,
815
- html: scaffold.outerHtml,
816
- hash: scaffold.hash,
817
- });
806
+ if (context.scaffolds.length === 0)
807
+ return scaffoldIdsBySelector;
808
+ const items = context.scaffolds.map(scaffold => ({
809
+ runnerId: context.runnerId,
810
+ type: scaffold.type,
811
+ html: scaffold.outerHtml,
812
+ hash: scaffold.hash,
813
+ }));
814
+ const results = await context.api.findOrCreateScaffoldBatch(items);
815
+ for (let i = 0; i < context.scaffolds.length; i++) {
816
+ const scaffold = context.scaffolds[i];
817
+ const result = results[i];
818
818
  scaffoldIdsBySelector.set(scaffold.selector, result.id);
819
819
  // Link page state screenshot to scaffold if it doesn't have one
820
820
  if (!result.screenshotPath && context.screenshotPath) {