@tokenfactory/acc-runner 0.29.3 → 0.29.4

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.
@@ -0,0 +1,79 @@
1
+ export declare const NO_AUTO_UPGRADE_ENV = "ACC_RUNNER_NO_AUTO_UPGRADE";
2
+ /** Force a package manager, bypassing detection (npm | pnpm). */
3
+ export declare const PACKAGE_MANAGER_ENV = "ACC_RUNNER_PACKAGE_MANAGER";
4
+ export type PackageManager = "npm" | "pnpm";
5
+ /** True when the operator has opted this runner out of autonomous upgrade. */
6
+ export declare function autoUpgradeDisabled(env?: NodeJS.ProcessEnv): boolean;
7
+ /**
8
+ * Decide which global package manager installed this binary so the upgrade
9
+ * uses the same one (mixing npm + pnpm globals strands the old copy on PATH).
10
+ * Resolution order: explicit env override → npm_config_user_agent (set when a
11
+ * package-manager script spawned us) → install-path heuristic → npm default.
12
+ */
13
+ export declare function detectPackageManager(opts?: {
14
+ env?: NodeJS.ProcessEnv;
15
+ argv?: string[];
16
+ execPath?: string;
17
+ }): PackageManager;
18
+ /** The global-install command + args for a given package manager. */
19
+ export declare function upgradeCommand(pm: PackageManager): {
20
+ cmd: string;
21
+ args: string[];
22
+ };
23
+ export interface UpgradeDecision {
24
+ shouldUpgrade: boolean;
25
+ /** The version this attempt is keyed on in the once-per-target ledger. */
26
+ target: string | null;
27
+ reason: "behind-latest" | "below-min" | null;
28
+ }
29
+ /**
30
+ * Pure decision: upgrade when behind the npm `latest` dist-tag, or (failing a
31
+ * usable registry answer) when below the server min_version floor. `latest`
32
+ * wins because the install is always `@latest`; min is the fallback key so an
33
+ * offline runner that is nonetheless known to be below the floor still tries.
34
+ */
35
+ export declare function decideUpgrade(input: {
36
+ current: string;
37
+ npmLatest: string | null;
38
+ serverMin?: string | null;
39
+ }): UpgradeDecision;
40
+ /**
41
+ * Re-exec onto the freshly-installed binary: spawn a detached copy of this
42
+ * process (same argv), let it inherit our stdio, then exit. Detaching +
43
+ * unref() means the child outlives us; a launchd/systemd KeepAlive wrapper
44
+ * that restarts on exit converges to the same new binary either way (the
45
+ * detached child is harmless — it re-runs the version check and, finding
46
+ * itself current, never re-upgrades).
47
+ */
48
+ export declare function performReexec(opts?: {
49
+ exit?: (code: number) => void;
50
+ }): void;
51
+ export interface SelfUpgradeDeps {
52
+ /** Fetch npm `latest` (cached + offline-safe). Defaults to the real lookup. */
53
+ npmLatest?: () => Promise<string | null>;
54
+ /** Run the global install. Defaults to spawning the detected package manager. */
55
+ runInstall?: (cmd: string, args: string[]) => Promise<void>;
56
+ /** Re-exec onto the new binary. Defaults to performReexec (spawn + exit). */
57
+ reexec?: () => void;
58
+ /** Injectable clock (ms). Defaults to Date.now(). */
59
+ now?: number;
60
+ env?: NodeJS.ProcessEnv;
61
+ log?: (msg: string) => void;
62
+ warn?: (msg: string) => void;
63
+ }
64
+ export type SelfUpgradeStatus = "disabled" | "up-to-date" | "already-attempted" | "upgraded" | "failed";
65
+ export interface SelfUpgradeResult {
66
+ status: SelfUpgradeStatus;
67
+ target?: string;
68
+ reason?: UpgradeDecision["reason"];
69
+ }
70
+ /**
71
+ * Attempt one autonomous self-upgrade. The CALLER guarantees the runner is
72
+ * idle (no task or review in flight) — this function never inspects work
73
+ * state, so it must only be called between tasks. Returns a status the caller
74
+ * can log; on "upgraded" the process has already been told to exit via reexec.
75
+ */
76
+ export declare function maybeSelfUpgrade(input?: {
77
+ serverMin?: string | null;
78
+ }, deps?: SelfUpgradeDeps): Promise<SelfUpgradeResult>;
79
+ //# sourceMappingURL=self-upgrade.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"self-upgrade.d.ts","sourceRoot":"","sources":["../../src/runtime/self-upgrade.ts"],"names":[],"mappings":"AAuCA,eAAO,MAAM,mBAAmB,+BAA+B,CAAC;AAChE,iEAAiE;AACjE,eAAO,MAAM,mBAAmB,+BAA+B,CAAC;AAEhE,MAAM,MAAM,cAAc,GAAG,KAAK,GAAG,MAAM,CAAC;AAE5C,8EAA8E;AAC9E,wBAAgB,mBAAmB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,OAAO,CAGjF;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAClC,IAAI,GAAE;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAO,GACzE,cAAc,CAiBhB;AAED,qEAAqE;AACrE,wBAAgB,cAAc,CAAC,EAAE,EAAE,cAAc,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CAGlF;AAED,MAAM,WAAW,eAAe;IAC9B,aAAa,EAAE,OAAO,CAAC;IACvB,0EAA0E;IAC1E,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,MAAM,EAAE,eAAe,GAAG,WAAW,GAAG,IAAI,CAAC;CAC9C;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B,GAAG,eAAe,CASlB;AAoDD;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,IAAI,GAAE;IAAE,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;CAAO,GAAG,IAAI,CAWhF;AAED,MAAM,WAAW,eAAe;IAC9B,+EAA+E;IAC/E,SAAS,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACzC,iFAAiF;IACjF,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5D,6EAA6E;IAC7E,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,qDAAqD;IACrD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5B,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9B;AAED,MAAM,MAAM,iBAAiB,GACzB,UAAU,GACV,YAAY,GACZ,mBAAmB,GACnB,UAAU,GACV,QAAQ,CAAC;AAEb,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,iBAAiB,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC;CACpC;AAED;;;;;GAKG;AACH,wBAAsB,gBAAgB,CACpC,KAAK,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAO,EACzC,IAAI,GAAE,eAAoB,GACzB,OAAO,CAAC,iBAAiB,CAAC,CAqD5B"}
@@ -0,0 +1,199 @@
1
+ /**
2
+ * FIX-K (runner self-upgrade) — true autonomous fleet upgrade.
3
+ *
4
+ * Pre-FIX-K the fleet was warn-only: version-check.ts hard-gated below the
5
+ * server MIN_VERSION, runtime/version-drift.ts looked up the npm `latest`
6
+ * dist-tag, and watch.ts printed "Run npm install -g …@latest" — but nothing
7
+ * ever ran the install or re-execed. The fleet only reached 0.29.x because an
8
+ * operator upgraded every box by hand.
9
+ *
10
+ * This module closes that loop. When the installed PACKAGE_VERSION is behind
11
+ * the npm `latest` dist-tag (or below the server's min_version floor), and the
12
+ * runner is idle, it:
13
+ *
14
+ * 1. detects the global package manager (npm vs pnpm),
15
+ * 2. runs the global install (`npm install -g …@latest` / `pnpm add -g …`),
16
+ * 3. re-execs onto the freshly-installed binary (spawn detached + exit).
17
+ *
18
+ * GUARDS (the caller in watch.ts owns the "idle / never mid-build" gate; this
19
+ * module owns the rest):
20
+ * - opt-out via ACC_RUNNER_NO_AUTO_UPGRADE=1 (falls back to the warning),
21
+ * - at most ONE attempt per target version (persisted ledger; subsumes
22
+ * backoff — a target that failed is never retried, only a *new* target
23
+ * re-arms the attempt),
24
+ * - on any install failure, fall back to the existing warning and keep
25
+ * running on the current binary.
26
+ *
27
+ * The 426 below-MIN_VERSION lockout in version-check.ts stays the floor: a
28
+ * runner that boots below min still hard-refuses in watch.ts before the loop
29
+ * ever arms this path.
30
+ */
31
+ import fs from "node:fs/promises";
32
+ import path from "node:path";
33
+ import { spawn } from "node:child_process";
34
+ import { execa } from "execa";
35
+ import { cacheDir } from "./cache-dir.js";
36
+ import { compareSemver } from "../version-check.js";
37
+ import { NPM_PACKAGE, npmLatestVersion } from "./version-drift.js";
38
+ import { PACKAGE_VERSION } from "../pkg-version.js";
39
+ export const NO_AUTO_UPGRADE_ENV = "ACC_RUNNER_NO_AUTO_UPGRADE";
40
+ /** Force a package manager, bypassing detection (npm | pnpm). */
41
+ export const PACKAGE_MANAGER_ENV = "ACC_RUNNER_PACKAGE_MANAGER";
42
+ /** True when the operator has opted this runner out of autonomous upgrade. */
43
+ export function autoUpgradeDisabled(env = process.env) {
44
+ const v = env[NO_AUTO_UPGRADE_ENV];
45
+ return v === "1" || v === "true";
46
+ }
47
+ /**
48
+ * Decide which global package manager installed this binary so the upgrade
49
+ * uses the same one (mixing npm + pnpm globals strands the old copy on PATH).
50
+ * Resolution order: explicit env override → npm_config_user_agent (set when a
51
+ * package-manager script spawned us) → install-path heuristic → npm default.
52
+ */
53
+ export function detectPackageManager(opts = {}) {
54
+ const env = opts.env ?? process.env;
55
+ const override = env[PACKAGE_MANAGER_ENV]?.trim();
56
+ if (override === "npm" || override === "pnpm")
57
+ return override;
58
+ const ua = env.npm_config_user_agent ?? "";
59
+ if (ua.startsWith("pnpm"))
60
+ return "pnpm";
61
+ if (ua.startsWith("npm"))
62
+ return "npm";
63
+ // Long-lived daemons rarely carry npm_config_user_agent, so fall back to the
64
+ // install path of the running binary. pnpm globals live under a `pnpm`
65
+ // segment (~/.local/share/pnpm, ~/Library/pnpm, …/pnpm-global/…); npm globals
66
+ // live under `lib/node_modules`.
67
+ const argv = opts.argv ?? process.argv;
68
+ const probe = `${argv[1] ?? ""}\n${opts.execPath ?? process.execPath ?? ""}`;
69
+ if (/[\\/](?:pnpm|pnpm-global|\.pnpm)[\\/]/.test(probe))
70
+ return "pnpm";
71
+ return "npm";
72
+ }
73
+ /** The global-install command + args for a given package manager. */
74
+ export function upgradeCommand(pm) {
75
+ if (pm === "pnpm")
76
+ return { cmd: "pnpm", args: ["add", "-g", `${NPM_PACKAGE}@latest`] };
77
+ return { cmd: "npm", args: ["install", "-g", `${NPM_PACKAGE}@latest`] };
78
+ }
79
+ /**
80
+ * Pure decision: upgrade when behind the npm `latest` dist-tag, or (failing a
81
+ * usable registry answer) when below the server min_version floor. `latest`
82
+ * wins because the install is always `@latest`; min is the fallback key so an
83
+ * offline runner that is nonetheless known to be below the floor still tries.
84
+ */
85
+ export function decideUpgrade(input) {
86
+ const { current, npmLatest, serverMin } = input;
87
+ if (npmLatest && compareSemver(current, npmLatest) < 0) {
88
+ return { shouldUpgrade: true, target: npmLatest, reason: "behind-latest" };
89
+ }
90
+ if (serverMin && compareSemver(current, serverMin) < 0) {
91
+ return { shouldUpgrade: true, target: serverMin, reason: "below-min" };
92
+ }
93
+ return { shouldUpgrade: false, target: null, reason: null };
94
+ }
95
+ function ledgerFile() {
96
+ return path.join(cacheDir(), "self-upgrade.json");
97
+ }
98
+ async function readLedger() {
99
+ try {
100
+ return JSON.parse(await fs.readFile(ledgerFile(), "utf8"));
101
+ }
102
+ catch {
103
+ return {}; // missing or corrupt ledger = no attempts recorded
104
+ }
105
+ }
106
+ async function writeLedger(ledger) {
107
+ const file = ledgerFile();
108
+ await fs.mkdir(path.dirname(file), { recursive: true });
109
+ await fs.writeFile(file, `${JSON.stringify(ledger, null, 2)}\n`, "utf8");
110
+ }
111
+ /** True when we have already attempted (success or failure) this target. */
112
+ async function alreadyAttempted(target) {
113
+ const ledger = await readLedger();
114
+ return Boolean(ledger[target]);
115
+ }
116
+ async function recordAttempt(target, ok, now, error) {
117
+ const ledger = await readLedger();
118
+ ledger[target] = { attemptedAt: new Date(now).toISOString(), ok, ...(error ? { error } : {}) };
119
+ await writeLedger(ledger).catch(() => {
120
+ /* ledger write is best-effort; a miss just risks one extra attempt */
121
+ });
122
+ }
123
+ /** Default install runner — inherits stdio so the operator sees npm's output. */
124
+ async function defaultRunInstall(cmd, args) {
125
+ await execa(cmd, args, { stdio: "inherit" });
126
+ }
127
+ /**
128
+ * Re-exec onto the freshly-installed binary: spawn a detached copy of this
129
+ * process (same argv), let it inherit our stdio, then exit. Detaching +
130
+ * unref() means the child outlives us; a launchd/systemd KeepAlive wrapper
131
+ * that restarts on exit converges to the same new binary either way (the
132
+ * detached child is harmless — it re-runs the version check and, finding
133
+ * itself current, never re-upgrades).
134
+ */
135
+ export function performReexec(opts = {}) {
136
+ const exit = opts.exit ?? ((code) => process.exit(code));
137
+ // argv = [node, cliEntry, ...args]; re-run cliEntry + args under the same node.
138
+ const args = process.argv.slice(1);
139
+ const child = spawn(process.execPath, args, {
140
+ detached: true,
141
+ stdio: "inherit",
142
+ env: process.env,
143
+ });
144
+ child.unref();
145
+ exit(0);
146
+ }
147
+ /**
148
+ * Attempt one autonomous self-upgrade. The CALLER guarantees the runner is
149
+ * idle (no task or review in flight) — this function never inspects work
150
+ * state, so it must only be called between tasks. Returns a status the caller
151
+ * can log; on "upgraded" the process has already been told to exit via reexec.
152
+ */
153
+ export async function maybeSelfUpgrade(input = {}, deps = {}) {
154
+ const env = deps.env ?? process.env;
155
+ if (autoUpgradeDisabled(env))
156
+ return { status: "disabled" };
157
+ const now = deps.now ?? Date.now();
158
+ const warn = deps.warn ?? ((m) => void process.stderr.write(`${m}\n`));
159
+ const log = deps.log ?? ((m) => void process.stdout.write(`${m}\n`));
160
+ const fetchLatest = deps.npmLatest ?? (() => npmLatestVersion());
161
+ const latest = await fetchLatest();
162
+ const decision = decideUpgrade({
163
+ current: PACKAGE_VERSION,
164
+ npmLatest: latest,
165
+ serverMin: input.serverMin ?? null,
166
+ });
167
+ if (!decision.shouldUpgrade || !decision.target)
168
+ return { status: "up-to-date" };
169
+ const target = decision.target;
170
+ // At most one attempt per target version — a target that already failed is
171
+ // never retried; only a newer target re-arms the path.
172
+ if (await alreadyAttempted(target)) {
173
+ return { status: "already-attempted", target, reason: decision.reason };
174
+ }
175
+ const pm = detectPackageManager({ env });
176
+ const { cmd, args } = upgradeCommand(pm);
177
+ // Record the attempt BEFORE running the install so a crash or a re-exec'd
178
+ // restart mid-install cannot loop on the same target.
179
+ await recordAttempt(target, false, now, "in-progress");
180
+ log(`[acc-runner] self-upgrade: v${PACKAGE_VERSION} → v${target} (${decision.reason}); ` +
181
+ `running \`${cmd} ${args.join(" ")}\``);
182
+ const runInstall = deps.runInstall ?? defaultRunInstall;
183
+ try {
184
+ await runInstall(cmd, args);
185
+ }
186
+ catch (err) {
187
+ const message = err instanceof Error ? err.message : String(err);
188
+ await recordAttempt(target, false, now, message);
189
+ warn(`[acc-runner] self-upgrade to v${target} failed (${message}); ` +
190
+ `continuing on v${PACKAGE_VERSION}. Upgrade manually: \`${cmd} ${args.join(" ")}\`.`);
191
+ return { status: "failed", target, reason: decision.reason };
192
+ }
193
+ await recordAttempt(target, true, now);
194
+ log(`[acc-runner] self-upgrade installed v${target}; re-execing onto the new binary.`);
195
+ const reexec = deps.reexec ?? (() => performReexec());
196
+ reexec();
197
+ return { status: "upgraded", target, reason: decision.reason };
198
+ }
199
+ //# sourceMappingURL=self-upgrade.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"self-upgrade.js","sourceRoot":"","sources":["../../src/runtime/self-upgrade.ts"],"names":[],"mappings":"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"}
package/dist/watch.d.ts CHANGED
@@ -5,6 +5,7 @@ import { type RunnerSupabaseClient } from "./supabase.js";
5
5
  import { runTask, type RunTaskController } from "./task-runner.js";
6
6
  import { type ReviewAssignment, type ReviewerOutcome } from "./runtime/reviewer.js";
7
7
  import { type SingletonLock } from "./runtime/singleton.js";
8
+ import { type SelfUpgradeResult } from "./runtime/self-upgrade.js";
8
9
  import type { StoredSession } from "./types.js";
9
10
  export declare class RefreshReuseDetectedError extends Error {
10
11
  constructor(message: string);
@@ -124,6 +125,22 @@ export interface WatchOptions {
124
125
  idleCheckMs?: number;
125
126
  /** v0.12.0 (T-52-7): exit hook for tests. Defaults to process.exit. */
126
127
  exit?: (code: number) => void;
128
+ /**
129
+ * FIX-K: idle self-upgrade check cadence (ms). The timer fires this often;
130
+ * each tick only acts when the runner is idle (no task/review in flight).
131
+ * Defaults to SELF_UPGRADE_CHECK_MS (30 min). Tests set a tiny value to
132
+ * observe the self-upgrade without real-time waits.
133
+ */
134
+ selfUpgradeCheckMs?: number;
135
+ /**
136
+ * FIX-K: self-upgrade implementation injection for tests. Receives the
137
+ * server min_version floor captured at startup. Defaults to the real
138
+ * maybeSelfUpgrade (npm latest lookup → global install → re-exec). The
139
+ * idle/never-mid-build gate is applied by the caller before this runs.
140
+ */
141
+ selfUpgrade?: (input: {
142
+ serverMin?: string | null;
143
+ }) => Promise<SelfUpgradeResult>;
127
144
  /**
128
145
  * v0.56 (T-56-1): backoff applied when a capacity_exhausted result
129
146
  * carries no parseable reset time. Defaults to 30 min; tests set a tiny
@@ -305,6 +322,19 @@ interface WatchState {
305
322
  idleTimer: NodeJS.Timeout | null;
306
323
  /** Guards the idle-exit sequence against double-firing. */
307
324
  idleExiting: boolean;
325
+ /**
326
+ * FIX-K: autonomous self-upgrade. selfUpgradeTimer fires the idle check;
327
+ * serverMin is the min_version floor captured from the startup handshake so
328
+ * a mid-run upgrade decision can still honour it; selfUpgradeFn is the
329
+ * injectable implementation; selfUpgrading guards against a re-entrant tick
330
+ * while the install is in flight.
331
+ */
332
+ selfUpgradeTimer: NodeJS.Timeout | null;
333
+ serverMin: string | null;
334
+ selfUpgradeFn: (input: {
335
+ serverMin?: string | null;
336
+ }) => Promise<SelfUpgradeResult>;
337
+ selfUpgrading: boolean;
308
338
  /**
309
339
  * v0.56 (T-56-1): the task runner factory, stashed so the capacity
310
340
  * pause/resume helpers can re-drive poll + pump without threading the
@@ -1 +1 @@
1
- {"version":3,"file":"watch.d.ts","sourceRoot":"","sources":["../src/watch.ts"],"names":[],"mappings":"AA4BA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAc,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,EAAoB,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAE3E,OAAO,EAAsB,KAAK,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAC9E,OAAO,EAAE,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACnE,OAAO,EAEL,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACrB,MAAM,uBAAuB,CAAC;AAK/B,OAAO,EAIL,KAAK,aAAa,EACnB,MAAM,wBAAwB,CAAC;AAQhC,OAAO,KAAK,EAAkC,aAAa,EAAE,MAAM,YAAY,CAAC;AAKhF,qBAAa,yBAA0B,SAAQ,KAAK;gBACtC,OAAO,EAAE,MAAM;CAI5B;AAyED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,MAAM,CAMjF;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE;IAC1C,gBAAgB,EAAE,MAAM,CAAC;IACzB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,GAAG,MAAM,CAKT;AAYD,MAAM,MAAM,kBAAkB,GAC1B,MAAM,GACN,KAAK,GACL,KAAK,GACL,OAAO,GACP,SAAS,GACT,SAAS,GACT,SAAS,CAAC;AAEd;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CACpC,GAAG,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAAG,IAAI,GAAG,SAAS,GACxE,kBAAkB,CA2CpB;AAED;;;6CAG6C;AAC7C,wBAAgB,oBAAoB,CAAC,mBAAmB,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAIxF;AAED,MAAM,WAAW,YAAY;IAC3B,0DAA0D;IAC1D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yDAAyD;IACzD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;;;;OAOG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B;;;;;;;;;OASG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B;;;;;;;OAOG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B;;;;;OAKG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B;;;;;;;;OAQG;IACH,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,0EAA0E;IAC1E,iBAAiB,CAAC,EAAE,OAAO,OAAO,CAAC;IACnC,yEAAyE;IACzE,eAAe,CAAC,EAAE,CAChB,UAAU,EAAE,gBAAgB,EAC5B,IAAI,EAAE;QAAE,QAAQ,EAAE,oBAAoB,CAAA;KAAE,KACrC,OAAO,CAAC,eAAe,CAAC,CAAC;IAC9B;;;;;;;;;OASG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;;OAKG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,+DAA+D;IAC/D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uEAAuE;IACvE,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9B;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;;OAMG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,MAAM,GAAG,IAAI,CAWf;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,wEAAwE;IACxE,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1B;;;OAGG;IACH,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/B;;;;OAIG;IACH,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC;;;;OAIG;IACH,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC;;;;OAIG;IACH,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,2EAA2E;IAC3E,YAAY,IAAI,MAAM,CAAC;CACxB;AAED,KAAK,eAAe,GAAG,CACrB,UAAU,EAAE,gBAAgB,EAC5B,IAAI,EAAE;IAAE,QAAQ,EAAE,oBAAoB,CAAA;CAAE,KACrC,OAAO,CAAC,eAAe,CAAC,CAAC;AAE9B,UAAU,UAAU;IAClB,GAAG,EAAE,YAAY,CAAC;IAClB,OAAO,EAAE,aAAa,CAAC;IACvB,uEAAuE;IACvE,aAAa,EAAE,aAAa,CAAC;IAC7B,QAAQ,EAAE,oBAAoB,CAAC;IAC/B,OAAO,EAAE,eAAe,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC,OAAO,CAAC;IAC/B,YAAY,EAAE,MAAM,CAAC,OAAO,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC;IAC1B,iFAAiF;IACjF,cAAc,EAAE,MAAM,CAAC,OAAO,CAAC;IAC/B,sFAAsF;IACtF,mBAAmB,EAAE,MAAM,CAAC;IAC5B,+EAA+E;IAC/E,aAAa,EAAE,OAAO,CAAC;IACvB,6EAA6E;IAC7E,eAAe,EAAE,MAAM,CAAC,OAAO,CAAC;IAChC,kFAAkF;IAClF,oBAAoB,EAAE,MAAM,CAAC;IAC7B,+EAA+E;IAC/E,cAAc,EAAE,OAAO,CAAC;IACxB;;;;;;;OAOG;IACH,kBAAkB,EAAE,MAAM,CAAC,OAAO,CAAC;IACnC,oBAAoB,EAAE,MAAM,CAAC;IAC7B,kBAAkB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,qBAAqB,EAAE,OAAO,CAAC;IAC/B;;;;;;OAMG;IACH,kBAAkB,EAAE,MAAM,CAAC,OAAO,CAAC;IACnC,uBAAuB,EAAE,MAAM,CAAC;IAChC,gBAAgB,EAAE,OAAO,CAAC;IAC1B;;;;;;;OAOG;IACH,aAAa,EAAE,OAAO,CAAC;IACvB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,gBAAgB,EAAE,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC;IACxC;;;;;OAKG;IACH,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IACxC;;;;;OAKG;IACH,gBAAgB,EAAE,MAAM,CAAC;IACzB;;;;OAIG;IACH,mBAAmB,EAAE,MAAM,CAAC;IAC5B,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,4EAA4E;IAC5E,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;IACpC,2EAA2E;IAC3E,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB;;;;;OAKG;IACH,WAAW,EAAE,gBAAgB,EAAE,CAAC;IAChC,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;IACvB,SAAS,EAAE,eAAe,CAAC;IAC3B;;;;;OAKG;IACH,WAAW,EAAE,OAAO,CAAC;IACrB;;;;;;;OAOG;IACH,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC9B;;;;;OAKG;IACH,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC;IACjC,2DAA2D;IAC3D,WAAW,EAAE,OAAO,CAAC;IACrB;;;;OAIG;IACH,iBAAiB,EAAE,OAAO,OAAO,CAAC;IAClC;;;;;;OAMG;IACH,cAAc,EAAE,OAAO,CAAC;IACxB,uEAAuE;IACvE,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B;;;;;;OAMG;IACH,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,uDAAuD;IACvD,UAAU,EAAE,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC;IAClC;;;;;OAKG;IACH,aAAa,EAAE,OAAO,CAAC;IACvB,sEAAsE;IACtE,iBAAiB,EAAE,MAAM,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB;;;OAGG;IACH,aAAa,EAAE,aAAa,GAAG,IAAI,CAAC;CACrC;AAkLD,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,OAAO,OAAO,GACtB,OAAO,CAAC,IAAI,CAAC,CAoBf;AAMD,wBAAsB,qBAAqB,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAqB5E;AAugBD,wBAAsB,YAAY,CAAC,OAAO,GAAE,YAAiB,GAAG,OAAO,CAAC,WAAW,CAAC,CAifnF;AA0HD;;;;;;;;;;GAUG;AACH,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,EAClC,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,EACzB,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,EAC9B,MAAM,EAAE,QAAQ,GAAG,SAAS,GAC3B,OAAO,CAAC,IAAI,CAAC,CAYf"}
1
+ {"version":3,"file":"watch.d.ts","sourceRoot":"","sources":["../src/watch.ts"],"names":[],"mappings":"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"}
package/dist/watch.js CHANGED
@@ -35,6 +35,7 @@ import { runReview, } from "./runtime/reviewer.js";
35
35
  import { getQuarantine, setQuarantine, } from "./runtime/quarantine.js";
36
36
  import { acquireSingletonLock, singletonRunnerId, SingletonLockHeldError, } from "./runtime/singleton.js";
37
37
  import { getClaudeVersion, recordTaskClaudeVersion, } from "./runtime/version-drift.js";
38
+ import { autoUpgradeDisabled, maybeSelfUpgrade, } from "./runtime/self-upgrade.js";
38
39
  import { postRunnerStateMessage } from "./messaging.js";
39
40
  import { checkVersion, compareSemver } from "./version-check.js";
40
41
  import { PROTOCOL_VERSION } from "./types.js";
@@ -51,6 +52,11 @@ const REFRESH_CHECK_MS = 30 * 60 * 1000;
51
52
  // v0.12.0 (T-52-7): idle-TTL check cadence ceiling. The actual cadence is
52
53
  // min(IDLE_CHECK_MS, ttl) so a tiny test TTL still gets checked in time.
53
54
  const IDLE_CHECK_MS = 30_000;
55
+ // FIX-K: cadence of the idle self-upgrade check. The npm `latest` lookup it
56
+ // drives is itself cached 6h, so this can poll cheaply; 30 min keeps a stale
57
+ // fleet box converging onto a freshly-published version within the hour
58
+ // without a per-tick registry hit. Knob: ACC_RUNNER_UPGRADE_CHECK_MIN / tests.
59
+ const SELF_UPGRADE_CHECK_MS = 30 * 60 * 1000;
54
60
  const HEARTBEAT_REFRESH_AFTER = 3;
55
61
  const HEARTBEAT_EXIT_AFTER = 5;
56
62
  const POLL_INTERVAL_MS = 30_000;
@@ -954,12 +960,22 @@ export async function watchCommand(options = {}) {
954
960
  if (!v.ok && v.reason === "outdated") {
955
961
  throw new Error(`acc-runner is below the server's minimum version (${v.serverMin}). Run \`pnpm add -g @tokenfactory/acc-runner@latest\`.`);
956
962
  }
963
+ // FIX-K: capture the min_version floor from the handshake so the idle
964
+ // self-upgrade check can still honour it after boot (the 426 hard-gate
965
+ // above stays the boot-time floor; this is the running-loop fallback key).
966
+ const serverMin = (v.serverMin ?? null);
957
967
  // v0.31-B: warn when running behind current_version (above min but stale).
958
968
  // Launchd daemon often runs an old binary silently; this surfaces it at
959
969
  // startup before the first heartbeat so the operator can update promptly.
970
+ // FIX-K: this is now the FALLBACK, not the only action — the idle
971
+ // self-upgrade timer (armed below) autonomously installs + re-execs unless
972
+ // ACC_RUNNER_NO_AUTO_UPGRADE=1, in which case this warning is all that fires.
960
973
  if (v.ok && v.serverCurrent && compareSemver(PACKAGE_VERSION, v.serverCurrent) < 0) {
961
974
  process.stderr.write(`[acc-runner] WARNING: running v${PACKAGE_VERSION}, server current is v${v.serverCurrent}. ` +
962
- `Run \`npm install -g @tokenfactory/acc-runner@latest\` then reload launchd.\n`);
975
+ (autoUpgradeDisabled()
976
+ ? `Run \`npm install -g @tokenfactory/acc-runner@latest\` then reload launchd ` +
977
+ `(auto-upgrade disabled via ACC_RUNNER_NO_AUTO_UPGRADE=1).\n`
978
+ : `Auto-upgrade will install npm latest when idle.\n`));
963
979
  }
964
980
  // v0.74-B: surface how spawned claude sessions will authenticate. api-key
965
981
  // (ANTHROPIC_API_KEY set) bills against the API account with no per-session
@@ -1111,6 +1127,12 @@ export async function watchCommand(options = {}) {
1111
1127
  lastActivityMs: Date.now(),
1112
1128
  idleTimer: null,
1113
1129
  idleExiting: false,
1130
+ // FIX-K: self-upgrade wiring. selfUpgradeFn defaults to the real path;
1131
+ // tests inject a stub. serverMin is the startup-handshake floor.
1132
+ selfUpgradeTimer: null,
1133
+ serverMin,
1134
+ selfUpgradeFn: options.selfUpgrade ?? ((input) => maybeSelfUpgrade(input)),
1135
+ selfUpgrading: false,
1114
1136
  taskRunnerFactory,
1115
1137
  pausedCapacity: false,
1116
1138
  pausedUntil: null,
@@ -1245,6 +1267,8 @@ export async function watchCommand(options = {}) {
1245
1267
  clearTimeout(state.resubscribeTimer); // v0.68 (T-68-1)
1246
1268
  if (state.idleTimer)
1247
1269
  clearInterval(state.idleTimer);
1270
+ if (state.selfUpgradeTimer)
1271
+ clearInterval(state.selfUpgradeTimer); // FIX-K
1248
1272
  if (state.pauseTimer)
1249
1273
  clearTimeout(state.pauseTimer); // v0.56 (T-56-1)
1250
1274
  // v0.10 T-49-2: cancel every in-flight task (replaces v0.9 single cancel).
@@ -1298,6 +1322,17 @@ export async function watchCommand(options = {}) {
1298
1322
  state.idleTimer.unref?.();
1299
1323
  console.log(chalk.gray(`Idle TTL armed: exiting after ${Math.round(state.idleTtlMs / 60_000)} min without work.`));
1300
1324
  }
1325
+ // FIX-K: arm the autonomous self-upgrade timer. Skipped entirely when the
1326
+ // operator opts out (ACC_RUNNER_NO_AUTO_UPGRADE=1) — then the startup
1327
+ // warning above is the only signal, preserving the legacy warn-only
1328
+ // behaviour. Unref'd so the check never holds the process open by itself.
1329
+ if (!autoUpgradeDisabled()) {
1330
+ const upgradeCheckMs = options.selfUpgradeCheckMs ?? SELF_UPGRADE_CHECK_MS;
1331
+ state.selfUpgradeTimer = setInterval(() => {
1332
+ void maybeSelfUpgradeTick(state);
1333
+ }, upgradeCheckMs);
1334
+ state.selfUpgradeTimer.unref?.();
1335
+ }
1301
1336
  if (!options.taskRunnerFactory) {
1302
1337
  // PA-11C-SIGTERM-REQUEUE: a clean shutdown is NOT a task failure. Both
1303
1338
  // SIGINT and SIGTERM route through gracefulShutdown → stop(), which cancels
@@ -1381,6 +1416,42 @@ function scheduleHeartbeat(state, taskRunnerFactory, baseMs) {
1381
1416
  })();
1382
1417
  }, delay);
1383
1418
  }
1419
+ /**
1420
+ * FIX-K: idle self-upgrade check. Fires from the self-upgrade timer and
1421
+ * delegates to maybeSelfUpgrade ONLY when the runner is fully idle — no task
1422
+ * or review running, queued, or pumping, and not paused for capacity. This is
1423
+ * the "never mid-build" gate: the same in-flight test maybeIdleExit uses, so a
1424
+ * self-upgrade can never re-exec out from under a running task. maybeSelfUpgrade
1425
+ * itself owns the opt-out, the once-per-target ledger, and the failure→warn
1426
+ * fallback; on success it re-execs and the process exits, so anything after the
1427
+ * await never runs in production.
1428
+ */
1429
+ async function maybeSelfUpgradeTick(state) {
1430
+ if (state.stopped || state.idleExiting || state.selfUpgrading)
1431
+ return;
1432
+ if (state.pausedCapacity)
1433
+ return;
1434
+ if (state.running.size > 0 ||
1435
+ state.queue.length > 0 ||
1436
+ state.reviewQueue.length > 0 ||
1437
+ state.reviewPumping) {
1438
+ return;
1439
+ }
1440
+ state.selfUpgrading = true;
1441
+ try {
1442
+ await state.selfUpgradeFn({ serverMin: state.serverMin });
1443
+ }
1444
+ catch (err) {
1445
+ // A throwing self-upgrade must never crash the runner — fall back to the
1446
+ // warning and keep serving. (maybeSelfUpgrade already swallows install
1447
+ // failures; this catch covers an unexpected throw, e.g. ledger I/O.)
1448
+ process.stderr.write(`[acc-runner] self-upgrade check errored (${err.message}); ` +
1449
+ `continuing on v${PACKAGE_VERSION}.\n`);
1450
+ }
1451
+ finally {
1452
+ state.selfUpgrading = false;
1453
+ }
1454
+ }
1384
1455
  /**
1385
1456
  * v0.12.0 (T-52-7): idle-TTL exit check. Fires from the idle timer; exits
1386
1457
  * the process cleanly when the runner has had no queued or in-flight work
package/dist/watch.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"watch.js","sourceRoot":"","sources":["../src/watch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"watch.js","sourceRoot":"","sources":["../src/watch.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tokenfactory/acc-runner",
3
- "version": "0.29.3",
3
+ "version": "0.29.4",
4
4
  "description": "Agent Control Center local runner. Spawns Claude Code sessions assigned via ACC.",
5
5
  "license": "UNLICENSED",
6
6
  "private": false,