doc-detective 4.31.0 → 4.33.0

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 (41) hide show
  1. package/dist/common/src/schemas/schemas.json +1288 -126
  2. package/dist/common/src/types/generated/record_v3.d.ts +21 -2
  3. package/dist/common/src/types/generated/record_v3.d.ts.map +1 -1
  4. package/dist/common/src/types/generated/step_v3.d.ts +21 -2
  5. package/dist/common/src/types/generated/step_v3.d.ts.map +1 -1
  6. package/dist/common/src/types/generated/test_v3.d.ts +42 -4
  7. package/dist/common/src/types/generated/test_v3.d.ts.map +1 -1
  8. package/dist/core/tests/ffmpegRecorder.d.ts +14 -2
  9. package/dist/core/tests/ffmpegRecorder.d.ts.map +1 -1
  10. package/dist/core/tests/ffmpegRecorder.js +113 -5
  11. package/dist/core/tests/ffmpegRecorder.js.map +1 -1
  12. package/dist/core/tests/recordingCheckpoints.d.ts +76 -0
  13. package/dist/core/tests/recordingCheckpoints.d.ts.map +1 -0
  14. package/dist/core/tests/recordingCheckpoints.js +335 -0
  15. package/dist/core/tests/recordingCheckpoints.js.map +1 -0
  16. package/dist/core/tests/saveScreenshot.d.ts +5 -1
  17. package/dist/core/tests/saveScreenshot.d.ts.map +1 -1
  18. package/dist/core/tests/saveScreenshot.js +46 -12
  19. package/dist/core/tests/saveScreenshot.js.map +1 -1
  20. package/dist/core/tests/startRecording.d.ts.map +1 -1
  21. package/dist/core/tests/startRecording.js +26 -10
  22. package/dist/core/tests/startRecording.js.map +1 -1
  23. package/dist/core/tests/stopRecording.d.ts.map +1 -1
  24. package/dist/core/tests/stopRecording.js +298 -7
  25. package/dist/core/tests/stopRecording.js.map +1 -1
  26. package/dist/core/tests.d.ts.map +1 -1
  27. package/dist/core/tests.js +53 -37
  28. package/dist/core/tests.js.map +1 -1
  29. package/dist/hints/context.d.ts +1 -0
  30. package/dist/hints/context.d.ts.map +1 -1
  31. package/dist/hints/context.js +9 -0
  32. package/dist/hints/context.js.map +1 -1
  33. package/dist/hints/hints.d.ts.map +1 -1
  34. package/dist/hints/hints.js +15 -0
  35. package/dist/hints/hints.js.map +1 -1
  36. package/dist/hints/types.d.ts +8 -0
  37. package/dist/hints/types.d.ts.map +1 -1
  38. package/dist/index.cjs +1990 -321
  39. package/dist/reporters/htmlReporter.js +3 -1
  40. package/dist/reporters/htmlReporter.js.map +1 -1
  41. package/package.json +1 -1
@@ -6,6 +6,7 @@ import { resolveRecordPlan, safeContextId, browserCaptureTitle, browserDownloadD
6
6
  import { resolveAppSurfaceRef, ensureAppForeground } from "./appSurface.js";
7
7
  import { resolveAppWindow, activeAppWindow, appWindowRect, } from "./appWindows.js";
8
8
  import { isMobileTargetPlatform } from "./mobilePlatform.js";
9
+ import { recordingCheckpointsEnabled } from "./recordingCheckpoints.js";
9
10
  import { spawn } from "node:child_process";
10
11
  import { randomUUID } from "node:crypto";
11
12
  import path from "node:path";
@@ -124,12 +125,31 @@ async function startRecording({ config, context, step, driver, recordingHost, ap
124
125
  if (!fs.existsSync(dir)) {
125
126
  fs.mkdirSync(dir, { recursive: true });
126
127
  }
127
- // Check if file already exists
128
- if (fs.existsSync(filePath) && step.record.overwrite == "false") {
129
- // File already exists
128
+ // A recording that's skipped — because the target already exists, or because
129
+ // the engine can't capture headless — still tracks a compare-only "phantom"
130
+ // span when checkpoints are on (or aboveVariation, which implies them), per
131
+ // ADR 01079: the post-step hook captures checkpoints against the committed
132
+ // baselines and stopRecord reports staleness read-only — no video, no writes.
133
+ // `skipReason` travels to stopRecord so a stale verdict can name the right
134
+ // remedy: a headless skip needs a headed re-run, an existing target needs
135
+ // `overwrite` (or the file removed).
136
+ const phantomRecordingResult = (skipDescription, skipReason = "headless") => {
130
137
  result.status = "SKIPPED";
131
- result.description = `File already exists: ${filePath}`;
138
+ if (recordingCheckpointsEnabled(step.record)) {
139
+ result.description = `${skipDescription} Running checkpoint comparisons only, to detect whether the recording is stale.`;
140
+ result.recording = { type: "phantom", targetPath: filePath, skipReason };
141
+ }
142
+ else {
143
+ result.description = skipDescription;
144
+ }
132
145
  return result;
146
+ };
147
+ // Check if file already exists. Skipping the video doesn't skip the
148
+ // checkpoints: without the phantom span, `checkpoints: true` (which leaves
149
+ // overwrite at its "false" default) would seed baselines on the first run and
150
+ // then never compare again, silently retiring the drift detection it promises.
151
+ if (fs.existsSync(filePath) && step.record.overwrite == "false") {
152
+ return phantomRecordingResult(`File already exists: ${filePath}`, "targetExists");
133
153
  }
134
154
  // With overlapping recordings, two could target the same output before
135
155
  // either file exists (the existsSync check above can't catch that). Refuse to
@@ -268,9 +288,7 @@ async function startRecording({ config, context, step, driver, recordingHost, ap
268
288
  // MediaRecorder. Concurrency-safe — each context auto-selects its own
269
289
  // window by a unique title. Requires headed Chrome.
270
290
  if (context.browser?.headless) {
271
- result.status = "SKIPPED";
272
- result.description = `Recording isn't supported in headless mode with the browser engine. Use the ffmpeg engine to record headless.`;
273
- return result;
291
+ return phantomRecordingResult(`Recording isn't supported in headless mode with the browser engine. Use the ffmpeg engine to record headless.`);
274
292
  }
275
293
  if (context.browser?.name !== "chrome") {
276
294
  result.status = "SKIPPED";
@@ -432,9 +450,7 @@ async function startRecording({ config, context, step, driver, recordingHost, ap
432
450
  // app-targeted recording captures a native window, which exists (headed)
433
451
  // regardless of any browser's headless mode, so the guard doesn't apply.
434
452
  if (!appRef && context.browser?.headless && !context.__display) {
435
- result.status = "SKIPPED";
436
- result.description = `Recording isn't supported in headless mode without a virtual display (Xvfb).`;
437
- return result;
453
+ return phantomRecordingResult(`Recording isn't supported in headless mode without a virtual display (Xvfb).`);
438
454
  }
439
455
  // Crop geometry. Browser-driver crops (viewport, window) resolve through
440
456
  // the DOM devicePixelRatio probe and are stored ready-to-apply in physical
@@ -1 +1 @@
1
- {"version":3,"file":"startRecording.js","sourceRoot":"","sources":["../../../src/core/tests/startRecording.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,cAAc,EACd,gBAAgB,GACjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,mBAAmB,EACnB,kBAAkB,EAClB,gBAAgB,EAChB,mBAAmB,EACnB,qBAAqB,EACrB,aAAa,EACb,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,aAAa,GACd,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,MAAM,SAAS,CAAC;AAEzB,OAAO,EAAE,cAAc,EAAE,CAAC;AAE1B,8EAA8E;AAC9E,wEAAwE;AACxE,8EAA8E;AAC9E,wEAAwE;AACxE,wEAAwE;AACxE,2EAA2E;AAC3E,yEAAyE;AACzE,2CAA2C;AAC3C,KAAK,UAAU,cAAc,CAAC,EAC5B,MAAM,EACN,OAAO,EACP,IAAI,EACJ,MAAM,EACN,aAAa,EACb,UAAU,EACV,IAAI,GAAG,EAAE,GAYV;IACC,IAAI,MAAM,GAAQ;QAChB,MAAM,EAAE,MAAM;QACd,WAAW,EAAE,oBAAoB;KAClC,CAAC;IAEF,wBAAwB;IACxB,MAAM,WAAW,GAAG,QAAQ,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;IACrE,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;QACvB,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;QACvB,MAAM,CAAC,WAAW,GAAG,4BAA4B,WAAW,CAAC,MAAM,EAAE,CAAC;QACtE,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,sCAAsC;IACtC,IAAI,GAAG,WAAW,CAAC,MAAM,CAAC;IAE1B,mEAAmE;IACnE,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;QAC1B,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC;QAC1B,MAAM,CAAC,WAAW,GAAG,wCAAwC,CAAC;QAC9D,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,mEAAmE;IACnE,2EAA2E;IAC3E,yEAAyE;IACzE,2EAA2E;IAC3E,uCAAuC;IACvC,IAAI,MAAM,GAAyD,IAAI,CAAC;IACxE,IAAI,eAAe,GAAQ,IAAI,CAAC;IAChC,IACE,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ;QAC/B,IAAI,CAAC,MAAM,KAAK,IAAI;QACpB,IAAI,CAAC,MAAM,CAAC,OAAO,KAAK,SAAS,EACjC,CAAC;QACD,MAAM,GAAG,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QAC/D,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBACjB,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;gBACvB,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC;gBAClC,OAAO,MAAM,CAAC;YAChB,CAAC;YACD,oEAAoE;YACpE,oEAAoE;YACpE,oEAAoE;YACpE,2CAA2C;YAC3C,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gBAChC,MAAM,cAAc,GAAG,MAAM,gBAAgB,CAAC;oBAC5C,KAAK,EAAE,MAAM,CAAC,KAAM;oBACpB,QAAQ,EAAE,MAAM,CAAC,MAAM;oBACvB,SAAS,EAAE,IAAI;iBAChB,CAAC,CAAC;gBACH,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC;oBACvB,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;oBACvB,MAAM,CAAC,WAAW,GAAG,cAAc,CAAC,OAAO,CAAC;oBAC5C,OAAO,MAAM,CAAC;gBAChB,CAAC;gBACD,eAAe,GAAG,cAAc,CAAC,MAAM,CAAC;YAC1C,CAAC;iBAAM,CAAC;gBACN,eAAe,GAAG,MAAM,eAAe,CAAC,MAAM,CAAC,KAAM,CAAC,CAAC;YACzD,CAAC;YACD,MAAM,WAAW,GAAG,MAAM,mBAAmB,CAAC,MAAM,CAAC,KAAM,EAAE,UAAU,CAAC,CAAC;YACzE,IAAI,WAAW,CAAC,KAAK,EAAE,CAAC;gBACtB,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;gBACvB,MAAM,CAAC,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC;gBACvC,OAAO,MAAM,CAAC;YAChB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACpE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;gBACvB,MAAM,CAAC,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC;gBACtC,OAAO,MAAM,CAAC;YAChB,CAAC;YACD,MAAM,GAAG,QAAQ,CAAC,MAAM,IAAI,MAAM,CAAC;QACrC,CAAC;IACH,CAAC;IAED,4BAA4B;IAC5B,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QACrC,IAAI,CAAC,MAAM,GAAG,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,MAAM,MAAM,EAAE,CAAC;IAC/C,CAAC;IACD,2BAA2B;IAC3B,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QACpC,IAAI,CAAC,MAAM,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;IACtC,CAAC;IACD,wBAAwB;IACxB,IAAI,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;QAC5C,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,MAAM,CAAC;QACxC,gDAAgD;QAChD,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YAC1B,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;IACD,qBAAqB;IACrB,IAAI,CAAC,MAAM,GAAG;QACZ,GAAG,IAAI,CAAC,MAAM;QACd,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,OAAO;KAC5C,CAAC;IAEF,gBAAgB;IAChB,IAAI,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;IAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEjE,qBAAqB;IACrB,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC3C,oCAAoC;IACpC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACxB,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACzC,CAAC;IAED,+BAA+B;IAC/B,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,OAAO,EAAE,CAAC;QAChE,sBAAsB;QACtB,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC;QAC1B,MAAM,CAAC,WAAW,GAAG,wBAAwB,QAAQ,EAAE,CAAC;QACxD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,uEAAuE;IACvE,8EAA8E;IAC9E,sEAAsE;IACtE,6EAA6E;IAC7E,yEAAyE;IACzE,MAAM,qBAAqB,GAAG,CAAC,CAAS,EAAE,EAAE;QAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACjC,OAAO,OAAO,CAAC,QAAQ,KAAK,OAAO,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ;YAClE,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE;YACxB,CAAC,CAAC,QAAQ,CAAC;IACf,CAAC,CAAC;IACF,MAAM,gBAAgB,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC;IACzD,MAAM,WAAW,GAAG,aAAa,IAAI,MAAM,CAAC;IAC5C,IACE,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,EAAE,UAAU,CAAC;QAC7C,WAAW,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAC/B,CAAC,CAAM,EAAE,EAAE,CACT,OAAO,CAAC,EAAE,UAAU,KAAK,QAAQ;YACjC,qBAAqB,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,gBAAgB,CAC3D,EACD,CAAC;QACD,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC;QAC1B,MAAM,CAAC,WAAW,GAAG,8DAA8D,QAAQ,EAAE,CAAC;QAC9F,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,2EAA2E;IAC3E,2EAA2E;IAC3E,kBAAkB;IAClB,IAAI,IAAI,GAAG,iBAAiB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IAEhD,MAAM,YAAY,GAAG,sBAAsB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAE/D,yEAAyE;IACzE,qEAAqE;IACrE,0EAA0E;IAC1E,+DAA+D;IAC/D,IAAI,YAAY,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC3C,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC;QAC1B,MAAM,CAAC,WAAW,GAAG,iBAAiB,OAAO,CAAC,QAAQ,oEAAoE,IAAI,CAAC,IAAI,2CAA2C,CAAC;QAC/K,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,4EAA4E;IAC5E,yEAAyE;IACzE,qBAAqB;IACrB,IAAI,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QACtC,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC;QAC1B,MAAM,CAAC,WAAW;YAChB,4JAA4J,CAAC;QAC/J,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,IAAI,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QACnE,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC;QAC1B,MAAM,CAAC,WAAW;YAChB,+HAA+H,CAAC;QAClI,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,gEAAgE;IAChE,0EAA0E;IAC1E,wEAAwE;IACxE,yEAAyE;IACzE,yDAAyD;IACzD,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC3B,0EAA0E;QAC1E,0EAA0E;QAC1E,uEAAuE;QACvE,uEAAuE;QACvE,0EAA0E;QAC1E,0EAA0E;QAC1E,IAAI,eAAe,GAAG,MAAM,EAAE,KAAK,EAAE,MAAM,IAAI,MAAM,CAAC;QACtD,IAAI,CAAC,eAAe,IAAI,UAAU,EAAE,CAAC;YACnC,MAAM,WAAW,GAAG,UAAU,CAAC,SAAS;gBACtC,CAAC,CAAC,UAAU,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;gBAClD,CAAC,CAAC,SAAS,CAAC;YACd,eAAe,GAAG,WAAW,EAAE,MAAM,CAAC;YACtC,IAAI,CAAC,eAAe,IAAI,UAAU,CAAC,cAAc,EAAE,IAAI,GAAG,CAAC,EAAE,CAAC;gBAC5D,eAAe;oBACb,UAAU,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC;YAC5D,CAAC;QACH,CAAC;QACD,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,MAAM,CAAC,SAAS,GAAG,EAAE,IAAI,EAAE,gBAAgB,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC;YACpE,MAAM,CAAC,WAAW;gBAChB,wFAAwF,CAAC;YAC3F,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,+DAA+D;QAC/D,0EAA0E;QAC1E,oBAAoB;QACpB,MAAM,wBAAwB,GAC5B,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,EAAE,UAAU,CAAC;YAC7C,WAAW,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAC/B,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,KAAK,eAAe,CACjE,CAAC;QACJ,IAAI,wBAAwB,EAAE,CAAC;YAC7B,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC;YAC1B,MAAM,CAAC,WAAW;gBAChB,oIAAoI,CAAC;YACvI,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,EAAE,KAAK,EAAE,QAAQ,IAAI,OAAO,EAAE,QAAQ,CAAC;QAC9D,0EAA0E;QAC1E,uEAAuE;QACvE,MAAM,OAAO,GACX,QAAQ,KAAK,KAAK;YAChB,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE;YACxC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;QAC1B,IAAI,CAAC;YACH,MAAM,eAAe,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;QACtD,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,KAAK,CAAC,CAAC;YAChD,kEAAkE;YAClE,uEAAuE;YACvE,wEAAwE;YACxE,oEAAoE;YACpE,IAAI,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBACvC,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC;gBAC1B,MAAM,CAAC,WAAW,GAAG,uHAAuH,OAAO,EAAE,CAAC;gBACtJ,OAAO,MAAM,CAAC;YAChB,CAAC;YACD,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;YACvB,MAAM,CAAC,WAAW,GAAG,wCAAwC,OAAO,EAAE,CAAC;YACvE,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;YACzC,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,MAAM,CAAC,SAAS,GAAG;YACjB,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,eAAe;YACvB,UAAU,EAAE,QAAQ;SACrB,CAAC;QACF,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,2EAA2E;IAC3E,2EAA2E;IAC3E,0EAA0E;IAC1E,6EAA6E;IAC7E,4DAA4D;IAC5D,MAAM,yBAAyB,GAC7B,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,EAAE,UAAU,CAAC;QAC7C,WAAW,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,KAAK,eAAe,CAAC,CAAC;IAC7E,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,yBAAyB,EAAE,CAAC;QACzD,GAAG,CACD,MAAM,EACN,SAAS,EACT,+LAA+L,CAChM,CAAC;QACF,IAAI,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IAC/D,CAAC;IAED,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC5B,oEAAoE;QACpE,sEAAsE;QACtE,oDAAoD;QACpD,IAAI,OAAO,CAAC,OAAO,EAAE,QAAQ,EAAE,CAAC;YAC9B,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC;YAC1B,MAAM,CAAC,WAAW,GAAG,+GAA+G,CAAC;YACrI,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,IAAI,OAAO,CAAC,OAAO,EAAE,IAAI,KAAK,QAAQ,EAAE,CAAC;YACvC,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC;YAC1B,MAAM,CAAC,WAAW,GAAG,4EAA4E,OAAO,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC;YAC3H,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,MAAM,YAAY,GAAG,mBAAmB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAC5D,MAAM,WAAW,GAAG,kBAAkB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAC1D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YAChC,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACjD,CAAC;QACD,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,QAAQ,OAAO,CAAC,CAAC;QAChE,2EAA2E;QAC3E,wEAAwE;QACxE,IAAI,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YAChC,IAAI,CAAC;gBACH,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;YAC9B,CAAC;YAAC,MAAM,CAAC;gBACP,iBAAiB;YACnB,CAAC;QACH,CAAC;QAED,qBAAqB;QACrB,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC,QAAQ,EAAE,CAAC;QAC9C,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,eAAe,EAAE,CAAC;QACnD,yEAAyE;QACzE,kEAAkE;QAClE,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC,EAAE,YAAY,CAAC,CAAC;QAC7E,qBAAqB;QACrB,MAAM,iBAAiB,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;QACxD,iBAAiB;QACjB,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QACrD,0EAA0E;QAC1E,mEAAmE;QACnE,qEAAqE;QACrE,wEAAwE;QACxE,6DAA6D;QAC7D,cAAc,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QACpC,oBAAoB,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7E,oBAAoB;QACpB,MAAM,MAAM,CAAC,cAAc,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAChD,MAAM,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;QAC1C,MAAM,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC;QAE1D,kBAAkB;QAClB,MAAM,eAAe,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC,QAAa,EAAE,IAAS,EAAE,EAAE;YAC7E,IAAI,UAAU,GAAG,KAAK,CAAC;YACvB,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAE,EAAE;gBAClC,IAAI,CAAC,UAAU,EAAE,CAAC;oBAChB,UAAU,GAAG,IAAI,CAAC;oBAClB,IAAI,CAAC,KAAK,CAAC,CAAC;gBACd,CAAC;YACH,CAAC,CAAC;YACF,IAAI,MAAW,CAAC;YAChB,MAAM,mBAAmB,GAAG;gBAC1B,KAAK,EAAE;oBACL,cAAc,EAAE,SAAS;iBAC1B;gBACD,KAAK,EAAE;oBACL,0BAA0B,EAAE,KAAK;iBAClC;gBACD,gBAAgB,EAAE,KAAK;gBACvB,kBAAkB,EAAE,SAAS;gBAC7B,WAAW,EAAE,SAAS;gBACtB,gBAAgB,EAAE,SAAS;gBAC3B,mBAAmB,EAAE,SAAS;aAC/B,CAAC;YACF,KAAK,UAAU,YAAY,CAAC,mBAAwB;gBAClD,IAAI,CAAC;oBACH,MAAM,aAAa,GAAG,MAAM,SAAS,CAAC,YAAY,CAAC,eAAe,CAChE,mBAAmB,CACpB,CAAC;oBACF,OAAO,aAAa,CAAC;gBACvB,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,EAAE,CAAC,CAAC;oBAC/B,OAAO,IAAI,CAAC;gBACd,CAAC;YACH,CAAC;YACD,KAAK,UAAU,kBAAkB;gBAC/B,IAAI,CAAC;oBACH,MAAM,GAAG,MAAM,YAAY,CAAC,mBAAmB,CAAC,CAAC;oBACjD,IAAI,CAAC,MAAM,EAAE,CAAC;wBACZ,QAAQ,CAAC,KAAK,CAAC,CAAC;wBAChB,OAAO,IAAI,CAAC;oBACd,CAAC;oBACD,MAAM,YAAY,CAAC,MAAM,CAAC,CAAC;gBAC7B,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,EAAE,CAAC,CAAC;oBAC/B,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAClB,CAAC;gBACD,OAAO,MAAM,CAAC;YAChB,CAAC;YACD,KAAK,UAAU,YAAY,CAAC,MAAW;gBACpC,MAAc,CAAC,QAAQ,GAAG,IAAI,aAAa,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,iBAAiB;gBACnG,MAAM,IAAI,GAAU,EAAE,CAAC;gBAEtB,MAAc,CAAC,QAAQ,CAAC,eAAe,GAAG,CAAC,KAAU,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAChF,MAAc,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;gBACjC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAEf,IAAI,OAAO,GAAG,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;oBAC3C,MAAc,CAAC,QAAQ,CAAC,MAAM,GAAG,OAAO,CAAC;oBACzC,MAAc,CAAC,QAAQ,CAAC,OAAO,GAAG,CAAC,KAAU,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACxE,CAAC,CAAC,CAAC;gBAEH,MAAM,OAAO,CAAC;gBAEd,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;gBACpD,MAAM,GAAG,GAAG,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;gBACtC,MAAM,CAAC,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;gBACtC,CAAC,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;gBACzB,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC;gBACb,CAAC,CAAC,QAAQ,GAAG,GAAG,QAAQ,OAAO,CAAC;gBAChC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;gBAC7B,CAAC,CAAC,KAAK,EAAE,CAAC;gBACV,UAAU,CAAC,GAAG,EAAE;oBACd,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;oBAC7B,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;gBAClC,CAAC,EAAE,GAAG,CAAC,CAAC;YACV,CAAC;YACD,kBAAkB,EAAE,CAAC;QACvB,CAAC,EAAE,QAAQ,CAAC,CAAC;QAEb,2BAA2B;QAC3B,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;YACvB,MAAM,CAAC,WAAW;gBAChB,qEAAqE;oBACrE,6DAA6D;oBAC7D,6DAA6D,CAAC;YAChE,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;YACzC,MAAM,MAAM,CAAC,WAAW,EAAE,CAAC;YAC3B,MAAM,MAAM,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;YACzC,yEAAyE;YACzE,wEAAwE;YACxE,6DAA6D;YAC7D,gBAAgB,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;YAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC,aAAkB,EAAE,EAAE;gBAC1C,QAAQ,CAAC,KAAK,GAAG,aAAa,CAAC;YACjC,CAAC,EAAE,aAAa,CAAC,CAAC;YAClB,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,yBAAyB;QACzB,MAAM,MAAM,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QACzC,sCAAsC;QACtC,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC,aAAkB,EAAE,EAAE;YAC1C,QAAQ,CAAC,KAAK,GAAG,aAAa,CAAC;QACjC,CAAC,EAAE,aAAa,CAAC,CAAC;QAClB,eAAe;QACf,MAAM,CAAC,SAAS,GAAG;YACjB,IAAI,EAAE,eAAe;YACrB,GAAG,EAAE,WAAW,CAAC,MAAM;YACvB,YAAY,EAAE,0CAA0C;YACxD,UAAU,EAAE,QAAQ,EAAE,qCAAqC;SAC5D,CAAC;QACF,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,4EAA4E;IAC5E,0EAA0E;IAC1E,6BAA6B;IAE7B,0EAA0E;IAC1E,uEAAuE;IACvE,qEAAqE;IACrE,kEAAkE;IAClE,yEAAyE;IACzE,yEAAyE;IACzE,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,QAAQ,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;QAC/D,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC;QAC1B,MAAM,CAAC,WAAW,GAAG,8EAA8E,CAAC;QACpG,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,yEAAyE;IACzE,2EAA2E;IAC3E,0EAA0E;IAC1E,4EAA4E;IAC5E,4EAA4E;IAC5E,6CAA6C;IAC7C,IAAI,IAAI,GAAQ,IAAI,CAAC;IACrB,IAAI,WAAW,GAAQ,IAAI,CAAC;IAC5B,IAAI,MAAM,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QACvC,IAAI,CAAC;YACH,oEAAoE;YACpE,iEAAiE;YACjE,qEAAqE;YACrE,yBAAyB;YACzB,WAAW,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,KAAM,EAAE,eAAe,CAAC,CAAC;YAClE,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,GAAG,CACD,MAAM,EACN,SAAS,EACT,6GAA6G,CAC9G,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CACD,MAAM,EACN,SAAS,EACT,uFAAuF,GAAG,EAAE,CAC7F,CAAC;QACJ,CAAC;IACH,CAAC;SAAM,IAAI,CAAC,MAAM,IAAI,MAAM,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC1D,IAAI,CAAC;YACH,IAAI,GAAG,MAAM,mBAAmB,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QACpE,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CACD,MAAM,EACN,SAAS,EACT,oBAAoB,IAAI,CAAC,MAAM,wDAAwD,GAAG,EAAE,CAC7F,CAAC;QACJ,CAAC;IACH,CAAC;IAED,yEAAyE;IACzE,uEAAuE;IACvE,8DAA8D;IAC9D,IAAI,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QACtB,IAAI,CAAC;YACH,MAAM,iBAAiB,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC1D,CAAC;QAAC,MAAM,CAAC;YACP,eAAe;QACjB,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,eAAe,EAAE,YAAY,CAAC,CAAC;IACtE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACxE,uEAAuE;IACvE,wEAAwE;IACxE,uCAAuC;IACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CACxB,OAAO,EACP,GAAG,aAAa,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,QAAQ,IAAI,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAClF,CAAC;IAEF,IAAI,UAAkB,CAAC;IACvB,IAAI,CAAC;QACH,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,IAAI,aAAa,CAAC,CAAC;YACvD,QAAQ,EAAE,MAAM,EAAE,QAAQ;SAC3B,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;QACvB,MAAM,CAAC,WAAW,GAAG,6BAA6B,GAAG,EAAE,CAAC;QACxD,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;QACzC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,4EAA4E;IAC5E,wDAAwD;IACxD,IAAI,WAA+B,CAAC;IACpC,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAClC,WAAW,GAAG,CAAC,MAAM,oBAAoB,CAAC,UAAU,CAAC,CAAC,IAAI,SAAS,CAAC;IACtE,CAAC;IAED,MAAM,UAAU,GAAG,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;IAC5D,4EAA4E;IAC5E,6EAA6E;IAC7E,2BAA2B;IAC3B,IAAI,UAA8B,CAAC;IACnC,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QACjC,UAAU;YACR,OAAO,CAAC,aAAa;gBACrB,CAAC,MAAM,mBAAmB,CAAC,UAAU,CAAC,CAAC;gBACvC,SAAS,CAAC;IACd,CAAC;IAED,MAAM,IAAI,GAAG,gBAAgB,CAAC;QAC5B,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,0EAA0E;QAC1E,UAAU;QACV,UAAU,EAAE,QAAQ;QACpB,WAAW;QACX,UAAU;KACX,CAAC,CAAC;IACH,GAAG,CACD,MAAM,EACN,OAAO,EACP,8BAA8B,OAAO,CAAC,QAAQ,WAAW,IAAI,CAAC,MAAM,GAClE,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,WAAW,EAAE,CAAC,CAAC,CAAC,EACzD,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,QAAQ,EAAE,CAC7E,CAAC;IAEF,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,CAAC,UAAU,EAAE,IAAI,EAAE;QACnD,KAAK,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC;KAClC,CAAC,CAAC;IACH,IAAI,UAAU,GAAQ,IAAI,CAAC;IAC3B,yEAAyE;IACzE,2EAA2E;IAC3E,2EAA2E;IAC3E,2EAA2E;IAC3E,yEAAyE;IACzE,0EAA0E;IAC1E,IAAI,UAAU,GAAG,EAAE,CAAC;IACpB,MAAM,WAAW,GAGb,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;IAClC,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE;QAC5B,MAAM,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC1B,UAAU,GAAG,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;QAC9C,IAAI,CAAC,WAAW,CAAC,SAAS,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,EAAE,CAAC;YAC7D,WAAW,CAAC,IAAI,GAAG,CAAC,WAAW,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YAC5D,WAAW,CAAC,SAAS,GAAG,qBAAqB,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAClE,CAAC;IACH,CAAC,CAAC,CAAC;IACH,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;QACvB,UAAU,GAAG,GAAG,CAAC;IACnB,CAAC,CAAC,CAAC;IAEH,2EAA2E;IAC3E,kDAAkD;IAClD,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;IAC7C,IAAI,UAAU,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;QACzC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;QACvB,MAAM,CAAC,WAAW,GAAG,mCACnB,UAAU,CAAC,CAAC,CAAC,IAAI,UAAU,EAAE,CAAC,CAAC,CAAC,4BAA4B,IAAI,CAAC,QAAQ,GAC3E,mGACE,UAAU,CAAC,CAAC,CAAC,YAAY,UAAU,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAC7D,EAAE,CAAC;QACH,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;QACzC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,SAAS,GAAG;QACjB,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,IAAI;QACb,QAAQ;QACR,UAAU,EAAE,QAAQ;QACpB,IAAI;QACJ,WAAW;QACX,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC1E,CAAC;IACF,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"startRecording.js","sourceRoot":"","sources":["../../../src/core/tests/startRecording.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"stopRecording.d.ts","sourceRoot":"","sources":["../../../src/core/tests/stopRecording.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,aAAa,EAAE,CAAC;AAIzB,iBAAe,aAAa,CAAC,EAC3B,MAAM,EACN,IAAI,EACJ,MAAM,EACN,IAAS,GACV,EAAE;IACD,MAAM,EAAE,GAAG,CAAC;IACZ,IAAI,EAAE,GAAG,CAAC;IACV,MAAM,EAAE,GAAG,CAAC;IACZ,IAAI,CAAC,EAAE;QACL,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,sBAAsB,CAAC,EAAE,MAAM,OAAO,CAAC;YAAE,CAAC,EAAE,MAAM,CAAC;YAAC,CAAC,EAAE,MAAM,CAAA;SAAE,GAAG,IAAI,CAAC,CAAC;KACzE,CAAC;CACH,gBA0UA"}
1
+ {"version":3,"file":"stopRecording.d.ts","sourceRoot":"","sources":["../../../src/core/tests/stopRecording.ts"],"names":[],"mappings":"AA2BA,OAAO,EAAE,aAAa,EAAE,CAAC;AAIzB,iBAAe,aAAa,CAAC,EAC3B,MAAM,EACN,IAAI,EACJ,MAAM,EACN,IAAS,GACV,EAAE;IACD,MAAM,EAAE,GAAG,CAAC;IACZ,IAAI,EAAE,GAAG,CAAC;IACV,MAAM,EAAE,GAAG,CAAC;IACZ,IAAI,CAAC,EAAE;QACL,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,sBAAsB,CAAC,EAAE,MAAM,OAAO,CAAC;YAAE,CAAC,EAAE,MAAM,CAAC;YAAC,CAAC,EAAE,MAAM,CAAA;SAAE,GAAG,IAAI,CAAC,CAAC;KACzE,CAAC;CACH,gBAgoBA"}
@@ -6,7 +6,9 @@ import { randomUUID } from "node:crypto";
6
6
  import path from "node:path";
7
7
  import fs from "node:fs";
8
8
  import os from "node:os";
9
- import { getFfmpegPath, selectRecordingToStop, stopRecordTargetName, deriveCropScale, detectDisplayPointSize, } from "./ffmpegRecorder.js";
9
+ import { getFfmpegPath, selectRecordingToStop, stopRecordTargetName, deriveCropScale, detectDisplayPointSize, probeVideoMetadata, } from "./ffmpegRecorder.js";
10
+ import { buildConditionContext, evaluateImplicitAssertions, } from "../routing.js";
11
+ import { computeSpanVerdict, promoteRecordingSpan, buildCheckpointOutputs, } from "./recordingCheckpoints.js";
10
12
  export { stopRecording };
11
13
  // `deps` is a test seam for the pending-scale crop derivation (platform +
12
14
  // display probe); production callers omit it.
@@ -88,11 +90,72 @@ async function stopRecording({ config, step, driver, deps = {}, }) {
88
90
  if (idx !== -1)
89
91
  recordings.splice(idx, 1);
90
92
  };
93
+ // Staged checkpoint captures live under the OS temp dir keyed by handle id;
94
+ // every exit path that abandons the stop (FAIL, never-started) must discard
95
+ // them or they leak — a fresh id per recording means nothing ever reuses
96
+ // the directory. The success path cleans up after baseline seeding instead.
97
+ const discardCheckpointStaging = () => {
98
+ const dir = recording?.checkpoints?.stagingDir;
99
+ if (!dir)
100
+ return;
101
+ try {
102
+ fs.rmSync(dir, { recursive: true, force: true });
103
+ }
104
+ catch {
105
+ /* best-effort */
106
+ }
107
+ };
108
+ // Phantom span (ADR 01079): the recording itself was skipped — headless, or
109
+ // the target already exists — but checkpoints ran against the committed
110
+ // baselines. Compute the span verdict READ-ONLY — no video, no seeding, no
111
+ // baseline updates, no orphan deletion — and surface staleness. WARNING =
112
+ // the recording appears stale; SKIPPED = it was skipped but still matches.
113
+ if (recording.type === "phantom") {
114
+ dropHandle();
115
+ const phantomCheckpoints = recording.checkpoints;
116
+ const entries = phantomCheckpoints?.entries ?? [];
117
+ discardCheckpointStaging();
118
+ // Name the skip and its remedy accurately: a headless run needs a headed
119
+ // one, an existing target needs `overwrite` (or the file removed).
120
+ const skipCause = recording.skipReason === "targetExists"
121
+ ? `Recording skipped (the target already exists)`
122
+ : `Recording skipped (headless)`;
123
+ const refreshRemedy = recording.skipReason === "targetExists"
124
+ ? `Delete it, or set \`overwrite\` to "true" or "aboveVariation", to refresh it.`
125
+ : `Recording is skipped in headless mode; re-run headed to refresh it.`;
126
+ // A dirty span (a step FAILed mid-span) or a span that captured nothing
127
+ // has no evidence either way — report neither stale nor current.
128
+ if (phantomCheckpoints?.spanDirty || entries.length === 0) {
129
+ result.status = "SKIPPED";
130
+ result.description = `${skipCause}; the span didn't produce a complete checkpoint set, so staleness couldn't be determined.`;
131
+ return result;
132
+ }
133
+ const verdict = computeSpanVerdict({
134
+ entries,
135
+ baselineDir: phantomCheckpoints?.baselineDir ?? "",
136
+ maxVariation: phantomCheckpoints?.maxVariation ?? 0.05,
137
+ targetExists: fs.existsSync(recording.targetPath),
138
+ });
139
+ result.outputs = {
140
+ stale: verdict.changed,
141
+ ...buildCheckpointOutputs(entries),
142
+ };
143
+ if (verdict.changed) {
144
+ result.status = "WARNING";
145
+ result.description = `The recording at ${recording.targetPath} appears stale — ${verdict.reasons.join("; ")}. ${refreshRemedy}`;
146
+ }
147
+ else {
148
+ result.status = "SKIPPED";
149
+ result.description = `${skipCause}; checkpoints match their baselines, so the recording appears current.`;
150
+ }
151
+ return result;
152
+ }
91
153
  // A pending device recording never actually started. If the late-start
92
154
  // attempt errored, surface that as the FAIL; otherwise no app surface ever
93
155
  // opened a device session — there's nothing to save.
94
156
  if (recording.type === "appium-pending") {
95
157
  dropHandle();
158
+ discardCheckpointStaging();
96
159
  if (recording.startError) {
97
160
  // An environment gap (missing host ffmpeg) is a gated SKIP; anything
98
161
  // else is a real start failure.
@@ -105,6 +168,20 @@ async function stopRecording({ config, step, driver, deps = {}, }) {
105
168
  "The device recording never started (no app surface opened a device session), so there is nothing to save.";
106
169
  return result;
107
170
  }
171
+ // overwrite "aboveVariation" (ADR 01078): the produced file lands at a
172
+ // staging path in the target's directory (same volume — promotion is a
173
+ // rename), and the span verdict decides at the end whether it replaces the
174
+ // existing recording or is discarded. Every other mode writes the target
175
+ // directly, as before.
176
+ // The staging name is DETERMINISTIC (no per-run suffix): concurrent
177
+ // same-target recordings are already refused at start, and a crashed or
178
+ // failed run's leftover staging file is simply overwritten by the next
179
+ // run's transcode (-y) instead of accumulating orphans.
180
+ const isAboveVariation = recording.overwrite === "aboveVariation";
181
+ const finalTargetPath = recording.targetPath;
182
+ const writeTargetPath = isAboveVariation
183
+ ? path.join(path.dirname(finalTargetPath), `.${path.basename(finalTargetPath, path.extname(finalTargetPath))}.staging${path.extname(finalTargetPath)}`)
184
+ : finalTargetPath;
108
185
  try {
109
186
  if (recording.type === "MediaRecorder") {
110
187
  // Browser engine.
@@ -145,6 +222,7 @@ async function stopRecording({ config, step, driver, deps = {}, }) {
145
222
  "Recording was not properly started. The recorder object doesn't exist in the browser context.";
146
223
  await closeRecorderTabAndRestoreFocus();
147
224
  dropHandle();
225
+ discardCheckpointStaging();
148
226
  return result;
149
227
  }
150
228
  // Stop recording
@@ -166,6 +244,7 @@ async function stopRecording({ config, step, driver, deps = {}, }) {
166
244
  // Clear the state so the auto-stop in runContext doesn't re-invoke
167
245
  // a doomed second stop (the recorder was already told to stop).
168
246
  dropHandle();
247
+ discardCheckpointStaging();
169
248
  return result;
170
249
  }
171
250
  // Close recording tab and switch back to the original content tab.
@@ -174,7 +253,7 @@ async function stopRecording({ config, step, driver, deps = {}, }) {
174
253
  await transcode({
175
254
  config,
176
255
  sourcePath: recording.downloadPath,
177
- targetPath: recording.targetPath,
256
+ targetPath: writeTargetPath,
178
257
  deleteSource: true,
179
258
  });
180
259
  dropHandle();
@@ -256,7 +335,7 @@ async function stopRecording({ config, step, driver, deps = {}, }) {
256
335
  await transcode({
257
336
  config,
258
337
  sourcePath: recording.tempPath,
259
- targetPath: recording.targetPath,
338
+ targetPath: writeTargetPath,
260
339
  deleteSource: true,
261
340
  crop,
262
341
  });
@@ -273,6 +352,7 @@ async function stopRecording({ config, step, driver, deps = {}, }) {
273
352
  result.description =
274
353
  "The device recording returned no data; nothing was saved.";
275
354
  dropHandle();
355
+ discardCheckpointStaging();
276
356
  return result;
277
357
  }
278
358
  // The whole video arrives in one base64 string; a very long recording
@@ -289,6 +369,7 @@ async function stopRecording({ config, step, driver, deps = {}, }) {
289
369
  result.status = "FAIL";
290
370
  result.description = `Couldn't buffer the device recording (${Math.round(b64.length / 1024 / 1024)} MB base64) — device recordings transfer in one payload, so long recordings can exhaust memory. Keep device recordings short (they cap at 30 minutes). ${error?.message ?? error}`;
291
371
  dropHandle();
372
+ discardCheckpointStaging();
292
373
  return result;
293
374
  }
294
375
  if (buffer.length === 0) {
@@ -296,10 +377,11 @@ async function stopRecording({ config, step, driver, deps = {}, }) {
296
377
  result.description =
297
378
  "The device recording decoded to an empty payload (no data); nothing was saved.";
298
379
  dropHandle();
380
+ discardCheckpointStaging();
299
381
  return result;
300
382
  }
301
- if (path.extname(recording.targetPath) === ".mp4") {
302
- fs.writeFileSync(recording.targetPath, buffer);
383
+ if (path.extname(writeTargetPath) === ".mp4") {
384
+ fs.writeFileSync(writeTargetPath, buffer);
303
385
  }
304
386
  else {
305
387
  const tempDir = path.join(os.tmpdir(), "doc-detective", "recordings");
@@ -310,7 +392,7 @@ async function stopRecording({ config, step, driver, deps = {}, }) {
310
392
  await transcode({
311
393
  config,
312
394
  sourcePath: tempPath,
313
- targetPath: recording.targetPath,
395
+ targetPath: writeTargetPath,
314
396
  deleteSource: true,
315
397
  });
316
398
  }
@@ -324,9 +406,218 @@ async function stopRecording({ config, step, driver, deps = {}, }) {
324
406
  // Drop the handle so the auto-stop in runContext doesn't re-invoke a
325
407
  // doomed second stop.
326
408
  dropHandle();
409
+ discardCheckpointStaging();
410
+ if (isAboveVariation) {
411
+ // A failed transcode can leave a partial staging file beside the
412
+ // user's recording — remove it (the target itself was never touched).
413
+ try {
414
+ fs.rmSync(writeTargetPath, { force: true });
415
+ }
416
+ catch {
417
+ /* best-effort */
418
+ }
419
+ }
327
420
  return result;
328
421
  }
329
- // PASS
422
+ // PASS — first decide the produced file's fate, then report on the file
423
+ // the user actually keeps. (This supersedes the probe-then-seed order from
424
+ // the checkpoints layer: under aboveVariation the probe has to read the
425
+ // file that survives the promote/discard decision, not the staged one.)
426
+ const checkpoints = recording.checkpoints;
427
+ let seededBaselines = 0;
428
+ // A promote that couldn't commit must never read as a clean PASS, and a
429
+ // video that refreshed without its baselines is only a partial refresh.
430
+ let promoteFailed = false;
431
+ let baselineFailures = 0;
432
+ result.outputs = {};
433
+ if (isAboveVariation) {
434
+ // Span verdict (ADR 01078): promote the staged capture over the target
435
+ // only when the span meaningfully changed; otherwise discard it and
436
+ // leave target + baselines byte-untouched. Promote updates ALL baselines
437
+ // together with the video — they must never disagree. Two indeterminate
438
+ // cases keep the existing recording (unless none exists, when the fresh
439
+ // capture is better than nothing): a dirty span (a step FAILed — the
440
+ // entry set is incomplete, so orphans would misread as removed steps)
441
+ // and a span that captured no checkpoints at all (no evidence).
442
+ const entries = checkpoints?.entries ?? [];
443
+ const targetExists = fs.existsSync(finalTargetPath);
444
+ const discardStagedVideo = () => {
445
+ try {
446
+ fs.rmSync(writeTargetPath, { force: true });
447
+ }
448
+ catch {
449
+ /* best-effort */
450
+ }
451
+ };
452
+ const indeterminate = checkpoints?.spanDirty || entries.length === 0;
453
+ if (indeterminate && targetExists) {
454
+ discardStagedVideo();
455
+ result.outputs.changed = false;
456
+ log(config, "warning", checkpoints?.spanDirty
457
+ ? `Recording kept unchanged (${finalTargetPath}): a step failed during the span, so drift couldn't be judged.`
458
+ : `Recording kept unchanged (${finalTargetPath}): no checkpoints were captured this run, so drift couldn't be judged.`);
459
+ }
460
+ else if (indeterminate) {
461
+ // No committed recording yet — promote the fresh capture without a
462
+ // verdict (better than nothing), seeding whatever baselines exist.
463
+ const promoted = promoteRecordingSpan({
464
+ config,
465
+ stagingTarget: writeTargetPath,
466
+ targetPath: finalTargetPath,
467
+ entries,
468
+ orphans: [],
469
+ baselineDir: checkpoints?.baselineDir ?? "",
470
+ });
471
+ seededBaselines = promoted.seededBaselines;
472
+ result.outputs.changed = promoted.videoPromoted;
473
+ promoteFailed = !promoted.videoPromoted;
474
+ baselineFailures = promoted.baselineFailures;
475
+ if (promoted.videoPromoted) {
476
+ result.outputs.changeReasons = ["the recording file is missing"];
477
+ }
478
+ }
479
+ else {
480
+ const verdict = computeSpanVerdict({
481
+ entries,
482
+ baselineDir: checkpoints?.baselineDir ?? "",
483
+ maxVariation: checkpoints?.maxVariation ?? 0.05,
484
+ targetExists,
485
+ });
486
+ if (verdict.changed) {
487
+ const promoted = promoteRecordingSpan({
488
+ config,
489
+ stagingTarget: writeTargetPath,
490
+ targetPath: finalTargetPath,
491
+ entries,
492
+ orphans: verdict.orphans,
493
+ baselineDir: checkpoints?.baselineDir ?? "",
494
+ });
495
+ seededBaselines = promoted.seededBaselines;
496
+ result.outputs.changed = promoted.videoPromoted;
497
+ promoteFailed = !promoted.videoPromoted;
498
+ baselineFailures = promoted.baselineFailures;
499
+ if (promoted.videoPromoted) {
500
+ result.outputs.changeReasons = verdict.reasons;
501
+ log(config, "info", `Recording refreshed (${finalTargetPath}): ${verdict.reasons.join("; ")}`);
502
+ }
503
+ }
504
+ else {
505
+ discardStagedVideo();
506
+ result.outputs.changed = false;
507
+ }
508
+ }
509
+ }
510
+ else if (checkpoints?.entries?.length) {
511
+ // Recording checkpoints without aboveVariation (ADR 01072): seed missing
512
+ // baselines from the staged captures (first run); never modify existing
513
+ // baselines. A dirty span (a step FAILed) seeds nothing — first-run
514
+ // baselines must come from a clean run.
515
+ for (const entry of checkpoints.entries) {
516
+ if (checkpoints.spanDirty)
517
+ break;
518
+ if (entry.baselineMissing && !entry.error) {
519
+ try {
520
+ fs.mkdirSync(checkpoints.baselineDir, { recursive: true });
521
+ // COPYFILE_EXCL enforces "seeding never overwrites a baseline" at
522
+ // the syscall: `baselineMissing` was decided back when the
523
+ // checkpoint was captured, so a baseline committed (or written by
524
+ // another run) since then would otherwise be silently replaced —
525
+ // the one thing this layer promises not to do.
526
+ fs.copyFileSync(entry.stagingPath, entry.baselinePath, fs.constants.COPYFILE_EXCL);
527
+ seededBaselines++;
528
+ }
529
+ catch (error) {
530
+ entry.error =
531
+ error?.code === "EEXIST"
532
+ ? `A baseline appeared at ${entry.baselinePath} after this checkpoint was captured; left it untouched.`
533
+ : String(error?.message ?? error);
534
+ log(config, "warning", `Couldn't seed checkpoint baseline ${entry.baselinePath}: ${entry.error}`);
535
+ }
536
+ }
537
+ }
538
+ }
539
+ // Report what was produced/kept. Metadata is best-effort: a probe failure
540
+ // omits fields and logs debug; it never changes the step's status. The
541
+ // field list is copied explicitly — the outputs object is a documented
542
+ // user-facing contract ($$duration etc.), so parser additions must opt in.
543
+ result.outputs.recordingPath = path.resolve(finalTargetPath);
544
+ result.outputs.format = path.extname(finalTargetPath).slice(1);
545
+ const meta = await probeVideoMetadata({
546
+ cacheDir: config?.cacheDir,
547
+ filePath: finalTargetPath,
548
+ });
549
+ if (meta?.duration !== undefined)
550
+ result.outputs.duration = meta.duration;
551
+ if (meta?.width !== undefined)
552
+ result.outputs.width = meta.width;
553
+ if (meta?.height !== undefined)
554
+ result.outputs.height = meta.height;
555
+ if (meta?.fps !== undefined)
556
+ result.outputs.fps = meta.fps;
557
+ if (!meta || Object.keys(meta).length === 0) {
558
+ log(config, "debug", `Couldn't probe recording metadata for ${finalTargetPath}.`);
559
+ }
560
+ // Checkpoint reporting (ADR 01072): per-checkpoint results plus drift and
561
+ // comparison-error signals through the shared implicit-assertion engine at
562
+ // WARNING severity — never FAIL, mirroring screenshot semantics. Under
563
+ // aboveVariation the WARNING doubles as "the recording was refreshed".
564
+ if (checkpoints?.entries?.length) {
565
+ // Errored checkpoints (capture failure, aspect-ratio mismatch against
566
+ // the baseline) can hide extreme drift behind a variation of 0 — they
567
+ // get their own WARNING-severity spec so they never read as a clean
568
+ // pass.
569
+ Object.assign(result.outputs, buildCheckpointOutputs(checkpoints.entries));
570
+ result.outputs.seededBaselines = seededBaselines;
571
+ const ctx = buildConditionContext({ outputs: result.outputs });
572
+ const { assertions, status } = await evaluateImplicitAssertions([
573
+ {
574
+ statement: `$$outputs.maxCheckpointVariation <= ${checkpoints.maxVariation}`,
575
+ severity: "warning",
576
+ },
577
+ {
578
+ statement: `$$outputs.checkpointErrors == 0`,
579
+ severity: "warning",
580
+ },
581
+ ], ctx);
582
+ result.assertions = assertions;
583
+ result.status = status;
584
+ if (status === "WARNING") {
585
+ // Only claim a refresh when one actually happened: an indeterminate or
586
+ // failed span keeps the existing recording, so saying "refreshed" there
587
+ // would describe the opposite of what's on disk.
588
+ result.description += !isAboveVariation
589
+ ? ` One or more checkpoints drifted beyond maxVariation (${checkpoints.maxVariation}) or couldn't be compared — the recorded flow's content may have changed since its baselines were captured.`
590
+ : result.outputs.changed
591
+ ? ` One or more checkpoints drifted beyond maxVariation (${checkpoints.maxVariation}) or couldn't be compared — the recording was refreshed to match the current content.`
592
+ : ` One or more checkpoints drifted beyond maxVariation (${checkpoints.maxVariation}) or couldn't be compared — the existing recording was kept.`;
593
+ }
594
+ if (baselineFailures > 0) {
595
+ result.outputs.baselineFailures = baselineFailures;
596
+ }
597
+ try {
598
+ fs.rmSync(checkpoints.stagingDir, { recursive: true, force: true });
599
+ }
600
+ catch {
601
+ /* best-effort cleanup; staged files live under the OS temp dir */
602
+ }
603
+ }
604
+ // A promote that couldn't commit outranks everything above: the step must
605
+ // not report a clean PASS over a recording that isn't there. With no target
606
+ // at all there is nothing to hand the user (FAIL, and drop the path we can't
607
+ // honour); with the previous target retained the run still has a video, just
608
+ // a stale one (WARNING).
609
+ if (promoteFailed) {
610
+ if (!fs.existsSync(finalTargetPath)) {
611
+ result.status = "FAIL";
612
+ result.description = `Couldn't save the recording to ${finalTargetPath}: promoting the captured video failed and no previous recording exists at that path.`;
613
+ delete result.outputs.recordingPath;
614
+ delete result.outputs.format;
615
+ }
616
+ else {
617
+ result.status = "WARNING";
618
+ result.description += ` The captured video couldn't replace ${finalTargetPath}, so the existing (now stale) recording was kept.`;
619
+ }
620
+ }
330
621
  return result;
331
622
  }
332
623
  // Transcode a recording into the requested target format/location with
@@ -1 +1 @@
1
- {"version":3,"file":"stopRecording.js","sourceRoot":"","sources":["../../../src/core/tests/stopRecording.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stopRecording.js","sourceRoot":"","sources":["../../../src/core/tests/stopRecording.ts"],"names":[],"mappings":"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"}