@runcofactor/cli 0.17.0 → 0.18.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 (40) hide show
  1. package/dist/{chunk-JZWJFG4M.js → chunk-2R6544Z3.js} +2 -2
  2. package/dist/{chunk-MO5G5TP5.js → chunk-7OO3RJYR.js} +994 -91
  3. package/dist/chunk-7OO3RJYR.js.map +1 -0
  4. package/dist/{chunk-FGB6PS2T.js → chunk-A6TH5VUI.js} +206 -76
  5. package/dist/chunk-A6TH5VUI.js.map +1 -0
  6. package/dist/{chunk-HGPZ2QWV.js → chunk-E2FUQJVO.js} +3 -3
  7. package/dist/{chunk-A4ISG3VX.js → chunk-U7OMQJ7V.js} +52 -4
  8. package/dist/chunk-U7OMQJ7V.js.map +1 -0
  9. package/dist/{dist-WW2S733L.js → dist-4COOAKY3.js} +22 -2
  10. package/dist/index.js +6 -6
  11. package/dist/{mcp-V4GKEL2J.js → mcp-57VVZTXM.js} +3 -3
  12. package/dist/{record-LDNKS42Y.js → record-RWVGZZSW.js} +2 -2
  13. package/dist/{sandbox-PLYUNOFX.js → sandbox-6D54ZQCG.js} +2 -2
  14. package/dist/{session-Y6RO7GFC.js → session-GDCMTNB3.js} +3 -3
  15. package/dist/skills/optimize-cache/SKILL.md +25 -0
  16. package/dist/{src-ECFPDE5X.js → src-5YXGM2KB.js} +2 -2
  17. package/dist/{src-PDYXACRP.js → src-B7CPYFLS.js} +4 -2
  18. package/dist/{src-OWPS5DCK.js → src-GRO2QR7U.js} +3 -3
  19. package/dist/{trace-BCSP7PCX.js → trace-7LRHSPWN.js} +3 -3
  20. package/dist/{workflow-76EKT3DS.js → workflow-5BFRS4CE.js} +5 -5
  21. package/dist/{workflow-cache-UDTTNIHT.js → workflow-cache-VVP3SPFM.js} +4 -4
  22. package/dist/{workflow-debug-WO7D32EI.js → workflow-debug-XGOHNZ4E.js} +4 -4
  23. package/package.json +3 -3
  24. package/dist/chunk-A4ISG3VX.js.map +0 -1
  25. package/dist/chunk-FGB6PS2T.js.map +0 -1
  26. package/dist/chunk-MO5G5TP5.js.map +0 -1
  27. /package/dist/{chunk-JZWJFG4M.js.map → chunk-2R6544Z3.js.map} +0 -0
  28. /package/dist/{chunk-HGPZ2QWV.js.map → chunk-E2FUQJVO.js.map} +0 -0
  29. /package/dist/{dist-WW2S733L.js.map → dist-4COOAKY3.js.map} +0 -0
  30. /package/dist/{mcp-V4GKEL2J.js.map → mcp-57VVZTXM.js.map} +0 -0
  31. /package/dist/{record-LDNKS42Y.js.map → record-RWVGZZSW.js.map} +0 -0
  32. /package/dist/{sandbox-PLYUNOFX.js.map → sandbox-6D54ZQCG.js.map} +0 -0
  33. /package/dist/{session-Y6RO7GFC.js.map → session-GDCMTNB3.js.map} +0 -0
  34. /package/dist/{src-ECFPDE5X.js.map → src-5YXGM2KB.js.map} +0 -0
  35. /package/dist/{src-PDYXACRP.js.map → src-B7CPYFLS.js.map} +0 -0
  36. /package/dist/{src-OWPS5DCK.js.map → src-GRO2QR7U.js.map} +0 -0
  37. /package/dist/{trace-BCSP7PCX.js.map → trace-7LRHSPWN.js.map} +0 -0
  38. /package/dist/{workflow-76EKT3DS.js.map → workflow-5BFRS4CE.js.map} +0 -0
  39. /package/dist/{workflow-cache-UDTTNIHT.js.map → workflow-cache-VVP3SPFM.js.map} +0 -0
  40. /package/dist/{workflow-debug-WO7D32EI.js.map → workflow-debug-XGOHNZ4E.js.map} +0 -0
@@ -3,8 +3,12 @@ import {
3
3
  BROWSER_LIFECYCLE_TOOLS,
4
4
  BrowserToolExecutor,
5
5
  CdpScreencastManager,
6
+ CpuOffloadPool,
7
+ CpuOffloadTimeoutError,
8
+ CpuOffloadWorkerError,
6
9
  CursorOverlay,
7
10
  DEFAULTS,
11
+ DEFAULT_CPU_OFFLOAD_TIMEOUT_MS,
8
12
  DEFAULT_VIEWPORT,
9
13
  FfmpegProcess,
10
14
  LARGE_GRID_CHAR_THRESHOLD,
@@ -34,9 +38,11 @@ import {
34
38
  compareEditingContexts,
35
39
  compareSnapshots,
36
40
  computeFingerprint,
41
+ configureCpuOffload,
37
42
  consoleLogger,
38
43
  cropImage,
39
44
  decodeV2Value,
45
+ defaultCpuOffloadSize,
40
46
  detectGrid,
41
47
  detectModal,
42
48
  detectModalFromYaml,
@@ -82,6 +88,7 @@ import {
82
88
  formatGridRow,
83
89
  formatSemanticDiff,
84
90
  formatSemanticSnapshot,
91
+ formatSnapshotMaybeOffloaded,
85
92
  getBrowserToolDefinitions,
86
93
  getBrowserToolDefinitionsWithLifecycle,
87
94
  getConsolidatedBrowserToolDefinitions,
@@ -92,6 +99,7 @@ import {
92
99
  hashFingerprint,
93
100
  highlightElement,
94
101
  identifyLargeGridRefs,
102
+ isCpuOffloadEnabled,
95
103
  isFfmpegAvailable,
96
104
  isMCPContentWithImages,
97
105
  isStableElement,
@@ -107,17 +115,19 @@ import {
107
115
  populateSearchContext,
108
116
  reconcileCellColumn,
109
117
  renderIfTimeout,
118
+ resolveCpuOffloadWorkerPath,
110
119
  restoreIndexedDB,
111
120
  searchElements,
112
121
  setCdpScreencastLogger,
113
122
  setPdfExtractLogger,
114
123
  setSnapshotAnalyzerLogger,
124
+ shutdownCpuOffload,
115
125
  sortMatchesByContext,
116
126
  withBrowserLaunchRetry,
117
127
  withRecoveryNotice,
118
128
  withRecoveryNoticeMCP,
119
129
  withToolTimeout
120
- } from "./chunk-MO5G5TP5.js";
130
+ } from "./chunk-7OO3RJYR.js";
121
131
  import "./chunk-JWHYXEA2.js";
122
132
  import "./chunk-GZVCNYR4.js";
123
133
  import "./chunk-6LEZCKKV.js";
@@ -126,8 +136,12 @@ export {
126
136
  BROWSER_LIFECYCLE_TOOLS,
127
137
  BrowserToolExecutor,
128
138
  CdpScreencastManager,
139
+ CpuOffloadPool,
140
+ CpuOffloadTimeoutError,
141
+ CpuOffloadWorkerError,
129
142
  CursorOverlay,
130
143
  DEFAULTS,
144
+ DEFAULT_CPU_OFFLOAD_TIMEOUT_MS,
131
145
  DEFAULT_VIEWPORT,
132
146
  FfmpegProcess,
133
147
  LARGE_GRID_CHAR_THRESHOLD,
@@ -158,9 +172,11 @@ export {
158
172
  compareEditingContexts,
159
173
  compareSnapshots,
160
174
  computeFingerprint,
175
+ configureCpuOffload,
161
176
  consoleLogger,
162
177
  cropImage,
163
178
  decodeV2Value,
179
+ defaultCpuOffloadSize,
164
180
  detectGrid,
165
181
  detectModal,
166
182
  detectModalFromYaml,
@@ -206,6 +222,7 @@ export {
206
222
  formatGridRow,
207
223
  formatSemanticDiff,
208
224
  formatSemanticSnapshot,
225
+ formatSnapshotMaybeOffloaded,
209
226
  getBrowserToolDefinitions,
210
227
  getBrowserToolDefinitionsWithLifecycle,
211
228
  getConsolidatedBrowserToolDefinitions,
@@ -216,6 +233,7 @@ export {
216
233
  hashFingerprint,
217
234
  highlightElement,
218
235
  identifyLargeGridRefs,
236
+ isCpuOffloadEnabled,
219
237
  isFfmpegAvailable,
220
238
  isMCPContentWithImages,
221
239
  isStableElement,
@@ -231,15 +249,17 @@ export {
231
249
  populateSearchContext,
232
250
  reconcileCellColumn,
233
251
  renderIfTimeout,
252
+ resolveCpuOffloadWorkerPath,
234
253
  restoreIndexedDB,
235
254
  searchElements,
236
255
  setCdpScreencastLogger,
237
256
  setPdfExtractLogger,
238
257
  setSnapshotAnalyzerLogger,
258
+ shutdownCpuOffload,
239
259
  sortMatchesByContext,
240
260
  withBrowserLaunchRetry,
241
261
  withRecoveryNotice,
242
262
  withRecoveryNoticeMCP,
243
263
  withToolTimeout
244
264
  };
245
- //# sourceMappingURL=dist-WW2S733L.js.map
265
+ //# sourceMappingURL=dist-4COOAKY3.js.map
package/dist/index.js CHANGED
@@ -477,10 +477,10 @@ async function recordCliInstrumentationFailure(argv, cliVersion, stage, error) {
477
477
  }
478
478
 
479
479
  // src/index.ts
480
- var loadMcp = () => import("./mcp-V4GKEL2J.js").then((m) => m.runMcp);
480
+ var loadMcp = () => import("./mcp-57VVZTXM.js").then((m) => m.runMcp);
481
481
  var loadDebugWorkflow = () => import("./debug-workflow-ZNP5XZQF.js").then((m) => m.runDebugWorkflow);
482
- var loadRecord = () => import("./record-LDNKS42Y.js").then((m) => m.runRecord);
483
- var loadSession = () => import("./session-Y6RO7GFC.js").then((m) => m.runSession);
482
+ var loadRecord = () => import("./record-RWVGZZSW.js").then((m) => m.runRecord);
483
+ var loadSession = () => import("./session-GDCMTNB3.js").then((m) => m.runSession);
484
484
  var loadLocal = () => import("./local-NSKOZHHA.js").then((m) => m.runLocal);
485
485
  function printVersion() {
486
486
  console.log(`canary v${version}`);
@@ -908,7 +908,7 @@ async function executeCommand(command, rest) {
908
908
  return;
909
909
  }
910
910
  if (command === "workflow") {
911
- const { runWorkflow } = await import("./workflow-76EKT3DS.js");
911
+ const { runWorkflow } = await import("./workflow-5BFRS4CE.js");
912
912
  await runWorkflow(rest);
913
913
  return;
914
914
  }
@@ -973,7 +973,7 @@ async function executeCommand(command, rest) {
973
973
  return;
974
974
  }
975
975
  if (command === "sandbox") {
976
- const { runSandbox } = await import("./sandbox-PLYUNOFX.js");
976
+ const { runSandbox } = await import("./sandbox-6D54ZQCG.js");
977
977
  await runSandbox(rest);
978
978
  return;
979
979
  }
@@ -993,7 +993,7 @@ async function executeCommand(command, rest) {
993
993
  return;
994
994
  }
995
995
  if (command === "trace") {
996
- const { runTrace } = await import("./trace-BCSP7PCX.js");
996
+ const { runTrace } = await import("./trace-7LRHSPWN.js");
997
997
  await runTrace(rest);
998
998
  return;
999
999
  }
@@ -6,7 +6,7 @@ import {
6
6
  import {
7
7
  LocalBrowserHost,
8
8
  USER_PAUSED_ERROR
9
- } from "./chunk-JZWJFG4M.js";
9
+ } from "./chunk-2R6544Z3.js";
10
10
  import {
11
11
  callTool,
12
12
  createSession,
@@ -35,7 +35,7 @@ import {
35
35
  } from "./chunk-32P26BZT.js";
36
36
  import {
37
37
  getBrowserToolDefinitionsWithLifecycle
38
- } from "./chunk-MO5G5TP5.js";
38
+ } from "./chunk-7OO3RJYR.js";
39
39
  import "./chunk-JWHYXEA2.js";
40
40
  import "./chunk-GZVCNYR4.js";
41
41
  import "./chunk-6LEZCKKV.js";
@@ -1951,4 +1951,4 @@ async function runMcp(_argv) {
1951
1951
  export {
1952
1952
  runMcp
1953
1953
  };
1954
- //# sourceMappingURL=mcp-V4GKEL2J.js.map
1954
+ //# sourceMappingURL=mcp-57VVZTXM.js.map
@@ -86,7 +86,7 @@ async function runRecord(argv) {
86
86
  );
87
87
  }
88
88
  console.log("Launching browser...");
89
- const { PlaywrightClient, consoleLogger, captureElementAtPoint } = await import("./dist-WW2S733L.js");
89
+ const { PlaywrightClient, consoleLogger, captureElementAtPoint } = await import("./dist-4COOAKY3.js");
90
90
  const client = new PlaywrightClient({ logger: consoleLogger });
91
91
  await client.connect({
92
92
  browserMode: "headed",
@@ -229,4 +229,4 @@ Output directory: ${outDir}`);
229
229
  export {
230
230
  runRecord
231
231
  };
232
- //# sourceMappingURL=record-LDNKS42Y.js.map
232
+ //# sourceMappingURL=record-RWVGZZSW.js.map
@@ -2,7 +2,7 @@ import { createRequire as __cr } from "module"; const require = __cr(import.meta
2
2
  import {
3
3
  SANDBOX_GUIDE_SECTIONS,
4
4
  printGuide
5
- } from "./chunk-FGB6PS2T.js";
5
+ } from "./chunk-A6TH5VUI.js";
6
6
  import {
7
7
  apiRequest,
8
8
  selectProperty
@@ -2088,4 +2088,4 @@ export {
2088
2088
  parseDockerPs,
2089
2089
  runSandbox
2090
2090
  };
2091
- //# sourceMappingURL=sandbox-PLYUNOFX.js.map
2091
+ //# sourceMappingURL=sandbox-6D54ZQCG.js.map
@@ -12,7 +12,7 @@ import "./chunk-PWZ4ULCB.js";
12
12
  import {
13
13
  LocalBrowserHost,
14
14
  USER_PAUSED_ERROR
15
- } from "./chunk-JZWJFG4M.js";
15
+ } from "./chunk-2R6544Z3.js";
16
16
  import {
17
17
  callTool,
18
18
  createSession,
@@ -39,7 +39,7 @@ import {
39
39
  consoleLogger,
40
40
  dispatchBrowserTool,
41
41
  dispatchBrowserToolWithTimeout
42
- } from "./chunk-MO5G5TP5.js";
42
+ } from "./chunk-7OO3RJYR.js";
43
43
  import "./chunk-JWHYXEA2.js";
44
44
  import "./chunk-GZVCNYR4.js";
45
45
  import "./chunk-6LEZCKKV.js";
@@ -2476,4 +2476,4 @@ export {
2476
2476
  buildToolArgs,
2477
2477
  runSession
2478
2478
  };
2479
- //# sourceMappingURL=session-Y6RO7GFC.js.map
2479
+ //# sourceMappingURL=session-GDCMTNB3.js.map
@@ -82,6 +82,13 @@ gap. Core actions are:
82
82
  - **Mutations**: click, fill/type, select, check/uncheck, press, hover-to-open,
83
83
  navigate, file upload, drag.
84
84
  - **Assertions**: explicit verify steps and inline assertions the node declares.
85
+ Absence checks ("no error", "not present", "not shown", "hidden") are
86
+ assertions too; do not treat them as automatic gaps just because they are
87
+ negative. Cache them as `text_absent`, selector-backed `element_hidden`, or
88
+ `evaluate` when the trace DOM gives a stable predicate. Cached
89
+ `browser_assert` steps must include `cache.assertion.condition`; for
90
+ selector-backed visibility assertions, the condition may be the human target
91
+ label because the locator is the actual selector.
85
92
  - **Captures**: values the agent saved for downstream steps (e.g.
86
93
  `browser_evaluate` with `saveAs`). These become context extractors on the
87
94
  cache row — `declaredOutputs` stay reserved for DOM-captured values.
@@ -201,6 +208,24 @@ A verified-offline locator can still fail live (reconstructed DOMs lack JS
201
208
  state and cross-origin frames) — that is what replay healing is for. An
202
209
  UNVERIFIED locator must never be committed.
203
210
 
211
+ Bound your effort per step. Make at most ONE alternate locator attempt for a
212
+ step (a corrected ref, the builder, or a single hand-written chain). If the
213
+ second offline verification still fails, STOP: mark that step a gap with a
214
+ short reason and move to the next pending step. Never re-verify the same step
215
+ again, and never chase a "functionally correct but the verifier is strict"
216
+ locator across many attempts — a gapped step replays live, and finishing the
217
+ node with finish_node always matters more than caching every step. The tool
218
+ enforces this: once you hit the cap, verify_locator returns an `escalation`
219
+ instruction to gap and move on; follow it immediately.
220
+
221
+ For selector-backed `element_hidden` assertions, verify against the
222
+ after-state where the element should be absent or hidden. There is no target
223
+ ref for absence; the verifier passes when the locator resolves to zero visible
224
+ elements in that reconstructed DOM. This is the right shape for "no error
225
+ banner/message is shown" checks. If the absence target is broad, a broad
226
+ locator such as `locator('text=/error/i')` is acceptable when it matches the
227
+ configured assertion intent and verifies hidden in the after-state.
228
+
204
229
 
205
230
  ## Commit rules — one node, one recipe
206
231
 
@@ -2,7 +2,7 @@ import { createRequire as __cr } from "module"; const require = __cr(import.meta
2
2
  import {
3
3
  parseTraceActions,
4
4
  reconstructSnapshots
5
- } from "./chunk-A4ISG3VX.js";
5
+ } from "./chunk-U7OMQJ7V.js";
6
6
  import "./chunk-VKVL7WBN.js";
7
7
 
8
8
  // ../diagnostic-workspace/src/assemble-workspace.ts
@@ -1537,4 +1537,4 @@ export {
1537
1537
  writeStepRollups,
1538
1538
  writeSummary
1539
1539
  };
1540
- //# sourceMappingURL=src-ECFPDE5X.js.map
1540
+ //# sourceMappingURL=src-5YXGM2KB.js.map
@@ -3,19 +3,21 @@ import {
3
3
  cleanupTrace,
4
4
  downloadTrace,
5
5
  filterMutationActions,
6
+ mergeTraceArchives,
6
7
  parseTraceActions,
7
8
  parseTraceGroups,
8
9
  reconstructSnapshots,
9
10
  toMutationIndex
10
- } from "./chunk-A4ISG3VX.js";
11
+ } from "./chunk-U7OMQJ7V.js";
11
12
  import "./chunk-VKVL7WBN.js";
12
13
  export {
13
14
  cleanupTrace,
14
15
  downloadTrace,
15
16
  filterMutationActions,
17
+ mergeTraceArchives,
16
18
  parseTraceActions,
17
19
  parseTraceGroups,
18
20
  reconstructSnapshots,
19
21
  toMutationIndex
20
22
  };
21
- //# sourceMappingURL=src-PDYXACRP.js.map
23
+ //# sourceMappingURL=src-B7CPYFLS.js.map
@@ -3,7 +3,7 @@ import {
3
3
  parseTraceActions,
4
4
  reconstructSnapshots,
5
5
  toMutationIndex
6
- } from "./chunk-A4ISG3VX.js";
6
+ } from "./chunk-U7OMQJ7V.js";
7
7
  import {
8
8
  buildLocatorString
9
9
  } from "./chunk-5GD47G2D.js";
@@ -12,7 +12,7 @@ import {
12
12
  captureSubstrateV2,
13
13
  consoleLogger,
14
14
  parseSnapshot
15
- } from "./chunk-MO5G5TP5.js";
15
+ } from "./chunk-7OO3RJYR.js";
16
16
  import "./chunk-JWHYXEA2.js";
17
17
  import {
18
18
  MACRO_PATTERN,
@@ -6002,4 +6002,4 @@ export {
6002
6002
  verifySelectorAgainstRef,
6003
6003
  waitForTraceDomHydration
6004
6004
  };
6005
- //# sourceMappingURL=src-OWPS5DCK.js.map
6005
+ //# sourceMappingURL=src-GRO2QR7U.js.map
@@ -1,10 +1,10 @@
1
1
  import { createRequire as __cr } from "module"; const require = __cr(import.meta.url);
2
2
  import {
3
3
  runTrace
4
- } from "./chunk-HGPZ2QWV.js";
4
+ } from "./chunk-E2FUQJVO.js";
5
5
  import "./chunk-VYTIJ6HJ.js";
6
6
  import "./chunk-32P26BZT.js";
7
- import "./chunk-MO5G5TP5.js";
7
+ import "./chunk-7OO3RJYR.js";
8
8
  import "./chunk-JWHYXEA2.js";
9
9
  import "./chunk-GZVCNYR4.js";
10
10
  import "./chunk-6LEZCKKV.js";
@@ -12,4 +12,4 @@ import "./chunk-VKVL7WBN.js";
12
12
  export {
13
13
  runTrace
14
14
  };
15
- //# sourceMappingURL=trace-BCSP7PCX.js.map
15
+ //# sourceMappingURL=trace-7LRHSPWN.js.map
@@ -1,7 +1,7 @@
1
1
  import { createRequire as __cr } from "module"; const require = __cr(import.meta.url);
2
2
  import {
3
3
  printGuide
4
- } from "./chunk-FGB6PS2T.js";
4
+ } from "./chunk-A6TH5VUI.js";
5
5
  import {
6
6
  workflowToSpec
7
7
  } from "./chunk-7YJTQCPX.js";
@@ -3671,7 +3671,7 @@ async function runWorkflow(argv) {
3671
3671
  return;
3672
3672
  }
3673
3673
  if (subCommand === "debug" && hasFlag(rest, "--help", "-h")) {
3674
- const { handleWorkflowDebug } = await import("./workflow-debug-WO7D32EI.js");
3674
+ const { handleWorkflowDebug } = await import("./workflow-debug-XGOHNZ4E.js");
3675
3675
  await handleWorkflowDebug(rest, "", "");
3676
3676
  return;
3677
3677
  }
@@ -3757,12 +3757,12 @@ async function runWorkflow(argv) {
3757
3757
  await handleWorkflowApiSequence(rest, apiUrl, token);
3758
3758
  break;
3759
3759
  case "cache": {
3760
- const { handleWorkflowCache } = await import("./workflow-cache-UDTTNIHT.js");
3760
+ const { handleWorkflowCache } = await import("./workflow-cache-VVP3SPFM.js");
3761
3761
  await handleWorkflowCache(rest, apiUrl, token);
3762
3762
  break;
3763
3763
  }
3764
3764
  case "debug": {
3765
- const { handleWorkflowDebug } = await import("./workflow-debug-WO7D32EI.js");
3765
+ const { handleWorkflowDebug } = await import("./workflow-debug-XGOHNZ4E.js");
3766
3766
  await handleWorkflowDebug(rest, apiUrl, token);
3767
3767
  break;
3768
3768
  }
@@ -3775,4 +3775,4 @@ async function runWorkflow(argv) {
3775
3775
  export {
3776
3776
  runWorkflow
3777
3777
  };
3778
- //# sourceMappingURL=workflow-76EKT3DS.js.map
3778
+ //# sourceMappingURL=workflow-5BFRS4CE.js.map
@@ -270,7 +270,7 @@ async function handleSubstrate(argv) {
270
270
  process.exit(1);
271
271
  }
272
272
  const actionIndex = Number(actionIndexRaw);
273
- const { SubstrateMaterializer } = await import("./src-OWPS5DCK.js");
273
+ const { SubstrateMaterializer } = await import("./src-GRO2QR7U.js");
274
274
  const path = await import("path");
275
275
  const materializer = new SubstrateMaterializer({
276
276
  traceZipPath: path.join(workspace, "browser", "trace.zip"),
@@ -306,8 +306,8 @@ async function handleLocator(argv) {
306
306
  }
307
307
  }
308
308
  const actionIndex = Number(actionIndexRaw);
309
- const { HeadlessDomSession, SubstrateMaterializer, LocatorVerifier, buildLocator } = await import("./src-OWPS5DCK.js");
310
- const { parseSnapshot } = await import("./dist-WW2S733L.js");
309
+ const { HeadlessDomSession, SubstrateMaterializer, LocatorVerifier, buildLocator } = await import("./src-GRO2QR7U.js");
310
+ const { parseSnapshot } = await import("./dist-4COOAKY3.js");
311
311
  const path = await import("path");
312
312
  const session = new HeadlessDomSession();
313
313
  const materializer = new SubstrateMaterializer({
@@ -396,4 +396,4 @@ export {
396
396
  buildCacheClearBody,
397
397
  handleWorkflowCache
398
398
  };
399
- //# sourceMappingURL=workflow-cache-UDTTNIHT.js.map
399
+ //# sourceMappingURL=workflow-cache-VVP3SPFM.js.map
@@ -1,7 +1,7 @@
1
1
  import { createRequire as __cr } from "module"; const require = __cr(import.meta.url);
2
2
  import {
3
3
  runTrace
4
- } from "./chunk-HGPZ2QWV.js";
4
+ } from "./chunk-E2FUQJVO.js";
5
5
  import {
6
6
  apiRequest
7
7
  } from "./chunk-PVWG3V62.js";
@@ -11,7 +11,7 @@ import {
11
11
  hasFlag
12
12
  } from "./chunk-VYTIJ6HJ.js";
13
13
  import "./chunk-32P26BZT.js";
14
- import "./chunk-MO5G5TP5.js";
14
+ import "./chunk-7OO3RJYR.js";
15
15
  import "./chunk-JWHYXEA2.js";
16
16
  import "./chunk-GZVCNYR4.js";
17
17
  import "./chunk-6LEZCKKV.js";
@@ -874,7 +874,7 @@ async function handleMaterialize(argv, apiUrl, token) {
874
874
  const runId = requireRunId(argv);
875
875
  const workflowId = await resolveWorkflowId(argv, runId, apiUrl, token);
876
876
  const outDir = getArgValue(argv, "--out") ?? `./diag-${runId}`;
877
- const { assembleWorkspace } = await import("./src-ECFPDE5X.js");
877
+ const { assembleWorkspace } = await import("./src-5YXGM2KB.js");
878
878
  const dataUrl = `${apiUrl}/workflows/${encodeURIComponent(workflowId)}/runs/${encodeURIComponent(runId)}/debug/materialize-data`;
879
879
  const dataRes = await fetch(dataUrl, { headers: { Authorization: `Bearer ${token}` } });
880
880
  if (!dataRes.ok) {
@@ -924,4 +924,4 @@ async function handleMaterialize(argv, apiUrl, token) {
924
924
  export {
925
925
  handleWorkflowDebug
926
926
  };
927
- //# sourceMappingURL=workflow-debug-WO7D32EI.js.map
927
+ //# sourceMappingURL=workflow-debug-XGOHNZ4E.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@runcofactor/cli",
3
- "version": "0.17.0",
3
+ "version": "0.18.0",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -39,7 +39,7 @@
39
39
  "dependencies": {
40
40
  "@modelcontextprotocol/sdk": "^1.29.0",
41
41
  "eventsource-parser": "^3.0.0",
42
- "playwright": "1.60.0",
42
+ "playwright": "1.61.0",
43
43
  "yaml": "^2.8.2",
44
44
  "zod": "^4.4.3"
45
45
  },
@@ -58,7 +58,7 @@
58
58
  "@chatsdet/user-events": "workspace:*",
59
59
  "@chatsdet/workflow-cache": "workspace:*",
60
60
  "@chatsdet/workflow-diff": "workspace:*",
61
- "@playwright/test": "1.60.0",
61
+ "@playwright/test": "1.61.0",
62
62
  "@types/node": "^25.8.0",
63
63
  "tsup": "^8.5.0",
64
64
  "typescript": "^6.0.3"