wildcrane-runner 0.4.0 → 0.6.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.
package/dist/launcher.mjs CHANGED
@@ -1,4 +1,4 @@
1
- // wildcrane-runner 0.4.0 — built by runner/scripts/build.mjs. Do not edit.
1
+ // wildcrane-runner 0.6.0 — built by runner/scripts/build.mjs. Do not edit.
2
2
  import { createRequire as __ai4kanbanRequire } from 'node:module'
3
3
  const require = __ai4kanbanRequire(import.meta.url)
4
4
 
@@ -40,8 +40,6 @@ import path3 from "node:path";
40
40
  var SUPABASE_URL = "https://yajrbpprmdvtkvjjfpbk.supabase.co";
41
41
  var SUPABASE_ANON_KEY = "sb_publishable_ioUQ23BTtoj8NKqndp0Jrw_omVR3m4n";
42
42
  var API_URL = "https://api.ai4kanban.dev";
43
- var URL_SCHEME = "ai4kanban";
44
- var SIGN_IN_REDIRECT = `${URL_SCHEME}://cloud/signed-in`;
45
43
  var trimSlash = (url) => url.replace(/\/+$/, "");
46
44
  function cloudEndpoints() {
47
45
  return {
@@ -52,6 +50,8 @@ function cloudEndpoints() {
52
50
  }
53
51
 
54
52
  // src/i18n.ts
53
+ var ZH_HOLDER = { "claude-code": "Claude Code", codex: "Codex", terminal: "\u672C\u673A\u7EC8\u7AEF", desktop: "WildCrane \u684C\u9762\u7AEF" };
54
+ var EN_HOLDER = { "claude-code": "Claude Code", codex: "Codex", terminal: "the terminal", desktop: "the WildCrane desktop app" };
55
55
  var ZH = {
56
56
  signIn: (url) => `\u8BF7\u5728\u6D4F\u89C8\u5668\u4E2D\u767B\u5F55 WildCrane\uFF1A
57
57
  ${url}`,
@@ -66,9 +66,13 @@ ${url}`,
66
66
  updated: (version) => `\u5DF2\u66F4\u65B0\u5230 ${version}`,
67
67
  rolledBack: (version) => `\u65B0\u7248\u672C\u672A\u80FD\u542F\u52A8\uFF0C\u5DF2\u9000\u56DE ${version}`,
68
68
  nodeTooOld: (range) => `\u65B0\u7248\u672C\u9700\u8981 Node ${range}\uFF0C\u8BF7\u5347\u7EA7 Node\u3002\u672C\u6B21\u7EE7\u7EED\u4F7F\u7528\u5F53\u524D\u7248\u672C\u3002`,
69
+ waitingHere: (holder) => {
70
+ const who = holder ? ZH_HOLDER[holder] : "\u672C\u673A\u53E6\u4E00\u4E2A\u7A0B\u5E8F";
71
+ return `${who}\u5DF2\u5728\u8FD0\u884C\u4E00\u4E2A WildCrane \u5B9E\u4F8B\uFF0C\u8D1F\u8D23\u63A5\u6536\u6240\u6709\u8FD0\u884C\u4EFB\u52A1\u3002\u5F53\u524D\u5B9E\u4F8B\u5DF2\u6682\u505C\uFF0C${who}\u5173\u95ED\u540E\u5C06\u7531\u5F53\u524D\u5B9E\u4F8B\u63A5\u66FF\u3002`;
72
+ },
69
73
  stopped: () => "\u5DF2\u505C\u6B62",
70
74
  reviewTitle: () => "\u5F85\u4F60\u5BA1\u6838",
71
- reviewBody: (task, checkpoint) => `\u300C${task}\u300D\u7684${checkpoint}\u5DF2\u5C31\u7EEA`,
75
+ reviewBody: (task) => `\u300C${task}\u300D\u5F85\u5BA1\u6838`,
72
76
  doneTitle: () => "\u4EFB\u52A1\u5DF2\u5B8C\u6210",
73
77
  failedTitle: () => "\u4EFB\u52A1\u5931\u8D25",
74
78
  commentTitle: (task) => `\u300C${task}\u300D\u6709\u65B0\u8BC4\u8BBA`,
@@ -88,9 +92,13 @@ ${url}`,
88
92
  updated: (version) => `Updated to ${version}`,
89
93
  rolledBack: (version) => `The new version did not start \u2014 back on ${version}`,
90
94
  nodeTooOld: (range) => `The new version needs Node ${range}. Update Node; running the current version for now.`,
95
+ waitingHere: (holder) => {
96
+ const who = holder ? EN_HOLDER[holder] : "another app on this computer";
97
+ return `${who[0].toUpperCase()}${who.slice(1)} is already running a WildCrane instance that takes all run tasks. This instance is paused and takes over when ${who} closes.`;
98
+ },
91
99
  stopped: () => "Stopped",
92
100
  reviewTitle: () => "Needs your review",
93
- reviewBody: (task, checkpoint) => `${checkpoint} for "${task}" is ready`,
101
+ reviewBody: (task) => `"${task}" is ready for review`,
94
102
  doneTitle: () => "Task finished",
95
103
  failedTitle: () => "Task failed",
96
104
  commentTitle: (task) => `New comment on ${task}`,
@@ -111,7 +119,7 @@ function status(line) {
111
119
  }
112
120
 
113
121
  // src/protocol.ts
114
- var VERSION = true ? "0.4.0" : "0.0.0";
122
+ var VERSION = true ? "0.6.0" : "0.0.0";
115
123
  var EXIT_REFUSED = 10;
116
124
  var EXIT_OUTDATED = 11;
117
125
 
@@ -122,7 +130,8 @@ import path2 from "node:path";
122
130
  import zlib from "node:zlib";
123
131
  var PACKAGE = "wildcrane-runner";
124
132
  var TIMEOUT_MS = 6e4;
125
- var versionsDir = () => path2.join(runnerHome(), "runner");
133
+ var versionsDir = () => path2.join(runnerHome(), "bin", "runner");
134
+ var legacyVersionsDir = () => path2.join(runnerHome(), "runner");
126
135
  var versionDir = (version) => path2.join(versionsDir(), version);
127
136
  var entryOf = (dir) => path2.join(dir, "dist", "runner.mjs");
128
137
  var registry = () => (process.env.npm_config_registry || "https://registry.npmjs.org").replace(/\/+$/, "");
@@ -321,9 +330,14 @@ function runOnce(candidate) {
321
330
  child.kill("SIGTERM");
322
331
  }, Number(process.env.WILDCRANE_CONNECT_MS) || CONNECT_MS);
323
332
  }
333
+ if (message.type === "waiting" && timer) {
334
+ clearTimeout(timer);
335
+ timer = null;
336
+ }
324
337
  if (message.type === "connected" && !connected) {
325
338
  connected = true;
326
339
  if (timer) clearTimeout(timer);
340
+ if (candidate.entry.startsWith(versionsDir() + path3.sep)) fs3.rmSync(legacyVersionsDir(), { recursive: true, force: true });
327
341
  if (candidate.fresh) {
328
342
  markGood(candidate.version);
329
343
  status(t.updated(candidate.version));