@cat-factory/worker 0.52.8 → 0.52.10
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/index.d.ts.map +1 -1
- package/dist/index.js +11 -0
- package/dist/index.js.map +1 -1
- package/dist/infrastructure/workflows/BootstrapWorkflow.d.ts.map +1 -1
- package/dist/infrastructure/workflows/BootstrapWorkflow.js +20 -14
- package/dist/infrastructure/workflows/BootstrapWorkflow.js.map +1 -1
- package/dist/infrastructure/workflows/EnvConfigRepairWorkflow.d.ts.map +1 -1
- package/dist/infrastructure/workflows/EnvConfigRepairWorkflow.js +15 -10
- package/dist/infrastructure/workflows/EnvConfigRepairWorkflow.js.map +1 -1
- package/dist/infrastructure/workflows/ExecutionWorkflow.d.ts.map +1 -1
- package/dist/infrastructure/workflows/ExecutionWorkflow.js +5 -3
- package/dist/infrastructure/workflows/ExecutionWorkflow.js.map +1 -1
- package/dist/infrastructure/workflows/runtime.d.ts +25 -0
- package/dist/infrastructure/workflows/runtime.d.ts.map +1 -0
- package/dist/infrastructure/workflows/runtime.js +36 -0
- package/dist/infrastructure/workflows/runtime.js.map +1 -0
- package/dist/infrastructure/workflows/sweeper.d.ts +13 -1
- package/dist/infrastructure/workflows/sweeper.d.ts.map +1 -1
- package/dist/infrastructure/workflows/sweeper.js +29 -6
- package/dist/infrastructure/workflows/sweeper.js.map +1 -1
- package/package.json +15 -15
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAA;AAGpG,OAAO,KAAK,EAAE,GAAG,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAmCzF,OAAO,EAAE,iBAAiB,EAAE,MAAM,8CAA8C,CAAA;AAChF,OAAO,EAAE,sBAAsB,EAAE,MAAM,mDAAmD,CAAA;AAC1F,OAAO,EAAE,iBAAiB,EAAE,MAAM,8CAA8C,CAAA;AAChF,OAAO,EAAE,uBAAuB,EAAE,MAAM,oDAAoD,CAAA;AAE5F,OAAO,EAAE,kBAAkB,EAAE,MAAM,gDAAgD,CAAA;AAGnF,OAAO,EAAE,eAAe,EAAE,MAAM,6CAA6C,CAAA;AAE7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,qDAAqD,CAAA;AAKxF,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,KAAK,oBAAoB,GAC1B,MAAM,gCAAgC,CAAA;AAMvC,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,yBAAyB,EACzB,KAAK,mBAAmB,GACzB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAA;;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAA;AAGpG,OAAO,KAAK,EAAE,GAAG,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAmCzF,OAAO,EAAE,iBAAiB,EAAE,MAAM,8CAA8C,CAAA;AAChF,OAAO,EAAE,sBAAsB,EAAE,MAAM,mDAAmD,CAAA;AAC1F,OAAO,EAAE,iBAAiB,EAAE,MAAM,8CAA8C,CAAA;AAChF,OAAO,EAAE,uBAAuB,EAAE,MAAM,oDAAoD,CAAA;AAE5F,OAAO,EAAE,kBAAkB,EAAE,MAAM,gDAAgD,CAAA;AAGnF,OAAO,EAAE,eAAe,EAAE,MAAM,6CAA6C,CAAA;AAE7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,qDAAqD,CAAA;AAKxF,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,KAAK,oBAAoB,GAC1B,MAAM,gCAAgC,CAAA;AAMvC,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,yBAAyB,EACzB,KAAK,mBAAmB,GACzB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAA;;IAyDjG,KAAK,UAAU,OAAO,OAAO,GAAG,OAAO,gBAAgB;IAOjD,SAAS,aAAa,mBAAmB,OAAO,GAAG,OAAO,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAkU1F,KAAK,QACF,YAAY,CAAC,qBAAqB,GAAG,iBAAiB,CAAC,OACzD,GAAG,GACP,OAAO,CAAC,IAAI,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -66,6 +66,16 @@ function errInfo(error) {
|
|
|
66
66
|
const SWEEP_LEASE_MS = 5 * 60 * 1000;
|
|
67
67
|
/** An execution whose instance stays missing this long is failed `stalled`, not re-driven. */
|
|
68
68
|
const SWEEP_HARD_STALL_MS = 60 * 60 * 1000;
|
|
69
|
+
/**
|
|
70
|
+
* Per-isolate "first observed orphaned" clock for the run sweeper (see `sweepStuckRuns`).
|
|
71
|
+
* Keyed by run id, it makes the hard-stall deadline measure time-OBSERVED-orphaned rather
|
|
72
|
+
* than raw lease age, so a cron outage / deploy freeze longer than `SWEEP_HARD_STALL_MS`
|
|
73
|
+
* doesn't wrongly fail a recoverable run on the first post-outage tick. A warm isolate carries
|
|
74
|
+
* it across the 2-min cron ticks; an isolate eviction just resets the clock (the safe
|
|
75
|
+
* direction — more re-drive grace, never a premature kill). Mirrors the Node sweeper's
|
|
76
|
+
* per-process `orphanedSince` map.
|
|
77
|
+
*/
|
|
78
|
+
const runSweepOrphanedSince = new Map();
|
|
69
79
|
/** A GitHub projection is reconciled if it hasn't synced within this window. */
|
|
70
80
|
const GITHUB_RECONCILE_STALE_MS = 30 * 60 * 1000;
|
|
71
81
|
/** A `running` Kaizen grading older than this is re-driven (its sweep crashed mid-flight). */
|
|
@@ -233,6 +243,7 @@ export default {
|
|
|
233
243
|
clock,
|
|
234
244
|
leaseMs: SWEEP_LEASE_MS,
|
|
235
245
|
hardStallMs: SWEEP_HARD_STALL_MS,
|
|
246
|
+
orphanedSince: runSweepOrphanedSince,
|
|
236
247
|
})
|
|
237
248
|
// Surface what the sweep did — the key signal for "are runs getting stuck?"
|
|
238
249
|
// Only log when it actually acted.
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BootstrapWorkflow.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/workflows/BootstrapWorkflow.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,KAAK,aAAa,EAElB,KAAK,YAAY,EAElB,MAAM,oBAAoB,CAAA;AAE3B,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAA;
|
|
1
|
+
{"version":3,"file":"BootstrapWorkflow.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/workflows/BootstrapWorkflow.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,KAAK,aAAa,EAElB,KAAK,YAAY,EAElB,MAAM,oBAAoB,CAAA;AAE3B,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAA;AAMjC,sFAAsF;AACtF,MAAM,WAAW,uBAAuB;IACtC,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;CACd;AAQD;;;;;;;;;GASG;AACH,qBAAa,iBAAkB,SAAQ,kBAAkB,CAAC,GAAG,EAAE,uBAAuB,CAAC;IACtE,GAAG,CAChB,KAAK,EAAE,aAAa,CAAC,uBAAuB,CAAC,EAC7C,IAAI,EAAE,YAAY,GACjB,OAAO,CAAC,IAAI,CAAC,CA+Df;CACF"}
|
|
@@ -2,6 +2,7 @@ import { WorkflowEntrypoint, } from 'cloudflare:workers';
|
|
|
2
2
|
import { buildContainer } from '../container';
|
|
3
3
|
import { loadConfig } from '../config';
|
|
4
4
|
import { logger } from '../observability/logger';
|
|
5
|
+
import { buildWorkflowRuntime } from './runtime';
|
|
5
6
|
/** Per-step retry policy: a transient poll failure retries before the run fails. */
|
|
6
7
|
const STEP_CONFIG = {
|
|
7
8
|
retries: { limit: 3, delay: '5 seconds', backoff: 'exponential' },
|
|
@@ -21,18 +22,18 @@ export class BootstrapWorkflow extends WorkflowEntrypoint {
|
|
|
21
22
|
async run(event, step) {
|
|
22
23
|
const { workspaceId, jobId } = event.payload;
|
|
23
24
|
// One DI-graph assembly per wake (pure wiring over env bindings, no I/O) shared by
|
|
24
|
-
// every poll in this invocation; a hibernation wake replays `run()` and rebuilds.
|
|
25
|
-
|
|
26
|
-
|
|
25
|
+
// every poll in this invocation; a hibernation wake replays `run()` and rebuilds. Built
|
|
26
|
+
// via `buildWorkflowRuntime` so a transient throw here can't kill the instance terminally
|
|
27
|
+
// (which the sweeper would then finalize as a STOPPED job — see F5/F2).
|
|
28
|
+
const { container, execConfig } = await buildWorkflowRuntime(() => ({ container: buildContainer(this.env), execConfig: loadConfig(this.env).execution }), step, 'bootstrap');
|
|
27
29
|
const pollInterval = execConfig.jobPollInterval;
|
|
28
30
|
const log = logger.child({ workspaceId, jobId, workflow: 'bootstrap' });
|
|
29
31
|
// Consecutive failures to READ status — not the bootstrap failing. The agent
|
|
30
32
|
// can briefly make the container unresponsive while busy (cloning, installing,
|
|
31
33
|
// building); the job's real liveness is bounded container-side (inactivity +
|
|
32
34
|
// max-duration watchdogs), and a vanished container surfaces as a 404→failed
|
|
33
|
-
// value, so a *thrown* poll error is always transient.
|
|
34
|
-
//
|
|
35
|
-
// first blip.
|
|
35
|
+
// value, so a *thrown* poll error is always transient. Keep polling through them
|
|
36
|
+
// (reset the counter on any good poll) rather than abandoning a healthy run.
|
|
36
37
|
let pollReadFailures = 0;
|
|
37
38
|
for (let p = 0; p < execConfig.jobMaxPolls; p++) {
|
|
38
39
|
await step.sleep(`poll-wait-${p}`, pollInterval);
|
|
@@ -48,13 +49,14 @@ export class BootstrapWorkflow extends WorkflowEntrypoint {
|
|
|
48
49
|
catch (error) {
|
|
49
50
|
pollReadFailures += 1;
|
|
50
51
|
log.warn({ err: error instanceof Error ? error.message : String(error), pollReadFailures }, 'bootstrap poll could not read job status; treating as still running and retrying');
|
|
51
|
-
//
|
|
52
|
-
//
|
|
53
|
-
//
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
52
|
+
// Keep the Workflows instance ALIVE and keep polling. A thrown poll error is always
|
|
53
|
+
// transient — a genuinely vanished container surfaces as a 404→`failed` poll RESULT
|
|
54
|
+
// (handled below), not a throw. Returning here would make the instance TERMINAL, and
|
|
55
|
+
// the cron sweeper would then route the still-`running` job to `finalizeOrphan` →
|
|
56
|
+
// `bootstrap.service.stop`, wrongly FAILING a bootstrap that was merely slow or briefly
|
|
57
|
+
// unreachable instead of resuming it (F2). The poll budget + the container-side
|
|
58
|
+
// watchdogs bound the total wait; a warm-isolate sweep still leaves a live instance
|
|
59
|
+
// alone. `pollReadFailures` is now purely diagnostic (how long we've been blind).
|
|
58
60
|
continue;
|
|
59
61
|
}
|
|
60
62
|
pollReadFailures = 0;
|
|
@@ -68,7 +70,11 @@ export class BootstrapWorkflow extends WorkflowEntrypoint {
|
|
|
68
70
|
}
|
|
69
71
|
// still running — loop and poll again after the next durable sleep.
|
|
70
72
|
}
|
|
71
|
-
|
|
73
|
+
// Poll budget spent. By now the container is long past its own max-duration watchdog, so a
|
|
74
|
+
// healthy-and-progressing run cannot legitimately reach here — the container is dead and its
|
|
75
|
+
// last poll never reported terminal. Returning makes the instance terminal; the sweeper then
|
|
76
|
+
// finalizes the orphaned `running` job (the correct terminal outcome for a truly-wedged run).
|
|
77
|
+
log.warn('bootstrap run did not finish within its polling budget; finalizing via sweeper');
|
|
72
78
|
}
|
|
73
79
|
}
|
|
74
80
|
//# sourceMappingURL=BootstrapWorkflow.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BootstrapWorkflow.js","sourceRoot":"","sources":["../../../src/infrastructure/workflows/BootstrapWorkflow.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,GAKnB,MAAM,oBAAoB,CAAA;AAG3B,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAQhD,oFAAoF;AACpF,MAAM,WAAW,GAAG;IAClB,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE;IACjE,OAAO,EAAE,WAAW;CACQ,CAAA;AAE9B;;;;;;;;;GASG;AACH,MAAM,OAAO,iBAAkB,SAAQ,kBAAgD;IAC5E,KAAK,CAAC,GAAG,CAChB,KAA6C,EAC7C,IAAkB;QAElB,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,OAAO,CAAA;QAC5C,mFAAmF;QACnF,
|
|
1
|
+
{"version":3,"file":"BootstrapWorkflow.js","sourceRoot":"","sources":["../../../src/infrastructure/workflows/BootstrapWorkflow.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EnvConfigRepairWorkflow.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/workflows/EnvConfigRepairWorkflow.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,KAAK,aAAa,EAElB,KAAK,YAAY,EAElB,MAAM,oBAAoB,CAAA;AAE3B,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAA;
|
|
1
|
+
{"version":3,"file":"EnvConfigRepairWorkflow.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/workflows/EnvConfigRepairWorkflow.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,KAAK,aAAa,EAElB,KAAK,YAAY,EAElB,MAAM,oBAAoB,CAAA;AAE3B,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAA;AAMjC,0FAA0F;AAC1F,MAAM,WAAW,6BAA6B;IAC5C,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;CACd;AAQD;;;;;;;;GAQG;AACH,qBAAa,uBAAwB,SAAQ,kBAAkB,CAC7D,GAAG,EACH,6BAA6B,CAC9B;IACgB,GAAG,CAChB,KAAK,EAAE,aAAa,CAAC,6BAA6B,CAAC,EACnD,IAAI,EAAE,YAAY,GACjB,OAAO,CAAC,IAAI,CAAC,CA0Df;CACF"}
|
|
@@ -2,6 +2,7 @@ import { WorkflowEntrypoint, } from 'cloudflare:workers';
|
|
|
2
2
|
import { buildContainer } from '../container';
|
|
3
3
|
import { loadConfig } from '../config';
|
|
4
4
|
import { logger } from '../observability/logger';
|
|
5
|
+
import { buildWorkflowRuntime } from './runtime';
|
|
5
6
|
/** Per-step retry policy: a transient poll failure retries before the run fails. */
|
|
6
7
|
const STEP_CONFIG = {
|
|
7
8
|
retries: { limit: 3, delay: '5 seconds', backoff: 'exponential' },
|
|
@@ -20,15 +21,16 @@ export class EnvConfigRepairWorkflow extends WorkflowEntrypoint {
|
|
|
20
21
|
async run(event, step) {
|
|
21
22
|
const { workspaceId, jobId } = event.payload;
|
|
22
23
|
// One DI-graph assembly per wake (pure wiring over env bindings, no I/O) shared by
|
|
23
|
-
// every poll in this invocation; a hibernation wake replays `run()` and rebuilds.
|
|
24
|
-
|
|
25
|
-
|
|
24
|
+
// every poll in this invocation; a hibernation wake replays `run()` and rebuilds. Built
|
|
25
|
+
// via `buildWorkflowRuntime` so a transient throw here can't kill the instance terminally
|
|
26
|
+
// (see F5/F2).
|
|
27
|
+
const { container, execConfig } = await buildWorkflowRuntime(() => ({ container: buildContainer(this.env), execConfig: loadConfig(this.env).execution }), step, 'repair');
|
|
26
28
|
const pollInterval = execConfig.jobPollInterval;
|
|
27
29
|
const log = logger.child({ workspaceId, jobId, workflow: 'env-config-repair' });
|
|
28
30
|
// Consecutive failures to READ status — not the repair failing. See BootstrapWorkflow
|
|
29
31
|
// for the rationale: a thrown poll error is always transient (a vanished container
|
|
30
|
-
// surfaces as a 404→failed value), so
|
|
31
|
-
//
|
|
32
|
+
// surfaces as a 404→failed value), so keep polling through them rather than abandoning a
|
|
33
|
+
// healthy run.
|
|
32
34
|
let pollReadFailures = 0;
|
|
33
35
|
for (let p = 0; p < execConfig.jobMaxPolls; p++) {
|
|
34
36
|
await step.sleep(`poll-wait-${p}`, pollInterval);
|
|
@@ -44,10 +46,11 @@ export class EnvConfigRepairWorkflow extends WorkflowEntrypoint {
|
|
|
44
46
|
catch (error) {
|
|
45
47
|
pollReadFailures += 1;
|
|
46
48
|
log.warn({ err: error instanceof Error ? error.message : String(error), pollReadFailures }, 'env-config-repair poll could not read job status; treating as still running and retrying');
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
49
|
+
// Keep the instance ALIVE and keep polling — see BootstrapWorkflow (F2): returning on a
|
|
50
|
+
// transient read failure would make the instance terminal and get the still-`running`
|
|
51
|
+
// job finalized as STOPPED by the sweeper instead of resumed. A vanished container
|
|
52
|
+
// surfaces as a 404→`failed` poll result below, not a throw; `pollReadFailures` is now
|
|
53
|
+
// purely diagnostic.
|
|
51
54
|
continue;
|
|
52
55
|
}
|
|
53
56
|
pollReadFailures = 0;
|
|
@@ -61,7 +64,9 @@ export class EnvConfigRepairWorkflow extends WorkflowEntrypoint {
|
|
|
61
64
|
}
|
|
62
65
|
// still running — loop and poll again after the next durable sleep.
|
|
63
66
|
}
|
|
64
|
-
|
|
67
|
+
// Poll budget spent (container is dead past its watchdog); the sweeper finalizes the
|
|
68
|
+
// orphaned `running` job — the correct terminal outcome for a truly-wedged run.
|
|
69
|
+
log.warn('env-config-repair run did not finish within its polling budget; finalizing via sweeper');
|
|
65
70
|
}
|
|
66
71
|
}
|
|
67
72
|
//# sourceMappingURL=EnvConfigRepairWorkflow.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EnvConfigRepairWorkflow.js","sourceRoot":"","sources":["../../../src/infrastructure/workflows/EnvConfigRepairWorkflow.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,GAKnB,MAAM,oBAAoB,CAAA;AAG3B,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAQhD,oFAAoF;AACpF,MAAM,WAAW,GAAG;IAClB,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE;IACjE,OAAO,EAAE,WAAW;CACQ,CAAA;AAE9B;;;;;;;;GAQG;AACH,MAAM,OAAO,uBAAwB,SAAQ,kBAG5C;IACU,KAAK,CAAC,GAAG,CAChB,KAAmD,EACnD,IAAkB;QAElB,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,OAAO,CAAA;QAC5C,mFAAmF;QACnF,
|
|
1
|
+
{"version":3,"file":"EnvConfigRepairWorkflow.js","sourceRoot":"","sources":["../../../src/infrastructure/workflows/EnvConfigRepairWorkflow.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExecutionWorkflow.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/workflows/ExecutionWorkflow.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,KAAK,aAAa,EAElB,KAAK,YAAY,EAElB,MAAM,oBAAoB,CAAA;AAG3B,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAA;
|
|
1
|
+
{"version":3,"file":"ExecutionWorkflow.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/workflows/ExecutionWorkflow.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,KAAK,aAAa,EAElB,KAAK,YAAY,EAElB,MAAM,oBAAoB,CAAA;AAG3B,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAA;AAKjC,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAA;AAQpE;;;;;;;GAOG;AACH,qBAAa,iBAAkB,SAAQ,kBAAkB,CAAC,GAAG,EAAE,uBAAuB,CAAC;IACtE,GAAG,CAChB,KAAK,EAAE,aAAa,CAAC,uBAAuB,CAAC,EAC7C,IAAI,EAAE,YAAY,GACjB,OAAO,CAAC,IAAI,CAAC,CA8Lf;CACF"}
|
|
@@ -2,6 +2,7 @@ import { WorkflowEntrypoint, } from 'cloudflare:workers';
|
|
|
2
2
|
import { buildContainer } from '../container';
|
|
3
3
|
import { loadConfig } from '../config';
|
|
4
4
|
import { logger } from '../observability/logger';
|
|
5
|
+
import { buildWorkflowRuntime } from './runtime';
|
|
5
6
|
/** Per-step retry policy: failures retry a few times before the run is failed. */
|
|
6
7
|
const STEP_CONFIG = {
|
|
7
8
|
retries: { limit: 3, delay: '5 seconds', backoff: 'exponential' },
|
|
@@ -21,9 +22,10 @@ export class ExecutionWorkflow extends WorkflowEntrypoint {
|
|
|
21
22
|
// One DI-graph assembly per wake: the container is pure wiring over env bindings
|
|
22
23
|
// (no I/O), so every step/poll in this invocation shares it instead of re-running
|
|
23
24
|
// the whole composition root per `step.do`. A hibernation wake replays `run()`
|
|
24
|
-
// from the top, so each wake still gets a fresh build.
|
|
25
|
-
|
|
26
|
-
|
|
25
|
+
// from the top, so each wake still gets a fresh build. Built via `buildWorkflowRuntime`
|
|
26
|
+
// so a transient throw here can't kill a parked (`blocked`) instance terminally and
|
|
27
|
+
// discard the human's decision (F5).
|
|
28
|
+
const { container, execConfig } = await buildWorkflowRuntime(() => ({ container: buildContainer(this.env), execConfig: loadConfig(this.env).execution }), step, 'exec');
|
|
27
29
|
const decisionTimeout = execConfig.decisionTimeout;
|
|
28
30
|
const jobPollInterval = execConfig.jobPollInterval;
|
|
29
31
|
const ciPollInterval = execConfig.ciPollInterval;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExecutionWorkflow.js","sourceRoot":"","sources":["../../../src/infrastructure/workflows/ExecutionWorkflow.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,GAKnB,MAAM,oBAAoB,CAAA;AAI3B,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAGhD,kFAAkF;AAClF,MAAM,WAAW,GAAG;IAClB,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE;IACjE,OAAO,EAAE,WAAW;CACQ,CAAA;AAE9B;;;;;;;GAOG;AACH,MAAM,OAAO,iBAAkB,SAAQ,kBAAgD;IAC5E,KAAK,CAAC,GAAG,CAChB,KAA6C,EAC7C,IAAkB;QAElB,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC,OAAO,CAAA;QAClD,iFAAiF;QACjF,kFAAkF;QAClF,+EAA+E;QAC/E,
|
|
1
|
+
{"version":3,"file":"ExecutionWorkflow.js","sourceRoot":"","sources":["../../../src/infrastructure/workflows/ExecutionWorkflow.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { WorkflowSleepDuration } from 'cloudflare:workers';
|
|
2
|
+
/** Minimal slice of `WorkflowStep` this helper needs — just a durable sleep (testable with a fake). */
|
|
3
|
+
export interface DurableSleeper {
|
|
4
|
+
sleep(name: string, duration: WorkflowSleepDuration): Promise<void>;
|
|
5
|
+
}
|
|
6
|
+
/** How many times to (re-)attempt the per-wake DI construction before giving up. */
|
|
7
|
+
export declare const WORKFLOW_BUILD_ATTEMPTS = 3;
|
|
8
|
+
/**
|
|
9
|
+
* Assemble a workflow's per-wake runtime (DI container + config), retrying a THROWING build a
|
|
10
|
+
* few times with durable sleeps in between.
|
|
11
|
+
*
|
|
12
|
+
* Why: every workflow's `run()` rebuilds its container at the top of each hibernation wake,
|
|
13
|
+
* OUTSIDE any retriable `step.do`. An unhandled throw there makes the Workflows instance
|
|
14
|
+
* TERMINAL — and a terminal instance id can never be re-created. For a run parked `blocked` on a
|
|
15
|
+
* human decision this is severe (F5): the run is invisible to the cron sweeper, so when the human
|
|
16
|
+
* finally resolves it, the signal hits a dead instance (swallowed), the sweeper later sees a
|
|
17
|
+
* `running` run with a `terminal` instance and STOPS it, and the decision is silently discarded.
|
|
18
|
+
* Surviving a transient wake blip here keeps the parked instance alive so the decision lands.
|
|
19
|
+
*
|
|
20
|
+
* A construction failure that persists across all attempts still surfaces (rethrown) — that is a
|
|
21
|
+
* genuinely broken deployment (e.g. a required binding removed), which SHOULD fail loudly rather
|
|
22
|
+
* than be papered over. This guard only buys resilience against transient failures, not misconfig.
|
|
23
|
+
*/
|
|
24
|
+
export declare function buildWorkflowRuntime<T>(build: () => T, step: DurableSleeper, label: string, attempts?: number): Promise<T>;
|
|
25
|
+
//# sourceMappingURL=runtime.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/workflows/runtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAE/D,uGAAuG;AACvG,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CACpE;AAED,oFAAoF;AACpF,eAAO,MAAM,uBAAuB,IAAI,CAAA;AAIxC;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,oBAAoB,CAAC,CAAC,EAC1C,KAAK,EAAE,MAAM,CAAC,EACd,IAAI,EAAE,cAAc,EACpB,KAAK,EAAE,MAAM,EACb,QAAQ,GAAE,MAAgC,GACzC,OAAO,CAAC,CAAC,CAAC,CAaZ"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/** How many times to (re-)attempt the per-wake DI construction before giving up. */
|
|
2
|
+
export const WORKFLOW_BUILD_ATTEMPTS = 3;
|
|
3
|
+
/** Durable pause between construction attempts (a wake blip usually clears in seconds). */
|
|
4
|
+
const BUILD_RETRY_DELAY = '5 seconds';
|
|
5
|
+
/**
|
|
6
|
+
* Assemble a workflow's per-wake runtime (DI container + config), retrying a THROWING build a
|
|
7
|
+
* few times with durable sleeps in between.
|
|
8
|
+
*
|
|
9
|
+
* Why: every workflow's `run()` rebuilds its container at the top of each hibernation wake,
|
|
10
|
+
* OUTSIDE any retriable `step.do`. An unhandled throw there makes the Workflows instance
|
|
11
|
+
* TERMINAL — and a terminal instance id can never be re-created. For a run parked `blocked` on a
|
|
12
|
+
* human decision this is severe (F5): the run is invisible to the cron sweeper, so when the human
|
|
13
|
+
* finally resolves it, the signal hits a dead instance (swallowed), the sweeper later sees a
|
|
14
|
+
* `running` run with a `terminal` instance and STOPS it, and the decision is silently discarded.
|
|
15
|
+
* Surviving a transient wake blip here keeps the parked instance alive so the decision lands.
|
|
16
|
+
*
|
|
17
|
+
* A construction failure that persists across all attempts still surfaces (rethrown) — that is a
|
|
18
|
+
* genuinely broken deployment (e.g. a required binding removed), which SHOULD fail loudly rather
|
|
19
|
+
* than be papered over. This guard only buys resilience against transient failures, not misconfig.
|
|
20
|
+
*/
|
|
21
|
+
export async function buildWorkflowRuntime(build, step, label, attempts = WORKFLOW_BUILD_ATTEMPTS) {
|
|
22
|
+
let lastErr;
|
|
23
|
+
for (let attempt = 0; attempt < attempts; attempt++) {
|
|
24
|
+
try {
|
|
25
|
+
return build();
|
|
26
|
+
}
|
|
27
|
+
catch (err) {
|
|
28
|
+
lastErr = err;
|
|
29
|
+
if (attempt < attempts - 1) {
|
|
30
|
+
await step.sleep(`${label}-build-retry-${attempt}`, BUILD_RETRY_DELAY);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
throw lastErr;
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=runtime.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../../src/infrastructure/workflows/runtime.ts"],"names":[],"mappings":"AAOA,oFAAoF;AACpF,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAA;AACxC,2FAA2F;AAC3F,MAAM,iBAAiB,GAA0B,WAAW,CAAA;AAE5D;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,KAAc,EACd,IAAoB,EACpB,KAAa,EACb,QAAQ,GAAW,uBAAuB;IAE1C,IAAI,OAAgB,CAAA;IACpB,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,QAAQ,EAAE,OAAO,EAAE,EAAE,CAAC;QACpD,IAAI,CAAC;YACH,OAAO,KAAK,EAAE,CAAA;QAChB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,GAAG,GAAG,CAAA;YACb,IAAI,OAAO,GAAG,QAAQ,GAAG,CAAC,EAAE,CAAC;gBAC3B,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,KAAK,gBAAgB,OAAO,EAAE,EAAE,iBAAiB,CAAC,CAAA;YACxE,CAAC;QACH,CAAC;IACH,CAAC;IACD,MAAM,OAAO,CAAA;AACf,CAAC"}
|
|
@@ -42,6 +42,18 @@ export interface SweepDeps {
|
|
|
42
42
|
leaseMs: number;
|
|
43
43
|
/** A `missing` execution stale longer than this is failed `stalled` instead of re-driven. */
|
|
44
44
|
hardStallMs: number;
|
|
45
|
+
/**
|
|
46
|
+
* Per-process "first observed orphaned" clock, keyed by run id, MUTATED IN PLACE across
|
|
47
|
+
* sweeps. The hard-stall deadline is measured from this — NOT the raw lease age
|
|
48
|
+
* (`ref.updatedAt`) — so a cron outage / deploy freeze / sustained sweep failure longer than
|
|
49
|
+
* `hardStallMs` can't fail an otherwise-recoverable run on the very first post-outage tick
|
|
50
|
+
* (lease age inflates during the gap, but observed-orphaned time does not). This mirrors the
|
|
51
|
+
* Node sweeper's `orphanedSince` map. Pass a caller-owned persistent map (e.g. a
|
|
52
|
+
* module-global in the cron handler) to get cross-tick memory; omit it and each sweep is
|
|
53
|
+
* independent — the hard-stall backstop then only fires for a non-positive `hardStallMs`
|
|
54
|
+
* (the degenerate unit-test case), never wrongly on a first observation.
|
|
55
|
+
*/
|
|
56
|
+
orphanedSince?: Map<string, number>;
|
|
45
57
|
}
|
|
46
58
|
/** What a sweep did, for logging. */
|
|
47
59
|
export interface SweepResult {
|
|
@@ -63,5 +75,5 @@ export interface SweepResult {
|
|
|
63
75
|
* - `alive` → leave it.
|
|
64
76
|
* Pure orchestration over its ports so it is unit-testable with fakes.
|
|
65
77
|
*/
|
|
66
|
-
export declare function sweepStuckRuns({ agentRunRepository, instanceState, redrive, finalizeOrphan, failStalled, clock, leaseMs, hardStallMs, }: SweepDeps): Promise<SweepResult>;
|
|
78
|
+
export declare function sweepStuckRuns({ agentRunRepository, instanceState, redrive, finalizeOrphan, failStalled, clock, leaseMs, hardStallMs, orphanedSince, }: SweepDeps): Promise<SweepResult>;
|
|
67
79
|
//# sourceMappingURL=sweeper.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sweeper.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/workflows/sweeper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AACjF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAA;AAEzD;;;;;;;GAOG;AACH,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,UAAU,GAAG,SAAS,CAAA;AAE5D,+DAA+D;AAC/D,MAAM,WAAW,cAAc;IAC7B,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAAA;CACrD;AAED,0DAA0D;AAC1D,qBAAa,eAAgB,YAAW,cAAc;IACxC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAArC,YAA6B,QAAQ,EAAE,QAAQ,EAAI;IAE7C,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAqBzD;CACF;AAED,MAAM,WAAW,SAAS;IACxB,kBAAkB,EAAE,kBAAkB,CAAA;IACtC,gEAAgE;IAChE,aAAa,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC,CAAA;IACvD,4EAA4E;IAC5E,OAAO,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACxC;;;;OAIG;IACH,cAAc,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC/C;;;;OAIG;IACH,WAAW,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC5C,KAAK,EAAE,KAAK,CAAA;IACZ,yEAAyE;IACzE,OAAO,EAAE,MAAM,CAAA;IACf,6FAA6F;IAC7F,WAAW,EAAE,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"sweeper.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/workflows/sweeper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AACjF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAA;AAEzD;;;;;;;GAOG;AACH,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,UAAU,GAAG,SAAS,CAAA;AAE5D,+DAA+D;AAC/D,MAAM,WAAW,cAAc;IAC7B,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAAA;CACrD;AAED,0DAA0D;AAC1D,qBAAa,eAAgB,YAAW,cAAc;IACxC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAArC,YAA6B,QAAQ,EAAE,QAAQ,EAAI;IAE7C,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAqBzD;CACF;AAED,MAAM,WAAW,SAAS;IACxB,kBAAkB,EAAE,kBAAkB,CAAA;IACtC,gEAAgE;IAChE,aAAa,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC,CAAA;IACvD,4EAA4E;IAC5E,OAAO,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACxC;;;;OAIG;IACH,cAAc,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC/C;;;;OAIG;IACH,WAAW,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC5C,KAAK,EAAE,KAAK,CAAA;IACZ,yEAAyE;IACzE,OAAO,EAAE,MAAM,CAAA;IACf,6FAA6F;IAC7F,WAAW,EAAE,MAAM,CAAA;IACnB;;;;;;;;;;OAUG;IACH,aAAa,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACpC;AAED,qCAAqC;AACrC,MAAM,WAAW,WAAW;IAC1B,+CAA+C;IAC/C,QAAQ,EAAE,MAAM,CAAA;IAChB,sEAAsE;IACtE,SAAS,EAAE,MAAM,CAAA;IACjB,6EAA6E;IAC7E,OAAO,EAAE,MAAM,CAAA;CAChB;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,cAAc,CAAC,EACnC,kBAAkB,EAClB,aAAa,EACb,OAAO,EACP,cAAc,EACd,WAAW,EACX,KAAK,EACL,OAAO,EACP,WAAW,EACX,aAAyC,GAC1C,EAAE,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC,CAiDlC"}
|
|
@@ -40,32 +40,55 @@ export class WorkflowsLookup {
|
|
|
40
40
|
* - `alive` → leave it.
|
|
41
41
|
* Pure orchestration over its ports so it is unit-testable with fakes.
|
|
42
42
|
*/
|
|
43
|
-
export async function sweepStuckRuns({ agentRunRepository, instanceState, redrive, finalizeOrphan, failStalled, clock, leaseMs, hardStallMs, }) {
|
|
43
|
+
export async function sweepStuckRuns({ agentRunRepository, instanceState, redrive, finalizeOrphan, failStalled, clock, leaseMs, hardStallMs, orphanedSince = new Map(), }) {
|
|
44
44
|
const now = clock.now();
|
|
45
45
|
const stale = await agentRunRepository.listStale(now - leaseMs);
|
|
46
46
|
let redriven = 0;
|
|
47
47
|
let finalized = 0;
|
|
48
48
|
let stalled = 0;
|
|
49
|
+
// Which runs were observed still-orphaned (`missing`) THIS tick — used to prune the
|
|
50
|
+
// per-process clock of any run that recovered or went terminal so its deadline restarts
|
|
51
|
+
// if it ever stalls again.
|
|
52
|
+
const stillOrphaned = new Set();
|
|
49
53
|
for (const ref of stale) {
|
|
50
54
|
const state = await instanceState(ref);
|
|
51
|
-
if (state === 'alive')
|
|
55
|
+
if (state === 'alive') {
|
|
56
|
+
orphanedSince.delete(ref.id);
|
|
52
57
|
continue;
|
|
58
|
+
}
|
|
53
59
|
if (state === 'terminal') {
|
|
60
|
+
orphanedSince.delete(ref.id);
|
|
54
61
|
await finalizeOrphan(ref);
|
|
55
62
|
finalized++;
|
|
56
63
|
continue;
|
|
57
64
|
}
|
|
58
|
-
// `missing`:
|
|
59
|
-
//
|
|
60
|
-
//
|
|
61
|
-
|
|
65
|
+
// `missing`: the instance was lost (eviction, a missed event) and can be re-created.
|
|
66
|
+
// Start (or carry forward) this run's per-process orphaned clock so the hard-stall
|
|
67
|
+
// deadline below measures time-observed-orphaned, not raw lease age — a run first seen
|
|
68
|
+
// orphaned this tick (e.g. right after a long cron outage) is always re-driven at least
|
|
69
|
+
// once before it can ever be given up on.
|
|
70
|
+
const firstSeenOrphaned = orphanedSince.get(ref.id) ?? now;
|
|
71
|
+
orphanedSince.set(ref.id, firstSeenOrphaned);
|
|
72
|
+
stillOrphaned.add(ref.id);
|
|
73
|
+
// An execution stuck `missing` past the hard deadline (re-driving isn't resurrecting it)
|
|
74
|
+
// is failed `stalled` so it stops showing `running` forever and surfaces the failure
|
|
75
|
+
// banner + retry.
|
|
76
|
+
if (ref.kind === 'execution' && now - firstSeenOrphaned > hardStallMs) {
|
|
62
77
|
await failStalled(ref);
|
|
63
78
|
stalled++;
|
|
79
|
+
orphanedSince.delete(ref.id);
|
|
80
|
+
stillOrphaned.delete(ref.id);
|
|
64
81
|
continue;
|
|
65
82
|
}
|
|
66
83
|
await redrive(ref);
|
|
67
84
|
redriven++;
|
|
68
85
|
}
|
|
86
|
+
// Forget runs that recovered (bumped their lease → left the stale set) or went terminal, so
|
|
87
|
+
// their per-process orphaned clock restarts if they ever stall again.
|
|
88
|
+
for (const id of orphanedSince.keys()) {
|
|
89
|
+
if (!stillOrphaned.has(id))
|
|
90
|
+
orphanedSince.delete(id);
|
|
91
|
+
}
|
|
69
92
|
return { redriven, finalized, stalled };
|
|
70
93
|
}
|
|
71
94
|
//# sourceMappingURL=sweeper.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sweeper.js","sourceRoot":"","sources":["../../../src/infrastructure/workflows/sweeper.ts"],"names":[],"mappings":"AAkBA,0DAA0D;AAC1D,MAAM,OAAO,eAAe;IACG,QAAQ;IAArC,YAA6B,QAAkB;wBAAlB,QAAQ;IAAa,CAAC;IAEnD,KAAK,CAAC,aAAa,CAAC,KAAa;QAC/B,IAAI,QAAQ,CAAA;QACZ,IAAI,CAAC;YACH,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QAC3C,CAAC;QAAC,MAAM,CAAC;YACP,kEAAkE;YAClE,OAAO,SAAS,CAAA;QAClB,CAAC;QACD,IAAI,CAAC;YACH,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAA;YAC1C,OAAO,MAAM,KAAK,SAAS;gBACzB,MAAM,KAAK,QAAQ;gBACnB,MAAM,KAAK,SAAS;gBACpB,MAAM,KAAK,QAAQ;gBACnB,CAAC,CAAC,OAAO;gBACT,CAAC,CAAC,UAAU,CAAA;QAChB,CAAC;QAAC,MAAM,CAAC;YACP,8EAA8E;YAC9E,8EAA8E;YAC9E,OAAO,SAAS,CAAA;QAClB,CAAC;IACH,CAAC;CACF;
|
|
1
|
+
{"version":3,"file":"sweeper.js","sourceRoot":"","sources":["../../../src/infrastructure/workflows/sweeper.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cat-factory/worker",
|
|
3
|
-
"version": "0.52.
|
|
3
|
+
"version": "0.52.10",
|
|
4
4
|
"description": "Reusable Cloudflare Worker library (Hono + D1) exposing the Agent Architecture Board core: the `createApp()` Hono factory, the default fetch/scheduled/queue handler, and the Durable Object + Workflow classes. Deployments (see deploy/backend) supply the wrangler.toml + config and re-export these.",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -42,19 +42,19 @@
|
|
|
42
42
|
"pino": "^10.3.1",
|
|
43
43
|
"valibot": "^1.4.2",
|
|
44
44
|
"workers-ai-provider": "^3.2.1",
|
|
45
|
-
"@cat-factory/agents": "0.26.
|
|
46
|
-
"@cat-factory/consensus": "0.8.
|
|
47
|
-
"@cat-factory/contracts": "0.81.
|
|
48
|
-
"@cat-factory/gates": "0.2.
|
|
49
|
-
"@cat-factory/
|
|
50
|
-
"@cat-factory/
|
|
51
|
-
"@cat-factory/
|
|
52
|
-
"@cat-factory/
|
|
53
|
-
"@cat-factory/
|
|
54
|
-
"@cat-factory/
|
|
55
|
-
"@cat-factory/
|
|
56
|
-
"@cat-factory/
|
|
57
|
-
"@cat-factory/spend": "0.10.
|
|
45
|
+
"@cat-factory/agents": "0.26.8",
|
|
46
|
+
"@cat-factory/consensus": "0.8.9",
|
|
47
|
+
"@cat-factory/contracts": "0.81.2",
|
|
48
|
+
"@cat-factory/gates": "0.2.66",
|
|
49
|
+
"@cat-factory/integrations": "0.54.2",
|
|
50
|
+
"@cat-factory/observability-langfuse": "0.7.109",
|
|
51
|
+
"@cat-factory/prompt-fragments": "0.9.40",
|
|
52
|
+
"@cat-factory/gitlab": "0.4.37",
|
|
53
|
+
"@cat-factory/kernel": "0.69.5",
|
|
54
|
+
"@cat-factory/provider-cloudflare": "0.7.114",
|
|
55
|
+
"@cat-factory/server": "0.66.3",
|
|
56
|
+
"@cat-factory/orchestration": "0.57.5",
|
|
57
|
+
"@cat-factory/spend": "0.10.70"
|
|
58
58
|
},
|
|
59
59
|
"devDependencies": {
|
|
60
60
|
"@cloudflare/vitest-pool-workers": "^0.16.20",
|
|
@@ -62,7 +62,7 @@
|
|
|
62
62
|
"typescript": "7.0.1-rc",
|
|
63
63
|
"vitest": "^4.1.9",
|
|
64
64
|
"wrangler": "^4.105.0",
|
|
65
|
-
"@cat-factory/conformance": "0.9.
|
|
65
|
+
"@cat-factory/conformance": "0.9.88"
|
|
66
66
|
},
|
|
67
67
|
"scripts": {
|
|
68
68
|
"build": "tsc -b tsconfig.build.json",
|