@tokenfactory/acc-runner 0.14.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.
- package/README.md +29 -0
- package/dist/failure-classifier.d.ts +71 -13
- package/dist/failure-classifier.d.ts.map +1 -1
- package/dist/failure-classifier.js +203 -15
- package/dist/failure-classifier.js.map +1 -1
- package/dist/runtime/resolution-integrity.d.ts +86 -0
- package/dist/runtime/resolution-integrity.d.ts.map +1 -0
- package/dist/runtime/resolution-integrity.js +248 -0
- package/dist/runtime/resolution-integrity.js.map +1 -0
- package/dist/runtime/reviewer.d.ts +8 -1
- package/dist/runtime/reviewer.d.ts.map +1 -1
- package/dist/runtime/reviewer.js +18 -0
- package/dist/runtime/reviewer.js.map +1 -1
- package/dist/task-runner.d.ts +99 -1
- package/dist/task-runner.d.ts.map +1 -1
- package/dist/task-runner.js +345 -21
- package/dist/task-runner.js.map +1 -1
- package/dist/watch.d.ts +25 -0
- package/dist/watch.d.ts.map +1 -1
- package/dist/watch.js +295 -32
- package/dist/watch.js.map +1 -1
- package/package.json +1 -1
package/dist/watch.js
CHANGED
|
@@ -58,6 +58,22 @@ const POLL_INTERVAL_MS = 30_000;
|
|
|
58
58
|
// The 30s window the previous code used was tighter than the gap between
|
|
59
59
|
// dispatch and runner restart in real operator workflows.
|
|
60
60
|
const STARTUP_POLL_LOOKBACK_MS = 5 * 60 * 1000;
|
|
61
|
+
// v0.62 (T-62-1): cadence of the periodic full claim scan — the realtime-miss
|
|
62
|
+
// safety net. The delta-poll's forward-only watermark can permanently skip a
|
|
63
|
+
// task assigned with an `updated_at` at/behind the watermark whose realtime
|
|
64
|
+
// `task_assigned` push was dropped (stale subscription). This full scan
|
|
65
|
+
// (epoch watermark, every assigned+queued task for this runner) re-claims any
|
|
66
|
+
// such task within one interval, so an alive-but-wedged runner self-recovers
|
|
67
|
+
// instead of needing a manual restart. Knob: `claim_scan_interval_ms`.
|
|
68
|
+
const DEFAULT_CLAIM_SCAN_INTERVAL_MS = 3 * 60 * 1000;
|
|
69
|
+
// v0.56 (T-56-1): capacity-aware pause. When claude reports a session/usage
|
|
70
|
+
// limit (api_error_status 429) the runner pauses claiming tasks AND reviews
|
|
71
|
+
// until the stated reset time. When no reset time is parseable, fall back to
|
|
72
|
+
// this fixed backoff. Resume fires at the target + a small random jitter so a
|
|
73
|
+
// fleet that all hit the limit on the same broadcast doesn't thunder back in
|
|
74
|
+
// lockstep the instant the window reopens.
|
|
75
|
+
const DEFAULT_CAPACITY_BACKOFF_MS = 30 * 60 * 1000;
|
|
76
|
+
const DEFAULT_RESUME_JITTER_MS = 15_000;
|
|
61
77
|
/**
|
|
62
78
|
* v0.6.0: exponential backoff between heartbeat attempts when the
|
|
63
79
|
* previous one failed. The dogfood loop fired a heartbeat every 4s
|
|
@@ -277,9 +293,21 @@ async function pollOnce(state, factory) {
|
|
|
277
293
|
for (const row of rows) {
|
|
278
294
|
if (!row?.id)
|
|
279
295
|
continue;
|
|
280
|
-
|
|
281
|
-
|
|
296
|
+
// v0.62 (T-62-1): advance the forward-only watermark ONLY for rows we
|
|
297
|
+
// actually claimed this pass (enqueue returned true). Previously the
|
|
298
|
+
// watermark advanced to max(updated_at) over EVERY returned row,
|
|
299
|
+
// including no-ops (a task already seen/in-flight via realtime or a
|
|
300
|
+
// prior poll). A high-updated_at no-op could then drag the watermark
|
|
301
|
+
// past a still-queued task assigned with an older updated_at, so the
|
|
302
|
+
// next delta-poll (`> watermark`) silently dropped it — only a restart
|
|
303
|
+
// (one-shot startup scan) recovered it. Advancing solely on real claims
|
|
304
|
+
// keeps the watermark a conservative "newest task I claimed by polling"
|
|
305
|
+
// mark and stops the delta-poll losing still-queued work. The periodic
|
|
306
|
+
// full claim scan (claimScan) is the belt to this braces.
|
|
307
|
+
const claimed = enqueue(state, row.id, factory);
|
|
308
|
+
if (claimed && row.updated_at && row.updated_at > maxSeen) {
|
|
282
309
|
maxSeen = row.updated_at;
|
|
310
|
+
}
|
|
283
311
|
}
|
|
284
312
|
state.pollSince = maxSeen;
|
|
285
313
|
}
|
|
@@ -287,6 +315,61 @@ async function pollOnce(state, factory) {
|
|
|
287
315
|
state.polling = false;
|
|
288
316
|
}
|
|
289
317
|
}
|
|
318
|
+
/**
|
|
319
|
+
* v0.62 (T-62-1): full claim scan — lists EVERY assigned+queued task for this
|
|
320
|
+
* runner with an epoch watermark (`1970-…Z`) and enqueues any the in-process
|
|
321
|
+
* `seen` guard hasn't already accounted for. Used two ways:
|
|
322
|
+
*
|
|
323
|
+
* - once at startup (replaces the v0.34-B inline block), and
|
|
324
|
+
* - on a periodic timer (`claim_scan_interval_ms`, default 3 min) as the
|
|
325
|
+
* realtime-miss safety net: a runner that dropped a `task_assigned`
|
|
326
|
+
* broadcast self-recovers within one interval instead of sitting next to
|
|
327
|
+
* a free runner until a manual restart.
|
|
328
|
+
*
|
|
329
|
+
* Deliberately does NOT touch `state.pollSince` — the delta-poll keeps its own
|
|
330
|
+
* forward-only watermark. Idempotent: `enqueue`'s shared `seen`/`running`
|
|
331
|
+
* guards mean a task already taken by realtime or the delta-poll is a no-op
|
|
332
|
+
* here, so realtime + delta-poll + scan all seeing the same task still yields
|
|
333
|
+
* exactly one run. Single-flight via `claimScanning` so a slow RPC can't let
|
|
334
|
+
* two scans overlap.
|
|
335
|
+
*/
|
|
336
|
+
async function claimScan(state, factory, context) {
|
|
337
|
+
if (state.stopped || state.claimScanning)
|
|
338
|
+
return;
|
|
339
|
+
state.claimScanning = true;
|
|
340
|
+
try {
|
|
341
|
+
const { data, error } = await state.supabase.rpc("list_assigned_queued_tasks", {
|
|
342
|
+
p_runner_id: state.session.runner_id,
|
|
343
|
+
p_since: "1970-01-01T00:00:00.000Z",
|
|
344
|
+
});
|
|
345
|
+
if (error) {
|
|
346
|
+
process.stderr.write(`[acc-runner] ${context} claim scan failed: ${error.message}\n`);
|
|
347
|
+
return;
|
|
348
|
+
}
|
|
349
|
+
const rows = (data ?? []);
|
|
350
|
+
let enqueued = 0;
|
|
351
|
+
for (const row of rows) {
|
|
352
|
+
if (!row?.id)
|
|
353
|
+
continue;
|
|
354
|
+
if (enqueue(state, row.id, factory))
|
|
355
|
+
enqueued += 1;
|
|
356
|
+
}
|
|
357
|
+
if (context === "startup") {
|
|
358
|
+
console.log(`[acc-runner] startup claim scan: ${rows.length} task(s) found`);
|
|
359
|
+
}
|
|
360
|
+
else if (enqueued > 0) {
|
|
361
|
+
// Only chirp when the safety net actually caught something — a periodic
|
|
362
|
+
// scan that finds nothing is the steady state and must stay quiet.
|
|
363
|
+
console.log(`[acc-runner] periodic claim scan recovered ${enqueued} realtime-missed task(s)`);
|
|
364
|
+
}
|
|
365
|
+
}
|
|
366
|
+
catch (err) {
|
|
367
|
+
process.stderr.write(`[acc-runner] ${context} claim scan failed: ${err.message}\n`);
|
|
368
|
+
}
|
|
369
|
+
finally {
|
|
370
|
+
state.claimScanning = false;
|
|
371
|
+
}
|
|
372
|
+
}
|
|
290
373
|
// Single-flight refresh. Recreates the Supabase client (so future RPC +
|
|
291
374
|
// channel auth use the new JWT) and resubscribes the broadcast channel.
|
|
292
375
|
async function doRefresh(state, taskRunnerFactory) {
|
|
@@ -446,6 +529,9 @@ export async function watchCommand(options = {}) {
|
|
|
446
529
|
heartbeatTimer: undefined,
|
|
447
530
|
refreshTimer: undefined,
|
|
448
531
|
pollTimer: undefined,
|
|
532
|
+
claimScanTimer: undefined, // v0.62 (T-62-1)
|
|
533
|
+
claimScanIntervalMs: options.claimScanIntervalMs ?? DEFAULT_CLAIM_SCAN_INTERVAL_MS,
|
|
534
|
+
claimScanning: false,
|
|
449
535
|
// v0.10 T-49-2: concurrent running Map replaces v0.9 single `current`.
|
|
450
536
|
running: new Map(),
|
|
451
537
|
concurrencyLimit: options.concurrencyLimit ?? 2,
|
|
@@ -467,37 +553,25 @@ export async function watchCommand(options = {}) {
|
|
|
467
553
|
lastActivityMs: Date.now(),
|
|
468
554
|
idleTimer: null,
|
|
469
555
|
idleExiting: false,
|
|
556
|
+
taskRunnerFactory,
|
|
557
|
+
pausedCapacity: false,
|
|
558
|
+
pausedUntil: null,
|
|
559
|
+
pauseTimer: null,
|
|
560
|
+
capacityProbe: false,
|
|
561
|
+
capacityBackoffMs: options.capacityBackoffMs ?? DEFAULT_CAPACITY_BACKOFF_MS,
|
|
562
|
+
resumeJitterMs: options.resumeJitterMs ?? DEFAULT_RESUME_JITTER_MS,
|
|
470
563
|
singletonLock,
|
|
471
564
|
};
|
|
472
565
|
subscribeChannel(state, taskRunnerFactory);
|
|
473
|
-
// v0.34-B: one-shot startup claim scan. The 5-minute
|
|
474
|
-
// (v0.30-B) can
|
|
475
|
-
// minutes before the runner started
|
|
476
|
-
//
|
|
477
|
-
//
|
|
478
|
-
//
|
|
479
|
-
//
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
p_runner_id: state.session.runner_id,
|
|
483
|
-
p_since: "1970-01-01T00:00:00.000Z",
|
|
484
|
-
});
|
|
485
|
-
if (error) {
|
|
486
|
-
process.stderr.write(`[acc-runner] startup claim scan failed: ${error.message}\n`);
|
|
487
|
-
}
|
|
488
|
-
else {
|
|
489
|
-
const rows = (data ?? []);
|
|
490
|
-
for (const row of rows) {
|
|
491
|
-
if (!row?.id)
|
|
492
|
-
continue;
|
|
493
|
-
enqueue(state, row.id, taskRunnerFactory);
|
|
494
|
-
}
|
|
495
|
-
console.log(`[acc-runner] startup claim scan: ${rows.length} task(s) found`);
|
|
496
|
-
}
|
|
497
|
-
}
|
|
498
|
-
catch (err) {
|
|
499
|
-
process.stderr.write(`[acc-runner] startup claim scan failed: ${err.message}\n`);
|
|
500
|
-
}
|
|
566
|
+
// v0.34-B / v0.62 (T-62-1): one-shot startup claim scan. The 5-minute
|
|
567
|
+
// pollSince watermark (v0.30-B) can miss a task dispatched (runner_id set)
|
|
568
|
+
// more than 5 minutes before the runner started whose realtime task_assigned
|
|
569
|
+
// event was lost during the restart window. claimScan() scans with an epoch
|
|
570
|
+
// watermark so any task currently assigned to this runner_id is enqueued
|
|
571
|
+
// regardless of dispatch age. Does NOT update state.pollSince — the ongoing
|
|
572
|
+
// poll loop keeps its 5-min watermark. The same routine runs periodically
|
|
573
|
+
// below as the realtime-miss safety net.
|
|
574
|
+
await claimScan(state, taskRunnerFactory, "startup");
|
|
501
575
|
// v0.30-B: fire an immediate poll right after subscribing so any task
|
|
502
576
|
// dispatched before the runner came online (where the fire-and-forget
|
|
503
577
|
// Realtime broadcast went to a dead channel) is picked up at startup
|
|
@@ -520,6 +594,15 @@ export async function watchCommand(options = {}) {
|
|
|
520
594
|
state.pollTimer = setInterval(() => {
|
|
521
595
|
void pollOnce(state, taskRunnerFactory);
|
|
522
596
|
}, pollMs);
|
|
597
|
+
// v0.62 (T-62-1): periodic full claim scan — the realtime-miss safety net.
|
|
598
|
+
// Independent of the delta-poll watermark, so a task assigned with an
|
|
599
|
+
// updated_at at/behind the watermark (and whose task_assigned broadcast was
|
|
600
|
+
// dropped) is re-claimed within one interval rather than waiting for a
|
|
601
|
+
// manual restart. Single-flight inside claimScan(); enqueue's seen-guard
|
|
602
|
+
// keeps it from double-claiming work the realtime path or delta-poll took.
|
|
603
|
+
state.claimScanTimer = setInterval(() => {
|
|
604
|
+
void claimScan(state, taskRunnerFactory, "periodic");
|
|
605
|
+
}, state.claimScanIntervalMs);
|
|
523
606
|
// v0.13-MULTI-RUNNER: refresh the runner's capability tags so an
|
|
524
607
|
// operator change to ACC_RUNNER_CAPABILITIES (or to ~/.config/acc-
|
|
525
608
|
// runner/config.json) takes effect on the next restart without
|
|
@@ -552,8 +635,11 @@ export async function watchCommand(options = {}) {
|
|
|
552
635
|
clearTimeout(state.heartbeatTimer);
|
|
553
636
|
clearInterval(state.refreshTimer);
|
|
554
637
|
clearInterval(state.pollTimer);
|
|
638
|
+
clearInterval(state.claimScanTimer); // v0.62 (T-62-1)
|
|
555
639
|
if (state.idleTimer)
|
|
556
640
|
clearInterval(state.idleTimer);
|
|
641
|
+
if (state.pauseTimer)
|
|
642
|
+
clearTimeout(state.pauseTimer); // v0.56 (T-56-1)
|
|
557
643
|
// v0.10 T-49-2: cancel every in-flight task (replaces v0.9 single cancel).
|
|
558
644
|
for (const ctrl of state.running.values()) {
|
|
559
645
|
ctrl.cancel();
|
|
@@ -640,6 +726,7 @@ export async function watchCommand(options = {}) {
|
|
|
640
726
|
return {
|
|
641
727
|
stop,
|
|
642
728
|
pollOnce: () => pollOnce(state, taskRunnerFactory),
|
|
729
|
+
claimScanOnce: () => claimScan(state, taskRunnerFactory, "periodic"), // v0.62 (T-62-1)
|
|
643
730
|
runningCount: () => state.running.size,
|
|
644
731
|
};
|
|
645
732
|
}
|
|
@@ -674,6 +761,7 @@ function scheduleHeartbeat(state, taskRunnerFactory, baseMs) {
|
|
|
674
761
|
clearTimeout(state.heartbeatTimer);
|
|
675
762
|
clearInterval(state.refreshTimer);
|
|
676
763
|
clearInterval(state.pollTimer);
|
|
764
|
+
clearInterval(state.claimScanTimer); // v0.62 (T-62-1)
|
|
677
765
|
process.exit(1);
|
|
678
766
|
}
|
|
679
767
|
}
|
|
@@ -701,6 +789,11 @@ function scheduleHeartbeat(state, taskRunnerFactory, baseMs) {
|
|
|
701
789
|
async function maybeIdleExit(state, stop, exitFn) {
|
|
702
790
|
if (state.stopped || state.idleExiting || state.idleTtlMs === null)
|
|
703
791
|
return;
|
|
792
|
+
// v0.56 (T-56-1): a capacity pause is not idleness — the runner is
|
|
793
|
+
// deliberately waiting for its session window to reopen. Don't TTL-exit
|
|
794
|
+
// it out from under the scheduled resume.
|
|
795
|
+
if (state.pausedCapacity)
|
|
796
|
+
return;
|
|
704
797
|
if (state.running.size > 0 ||
|
|
705
798
|
state.queue.length > 0 ||
|
|
706
799
|
state.reviewQueue.length > 0 ||
|
|
@@ -735,9 +828,17 @@ async function maybeIdleExit(state, stop, exitFn) {
|
|
|
735
828
|
async function pumpReviews(state) {
|
|
736
829
|
if (state.reviewPumping)
|
|
737
830
|
return;
|
|
831
|
+
// v0.56 (T-56-1): don't claim reviews while paused for capacity, and hold
|
|
832
|
+
// reviews back during the single-probe window so the probe TASK confirms
|
|
833
|
+
// the session reopened before we spend more capacity on reviews.
|
|
834
|
+
if (state.pausedCapacity || state.capacityProbe)
|
|
835
|
+
return;
|
|
738
836
|
state.reviewPumping = true;
|
|
739
837
|
try {
|
|
740
|
-
while (!state.stopped &&
|
|
838
|
+
while (!state.stopped &&
|
|
839
|
+
!state.pausedCapacity &&
|
|
840
|
+
!state.capacityProbe &&
|
|
841
|
+
state.reviewQueue.length > 0) {
|
|
741
842
|
const next = state.reviewQueue.shift();
|
|
742
843
|
if (!next)
|
|
743
844
|
continue;
|
|
@@ -745,6 +846,16 @@ async function pumpReviews(state) {
|
|
|
745
846
|
const outcome = await state.runReview(next, { supabase: state.supabase });
|
|
746
847
|
const tag = outcome.decision === "reviewer_error" ? chalk.red : chalk.gray;
|
|
747
848
|
console.log(tag(`[acc-runner] review ${next.review_id} task=${next.task_id} pr=${next.pr_number} decision=${outcome.decision} confidence=${outcome.confidence.toFixed(2)}`));
|
|
849
|
+
// v0.56 (T-56-1): a reviewer that hit the session/usage limit reports
|
|
850
|
+
// a DISTINCT outcome (reviewer_capacity, NOT reviewer_error) so the
|
|
851
|
+
// api side (T-56-2) can exclude it from automerge retry caps and
|
|
852
|
+
// re-dispatch the review. runReview has already submitted the
|
|
853
|
+
// reviewer_capacity row; here we pause the whole runner exactly as a
|
|
854
|
+
// capacity_exhausted task does.
|
|
855
|
+
if (outcome.decision === "reviewer_capacity") {
|
|
856
|
+
enterCapacityPause(state, next.task_id, outcome.resume_at ?? null, `reviewer ${next.review_id} hit session/usage limit`);
|
|
857
|
+
return;
|
|
858
|
+
}
|
|
748
859
|
}
|
|
749
860
|
catch (err) {
|
|
750
861
|
process.stderr.write(`[acc-runner] review ${next.review_id} crashed: ${err.message}\n`);
|
|
@@ -815,6 +926,120 @@ consecutive) {
|
|
|
815
926
|
catch { /* best-effort */ }
|
|
816
927
|
})();
|
|
817
928
|
}
|
|
929
|
+
/**
|
|
930
|
+
* v0.56 (T-56-1): enter a capacity pause.
|
|
931
|
+
*
|
|
932
|
+
* Triggered when a task OR a review reports capacity_exhausted (Claude
|
|
933
|
+
* account out of session/usage capacity). The runner:
|
|
934
|
+
* - stops claiming tasks AND reviews (pump/pumpReviews bail on the flag);
|
|
935
|
+
* - schedules an automatic resume at the stated reset time (or a default
|
|
936
|
+
* backoff when none was parseable) plus a small jitter;
|
|
937
|
+
* - keeps heartbeating so the board shows online-but-paused, and emits a
|
|
938
|
+
* `runner.paused_capacity` activity event + a runner-level bus message
|
|
939
|
+
* carrying `resume_at` so health/board surfaces can show WHY the fleet
|
|
940
|
+
* is idle (heartbeat_runner's RPC shape is frozen, so the detail is
|
|
941
|
+
* carried additively through these existing channels).
|
|
942
|
+
*
|
|
943
|
+
* Idempotent: a second capacity hit while already paused only ever pushes
|
|
944
|
+
* the resume later, never earlier, so a straggler task that 429s a moment
|
|
945
|
+
* after the first one can't shorten the wait.
|
|
946
|
+
*/
|
|
947
|
+
function enterCapacityPause(state, triggerTaskId, resumeAtIso, detail) {
|
|
948
|
+
const now = Date.now();
|
|
949
|
+
const parsed = resumeAtIso ? Date.parse(resumeAtIso) : NaN;
|
|
950
|
+
const resumeMs = Number.isFinite(parsed) && parsed > now ? parsed : now + state.capacityBackoffMs;
|
|
951
|
+
const source = Number.isFinite(parsed) && parsed > now ? "reset_time" : "default_backoff";
|
|
952
|
+
// Already paused: only extend the window, never shorten it.
|
|
953
|
+
if (state.pausedCapacity && state.pausedUntil !== null && resumeMs <= state.pausedUntil) {
|
|
954
|
+
return;
|
|
955
|
+
}
|
|
956
|
+
state.pausedCapacity = true;
|
|
957
|
+
state.pausedUntil = resumeMs;
|
|
958
|
+
if (state.pauseTimer) {
|
|
959
|
+
clearTimeout(state.pauseTimer);
|
|
960
|
+
state.pauseTimer = null;
|
|
961
|
+
}
|
|
962
|
+
const jitter = state.resumeJitterMs > 0 ? Math.floor(Math.random() * state.resumeJitterMs) : 0;
|
|
963
|
+
const delay = Math.max(0, resumeMs - now) + jitter;
|
|
964
|
+
const resumeAtFinal = new Date(now + delay).toISOString();
|
|
965
|
+
process.stderr.write(chalk.yellow(`[acc-runner] PAUSED (capacity): ${detail}. Not claiming tasks or reviews; ` +
|
|
966
|
+
`resuming at ${resumeAtFinal} (${source}).\n`));
|
|
967
|
+
void (async () => {
|
|
968
|
+
try {
|
|
969
|
+
await state.supabase.rpc("log_activity", {
|
|
970
|
+
p_verb: "runner.paused_capacity",
|
|
971
|
+
p_target_id: state.session.runner_id,
|
|
972
|
+
p_payload: {
|
|
973
|
+
resume_at: resumeAtFinal,
|
|
974
|
+
source,
|
|
975
|
+
detail,
|
|
976
|
+
version: PACKAGE_VERSION,
|
|
977
|
+
},
|
|
978
|
+
p_target_type: "runner",
|
|
979
|
+
});
|
|
980
|
+
}
|
|
981
|
+
catch { /* best-effort */ }
|
|
982
|
+
})();
|
|
983
|
+
// Runner-level bus message so operators see the paused status + reason on
|
|
984
|
+
// /messages even though heartbeat_runner itself can't carry a detail field.
|
|
985
|
+
// Anchored to the triggering task so the RPC can resolve the org scope
|
|
986
|
+
// (post_agent_message looks up org_id from acc.tasks for a non-null id).
|
|
987
|
+
void postRunnerStateMessage(state.supabase, {
|
|
988
|
+
task_id: triggerTaskId,
|
|
989
|
+
sender_id: state.session.runner_id,
|
|
990
|
+
state: "blocked",
|
|
991
|
+
protocol: "info",
|
|
992
|
+
payload: {
|
|
993
|
+
capacity_paused: true,
|
|
994
|
+
runner_id: state.session.runner_id,
|
|
995
|
+
resume_at: resumeAtFinal,
|
|
996
|
+
source,
|
|
997
|
+
detail,
|
|
998
|
+
},
|
|
999
|
+
kind: "blocked",
|
|
1000
|
+
}).catch((err) => {
|
|
1001
|
+
process.stderr.write(`[acc-runner] capacity pause bus post failed: ${err.message}\n`);
|
|
1002
|
+
});
|
|
1003
|
+
state.pauseTimer = setTimeout(() => {
|
|
1004
|
+
void resumeFromCapacity(state);
|
|
1005
|
+
}, delay);
|
|
1006
|
+
state.pauseTimer.unref?.();
|
|
1007
|
+
}
|
|
1008
|
+
/**
|
|
1009
|
+
* v0.56 (T-56-1): resume from a capacity pause.
|
|
1010
|
+
*
|
|
1011
|
+
* Clears the pause and arms the single-probe clamp: the runner claims at
|
|
1012
|
+
* most ONE task to confirm the window actually reopened before resuming
|
|
1013
|
+
* full task concurrency and reviews. If the probe itself 429s, the
|
|
1014
|
+
* completion handler re-enters the pause; if it succeeds, the probe clamp
|
|
1015
|
+
* clears and normal claiming resumes.
|
|
1016
|
+
*/
|
|
1017
|
+
async function resumeFromCapacity(state) {
|
|
1018
|
+
if (state.stopped)
|
|
1019
|
+
return;
|
|
1020
|
+
state.pausedCapacity = false;
|
|
1021
|
+
state.pausedUntil = null;
|
|
1022
|
+
if (state.pauseTimer) {
|
|
1023
|
+
clearTimeout(state.pauseTimer);
|
|
1024
|
+
state.pauseTimer = null;
|
|
1025
|
+
}
|
|
1026
|
+
state.capacityProbe = true;
|
|
1027
|
+
console.log(chalk.gray(`[acc-runner] capacity window reopened — resuming with a single probe task.`));
|
|
1028
|
+
try {
|
|
1029
|
+
await state.supabase.rpc("log_activity", {
|
|
1030
|
+
p_verb: "runner.resume_capacity",
|
|
1031
|
+
p_target_id: state.session.runner_id,
|
|
1032
|
+
p_payload: { probe: true, version: PACKAGE_VERSION },
|
|
1033
|
+
p_target_type: "runner",
|
|
1034
|
+
});
|
|
1035
|
+
}
|
|
1036
|
+
catch { /* best-effort */ }
|
|
1037
|
+
// Poll first (the stale-running sweep may have re-queued the released task
|
|
1038
|
+
// to another runner; this picks up whatever is still assigned here), then
|
|
1039
|
+
// pump — the probe clamp bounds it to one task.
|
|
1040
|
+
await pollOnce(state, state.taskRunnerFactory);
|
|
1041
|
+
void pump(state, state.taskRunnerFactory);
|
|
1042
|
+
}
|
|
818
1043
|
/**
|
|
819
1044
|
* v0.10 T-49-2: concurrent task pump.
|
|
820
1045
|
*
|
|
@@ -842,11 +1067,20 @@ async function pump(state, factory) {
|
|
|
842
1067
|
`[acc-runner] Fix the underlying issue then run \`acc-runner quarantine clear\`.\n`);
|
|
843
1068
|
return;
|
|
844
1069
|
}
|
|
1070
|
+
// v0.56 (T-56-1): out of session/usage capacity — don't claim. Queued
|
|
1071
|
+
// tasks stay queued; the scheduled resume re-drives pump().
|
|
1072
|
+
if (state.pausedCapacity) {
|
|
1073
|
+
return;
|
|
1074
|
+
}
|
|
1075
|
+
// v0.56 (T-56-1): during the post-resume probe window, claim exactly one
|
|
1076
|
+
// task to confirm the session reopened before unleashing full concurrency.
|
|
1077
|
+
const effectiveLimit = state.capacityProbe ? 1 : state.concurrencyLimit;
|
|
845
1078
|
// Fill available concurrency slots from the queue.
|
|
846
1079
|
while (!state.stopped &&
|
|
847
1080
|
!state.quarantined &&
|
|
1081
|
+
!state.pausedCapacity &&
|
|
848
1082
|
state.queue.length > 0 &&
|
|
849
|
-
state.running.size <
|
|
1083
|
+
state.running.size < effectiveLimit) {
|
|
850
1084
|
const next = state.queue.shift();
|
|
851
1085
|
if (!next)
|
|
852
1086
|
continue;
|
|
@@ -867,6 +1101,15 @@ async function pump(state, factory) {
|
|
|
867
1101
|
.then((outcome) => {
|
|
868
1102
|
state.running.delete(next);
|
|
869
1103
|
touchActivity(state); // v0.12.0 (T-52-7): idle clock restarts at task end
|
|
1104
|
+
// v0.56 (T-56-1): capacity exhaustion pauses the WHOLE runner —
|
|
1105
|
+
// never a task_error, never quarantine. The task was left 'running'
|
|
1106
|
+
// for the stale-running sweep to requeue losslessly (runner_id
|
|
1107
|
+
// cleared). Do not re-fire pump for new work; the scheduled resume
|
|
1108
|
+
// does that with a single probe.
|
|
1109
|
+
if (outcome.status === "capacity_paused" || outcome.capacity_exhausted) {
|
|
1110
|
+
enterCapacityPause(state, next, outcome.resume_at ?? null, outcome.error || "task hit session/usage limit");
|
|
1111
|
+
return;
|
|
1112
|
+
}
|
|
870
1113
|
// v0.14.0 (T-54-2, GA-6): record the claude CLI version at the last
|
|
871
1114
|
// successful task so `doctor` can WARN when claude auto-updates
|
|
872
1115
|
// under the runner. Best-effort and detached — never blocks pump.
|
|
@@ -931,6 +1174,13 @@ async function pump(state, factory) {
|
|
|
931
1174
|
return;
|
|
932
1175
|
}
|
|
933
1176
|
}
|
|
1177
|
+
// v0.56 (T-56-1): a non-capacity completion (ok, or a genuine
|
|
1178
|
+
// task_error) proves the session window is open — clear the probe
|
|
1179
|
+
// clamp and let reviews resume alongside full task concurrency.
|
|
1180
|
+
if (state.capacityProbe) {
|
|
1181
|
+
state.capacityProbe = false;
|
|
1182
|
+
void pumpReviews(state);
|
|
1183
|
+
}
|
|
934
1184
|
// Task done (ok, failed without quarantine, or cancelled).
|
|
935
1185
|
// Re-fire pump so the next queued task can claim the freed slot.
|
|
936
1186
|
void pump(state, factory);
|
|
@@ -939,9 +1189,22 @@ async function pump(state, factory) {
|
|
|
939
1189
|
state.running.delete(next);
|
|
940
1190
|
touchActivity(state); // v0.12.0 (T-52-7): idle clock restarts at task end
|
|
941
1191
|
process.stderr.write(`[acc-runner] task ${next} crashed: ${err.message}\n`);
|
|
1192
|
+
// v0.56 (T-56-1): a crash is not a capacity signal — clear the probe
|
|
1193
|
+
// clamp so the runner doesn't stay stuck at concurrency 1.
|
|
1194
|
+
if (state.capacityProbe) {
|
|
1195
|
+
state.capacityProbe = false;
|
|
1196
|
+
void pumpReviews(state);
|
|
1197
|
+
}
|
|
942
1198
|
void pump(state, factory);
|
|
943
1199
|
});
|
|
944
1200
|
}
|
|
1201
|
+
// v0.56 (T-56-1): the probe found nothing to test with (no queued task at
|
|
1202
|
+
// resume) — clear the clamp and release any held reviews so an idle
|
|
1203
|
+
// resume doesn't strand pending reviews behind a probe that never runs.
|
|
1204
|
+
if (state.capacityProbe && state.running.size === 0 && state.queue.length === 0) {
|
|
1205
|
+
state.capacityProbe = false;
|
|
1206
|
+
void pumpReviews(state);
|
|
1207
|
+
}
|
|
945
1208
|
}
|
|
946
1209
|
finally {
|
|
947
1210
|
state.pumping = false;
|
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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"}
|