@cat-factory/node-server 0.153.2 → 0.155.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +4 -0
- package/dist/config.js.map +1 -1
- package/dist/container-core-deps.d.ts.map +1 -1
- package/dist/container-core-deps.js +12 -1
- package/dist/container-core-deps.js.map +1 -1
- package/dist/container-executor-deps.d.ts.map +1 -1
- package/dist/container-executor-deps.js +4 -1
- package/dist/container-executor-deps.js.map +1 -1
- package/dist/container-options.d.ts +23 -1
- package/dist/container-options.d.ts.map +1 -1
- package/dist/container-options.js.map +1 -1
- package/dist/db/schema-slack.d.ts +262 -0
- package/dist/db/schema-slack.d.ts.map +1 -0
- package/dist/db/schema-slack.js +42 -0
- package/dist/db/schema-slack.js.map +1 -0
- package/dist/db/schema.d.ts +16 -261
- package/dist/db/schema.d.ts.map +1 -1
- package/dist/db/schema.js +7 -32
- package/dist/db/schema.js.map +1 -1
- package/dist/environments.d.ts +4 -2
- package/dist/environments.d.ts.map +1 -1
- package/dist/environments.js +4 -1
- package/dist/environments.js.map +1 -1
- package/dist/execution/bootstrapRunner.d.ts.map +1 -1
- package/dist/execution/bootstrapRunner.js +2 -1
- package/dist/execution/bootstrapRunner.js.map +1 -1
- package/dist/execution/deadLetter.d.ts +16 -0
- package/dist/execution/deadLetter.d.ts.map +1 -0
- package/dist/execution/deadLetter.js +40 -0
- package/dist/execution/deadLetter.js.map +1 -0
- package/dist/execution/envConfigRepairRunner.d.ts.map +1 -1
- package/dist/execution/envConfigRepairRunner.js +2 -1
- package/dist/execution/envConfigRepairRunner.js.map +1 -1
- package/dist/execution/envTestRunner.d.ts +10 -3
- package/dist/execution/envTestRunner.d.ts.map +1 -1
- package/dist/execution/envTestRunner.js +16 -2
- package/dist/execution/envTestRunner.js.map +1 -1
- package/dist/execution/githubSyncRunner.d.ts.map +1 -1
- package/dist/execution/githubSyncRunner.js +2 -1
- package/dist/execution/githubSyncRunner.js.map +1 -1
- package/dist/execution/pgBossRunner.d.ts +7 -3
- package/dist/execution/pgBossRunner.d.ts.map +1 -1
- package/dist/execution/pgBossRunner.js +31 -2
- package/dist/execution/pgBossRunner.js.map +1 -1
- package/dist/execution/trackerSyncRunner.d.ts.map +1 -1
- package/dist/execution/trackerSyncRunner.js +2 -1
- package/dist/execution/trackerSyncRunner.js.map +1 -1
- package/dist/foundationalServices.d.ts +4 -2
- package/dist/foundationalServices.d.ts.map +1 -1
- package/dist/foundationalServices.js +4 -1
- package/dist/foundationalServices.js.map +1 -1
- package/dist/githubReconcile.d.ts +4 -2
- package/dist/githubReconcile.d.ts.map +1 -1
- package/dist/githubReconcile.js +4 -1
- package/dist/githubReconcile.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -0
- package/dist/index.js.map +1 -1
- package/dist/infraReachability.d.ts +4 -2
- package/dist/infraReachability.d.ts.map +1 -1
- package/dist/infraReachability.js +5 -2
- package/dist/infraReachability.js.map +1 -1
- package/dist/initiativeLoop.d.ts +4 -2
- package/dist/initiativeLoop.d.ts.map +1 -1
- package/dist/initiativeLoop.js +4 -1
- package/dist/initiativeLoop.js.map +1 -1
- package/dist/kaizen.d.ts +4 -2
- package/dist/kaizen.d.ts.map +1 -1
- package/dist/kaizen.js +4 -1
- package/dist/kaizen.js.map +1 -1
- package/dist/notifications.d.ts +4 -2
- package/dist/notifications.d.ts.map +1 -1
- package/dist/notifications.js +5 -2
- package/dist/notifications.js.map +1 -1
- package/dist/platformHealth.d.ts +4 -2
- package/dist/platformHealth.d.ts.map +1 -1
- package/dist/platformHealth.js +5 -2
- package/dist/platformHealth.js.map +1 -1
- package/dist/platformMetrics.d.ts +17 -3
- package/dist/platformMetrics.d.ts.map +1 -1
- package/dist/platformMetrics.js +23 -3
- package/dist/platformMetrics.js.map +1 -1
- package/dist/queueDepth.d.ts +38 -0
- package/dist/queueDepth.d.ts.map +1 -0
- package/dist/queueDepth.js +69 -0
- package/dist/queueDepth.js.map +1 -0
- package/dist/readiness.d.ts +16 -0
- package/dist/readiness.d.ts.map +1 -1
- package/dist/readiness.js +34 -9
- package/dist/readiness.js.map +1 -1
- package/dist/recurring.d.ts +4 -2
- package/dist/recurring.d.ts.map +1 -1
- package/dist/recurring.js +4 -1
- package/dist/recurring.js.map +1 -1
- package/dist/repositories/drizzle/execution.d.ts +1 -0
- package/dist/repositories/drizzle/execution.d.ts.map +1 -1
- package/dist/repositories/drizzle/execution.js +12 -0
- package/dist/repositories/drizzle/execution.js.map +1 -1
- package/dist/retention.d.ts +22 -6
- package/dist/retention.d.ts.map +1 -1
- package/dist/retention.js +37 -23
- package/dist/retention.js.map +1 -1
- package/dist/server.d.ts +9 -0
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +54 -18
- package/dist/server.js.map +1 -1
- package/dist/sweeper.d.ts +10 -0
- package/dist/sweeper.d.ts.map +1 -1
- package/dist/sweeper.js +8 -2
- package/dist/sweeper.js.map +1 -1
- package/drizzle/20260803043617_bent_spitfire/migration.sql +1 -0
- package/drizzle/20260803043617_bent_spitfire/snapshot.json +18998 -0
- package/package.json +20 -20
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { createQueueWithDeadLetter } from './deadLetter.js';
|
|
1
2
|
// Durable ephemeral-environment self-test driving on pg-boss: the analogue of the Worker's
|
|
2
3
|
// EnvironmentTestWorkflow (and a sibling of the bootstrap/env-config-repair drivers).
|
|
3
4
|
// `startRun` enqueues a drive job (deduped per run via the `exclusive` queue + singletonKey);
|
|
@@ -67,7 +68,14 @@ export class PgBossEnvironmentTestRunner {
|
|
|
67
68
|
* re-driven run that still can't finish is settled by the drive's own budget-exhaustion
|
|
68
69
|
* finalize above, so this can't loop a wedged run forever.
|
|
69
70
|
*/
|
|
70
|
-
export function startEnvTestSweeper(runner, repository, cfg, log
|
|
71
|
+
export function startEnvTestSweeper(runner, repository, cfg, log, metrics,
|
|
72
|
+
/**
|
|
73
|
+
* Records this sweep's outcome. A hand-rolled interval (it predates `startSweeper`), so it
|
|
74
|
+
* has to report the pass ITSELF — and reporting only the counter, as it first did, left this
|
|
75
|
+
* sweeper counted but absent from the `sweep_degraded` streak that `startSweeper`'s sweeps
|
|
76
|
+
* were in.
|
|
77
|
+
*/
|
|
78
|
+
health) {
|
|
71
79
|
const tick = async () => {
|
|
72
80
|
try {
|
|
73
81
|
const stale = await repository.listStale(Date.now() - cfg.leaseMs);
|
|
@@ -78,12 +86,18 @@ export function startEnvTestSweeper(runner, repository, cfg, log) {
|
|
|
78
86
|
stage: run.stage,
|
|
79
87
|
});
|
|
80
88
|
await runner.startRun(run.workspaceId, run.id);
|
|
89
|
+
// Env-test runs live in their own table, but a re-drive is a re-drive: it rides the
|
|
90
|
+
// same counter with its own `kind`, so a deployment whose self-tests keep needing
|
|
91
|
+
// recovery shows up in the same series as one whose executions do.
|
|
92
|
+
metrics.increment('sweep.run_redriven', { kind: 'env-test' });
|
|
81
93
|
}
|
|
94
|
+
health.recordSuccess('env-test');
|
|
82
95
|
}
|
|
83
96
|
catch (error) {
|
|
84
97
|
log.error('env-test sweep failed', {
|
|
85
98
|
err: error instanceof Error ? error.message : String(error),
|
|
86
99
|
});
|
|
100
|
+
health.recordFailure('env-test');
|
|
87
101
|
}
|
|
88
102
|
};
|
|
89
103
|
const timer = setInterval(() => void tick(), cfg.intervalMs);
|
|
@@ -93,7 +107,7 @@ export function startEnvTestSweeper(runner, repository, cfg, log) {
|
|
|
93
107
|
/** Create the env-test drive queue and start the worker that drives self-test runs. */
|
|
94
108
|
export async function startEnvTestWorker(boss, container, cfg, log, options = {}) {
|
|
95
109
|
const concurrency = Math.max(1, options.concurrency ?? 10);
|
|
96
|
-
await boss
|
|
110
|
+
await createQueueWithDeadLetter(boss, QUEUE, { policy: QUEUE_POLICY });
|
|
97
111
|
await boss.work(QUEUE, { localConcurrency: concurrency }, async (jobs) => {
|
|
98
112
|
for (const job of jobs) {
|
|
99
113
|
const { workspaceId, id } = job.data;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"envTestRunner.js","sourceRoot":"","sources":["../../src/execution/envTestRunner.ts"],"names":[],"mappings":"AAMA,2FAA2F;AAC3F,sFAAsF;AACtF,8FAA8F;AAC9F,yFAAyF;AACzF,qFAAqF;AACrF,gEAAgE;AAEhE,MAAM,CAAC,MAAM,cAAc,GAAG,kBAAkB,CAAA;AAChD,MAAM,KAAK,GAAG,cAAc,CAAA;AAC5B,6FAA6F;AAC7F,yFAAyF;AACzF,MAAM,YAAY,GAAG,WAAoB,CAAA;AAOzC,SAAS,WAAW,CAAC,EAAU,EAAE,IAAyB;IACxD,OAAO;QACL,YAAY,EAAE,EAAE;QAChB,eAAe,EAAE,IAAI,CAAC,eAAe;QACrC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;QACvC,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,UAAU,EAAE,IAAI,CAAC,iBAAiB;QAClC,YAAY,EAAE,IAAI;KACnB,CAAA;AACH,CAAC;AAED,MAAM,KAAK,GAAG,CAAC,EAAU,EAAE,EAAE,CAAC,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAA;AAErF;;;;;GAKG;AACH,KAAK,UAAU,YAAY,CACzB,SAA0B,EAC1B,WAAmB,EACnB,EAAU,EACV,GAAgB,EAChB,GAAW;IAEX,MAAM,OAAO,GAAG,SAAS,CAAC,YAAY,EAAE,eAAe,CAAA;IACvD,IAAI,CAAC,OAAO;QAAE,OAAM;IACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC,EAAE,EAAE,CAAC;QACzC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;QACzD,IAAI,MAAM,CAAC,KAAK,KAAK,MAAM,IAAI,MAAM,CAAC,KAAK,KAAK,QAAQ;YAAE,OAAM;QAChE,MAAM,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAA;IACpC,CAAC;IACD,sFAAsF;IACtF,uFAAuF;IACvF,kFAAkF;IAClF,2BAA2B;IAC3B,GAAG,CAAC,IAAI,CAAC,gEAAgE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAA;IAC/F,MAAM,OAAO,CAAC,MAAM,CAClB,WAAW,EACX,EAAE,EACF,gEAAgE,CACjE,CAAA;AACH,CAAC;AAED,MAAM,OAAO,2BAA2B;IAEnB,IAAI;IACJ,YAAY;IAF/B,YACmB,IAAY,EACZ,YAAiC;oBADjC,IAAI;4BACJ,YAAY;IAC5B,CAAC;IAEJ,KAAK,CAAC,QAAQ,CAAC,WAAmB,EAAE,EAAU;QAC5C,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,EAAE,WAAW,CAAC,EAAE,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAA;IACtF,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,YAAoB,EAAE,GAAW;QAC/C,0FAA0F;QAC1F,kFAAkF;IACpF,CAAC;CACF;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,mBAAmB,CACjC,MAA6B,EAC7B,UAA2D,EAC3D,GAA4C,EAC5C,GAAW;
|
|
1
|
+
{"version":3,"file":"envTestRunner.js","sourceRoot":"","sources":["../../src/execution/envTestRunner.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"githubSyncRunner.d.ts","sourceRoot":"","sources":["../../src/execution/githubSyncRunner.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"githubSyncRunner.d.ts","sourceRoot":"","sources":["../../src/execution/githubSyncRunner.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,uBAAuB,EACvB,mBAAmB,EACnB,MAAM,EACN,eAAe,EAChB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,KAAK,EAAO,MAAM,EAAe,MAAM,SAAS,CAAA;AAiBvD,eAAO,MAAM,iBAAiB,gBAAgB,CAAA;AAE9C;;;;GAIG;AACH,MAAM,MAAM,aAAa,GACrB;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,GACxD;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,GAClE;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,cAAc,EAAE,MAAM,CAAA;CAAE,GAC5C;IAAE,IAAI,EAAE,qBAAqB,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GACpE;IAAE,IAAI,EAAE,4BAA4B,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAA;AA6B5D;;;;GAIG;AACH,qBAAa,6BAA8B,YAAW,uBAAuB;IAC/D,OAAO,CAAC,QAAQ,CAAC,IAAI;IAAjC,YAA6B,IAAI,EAAE,MAAM,EAAI;IAEvC,gBAAgB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAG/D;CACF;AAED;;;;GAIG;AACH,qBAAa,yBAA0B,YAAW,mBAAmB;IACvD,OAAO,CAAC,QAAQ,CAAC,IAAI;IAAjC,YAA6B,IAAI,EAAE,MAAM,EAAI;IAEvC,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAG1E;IAEK,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAOjF;IAEK,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAO5E;IAEK,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAOhE;CACF;AAED;;;;;GAKG;AACH,wBAAsB,kBAAkB,CACtC,SAAS,EAAE,eAAe,EAC1B,GAAG,EAAE,aAAa,GACjB,OAAO,CAAC,IAAI,CAAC,CAmBf;AA6CD;;;;;;;;;GASG;AACH,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,eAAe,EAC1B,GAAG,EAAE,MAAM,EACX,OAAO,GAAE;IAAE,WAAW,CAAC,EAAE,MAAM,CAAA;CAAO,GACrC,OAAO,CAAC,IAAI,CAAC,CAyBf"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { NotFoundError } from '@cat-factory/kernel';
|
|
2
|
+
import { createQueueWithDeadLetter } from './deadLetter.js';
|
|
2
3
|
// Async GitHub ingest on pg-boss: the Node analogue of the Worker's `GITHUB_SYNC_QUEUE`
|
|
3
4
|
// consumer (`sync-consumer.ts`) plus its `GitHubBackfillWorkflow`. The shared GitHub
|
|
4
5
|
// controllers hand verified webhook deliveries, single-repo resyncs and full-installation
|
|
@@ -162,7 +163,7 @@ async function applyFoundationalSourceResync(container, sourceId) {
|
|
|
162
163
|
*/
|
|
163
164
|
export async function startGitHubSyncWorker(boss, container, log, options = {}) {
|
|
164
165
|
const concurrency = Math.max(1, options.concurrency ?? 10);
|
|
165
|
-
await boss
|
|
166
|
+
await createQueueWithDeadLetter(boss, GITHUB_SYNC_QUEUE);
|
|
166
167
|
await boss.work(GITHUB_SYNC_QUEUE, { localConcurrency: concurrency }, async (jobs) => {
|
|
167
168
|
for (const job of jobs) {
|
|
168
169
|
// Each kind's module is resolved (and gracefully skipped when unwired) inside
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"githubSyncRunner.js","sourceRoot":"","sources":["../../src/execution/githubSyncRunner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"githubSyncRunner.js","sourceRoot":"","sources":["../../src/execution/githubSyncRunner.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { WorkRunner } from '@cat-factory/kernel';
|
|
2
|
-
import type { Logger, ServerContainer } from '@cat-factory/server';
|
|
1
|
+
import type { OperationalMetrics, WorkRunner } from '@cat-factory/kernel';
|
|
2
|
+
import type { Logger, ServerContainer, SweepHealthTracker } from '@cat-factory/server';
|
|
3
3
|
import type { PgBoss } from 'pg-boss';
|
|
4
4
|
import { type DriveConfig } from './drive.js';
|
|
5
5
|
import { type JobStore } from './reclaim.js';
|
|
@@ -107,5 +107,9 @@ export interface SweeperConfig {
|
|
|
107
107
|
* function; also runs one tick immediately (boot reconcile — recover runs a crashed previous
|
|
108
108
|
* process orphaned without waiting a full interval).
|
|
109
109
|
*/
|
|
110
|
-
export declare function startStaleRunSweeper(boss: PgBoss, jobs: JobStore, container: ServerContainer, cfg: SweeperConfig, queueOptions: AdvanceQueueOptions,
|
|
110
|
+
export declare function startStaleRunSweeper(boss: PgBoss, jobs: JobStore, container: ServerContainer, cfg: SweeperConfig, queueOptions: AdvanceQueueOptions, observability: {
|
|
111
|
+
log: Logger;
|
|
112
|
+
metrics: OperationalMetrics;
|
|
113
|
+
health: SweepHealthTracker;
|
|
114
|
+
}): () => void;
|
|
111
115
|
//# sourceMappingURL=pgBossRunner.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pgBossRunner.d.ts","sourceRoot":"","sources":["../../src/execution/pgBossRunner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"pgBossRunner.d.ts","sourceRoot":"","sources":["../../src/execution/pgBossRunner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAGzE,OAAO,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AACtF,OAAO,KAAK,EAAkB,MAAM,EAAe,MAAM,SAAS,CAAA;AAGlE,OAAO,EAAE,KAAK,WAAW,EAAkB,MAAM,YAAY,CAAA;AAC7D,OAAO,EAAE,KAAK,QAAQ,EAAyC,MAAM,cAAc,CAAA;AAwBnF;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,WAAW,mBAAmB;IAClC,eAAe,EAAE,MAAM,CAAA;IACvB,gBAAgB,EAAE,MAAM,CAAA;IACxB,UAAU,EAAE,MAAM,CAAA;IAClB,iBAAiB,EAAE,MAAM,CAAA;CAC1B;AAqDD,qBAAa,gBAAiB,YAAW,UAAU;IAI/C,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,YAAY;IAJ/B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA+B;IAErD,YACmB,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,mBAAmB,EAElD,OAAO,GAAE;QAAE,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;KAAO,EAGxD;IAEK,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAMtE;IAEK,cAAc,CAClB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC,CAKf;IAED;;;;;;OAMG;YACW,sBAAsB;IAgB9B,SAAS,CAAC,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAGzE;CACF;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,eAAe,EAC1B,GAAG,EAAE,WAAW,EAChB,GAAG,EAAE,MAAM,EACX,OAAO,GAAE;IAAE,WAAW,CAAC,EAAE,MAAM,CAAA;CAAO,GACrC,OAAO,CAAC,IAAI,CAAC,CAuCf;AAED;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,MAAM,CAAA;IACf;;;;;;;;;;;OAWG;IACH,WAAW,EAAE,MAAM,CAAA;CACpB;AAUD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,QAAQ,EACd,SAAS,EAAE,eAAe,EAC1B,GAAG,EAAE,aAAa,EAClB,YAAY,EAAE,mBAAmB,EAMjC,aAAa,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,kBAAkB,CAAC;IAAC,MAAM,EAAE,kBAAkB,CAAA;CAAE,GACtF,MAAM,IAAI,CA8LZ"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { createQueueWithDeadLetter } from './deadLetter.js';
|
|
2
|
+
import { runBestEffort } from '@cat-factory/kernel';
|
|
1
3
|
import { BOOTSTRAP_QUEUE, reenqueueStaleBootstrap } from './bootstrapRunner.js';
|
|
2
4
|
import { ENV_CONFIG_REPAIR_QUEUE, reenqueueStaleEnvConfigRepair } from './envConfigRepairRunner.js';
|
|
3
5
|
import { driveExecution } from './drive.js';
|
|
@@ -123,7 +125,7 @@ export class PgBossWorkRunner {
|
|
|
123
125
|
*/
|
|
124
126
|
export async function startExecutionWorker(boss, container, cfg, log, options = {}) {
|
|
125
127
|
const concurrency = options.concurrency ?? 10;
|
|
126
|
-
await boss
|
|
128
|
+
await createQueueWithDeadLetter(boss, QUEUE, { policy: QUEUE_POLICY });
|
|
127
129
|
await boss.work(QUEUE, { localConcurrency: Math.max(1, concurrency) }, async (jobs) => {
|
|
128
130
|
for (const job of jobs) {
|
|
129
131
|
const { workspaceId, executionId } = job.data;
|
|
@@ -184,7 +186,14 @@ function queueForKind(kind) {
|
|
|
184
186
|
* function; also runs one tick immediately (boot reconcile — recover runs a crashed previous
|
|
185
187
|
* process orphaned without waiting a full interval).
|
|
186
188
|
*/
|
|
187
|
-
export function startStaleRunSweeper(boss, jobs, container, cfg, queueOptions,
|
|
189
|
+
export function startStaleRunSweeper(boss, jobs, container, cfg, queueOptions,
|
|
190
|
+
// The logger, the counter and the sweep-health tracker travel together: every disposition
|
|
191
|
+
// below is BOTH a line naming the run and a count under its kind, and a signature that could
|
|
192
|
+
// carry one without the other is how a new disposition ends up logged and uncounted. `health`
|
|
193
|
+
// is here for the same reason one rung up — this is a hand-rolled interval, so it reports its
|
|
194
|
+
// own pass, and reporting only the counter left it out of the `sweep_degraded` streak.
|
|
195
|
+
observability) {
|
|
196
|
+
const { log, metrics, health } = observability;
|
|
188
197
|
// A live drive heartbeats its active job every `heartbeatSeconds`; treat a heartbeat older
|
|
189
198
|
// than a generous multiple of that (but at least the lease) as a dead worker.
|
|
190
199
|
const staleHeartbeatMs = Math.max(cfg.leaseMs, queueOptions.heartbeatSeconds * 1000 * 3);
|
|
@@ -193,6 +202,15 @@ export function startStaleRunSweeper(boss, jobs, container, cfg, queueOptions, l
|
|
|
193
202
|
// inflates `updated_at`) can't fail an otherwise-recoverable run before recovery is even
|
|
194
203
|
// attempted. Entries are dropped once a run recovers or leaves the stale set.
|
|
195
204
|
const orphanedSince = new Map();
|
|
205
|
+
// Count a re-drive, in memory and on the run itself. The persisted half is best-effort and
|
|
206
|
+
// runs AFTER the re-enqueue: it is bookkeeping about the recovery and must never be able to
|
|
207
|
+
// fail one, and a counter claiming a re-drive that did not happen is worse than a missed one.
|
|
208
|
+
// The in-memory map above answers "still orphaned this tick"; only the column survives a
|
|
209
|
+
// restart, which is what makes "how many times has THIS run been re-driven" answerable.
|
|
210
|
+
const countRedrive = async (ref) => {
|
|
211
|
+
metrics.increment('sweep.run_redriven', { kind: ref.kind });
|
|
212
|
+
await runBestEffort(log, 'sweep.recordRedrive', () => container.agentRunRepository.recordRedrive(ref.workspaceId, ref.id));
|
|
213
|
+
};
|
|
196
214
|
// Process one tick's stale runs: recover an orphaned advance job, apply the hard-stall backstop,
|
|
197
215
|
// and re-drive (per kind). Records into `stillOrphaned` which runs are still orphaned this tick
|
|
198
216
|
// (so the caller can forget the ones that recovered) and pushes execution re-drives into
|
|
@@ -241,11 +259,15 @@ export function startStaleRunSweeper(boss, jobs, container, cfg, queueOptions, l
|
|
|
241
259
|
await container.executionService.failRun(ref.workspaceId, ref.id, `Run stalled: no progress for ${mins} minutes and recovery could not resume it.`, 'stalled', null);
|
|
242
260
|
orphanedSince.delete(ref.id);
|
|
243
261
|
stillOrphaned.delete(ref.id);
|
|
262
|
+
// The run KIND is a bounded enum and the split that matters: bootstrap runs and
|
|
263
|
+
// execution runs are lost for different reasons and fixed in different places.
|
|
264
|
+
metrics.increment('sweep.run_stalled', { kind: ref.kind });
|
|
244
265
|
continue;
|
|
245
266
|
}
|
|
246
267
|
if (ref.kind === 'bootstrap') {
|
|
247
268
|
log.warn('re-driving stale bootstrap', { workspaceId: ref.workspaceId, jobId: ref.id });
|
|
248
269
|
await reenqueueStaleBootstrap(boss, ref.workspaceId, ref.id, queueOptions);
|
|
270
|
+
await countRedrive(ref);
|
|
249
271
|
continue;
|
|
250
272
|
}
|
|
251
273
|
if (ref.kind === 'env-config-repair') {
|
|
@@ -254,10 +276,12 @@ export function startStaleRunSweeper(boss, jobs, container, cfg, queueOptions, l
|
|
|
254
276
|
jobId: ref.id,
|
|
255
277
|
});
|
|
256
278
|
await reenqueueStaleEnvConfigRepair(boss, ref.workspaceId, ref.id, queueOptions);
|
|
279
|
+
await countRedrive(ref);
|
|
257
280
|
continue;
|
|
258
281
|
}
|
|
259
282
|
log.warn('re-driving stale run', { workspaceId: ref.workspaceId, executionId: ref.id });
|
|
260
283
|
advanceReenqueues.push(advanceInsert({ workspaceId: ref.workspaceId, executionId: ref.id }, queueOptions));
|
|
284
|
+
await countRedrive(ref);
|
|
261
285
|
}
|
|
262
286
|
};
|
|
263
287
|
// Auto-resume spend-paused runs once the monthly budget frees (parity with the Cloudflare
|
|
@@ -317,11 +341,16 @@ export function startStaleRunSweeper(boss, jobs, container, cfg, queueOptions, l
|
|
|
317
341
|
// re-drives + spend-paused resumes), replacing N per-run `send` round-trips.
|
|
318
342
|
if (advanceReenqueues.length > 0)
|
|
319
343
|
await boss.insert(QUEUE, advanceReenqueues);
|
|
344
|
+
health.recordSuccess('stale-run');
|
|
320
345
|
}
|
|
321
346
|
catch (error) {
|
|
322
347
|
log.error('stale-run sweep failed', {
|
|
323
348
|
err: error instanceof Error ? error.message : String(error),
|
|
324
349
|
});
|
|
350
|
+
// This sweeper predates `startSweeper` (it is a hand-rolled interval, because a boot
|
|
351
|
+
// reconcile has to run before the first tick), so it reports its own pass under the same
|
|
352
|
+
// `sweep` dimension the shared helper uses.
|
|
353
|
+
health.recordFailure('stale-run');
|
|
325
354
|
}
|
|
326
355
|
};
|
|
327
356
|
// Boot reconcile: recover runs a crashed previous process orphaned right away, not after
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pgBossRunner.js","sourceRoot":"","sources":["../../src/execution/pgBossRunner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pgBossRunner.js","sourceRoot":"","sources":["../../src/execution/pgBossRunner.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trackerSyncRunner.d.ts","sourceRoot":"","sources":["../../src/execution/trackerSyncRunner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"trackerSyncRunner.d.ts","sourceRoot":"","sources":["../../src/execution/trackerSyncRunner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAExF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAC9D,OAAO,KAAK,EAAO,MAAM,EAAe,MAAM,SAAS,CAAA;AAgBvD,eAAO,MAAM,kBAAkB,iBAAiB,CAAA;AAEhD,qFAAqF;AACrF,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,mBAAmB,CAAA;CAC3B;AA4BD;;;GAGG;AACH,qBAAa,0BAA2B,YAAW,oBAAoB;IACzD,OAAO,CAAC,QAAQ,CAAC,IAAI;IAAjC,YAA6B,IAAI,EAAE,MAAM,EAAI;IAEvC,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC,CAGpF;CACF;AAED;;;;;;;;GAQG;AACH,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,eAAe,EAC1B,GAAG,EAAE,MAAM,EACX,OAAO,GAAE;IAAE,WAAW,CAAC,EAAE,MAAM,CAAA;CAAO,GACrC,OAAO,CAAC,IAAI,CAAC,CAwBf"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { createQueueWithDeadLetter } from './deadLetter.js';
|
|
1
2
|
// Async TRACKER ingest on pg-boss: the Node analogue of the Worker's `TRACKER_SYNC_QUEUE`
|
|
2
3
|
// consumer, and a deliberate copy of `githubSyncRunner.ts`'s shape for the same reasons.
|
|
3
4
|
//
|
|
@@ -61,7 +62,7 @@ export class PgBossTrackerWebhookIngest {
|
|
|
61
62
|
*/
|
|
62
63
|
export async function startTrackerSyncWorker(boss, container, log, options = {}) {
|
|
63
64
|
const concurrency = Math.max(1, options.concurrency ?? 5);
|
|
64
|
-
await boss
|
|
65
|
+
await createQueueWithDeadLetter(boss, TRACKER_SYNC_QUEUE);
|
|
65
66
|
await boss.work(TRACKER_SYNC_QUEUE, { localConcurrency: concurrency }, async (jobs) => {
|
|
66
67
|
const service = container.trackerWebhook?.service;
|
|
67
68
|
if (!service)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trackerSyncRunner.js","sourceRoot":"","sources":["../../src/execution/trackerSyncRunner.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"trackerSyncRunner.js","sourceRoot":"","sources":["../../src/execution/trackerSyncRunner.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAA;AAI3D,0FAA0F;AAC1F,yFAAyF;AACzF,EAAE;AACF,6FAA6F;AAC7F,6FAA6F;AAC7F,iGAAiG;AACjG,gGAAgG;AAChG,kGAAkG;AAClG,8FAA8F;AAC9F,qFAAqF;AACrF,EAAE;AACF,4FAA4F;AAC5F,wFAAwF;AAExF,MAAM,CAAC,MAAM,kBAAkB,GAAG,cAAc,CAAA;AAQhD,kGAAkG;AAClG,mGAAmG;AACnG,4FAA4F;AAC5F,4DAA4D;AAC5D,MAAM,WAAW,GAAG,CAAC,CAAA;AACrB,MAAM,mBAAmB,GAAG,CAAC,CAAA;AAC7B,mFAAmF;AACnF,yFAAyF;AACzF,gGAAgG;AAChG,+FAA+F;AAC/F,2FAA2F;AAC3F,MAAM,cAAc,GAAG,CAAC,GAAG,EAAE,CAAA;AAC7B,iGAAiG;AACjG,iGAAiG;AACjG,MAAM,iBAAiB,GAAG,EAAE,CAAA;AAE5B,SAAS,WAAW;IAClB,OAAO;QACL,UAAU,EAAE,WAAW;QACvB,UAAU,EAAE,mBAAmB;QAC/B,YAAY,EAAE,IAAI;QAClB,eAAe,EAAE,cAAc;QAC/B,gBAAgB,EAAE,iBAAiB;KACpC,CAAA;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,OAAO,0BAA0B;IACR,IAAI;IAAjC,YAA6B,IAAY;oBAAZ,IAAI;IAAW,CAAC;IAE7C,KAAK,CAAC,YAAY,CAAC,WAAmB,EAAE,KAA0B;QAChE,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,CAAC,CAAA;QAC/E,OAAO,IAAI,CAAA;IACb,CAAC;CACF;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,IAAY,EACZ,SAA0B,EAC1B,GAAW,EACX,OAAO,GAA6B,EAAE;IAEtC,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,WAAW,IAAI,CAAC,CAAC,CAAA;IACzD,MAAM,yBAAyB,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAA;IACzD,MAAM,IAAI,CAAC,IAAI,CACb,kBAAkB,EAClB,EAAE,gBAAgB,EAAE,WAAW,EAAE,EACjC,KAAK,EAAE,IAA2B,EAAE,EAAE;QACpC,MAAM,OAAO,GAAG,SAAS,CAAC,cAAc,EAAE,OAAO,CAAA;QACjD,IAAI,CAAC,OAAO;YAAE,OAAM;QACpB,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,IAAI,CAAC;gBACH,MAAM,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAC5D,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,GAAG,CAAC,KAAK,CAAC,4BAA4B,EAAE;oBACtC,WAAW,EAAE,GAAG,CAAC,IAAI,CAAC,WAAW;oBACjC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM;oBAC7B,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI;oBACzB,GAAG,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;iBAC5D,CAAC,CAAA;gBACF,MAAM,KAAK,CAAA,CAAC,mDAAmD;YACjE,CAAC;QACH,CAAC;IACH,CAAC,CACF,CAAA;AACH,CAAC"}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
|
-
import { type Logger, type ServerContainer } from '@cat-factory/server';
|
|
1
|
+
import { type Logger, type ServerContainer, type SweepHealthTracker } from '@cat-factory/server';
|
|
2
2
|
/**
|
|
3
3
|
* Start the periodic foundational-source refresh. Runs once immediately then on the interval,
|
|
4
4
|
* non-overlapping + best-effort (see {@link startSweeper}). A no-op when the catalog is not
|
|
5
5
|
* configured, or is configured without the GitHub integration a repo source needs.
|
|
6
6
|
*/
|
|
7
|
-
export declare function startFoundationalSourceSweeper(container: ServerContainer, log: Logger
|
|
7
|
+
export declare function startFoundationalSourceSweeper(container: ServerContainer, log: Logger,
|
|
8
|
+
/** Records each pass's outcome under this sweep's name (see {@link startSweeper}). */
|
|
9
|
+
health: SweepHealthTracker): () => void;
|
|
8
10
|
//# sourceMappingURL=foundationalServices.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"foundationalServices.d.ts","sourceRoot":"","sources":["../src/foundationalServices.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,MAAM,EACX,KAAK,eAAe,
|
|
1
|
+
{"version":3,"file":"foundationalServices.d.ts","sourceRoot":"","sources":["../src/foundationalServices.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,MAAM,EACX,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACxB,MAAM,qBAAqB,CAAA;AAgB5B;;;;GAIG;AACH,wBAAgB,8BAA8B,CAC5C,SAAS,EAAE,eAAe,EAC1B,GAAG,EAAE,MAAM;AACX,sFAAsF;AACtF,MAAM,EAAE,kBAAkB,GACzB,MAAM,IAAI,CAYZ"}
|
|
@@ -16,13 +16,16 @@ const FOUNDATIONAL_SWEEP_INTERVAL_MS = FOUNDATIONAL_SOURCE_STALE_MS;
|
|
|
16
16
|
* non-overlapping + best-effort (see {@link startSweeper}). A no-op when the catalog is not
|
|
17
17
|
* configured, or is configured without the GitHub integration a repo source needs.
|
|
18
18
|
*/
|
|
19
|
-
export function startFoundationalSourceSweeper(container, log
|
|
19
|
+
export function startFoundationalSourceSweeper(container, log,
|
|
20
|
+
/** Records each pass's outcome under this sweep's name (see {@link startSweeper}). */
|
|
21
|
+
health) {
|
|
20
22
|
if (!container.foundationalServices?.sourceService)
|
|
21
23
|
return () => { };
|
|
22
24
|
return startSweeper({
|
|
23
25
|
name: 'foundational-sources',
|
|
24
26
|
intervalMs: FOUNDATIONAL_SWEEP_INTERVAL_MS,
|
|
25
27
|
log,
|
|
28
|
+
health,
|
|
26
29
|
failureMessage: 'foundational-source sweep failed',
|
|
27
30
|
tick: async () => {
|
|
28
31
|
await sweepFoundationalSources(container.foundationalServices, log);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"foundationalServices.js","sourceRoot":"","sources":["../src/foundationalServices.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,4BAA4B,EAC5B,wBAAwB,
|
|
1
|
+
{"version":3,"file":"foundationalServices.js","sourceRoot":"","sources":["../src/foundationalServices.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,4BAA4B,EAC5B,wBAAwB,GAIzB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAE3C,6FAA6F;AAC7F,+FAA+F;AAC/F,0FAA0F;AAC1F,yDAAyD;AAEzD;;;;;GAKG;AACH,MAAM,8BAA8B,GAAG,4BAA4B,CAAA;AAEnE;;;;GAIG;AACH,MAAM,UAAU,8BAA8B,CAC5C,SAA0B,EAC1B,GAAW;AACX,sFAAsF;AACtF,MAA0B;IAE1B,IAAI,CAAC,SAAS,CAAC,oBAAoB,EAAE,aAAa;QAAE,OAAO,GAAG,EAAE,GAAE,CAAC,CAAA;IACnE,OAAO,YAAY,CAAC;QAClB,IAAI,EAAE,sBAAsB;QAC5B,UAAU,EAAE,8BAA8B;QAC1C,GAAG;QACH,MAAM;QACN,cAAc,EAAE,kCAAkC;QAClD,IAAI,EAAE,KAAK,IAAI,EAAE;YACf,MAAM,wBAAwB,CAAC,SAAS,CAAC,oBAAoB,EAAE,GAAG,CAAC,CAAA;QACrE,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import type { Clock } from '@cat-factory/kernel';
|
|
2
|
-
import { type GitHubReconcileDeps, type Logger } from '@cat-factory/server';
|
|
2
|
+
import { type GitHubReconcileDeps, type Logger, type SweepHealthTracker } from '@cat-factory/server';
|
|
3
3
|
/**
|
|
4
4
|
* Start the periodic reconcile sweep. Runs once immediately then on the two-minute
|
|
5
5
|
* timer, non-overlapping + best-effort (see {@link startSweeper}). Returns a stop
|
|
6
6
|
* function that clears the timer.
|
|
7
7
|
*/
|
|
8
|
-
export declare function startGitHubReconcileSweeper(deps: GitHubReconcileDeps, clock: Clock, log: Logger
|
|
8
|
+
export declare function startGitHubReconcileSweeper(deps: GitHubReconcileDeps, clock: Clock, log: Logger,
|
|
9
|
+
/** Records each pass's outcome under this sweep's name (see {@link startSweeper}). */
|
|
10
|
+
health: SweepHealthTracker): () => void;
|
|
9
11
|
//# sourceMappingURL=githubReconcile.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"githubReconcile.d.ts","sourceRoot":"","sources":["../src/githubReconcile.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,EAEL,KAAK,mBAAmB,EACxB,KAAK,MAAM,
|
|
1
|
+
{"version":3,"file":"githubReconcile.d.ts","sourceRoot":"","sources":["../src/githubReconcile.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,EAEL,KAAK,mBAAmB,EACxB,KAAK,MAAM,EACX,KAAK,kBAAkB,EAExB,MAAM,qBAAqB,CAAA;AAc5B;;;;GAIG;AACH,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,mBAAmB,EACzB,KAAK,EAAE,KAAK,EACZ,GAAG,EAAE,MAAM;AACX,sFAAsF;AACtF,MAAM,EAAE,kBAAkB,GACzB,MAAM,IAAI,CAYZ"}
|
package/dist/githubReconcile.js
CHANGED
|
@@ -14,11 +14,14 @@ const GITHUB_RECONCILE_INTERVAL_MS = 2 * 60 * 1000;
|
|
|
14
14
|
* timer, non-overlapping + best-effort (see {@link startSweeper}). Returns a stop
|
|
15
15
|
* function that clears the timer.
|
|
16
16
|
*/
|
|
17
|
-
export function startGitHubReconcileSweeper(deps, clock, log
|
|
17
|
+
export function startGitHubReconcileSweeper(deps, clock, log,
|
|
18
|
+
/** Records each pass's outcome under this sweep's name (see {@link startSweeper}). */
|
|
19
|
+
health) {
|
|
18
20
|
return startSweeper({
|
|
19
21
|
name: 'github-reconcile',
|
|
20
22
|
intervalMs: GITHUB_RECONCILE_INTERVAL_MS,
|
|
21
23
|
log,
|
|
24
|
+
health,
|
|
22
25
|
failureMessage: 'github reconcile sweep failed',
|
|
23
26
|
tick: async () => {
|
|
24
27
|
const synced = await reconcileStaleRepos(deps, clock, GITHUB_RECONCILE_STALE_MS, log);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"githubReconcile.js","sourceRoot":"","sources":["../src/githubReconcile.ts"],"names":[],"mappings":"AACA,OAAO,EACL,yBAAyB,
|
|
1
|
+
{"version":3,"file":"githubReconcile.js","sourceRoot":"","sources":["../src/githubReconcile.ts"],"names":[],"mappings":"AACA,OAAO,EACL,yBAAyB,EAIzB,mBAAmB,GACpB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAE3C,oFAAoF;AACpF,qFAAqF;AACrF,sFAAsF;AACtF,uFAAuF;AACvF,0FAA0F;AAC1F,wFAAwF;AACxF,6FAA6F;AAE7F,8EAA8E;AAC9E,MAAM,4BAA4B,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAA;AAElD;;;;GAIG;AACH,MAAM,UAAU,2BAA2B,CACzC,IAAyB,EACzB,KAAY,EACZ,GAAW;AACX,sFAAsF;AACtF,MAA0B;IAE1B,OAAO,YAAY,CAAC;QAClB,IAAI,EAAE,kBAAkB;QACxB,UAAU,EAAE,4BAA4B;QACxC,GAAG;QACH,MAAM;QACN,cAAc,EAAE,+BAA+B;QAC/C,IAAI,EAAE,KAAK,IAAI,EAAE;YACf,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,IAAI,EAAE,KAAK,EAAE,yBAAyB,EAAE,GAAG,CAAC,CAAA;YACrF,IAAI,MAAM,GAAG,CAAC;gBAAE,GAAG,CAAC,IAAI,CAAC,0CAA0C,EAAE,EAAE,MAAM,EAAE,CAAC,CAAA;QAClF,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -18,6 +18,7 @@ export { InitiativePresetRegistry, type InitiativePresetRegistration } from '@ca
|
|
|
18
18
|
export { PipelineRegistry, defaultPipelineRegistry } from '@cat-factory/kernel';
|
|
19
19
|
export { TaskTypeRegistry, defaultTaskTypeRegistry } from '@cat-factory/kernel';
|
|
20
20
|
export { FoundationalServiceRegistry, type FoundationalServiceDefinition, defaultFoundationalServiceRegistry, } from '@cat-factory/kernel';
|
|
21
|
+
export { BinaryGeneratorRegistry, type BinaryGeneratorDefinition, defaultBinaryGeneratorRegistry, } from '@cat-factory/kernel';
|
|
21
22
|
export { DEFAULT_MODEL_PRESET_ID, MODEL_PRESET_SEED_IDS } from '@cat-factory/kernel';
|
|
22
23
|
export type { ComposeFileRef, ComposeSource, CreateSharedStackInput } from '@cat-factory/kernel';
|
|
23
24
|
export { SystemClock, CryptoIdGenerator } from './runtime.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -66,6 +66,13 @@ export { TaskTypeRegistry, defaultTaskTypeRegistry } from '@cat-factory/kernel';
|
|
|
66
66
|
// as the `builtin` tier of every workspace's catalog, so a board designs against the estate from
|
|
67
67
|
// its first request. See backend/docs/adr/0031-foundational-services.md.
|
|
68
68
|
export { FoundationalServiceRegistry, defaultFoundationalServiceRegistry, } from '@cat-factory/kernel';
|
|
69
|
+
// Installation-level extension point for GENERATIVE BINARY INTEGRATIONS (the same DI seam once
|
|
70
|
+
// more): a deployment news a `defaultBinaryGeneratorRegistry()`, registers the image / music /
|
|
71
|
+
// video generation APIs it pays for on it, and passes it via the `binaryGeneratorRegistry`
|
|
72
|
+
// option. A pipeline step whose kind carries the `binary-output` trait then SELECTS from them
|
|
73
|
+
// (`stepOptions.binaryOutput.generatorIds`), and the engine briefs the agent on each one's
|
|
74
|
+
// content types, contract and credential variable.
|
|
75
|
+
export { BinaryGeneratorRegistry, defaultBinaryGeneratorRegistry, } from '@cat-factory/kernel';
|
|
69
76
|
// The built-in model-preset ids + the catalog fallback default, re-exported so a deploy-app
|
|
70
77
|
// wrapper can name a preset when passing `start({ defaultModelPresetId })` without a direct
|
|
71
78
|
// `@cat-factory/kernel` import.
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,qFAAqF;AACrF,qFAAqF;AACrF,uFAAuF;AACvF,6EAA6E;AAC7E,OAAO,EACL,qBAAqB,EACrB,SAAS,EACT,YAAY,EACZ,oBAAoB,EACpB,kBAAkB,EAClB,KAAK,GAEN,MAAM,aAAa,CAAA;AACpB,2FAA2F;AAC3F,0EAA0E;AAC1E,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAA;AAChE,4FAA4F;AAC5F,+FAA+F;AAC/F,yFAAyF;AACzF,OAAO,EAAE,YAAY,EAAuB,MAAM,cAAc,CAAA;AAChE,0FAA0F;AAC1F,4FAA4F;AAC5F,yEAAyE;AACzE,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,cAAc,GAKf,MAAM,eAAe,CAAA;AACtB,+FAA+F;AAC/F,6FAA6F;AAC7F,4DAA4D;AAC5D,OAAO,EACL,sBAAsB,EACtB,uBAAuB,GAGxB,MAAM,iBAAiB,CAAA;AACxB,OAAO,EACL,wBAAwB,EACxB,wBAAwB,GAEzB,MAAM,sBAAsB,CAAA;AAC7B,qFAAqF;AACrF,0FAA0F;AAC1F,qDAAqD;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAA;AAC/D,OAAO,EACL,sBAAsB,EACtB,mBAAmB,EACnB,wBAAwB,EACxB,gBAAgB,EAChB,8BAA8B,GAG/B,MAAM,iBAAiB,CAAA;AACxB,OAAO,EACL,kBAAkB,EAClB,yBAAyB,EACzB,mBAAmB,GAEpB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAC5C,8FAA8F;AAC9F,gFAAgF;AAChF,OAAO,EAAE,cAAc,EAAkB,MAAM,kBAAkB,CAAA;AACjE,6FAA6F;AAC7F,8FAA8F;AAC9F,8EAA8E;AAC9E,OAAO,EAAE,0BAA0B,EAAyB,MAAM,sBAAsB,CAAA;AACxF,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAClD,0FAA0F;AAC1F,4FAA4F;AAC5F,0EAA0E;AAC1E,OAAO,EAAE,+BAA+B,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAA;AAE7F,wFAAwF;AACxF,2FAA2F;AAC3F,8FAA8F;AAC9F,2FAA2F;AAC3F,gDAAgD;AAChD,OAAO,EACL,iBAAiB,EACjB,wBAAwB,GAEzB,MAAM,qBAAqB,CAAA;AAC5B,8FAA8F;AAC9F,mGAAmG;AACnG,mGAAmG;AACnG,mFAAmF;AACnF,OAAO,EAAE,+BAA+B,EAAE,MAAM,qBAAqB,CAAA;AACrE,OAAO,EAAE,wBAAwB,EAAqC,MAAM,qBAAqB,CAAA;AACjG,iGAAiG;AACjG,mGAAmG;AACnG,qGAAqG;AACrG,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAA;AAC/E,8FAA8F;AAC9F,kGAAkG;AAClG,iGAAiG;AACjG,iFAAiF;AACjF,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAA;AAC/E,2FAA2F;AAC3F,kGAAkG;AAClG,mGAAmG;AACnG,iGAAiG;AACjG,yEAAyE;AACzE,OAAO,EACL,2BAA2B,EAE3B,kCAAkC,GACnC,MAAM,qBAAqB,CAAA;AAC5B,4FAA4F;AAC5F,4FAA4F;AAC5F,gCAAgC;AAChC,OAAO,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAKpF,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAC7D,sFAAsF;AACtF,yFAAyF;AACzF,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAA;AACnE,OAAO,EAAE,cAAc,EAAiC,MAAM,gBAAgB,CAAA;AAC9E,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AACzC,0FAA0F;AAC1F,+EAA+E;AAC/E,OAAO,EAAE,gBAAgB,EAAyB,MAAM,uBAAuB,CAAA;AAC/E,OAAO,EAAE,cAAc,EAAuC,MAAM,sBAAsB,CAAA;AAC1F,OAAO,EACL,yBAAyB,EAEzB,gCAAgC,EAChC,8BAA8B,EAC9B,kCAAkC,EAClC,0BAA0B,EAC1B,gCAAgC,GACjC,MAAM,2BAA2B,CAAA;AAClC,OAAO,EACL,mCAAmC,EACnC,qCAAqC,GACtC,MAAM,sCAAsC,CAAA;AAC7C,8FAA8F;AAC9F,8FAA8F;AAC9F,iGAAiG;AACjG,OAAO,EACL,+BAA+B,EAC/B,iCAAiC,EACjC,sCAAsC,EACtC,gCAAgC,EAChC,iCAAiC,EACjC,mCAAmC,GACpC,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAA;AAC/E,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAA;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAC/D,OAAO,EAAE,6BAA6B,EAAE,MAAM,2BAA2B,CAAA;AACzE,OAAO,EAAE,uCAAuC,EAAE,MAAM,0CAA0C,CAAA;AAClG,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAA;AACxC,OAAO,EACL,2BAA2B,EAC3B,yBAAyB,GAC1B,MAAM,0CAA0C,CAAA;AACjD,OAAO,EAAE,yBAAyB,EAAE,MAAM,wCAAwC,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import type { Clock } from '@cat-factory/kernel';
|
|
2
|
-
import { type Logger, type ServerContainer } from '@cat-factory/server';
|
|
2
|
+
import { type Logger, type ServerContainer, type SweepHealthTracker } from '@cat-factory/server';
|
|
3
3
|
/**
|
|
4
4
|
* Start the periodic reachability watcher. Runs once immediately then on the interval,
|
|
5
5
|
* non-overlapping + best-effort (see {@link startSweeper}). A NO-OP (returns a no-op stop) unless
|
|
6
6
|
* the watcher is opted in — so a deployment that hasn't set `INFRA_REACHABILITY_WATCH` makes no
|
|
7
7
|
* outbound probes at all. Returns a stop function that clears the timer.
|
|
8
8
|
*/
|
|
9
|
-
export declare function startInfraReachabilitySweeper(container: ServerContainer, clock: Clock, log: Logger
|
|
9
|
+
export declare function startInfraReachabilitySweeper(container: ServerContainer, clock: Clock, log: Logger,
|
|
10
|
+
/** Records each pass's outcome under this sweep's name (see {@link startSweeper}). */
|
|
11
|
+
health: SweepHealthTracker): () => void;
|
|
10
12
|
//# sourceMappingURL=infraReachability.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"infraReachability.d.ts","sourceRoot":"","sources":["../src/infraReachability.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,
|
|
1
|
+
{"version":3,"file":"infraReachability.d.ts","sourceRoot":"","sources":["../src/infraReachability.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,EACL,KAAK,MAAM,EACX,KAAK,eAAe,EACpB,KAAK,kBAAkB,EAExB,MAAM,qBAAqB,CAAA;AAY5B;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAC3C,SAAS,EAAE,eAAe,EAC1B,KAAK,EAAE,KAAK,EACZ,GAAG,EAAE,MAAM;AACX,sFAAsF;AACtF,MAAM,EAAE,kBAAkB,GACzB,MAAM,IAAI,CAcZ"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { sweepInfraReachability } from '@cat-factory/server';
|
|
1
|
+
import { sweepInfraReachability, } from '@cat-factory/server';
|
|
2
2
|
import { startSweeper } from './sweeper.js';
|
|
3
3
|
// Periodic infrastructure-REACHABILITY watcher for the Node facade — the analogue of the Worker's
|
|
4
4
|
// every-2-min cron call to `sweepInfraReachability`. It probes each workspace's CONFIGURED
|
|
@@ -14,7 +14,9 @@ import { startSweeper } from './sweeper.js';
|
|
|
14
14
|
* the watcher is opted in — so a deployment that hasn't set `INFRA_REACHABILITY_WATCH` makes no
|
|
15
15
|
* outbound probes at all. Returns a stop function that clears the timer.
|
|
16
16
|
*/
|
|
17
|
-
export function startInfraReachabilitySweeper(container, clock, log
|
|
17
|
+
export function startInfraReachabilitySweeper(container, clock, log,
|
|
18
|
+
/** Records each pass's outcome under this sweep's name (see {@link startSweeper}). */
|
|
19
|
+
health) {
|
|
18
20
|
const cfg = container.config.infraReachability;
|
|
19
21
|
if (!cfg.enabled)
|
|
20
22
|
return () => { };
|
|
@@ -22,6 +24,7 @@ export function startInfraReachabilitySweeper(container, clock, log) {
|
|
|
22
24
|
name: 'infra-reachability',
|
|
23
25
|
intervalMs: cfg.intervalMs,
|
|
24
26
|
log,
|
|
27
|
+
health,
|
|
25
28
|
failureMessage: 'infra reachability sweep failed',
|
|
26
29
|
tick: async () => {
|
|
27
30
|
const { raised, cleared } = await sweepInfraReachability(container, log);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"infraReachability.js","sourceRoot":"","sources":["../src/infraReachability.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"infraReachability.js","sourceRoot":"","sources":["../src/infraReachability.ts"],"names":[],"mappings":"AACA,OAAO,EAIL,sBAAsB,GACvB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAE3C,kGAAkG;AAClG,2FAA2F;AAC3F,iFAAiF;AACjF,mGAAmG;AACnG,6FAA6F;AAC7F,kGAAkG;AAClG,mGAAmG;AACnG,sEAAsE;AAEtE;;;;;GAKG;AACH,MAAM,UAAU,6BAA6B,CAC3C,SAA0B,EAC1B,KAAY,EACZ,GAAW;AACX,sFAAsF;AACtF,MAA0B;IAE1B,MAAM,GAAG,GAAG,SAAS,CAAC,MAAM,CAAC,iBAAiB,CAAA;IAC9C,IAAI,CAAC,GAAG,CAAC,OAAO;QAAE,OAAO,GAAG,EAAE,GAAE,CAAC,CAAA;IACjC,OAAO,YAAY,CAAC;QAClB,IAAI,EAAE,oBAAoB;QAC1B,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,GAAG;QACH,MAAM;QACN,cAAc,EAAE,iCAAiC;QACjD,IAAI,EAAE,KAAK,IAAI,EAAE;YACf,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,sBAAsB,CAAC,SAAS,EAAE,GAAG,CAAC,CAAA;YACxE,IAAI,MAAM,GAAG,CAAC,IAAI,OAAO,GAAG,CAAC;gBAAE,GAAG,CAAC,IAAI,CAAC,0BAA0B,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAA;QAC1F,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
|
package/dist/initiativeLoop.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Clock } from '@cat-factory/kernel';
|
|
2
|
-
import type { Logger, ServerContainer } from '@cat-factory/server';
|
|
2
|
+
import type { Logger, ServerContainer, SweepHealthTracker } from '@cat-factory/server';
|
|
3
3
|
/**
|
|
4
4
|
* The sweep interval, overridable via `INITIATIVE_LOOP_INTERVAL_MS` (milliseconds) — the same
|
|
5
5
|
* shape as the other Node cadence knobs. Chiefly so a fast integration harness (the e2e suite)
|
|
@@ -20,5 +20,7 @@ export declare function resolveSweepInterval(env?: NodeJS.ProcessEnv): number;
|
|
|
20
20
|
* tasks and spawns the next wave, so two concurrent passes could both observe "no active run"
|
|
21
21
|
* and double-spawn. Returns a stop function that clears the timer.
|
|
22
22
|
*/
|
|
23
|
-
export declare function startInitiativeLoopSweeper(container: ServerContainer, clock: Clock, log: Logger,
|
|
23
|
+
export declare function startInitiativeLoopSweeper(container: ServerContainer, clock: Clock, log: Logger,
|
|
24
|
+
/** Records each pass's outcome under this sweep's name (see {@link startSweeper}). */
|
|
25
|
+
health: SweepHealthTracker, intervalMs?: number): () => void;
|
|
24
26
|
//# sourceMappingURL=initiativeLoop.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"initiativeLoop.d.ts","sourceRoot":"","sources":["../src/initiativeLoop.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"initiativeLoop.d.ts","sourceRoot":"","sources":["../src/initiativeLoop.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AAYtF;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,MAAM,CAIjF;AAED;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CACxC,SAAS,EAAE,eAAe,EAC1B,KAAK,EAAE,KAAK,EACZ,GAAG,EAAE,MAAM;AACX,sFAAsF;AACtF,MAAM,EAAE,kBAAkB,EAC1B,UAAU,GAAE,MAA+B,GAC1C,MAAM,IAAI,CAgBZ"}
|
package/dist/initiativeLoop.js
CHANGED
|
@@ -30,7 +30,9 @@ export function resolveSweepInterval(env = process.env) {
|
|
|
30
30
|
* tasks and spawns the next wave, so two concurrent passes could both observe "no active run"
|
|
31
31
|
* and double-spawn. Returns a stop function that clears the timer.
|
|
32
32
|
*/
|
|
33
|
-
export function startInitiativeLoopSweeper(container, clock, log,
|
|
33
|
+
export function startInitiativeLoopSweeper(container, clock, log,
|
|
34
|
+
/** Records each pass's outcome under this sweep's name (see {@link startSweeper}). */
|
|
35
|
+
health, intervalMs = resolveSweepInterval()) {
|
|
34
36
|
const initiatives = container.initiatives;
|
|
35
37
|
if (!initiatives)
|
|
36
38
|
return () => { };
|
|
@@ -38,6 +40,7 @@ export function startInitiativeLoopSweeper(container, clock, log, intervalMs = r
|
|
|
38
40
|
name: 'initiative-loop',
|
|
39
41
|
intervalMs,
|
|
40
42
|
log,
|
|
43
|
+
health,
|
|
41
44
|
failureMessage: 'initiative-loop sweep failed',
|
|
42
45
|
tick: async () => {
|
|
43
46
|
const { spawned, completed } = await initiatives.loop.runDue(clock.now());
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"initiativeLoop.js","sourceRoot":"","sources":["../src/initiativeLoop.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAE3C,8FAA8F;AAC9F,+FAA+F;AAC/F,6FAA6F;AAC7F,2FAA2F;AAC3F,kCAAkC;AAElC,4FAA4F;AAC5F,MAAM,iCAAiC,GAAG,EAAE,GAAG,IAAI,CAAA;AAEnD;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,oBAAoB,CAAC,GAAG,GAAsB,OAAO,CAAC,GAAG;IACvE,MAAM,GAAG,GAAG,GAAG,CAAC,2BAA2B,CAAA;IAC3C,MAAM,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAA;IAC7C,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,iCAAiC,CAAA;AAC3F,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,0BAA0B,CACxC,SAA0B,EAC1B,KAAY,EACZ,GAAW,
|
|
1
|
+
{"version":3,"file":"initiativeLoop.js","sourceRoot":"","sources":["../src/initiativeLoop.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAE3C,8FAA8F;AAC9F,+FAA+F;AAC/F,6FAA6F;AAC7F,2FAA2F;AAC3F,kCAAkC;AAElC,4FAA4F;AAC5F,MAAM,iCAAiC,GAAG,EAAE,GAAG,IAAI,CAAA;AAEnD;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,oBAAoB,CAAC,GAAG,GAAsB,OAAO,CAAC,GAAG;IACvE,MAAM,GAAG,GAAG,GAAG,CAAC,2BAA2B,CAAA;IAC3C,MAAM,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAA;IAC7C,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,iCAAiC,CAAA;AAC3F,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,0BAA0B,CACxC,SAA0B,EAC1B,KAAY,EACZ,GAAW;AACX,sFAAsF;AACtF,MAA0B,EAC1B,UAAU,GAAW,oBAAoB,EAAE;IAE3C,MAAM,WAAW,GAAG,SAAS,CAAC,WAAW,CAAA;IACzC,IAAI,CAAC,WAAW;QAAE,OAAO,GAAG,EAAE,GAAE,CAAC,CAAA;IACjC,OAAO,YAAY,CAAC;QAClB,IAAI,EAAE,iBAAiB;QACvB,UAAU;QACV,GAAG;QACH,MAAM;QACN,cAAc,EAAE,8BAA8B;QAC9C,IAAI,EAAE,KAAK,IAAI,EAAE;YACf,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAA;YACzE,IAAI,OAAO,GAAG,CAAC,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;gBACjC,GAAG,CAAC,IAAI,CAAC,wBAAwB,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAA;YAC5D,CAAC;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
|