visionclaw 0.1.195-dev.feat-e2e-test-system.6 → 0.1.195-dev.feat-e2e-test-system.8

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.
@@ -1 +1 @@
1
- {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/e2e/runner.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAkB,iBAAiB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAelF,wBAAsB,MAAM,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,YAAY,GAAG,MAAM,CAAC,CA4FvF;AA4DD,wBAAgB,eAAe,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,UAAQ,GAAG,MAAM,CAG1E"}
1
+ {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/e2e/runner.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAkB,iBAAiB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAelF,wBAAsB,MAAM,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,YAAY,GAAG,MAAM,CAAC,CA+FvF;AA2ED,wBAAgB,eAAe,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,UAAQ,GAAG,MAAM,CAG1E"}
@@ -30,7 +30,8 @@ export async function runE2E(options) {
30
30
  " cleanup <runId> — clean up and delete a specific run",
31
31
  " cleanup latest — clean up and delete the most recent run",
32
32
  " cleanup --all-stale — clean up and delete all runs",
33
- " setup google-guest — start Google guest account setup",
33
+ " setup google-guest — start Google guest account OAuth flow",
34
+ " setup google-guest-code <id> <url> — complete OAuth with callback URL",
34
35
  " help — show this message",
35
36
  "",
36
37
  "Flags:",
@@ -55,6 +56,7 @@ export async function runE2E(options) {
55
56
  const artifactsDir = ensureE2ERunDir(runId);
56
57
  const startedAt = new Date().toISOString();
57
58
  const cleanupItems = [];
59
+ await cleanupPreviousRuns(config, runId);
58
60
  logger.system(formatE2EStartMessage(runId, options.mode));
59
61
  const context = {
60
62
  runId,
@@ -93,6 +95,21 @@ export async function runE2E(options) {
93
95
  writeReports(result);
94
96
  return result;
95
97
  }
98
+ async function cleanupPreviousRuns(config, currentRunId) {
99
+ const previousRunIds = listRecentRunIds(20).filter((id) => id !== currentRunId);
100
+ for (const id of previousRunIds) {
101
+ try {
102
+ await runCleanupForRun(config, id);
103
+ }
104
+ catch {
105
+ // best-effort
106
+ }
107
+ deleteE2ERunDir(id);
108
+ }
109
+ if (previousRunIds.length > 0) {
110
+ logger.system(`Auto-cleaned ${previousRunIds.length} previous e2e run(s)`);
111
+ }
112
+ }
96
113
  async function handleCleanup(config, options) {
97
114
  const target = options.cleanupTarget;
98
115
  if (!target)
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/e2e/runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/e2e/runner.ts"],"names":[],"mappings":"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"}
@@ -20510,7 +20510,7 @@ var require_prompts3 = __commonJS({
20510
20510
 
20511
20511
  // dist/utils/version-check.js
20512
20512
  function isBundled() {
20513
- const v15 = "0.1.195-dev.feat-e2e-test-system.6";
20513
+ const v15 = "0.1.195-dev.feat-e2e-test-system.8";
20514
20514
  return typeof v15 === "string" && v15 !== "undefined";
20515
20515
  }
20516
20516
  function getPackageRoot() {
@@ -20527,7 +20527,7 @@ function getInstallationInfo() {
20527
20527
  };
20528
20528
  }
20529
20529
  function getCurrentVersion() {
20530
- const bundledVersion = "0.1.195-dev.feat-e2e-test-system.6";
20530
+ const bundledVersion = "0.1.195-dev.feat-e2e-test-system.8";
20531
20531
  if (bundledVersion && bundledVersion !== "undefined") {
20532
20532
  return bundledVersion;
20533
20533
  }
@@ -1036314,7 +1036314,8 @@ async function runE2E(options3) {
1036314
1036314
  " cleanup <runId> \u2014 clean up and delete a specific run",
1036315
1036315
  " cleanup latest \u2014 clean up and delete the most recent run",
1036316
1036316
  " cleanup --all-stale \u2014 clean up and delete all runs",
1036317
- " setup google-guest \u2014 start Google guest account setup",
1036317
+ " setup google-guest \u2014 start Google guest account OAuth flow",
1036318
+ " setup google-guest-code <id> <url> \u2014 complete OAuth with callback URL",
1036318
1036319
  " help \u2014 show this message",
1036319
1036320
  "",
1036320
1036321
  "Flags:",
@@ -1036339,6 +1036340,7 @@ async function runE2E(options3) {
1036339
1036340
  const artifactsDir = ensureE2ERunDir(runId);
1036340
1036341
  const startedAt = (/* @__PURE__ */ new Date()).toISOString();
1036341
1036342
  const cleanupItems = [];
1036343
+ await cleanupPreviousRuns(config2, runId);
1036342
1036344
  logger.system(formatE2EStartMessage(runId, options3.mode));
1036343
1036345
  const context = {
1036344
1036346
  runId,
@@ -1036375,6 +1036377,19 @@ async function runE2E(options3) {
1036375
1036377
  writeReports(result);
1036376
1036378
  return result;
1036377
1036379
  }
1036380
+ async function cleanupPreviousRuns(config2, currentRunId) {
1036381
+ const previousRunIds = listRecentRunIds(20).filter((id2) => id2 !== currentRunId);
1036382
+ for (const id2 of previousRunIds) {
1036383
+ try {
1036384
+ await runCleanupForRun(config2, id2);
1036385
+ } catch {
1036386
+ }
1036387
+ deleteE2ERunDir(id2);
1036388
+ }
1036389
+ if (previousRunIds.length > 0) {
1036390
+ logger.system(`Auto-cleaned ${previousRunIds.length} previous e2e run(s)`);
1036391
+ }
1036392
+ }
1036378
1036393
  async function handleCleanup(config2, options3) {
1036379
1036394
  const target = options3.cleanupTarget;
1036380
1036395
  if (!target)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "visionclaw",
3
- "version": "0.1.195-dev.feat-e2e-test-system.6",
3
+ "version": "0.1.195-dev.feat-e2e-test-system.8",
4
4
  "description": "A personal assistant agent that runs on your desktop, receives commands from messaging channels, and executes tasks autonomously.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",