@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.
Files changed (115) hide show
  1. package/dist/config.d.ts.map +1 -1
  2. package/dist/config.js +4 -0
  3. package/dist/config.js.map +1 -1
  4. package/dist/container-core-deps.d.ts.map +1 -1
  5. package/dist/container-core-deps.js +12 -1
  6. package/dist/container-core-deps.js.map +1 -1
  7. package/dist/container-executor-deps.d.ts.map +1 -1
  8. package/dist/container-executor-deps.js +4 -1
  9. package/dist/container-executor-deps.js.map +1 -1
  10. package/dist/container-options.d.ts +23 -1
  11. package/dist/container-options.d.ts.map +1 -1
  12. package/dist/container-options.js.map +1 -1
  13. package/dist/db/schema-slack.d.ts +262 -0
  14. package/dist/db/schema-slack.d.ts.map +1 -0
  15. package/dist/db/schema-slack.js +42 -0
  16. package/dist/db/schema-slack.js.map +1 -0
  17. package/dist/db/schema.d.ts +16 -261
  18. package/dist/db/schema.d.ts.map +1 -1
  19. package/dist/db/schema.js +7 -32
  20. package/dist/db/schema.js.map +1 -1
  21. package/dist/environments.d.ts +4 -2
  22. package/dist/environments.d.ts.map +1 -1
  23. package/dist/environments.js +4 -1
  24. package/dist/environments.js.map +1 -1
  25. package/dist/execution/bootstrapRunner.d.ts.map +1 -1
  26. package/dist/execution/bootstrapRunner.js +2 -1
  27. package/dist/execution/bootstrapRunner.js.map +1 -1
  28. package/dist/execution/deadLetter.d.ts +16 -0
  29. package/dist/execution/deadLetter.d.ts.map +1 -0
  30. package/dist/execution/deadLetter.js +40 -0
  31. package/dist/execution/deadLetter.js.map +1 -0
  32. package/dist/execution/envConfigRepairRunner.d.ts.map +1 -1
  33. package/dist/execution/envConfigRepairRunner.js +2 -1
  34. package/dist/execution/envConfigRepairRunner.js.map +1 -1
  35. package/dist/execution/envTestRunner.d.ts +10 -3
  36. package/dist/execution/envTestRunner.d.ts.map +1 -1
  37. package/dist/execution/envTestRunner.js +16 -2
  38. package/dist/execution/envTestRunner.js.map +1 -1
  39. package/dist/execution/githubSyncRunner.d.ts.map +1 -1
  40. package/dist/execution/githubSyncRunner.js +2 -1
  41. package/dist/execution/githubSyncRunner.js.map +1 -1
  42. package/dist/execution/pgBossRunner.d.ts +7 -3
  43. package/dist/execution/pgBossRunner.d.ts.map +1 -1
  44. package/dist/execution/pgBossRunner.js +31 -2
  45. package/dist/execution/pgBossRunner.js.map +1 -1
  46. package/dist/execution/trackerSyncRunner.d.ts.map +1 -1
  47. package/dist/execution/trackerSyncRunner.js +2 -1
  48. package/dist/execution/trackerSyncRunner.js.map +1 -1
  49. package/dist/foundationalServices.d.ts +4 -2
  50. package/dist/foundationalServices.d.ts.map +1 -1
  51. package/dist/foundationalServices.js +4 -1
  52. package/dist/foundationalServices.js.map +1 -1
  53. package/dist/githubReconcile.d.ts +4 -2
  54. package/dist/githubReconcile.d.ts.map +1 -1
  55. package/dist/githubReconcile.js +4 -1
  56. package/dist/githubReconcile.js.map +1 -1
  57. package/dist/index.d.ts +1 -0
  58. package/dist/index.d.ts.map +1 -1
  59. package/dist/index.js +7 -0
  60. package/dist/index.js.map +1 -1
  61. package/dist/infraReachability.d.ts +4 -2
  62. package/dist/infraReachability.d.ts.map +1 -1
  63. package/dist/infraReachability.js +5 -2
  64. package/dist/infraReachability.js.map +1 -1
  65. package/dist/initiativeLoop.d.ts +4 -2
  66. package/dist/initiativeLoop.d.ts.map +1 -1
  67. package/dist/initiativeLoop.js +4 -1
  68. package/dist/initiativeLoop.js.map +1 -1
  69. package/dist/kaizen.d.ts +4 -2
  70. package/dist/kaizen.d.ts.map +1 -1
  71. package/dist/kaizen.js +4 -1
  72. package/dist/kaizen.js.map +1 -1
  73. package/dist/notifications.d.ts +4 -2
  74. package/dist/notifications.d.ts.map +1 -1
  75. package/dist/notifications.js +5 -2
  76. package/dist/notifications.js.map +1 -1
  77. package/dist/platformHealth.d.ts +4 -2
  78. package/dist/platformHealth.d.ts.map +1 -1
  79. package/dist/platformHealth.js +5 -2
  80. package/dist/platformHealth.js.map +1 -1
  81. package/dist/platformMetrics.d.ts +17 -3
  82. package/dist/platformMetrics.d.ts.map +1 -1
  83. package/dist/platformMetrics.js +23 -3
  84. package/dist/platformMetrics.js.map +1 -1
  85. package/dist/queueDepth.d.ts +38 -0
  86. package/dist/queueDepth.d.ts.map +1 -0
  87. package/dist/queueDepth.js +69 -0
  88. package/dist/queueDepth.js.map +1 -0
  89. package/dist/readiness.d.ts +16 -0
  90. package/dist/readiness.d.ts.map +1 -1
  91. package/dist/readiness.js +34 -9
  92. package/dist/readiness.js.map +1 -1
  93. package/dist/recurring.d.ts +4 -2
  94. package/dist/recurring.d.ts.map +1 -1
  95. package/dist/recurring.js +4 -1
  96. package/dist/recurring.js.map +1 -1
  97. package/dist/repositories/drizzle/execution.d.ts +1 -0
  98. package/dist/repositories/drizzle/execution.d.ts.map +1 -1
  99. package/dist/repositories/drizzle/execution.js +12 -0
  100. package/dist/repositories/drizzle/execution.js.map +1 -1
  101. package/dist/retention.d.ts +22 -6
  102. package/dist/retention.d.ts.map +1 -1
  103. package/dist/retention.js +37 -23
  104. package/dist/retention.js.map +1 -1
  105. package/dist/server.d.ts +9 -0
  106. package/dist/server.d.ts.map +1 -1
  107. package/dist/server.js +54 -18
  108. package/dist/server.js.map +1 -1
  109. package/dist/sweeper.d.ts +10 -0
  110. package/dist/sweeper.d.ts.map +1 -1
  111. package/dist/sweeper.js +8 -2
  112. package/dist/sweeper.js.map +1 -1
  113. package/drizzle/20260803043617_bent_spitfire/migration.sql +1 -0
  114. package/drizzle/20260803043617_bent_spitfire/snapshot.json +18998 -0
  115. 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.createQueue(QUEUE, { policy: QUEUE_POLICY });
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":"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"}
1
+ {"version":3,"file":"envTestRunner.js","sourceRoot":"","sources":["../../src/execution/envTestRunner.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAA;AAK3D,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,EACX,OAA2B;AAC3B;;;;;GAKG;AACH,MAA0B;IAE1B,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE;QACtB,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC,CAAA;YAClE,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;gBACxB,GAAG,CAAC,IAAI,CAAC,+BAA+B,EAAE;oBACxC,WAAW,EAAE,GAAG,CAAC,WAAW;oBAC5B,KAAK,EAAE,GAAG,CAAC,EAAE;oBACb,KAAK,EAAE,GAAG,CAAC,KAAK;iBACjB,CAAC,CAAA;gBACF,MAAM,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,EAAE,CAAC,CAAA;gBAC9C,oFAAoF;gBACpF,kFAAkF;gBAClF,mEAAmE;gBACnE,OAAO,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAA;YAC/D,CAAC;YACD,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,CAAA;QAClC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,GAAG,CAAC,KAAK,CAAC,uBAAuB,EAAE;gBACjC,GAAG,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAC5D,CAAC,CAAA;YACF,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,CAAA;QAClC,CAAC;IACH,CAAC,CAAA;IACD,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,KAAK,IAAI,EAAE,EAAE,GAAG,CAAC,UAAU,CAAC,CAAA;IAC5D,KAAK,CAAC,KAAK,EAAE,EAAE,CAAA;IACf,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;AACnC,CAAC;AAED,uFAAuF;AACvF,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,IAAY,EACZ,SAA0B,EAC1B,GAAgB,EAChB,GAAW,EACX,OAAO,GAA6B,EAAE;IAEtC,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC,CAAA;IAC1D,MAAM,yBAAyB,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAA;IACtE,MAAM,IAAI,CAAC,IAAI,CACb,KAAK,EACL,EAAE,gBAAgB,EAAE,WAAW,EAAE,EACjC,KAAK,EAAE,IAAuB,EAAE,EAAE;QAChC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,EAAE,WAAW,EAAE,EAAE,EAAE,GAAG,GAAG,CAAC,IAAI,CAAA;YACpC,IAAI,CAAC;gBACH,MAAM,YAAY,CAAC,SAAS,EAAE,WAAW,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;YAC1D,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,GAAG,CAAC,KAAK,CAAC,uBAAuB,EAAE;oBACjC,WAAW;oBACX,EAAE;oBACF,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 +1 @@
1
- {"version":3,"file":"githubSyncRunner.d.ts","sourceRoot":"","sources":["../../src/execution/githubSyncRunner.ts"],"names":[],"mappings":"AACA,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
+ {"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.createQueue(GITHUB_SYNC_QUEUE);
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":"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"}
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, log: Logger): () => void;
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;AACrD,OAAO,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAClE,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,EACjC,GAAG,EAAE,MAAM,GACV,MAAM,IAAI,CAuKZ"}
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.createQueue(QUEUE, { policy: QUEUE_POLICY });
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, log) {
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":"AAGA,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAA;AAC/E,OAAO,EAAE,uBAAuB,EAAE,6BAA6B,EAAE,MAAM,4BAA4B,CAAA;AACnG,OAAO,EAAoB,cAAc,EAAE,MAAM,YAAY,CAAA;AAC7D,OAAO,EAAiB,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAEnF,kFAAkF;AAClF,mFAAmF;AACnF,oFAAoF;AACpF,mFAAmF;AACnF,sFAAsF;AACtF,8EAA8E;AAE9E,MAAM,KAAK,GAAG,mBAAmB,CAAA;AAEjC,qFAAqF;AACrF,yFAAyF;AACzF,0FAA0F;AAC1F,yFAAyF;AACzF,sFAAsF;AACtF,+EAA+E;AAC/E,MAAM,YAAY,GAAG,WAAoB,CAAA;AAgCzC;;;;;GAKG;AACH,SAAS,iBAAiB,CAAC,WAAmB,EAAE,IAAyB;IACvE,OAAO;QACL,YAAY,EAAE,WAAW;QACzB,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,SAAS,WAAW,CAAC,WAAmB,EAAE,IAAyB;IACjE,OAAO,iBAAiB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAA;AAC7C,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,aAAa,CAAC,IAAgB,EAAE,IAAyB;IAChE,OAAO,EAAE,IAAI,EAAE,GAAG,iBAAiB,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,CAAA;AAC/D,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,6BAA6B,GAAG,EAAE,CAAA;AACxC,MAAM,gCAAgC,GAAG,GAAG,CAAA;AAE5C,MAAM,SAAS,GAAG,CAAC,EAAU,EAAiB,EAAE,CAAC,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAA;AAElG,MAAM,OAAO,gBAAgB;IAIR,IAAI;IACJ,YAAY;IAJd,KAAK,CAA+B;IAErD,YACmB,IAAY,EACZ,YAAiC;IAClD,kEAAkE;IAClE,OAAO,GAA8C,EAAE;oBAHtC,IAAI;4BACJ,YAAY;QAI7B,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,SAAS,CAAA;IACzC,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,WAAmB,EAAE,WAAmB;QACrD,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAClB,KAAK,EACL,EAAE,WAAW,EAAE,WAAW,EAAE,EAC5B,WAAW,CAAC,WAAW,EAAE,IAAI,CAAC,YAAY,CAAC,CAC5C,CAAA;IACH,CAAC;IAED,KAAK,CAAC,cAAc,CAClB,WAAmB,EACnB,WAAmB,EACnB,WAAmB,EACnB,OAAe;QAEf,qFAAqF;QACrF,0FAA0F;QAC1F,sFAAsF;QACtF,MAAM,IAAI,CAAC,sBAAsB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAA;IAC7D,CAAC;IAED;;;;;;OAMG;IACK,KAAK,CAAC,sBAAsB,CAAC,WAAmB,EAAE,WAAmB;QAC3E,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,6BAA6B,EAAE,OAAO,EAAE,EAAE,CAAC;YACzE,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAChC,KAAK,EACL,EAAE,WAAW,EAAE,WAAW,EAAE,EAC5B,WAAW,CAAC,WAAW,EAAE,IAAI,CAAC,YAAY,CAAC,CAC5C,CAAA;YACD,0FAA0F;YAC1F,wDAAwD;YACxD,IAAI,KAAK;gBAAE,OAAM;YACjB,MAAM,IAAI,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAA;QACpD,CAAC;QACD,4FAA4F;QAC5F,6FAA6F;IAC/F,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,YAAoB,EAAE,YAAoB;QACxD,gFAAgF;QAChF,kFAAkF;IACpF,CAAC;CACF;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,IAAY,EACZ,SAA0B,EAC1B,GAAgB,EAChB,GAAW,EACX,OAAO,GAA6B,EAAE;IAEtC,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,EAAE,CAAA;IAC7C,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAA;IACvD,MAAM,IAAI,CAAC,IAAI,CACb,KAAK,EACL,EAAE,gBAAgB,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,CAAC,EAAE,EAC9C,KAAK,EAAE,IAAuB,EAAE,EAAE;QAChC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,GAAG,CAAC,IAAI,CAAA;YAC7C,IAAI,CAAC;gBACH,+EAA+E;gBAC/E,iFAAiF;gBACjF,+EAA+E;gBAC/E,oFAAoF;gBACpF,MAAM,OAAO,GAAG,MAAM,cAAc,CAClC,SAAS,CAAC,gBAAgB,EAC1B,WAAW,EACX,WAAW,EACX,GAAG,EACH,EAAE,GAAG,EAAE,CACR,CAAA;gBACD,mFAAmF;gBACnF,iFAAiF;gBACjF,kFAAkF;gBAClF,uEAAuE;gBACvE,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;oBACxB,GAAG,CAAC,IAAI,CAAC,4CAA4C,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC,CAAA;gBACtF,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,GAAG,CAAC,KAAK,CAAC,yBAAyB,EAAE;oBACnC,WAAW;oBACX,WAAW;oBACX,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;YACb,CAAC;QACH,CAAC;IACH,CAAC,CACF,CAAA;AACH,CAAC;AAwBD,kEAAkE;AAClE,SAAS,YAAY,CAAC,IAAY;IAChC,IAAI,IAAI,KAAK,WAAW;QAAE,OAAO,KAAK,CAAA;IACtC,IAAI,IAAI,KAAK,WAAW;QAAE,OAAO,eAAe,CAAA;IAChD,IAAI,IAAI,KAAK,mBAAmB;QAAE,OAAO,uBAAuB,CAAA;IAChE,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,UAAU,oBAAoB,CAClC,IAAY,EACZ,IAAc,EACd,SAA0B,EAC1B,GAAkB,EAClB,YAAiC,EACjC,GAAW;IAEX,2FAA2F;IAC3F,8EAA8E;IAC9E,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,YAAY,CAAC,gBAAgB,GAAG,IAAI,GAAG,CAAC,CAAC,CAAA;IACxF,2FAA2F;IAC3F,sFAAsF;IACtF,yFAAyF;IACzF,8EAA8E;IAC9E,MAAM,aAAa,GAAG,IAAI,GAAG,EAAkB,CAAA;IAC/C,iGAAiG;IACjG,gGAAgG;IAChG,yFAAyF;IACzF,kGAAkG;IAClG,yDAAyD;IACzD,MAAM,kBAAkB,GAAG,KAAK,EAC9B,KAAyE,EACzE,GAAW,EACX,aAA0B,EAC1B,iBAA0C,EAC3B,EAAE;QACjB,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;YACxB,MAAM,KAAK,GAAG,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YACpC,IAAI,CAAC,KAAK;gBAAE,SAAQ;YAEpB,oFAAoF;YACpF,+EAA+E;YAC/E,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,MAAM,kBAAkB,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,EAAE,gBAAgB,EAAE,GAAG,CAAC,CAAA;YAC7F,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;gBACrB,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;gBAC5B,SAAQ;YACV,CAAC;YACD,kEAAkE;YAClE,MAAM,iBAAiB,GAAG,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,GAAG,CAAA;YAC1D,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,iBAAiB,CAAC,CAAA;YAC5C,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;YAEzB,IAAI,KAAK,KAAK,UAAU,IAAI,KAAK,EAAE,CAAC;gBAClC,GAAG,CAAC,IAAI,CAAC,+DAA+D,EAAE;oBACxE,WAAW,EAAE,GAAG,CAAC,WAAW;oBAC5B,KAAK,EAAE,GAAG,CAAC,EAAE;oBACb,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,KAAK;iBACN,CAAC,CAAA;gBACF,MAAM,iBAAiB,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CACxD,GAAG,CAAC,KAAK,CAAC,wCAAwC,EAAE;oBAClD,KAAK,EAAE,GAAG,CAAC,EAAE;oBACb,GAAG,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;iBACtD,CAAC,CACH,CAAA;YACH,CAAC;YAED,sFAAsF;YACtF,qFAAqF;YACrF,uFAAuF;YACvF,sFAAsF;YACtF,mEAAmE;YACnE,IAAI,GAAG,CAAC,IAAI,KAAK,WAAW,IAAI,GAAG,GAAG,iBAAiB,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;gBAC1E,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC,CAAA;gBACvD,GAAG,CAAC,IAAI,CAAC,uEAAuE,EAAE;oBAChF,WAAW,EAAE,GAAG,CAAC,WAAW;oBAC5B,WAAW,EAAE,GAAG,CAAC,EAAE;oBACnB,YAAY,EAAE,IAAI;iBACnB,CAAC,CAAA;gBACF,MAAM,SAAS,CAAC,gBAAgB,CAAC,OAAO,CACtC,GAAG,CAAC,WAAW,EACf,GAAG,CAAC,EAAE,EACN,gCAAgC,IAAI,4CAA4C,EAChF,SAAS,EACT,IAAI,CACL,CAAA;gBACD,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;gBAC5B,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;gBAC5B,SAAQ;YACV,CAAC;YAED,IAAI,GAAG,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBAC7B,GAAG,CAAC,IAAI,CAAC,4BAA4B,EAAE,EAAE,WAAW,EAAE,GAAG,CAAC,WAAW,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAA;gBACvF,MAAM,uBAAuB,CAAC,IAAI,EAAE,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,EAAE,EAAE,YAAY,CAAC,CAAA;gBAC1E,SAAQ;YACV,CAAC;YACD,IAAI,GAAG,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;gBACrC,GAAG,CAAC,IAAI,CAAC,oCAAoC,EAAE;oBAC7C,WAAW,EAAE,GAAG,CAAC,WAAW;oBAC5B,KAAK,EAAE,GAAG,CAAC,EAAE;iBACd,CAAC,CAAA;gBACF,MAAM,6BAA6B,CAAC,IAAI,EAAE,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,EAAE,EAAE,YAAY,CAAC,CAAA;gBAChF,SAAQ;YACV,CAAC;YACD,GAAG,CAAC,IAAI,CAAC,sBAAsB,EAAE,EAAE,WAAW,EAAE,GAAG,CAAC,WAAW,EAAE,WAAW,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAA;YACvF,iBAAiB,CAAC,IAAI,CACpB,aAAa,CAAC,EAAE,WAAW,EAAE,GAAG,CAAC,WAAW,EAAE,WAAW,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,YAAY,CAAC,CACnF,CAAA;QACH,CAAC;IACH,CAAC,CAAA;IAED,0FAA0F;IAC1F,2FAA2F;IAC3F,wFAAwF;IACxF,0FAA0F;IAC1F,0FAA0F;IAC1F,2FAA2F;IAC3F,2FAA2F;IAC3F,+EAA+E;IAC/E,2FAA2F;IAC3F,8FAA8F;IAC9F,qFAAqF;IACrF,MAAM,gBAAgB,GAAG,KAAK,EAAE,iBAA0C,EAAiB,EAAE;QAC3F,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,kBAAkB,CAAC,oBAAoB,EAAE,CAAA;QACxE,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAAmB,CAAA;QACvD,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAyB,CAAA;QAC3D,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;YACzB,IAAI,SAAS,GAAG,oBAAoB,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;YACzD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gBAC5B,IAAI,SAAS,GAAG,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;gBACvD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;oBAC5B,SAAS,GAAG,CAAC,MAAM,SAAS,CAAC,gBAAgB,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,IAAI,CAAA;oBACjF,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,SAAS,CAAC,CAAA;gBACpD,CAAC;gBACD,SAAS,GAAG,MAAM,SAAS,CAAC,YAAY,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,CAAC,CAAA;gBACrF,oBAAoB,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,SAAS,CAAC,CAAA;YACtD,CAAC;YACD,IAAI,SAAS;gBAAE,SAAQ;YACvB,GAAG,CAAC,IAAI,CACN,gGAAgG,EAChG,EAAE,WAAW,EAAE,GAAG,CAAC,WAAW,EAAE,WAAW,EAAE,GAAG,CAAC,EAAE,EAAE,CACtD,CAAA;YACD,iBAAiB,CAAC,IAAI,CACpB,aAAa,CAAC,EAAE,WAAW,EAAE,GAAG,CAAC,WAAW,EAAE,WAAW,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,YAAY,CAAC,CACnF,CAAA;QACH,CAAC;IACH,CAAC,CAAA;IAED,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE;QACtB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;YACtB,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,kBAAkB,CAAC,SAAS,CAAC,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,CAAA;YAC7E,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAA;YACvC,6FAA6F;YAC7F,4FAA4F;YAC5F,4FAA4F;YAC5F,qFAAqF;YACrF,6FAA6F;YAC7F,8FAA8F;YAC9F,kEAAkE;YAClE,MAAM,iBAAiB,GAA4B,EAAE,CAAA;YACrD,MAAM,kBAAkB,CAAC,KAAK,EAAE,GAAG,EAAE,aAAa,EAAE,iBAAiB,CAAC,CAAA;YACtE,yFAAyF;YACzF,yEAAyE;YACzE,KAAK,MAAM,EAAE,IAAI,aAAa,CAAC,IAAI,EAAE,EAAE,CAAC;gBACtC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;oBAAE,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;YACtD,CAAC;YACD,MAAM,gBAAgB,CAAC,iBAAiB,CAAC,CAAA;YACzC,kFAAkF;YAClF,6EAA6E;YAC7E,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC;gBAAE,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAA;QAC/E,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,GAAG,CAAC,KAAK,CAAC,wBAAwB,EAAE;gBAClC,GAAG,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAC5D,CAAC,CAAA;QACJ,CAAC;IACH,CAAC,CAAA;IACD,yFAAyF;IACzF,qFAAqF;IACrF,KAAK,IAAI,EAAE,CAAA;IACX,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,KAAK,IAAI,EAAE,EAAE,GAAG,CAAC,UAAU,CAAC,CAAA;IAC5D,KAAK,CAAC,KAAK,EAAE,EAAE,CAAA,CAAC,wDAAwD;IACxE,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;AACnC,CAAC"}
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;AACxF,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
+ {"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.createQueue(TRACKER_SYNC_QUEUE);
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":"AAIA,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,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAA;IAC1C,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
+ {"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): () => void;
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,EACrB,MAAM,qBAAqB,CAAA;AAgB5B;;;;GAIG;AACH,wBAAgB,8BAA8B,CAC5C,SAAS,EAAE,eAAe,EAC1B,GAAG,EAAE,MAAM,GACV,MAAM,IAAI,CAWZ"}
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,GAGzB,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;IAEX,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,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
+ {"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): () => void;
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,EAEZ,MAAM,qBAAqB,CAAA;AAc5B;;;;GAIG;AACH,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,mBAAmB,EACzB,KAAK,EAAE,KAAK,EACZ,GAAG,EAAE,MAAM,GACV,MAAM,IAAI,CAWZ"}
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"}
@@ -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,EAGzB,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;IAEX,OAAO,YAAY,CAAC;QAClB,IAAI,EAAE,kBAAkB;QACxB,UAAU,EAAE,4BAA4B;QACxC,GAAG;QACH,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"}
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';
@@ -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":"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"}
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): () => void;
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,EAAE,KAAK,MAAM,EAAE,KAAK,eAAe,EAA0B,MAAM,qBAAqB,CAAA;AAY/F;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAC3C,SAAS,EAAE,eAAe,EAC1B,KAAK,EAAE,KAAK,EACZ,GAAG,EAAE,MAAM,GACV,MAAM,IAAI,CAaZ"}
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,EAAqC,sBAAsB,EAAE,MAAM,qBAAqB,CAAA;AAC/F,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;IAEX,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,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"}
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"}
@@ -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, intervalMs?: number): () => void;
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;AAYlE;;;;;;;;;;;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,EACX,UAAU,GAAE,MAA+B,GAC1C,MAAM,IAAI,CAeZ"}
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"}
@@ -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, intervalMs = resolveSweepInterval()) {
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,EACX,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,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"}
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"}