wicked-crew 0.16.4 → 0.16.6

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 (158) hide show
  1. package/dist/api/ask-paths.d.ts +5 -2
  2. package/dist/api/ask-paths.d.ts.map +1 -1
  3. package/dist/api/ask-paths.js +6 -3
  4. package/dist/api/ask-paths.js.map +1 -1
  5. package/dist/api/chat-scope.d.ts +8 -3
  6. package/dist/api/chat-scope.d.ts.map +1 -1
  7. package/dist/api/chat-scope.js +17 -5
  8. package/dist/api/chat-scope.js.map +1 -1
  9. package/dist/api/chat-workflow.d.ts +60 -0
  10. package/dist/api/chat-workflow.d.ts.map +1 -0
  11. package/dist/api/chat-workflow.js +80 -0
  12. package/dist/api/chat-workflow.js.map +1 -0
  13. package/dist/api/endpoint-manifest-live.d.ts.map +1 -1
  14. package/dist/api/endpoint-manifest-live.js +2 -0
  15. package/dist/api/endpoint-manifest-live.js.map +1 -1
  16. package/dist/api/needs.d.ts +116 -0
  17. package/dist/api/needs.d.ts.map +1 -0
  18. package/dist/api/needs.js +618 -0
  19. package/dist/api/needs.js.map +1 -0
  20. package/dist/api/routes.d.ts +23 -1
  21. package/dist/api/routes.d.ts.map +1 -1
  22. package/dist/api/routes.js +297 -25
  23. package/dist/api/routes.js.map +1 -1
  24. package/dist/api/run-liveness.d.ts +8 -0
  25. package/dist/api/run-liveness.d.ts.map +1 -1
  26. package/dist/api/run-liveness.js +39 -7
  27. package/dist/api/run-liveness.js.map +1 -1
  28. package/dist/api/run-timing-index.d.ts +6 -0
  29. package/dist/api/run-timing-index.d.ts.map +1 -1
  30. package/dist/api/run-timing-index.js +18 -0
  31. package/dist/api/run-timing-index.js.map +1 -1
  32. package/dist/api/server.d.ts +8 -0
  33. package/dist/api/server.d.ts.map +1 -1
  34. package/dist/api/server.js +149 -3
  35. package/dist/api/server.js.map +1 -1
  36. package/dist/api/system-snapshot.d.ts +7 -15
  37. package/dist/api/system-snapshot.d.ts.map +1 -1
  38. package/dist/api/system-snapshot.js +7 -115
  39. package/dist/api/system-snapshot.js.map +1 -1
  40. package/dist/core/run-identity.d.ts.map +1 -1
  41. package/dist/core/run-identity.js +3 -0
  42. package/dist/core/run-identity.js.map +1 -1
  43. package/dist/evals/capture.d.ts +93 -0
  44. package/dist/evals/capture.d.ts.map +1 -0
  45. package/dist/evals/capture.js +419 -0
  46. package/dist/evals/capture.js.map +1 -0
  47. package/dist/evals/replay.d.ts +33 -0
  48. package/dist/evals/replay.d.ts.map +1 -0
  49. package/dist/evals/replay.js +87 -0
  50. package/dist/evals/replay.js.map +1 -0
  51. package/dist/evals/routes.d.ts +48 -0
  52. package/dist/evals/routes.d.ts.map +1 -0
  53. package/dist/evals/routes.js +121 -0
  54. package/dist/evals/routes.js.map +1 -0
  55. package/dist/evals/run-cli.d.ts +31 -0
  56. package/dist/evals/run-cli.d.ts.map +1 -0
  57. package/dist/evals/run-cli.js +128 -0
  58. package/dist/evals/run-cli.js.map +1 -0
  59. package/dist/evals/runner.d.ts +34 -0
  60. package/dist/evals/runner.d.ts.map +1 -0
  61. package/dist/evals/runner.js +181 -0
  62. package/dist/evals/runner.js.map +1 -0
  63. package/dist/evals/score.d.ts +31 -0
  64. package/dist/evals/score.d.ts.map +1 -0
  65. package/dist/evals/score.js +191 -0
  66. package/dist/evals/score.js.map +1 -0
  67. package/dist/evals/seed-needs-you.d.ts +17 -0
  68. package/dist/evals/seed-needs-you.d.ts.map +1 -0
  69. package/dist/evals/seed-needs-you.js +57 -0
  70. package/dist/evals/seed-needs-you.js.map +1 -0
  71. package/dist/evals/seed-rig.d.ts +9 -0
  72. package/dist/evals/seed-rig.d.ts.map +1 -0
  73. package/dist/evals/seed-rig.js +156 -0
  74. package/dist/evals/seed-rig.js.map +1 -0
  75. package/dist/evals/stats.d.ts +31 -0
  76. package/dist/evals/stats.d.ts.map +1 -0
  77. package/dist/evals/stats.js +59 -0
  78. package/dist/evals/stats.js.map +1 -0
  79. package/dist/evals/steering.d.ts +9 -0
  80. package/dist/evals/steering.d.ts.map +1 -0
  81. package/dist/evals/steering.js +25 -0
  82. package/dist/evals/steering.js.map +1 -0
  83. package/dist/evals/store.d.ts +26 -0
  84. package/dist/evals/store.d.ts.map +1 -0
  85. package/dist/evals/store.js +96 -0
  86. package/dist/evals/store.js.map +1 -0
  87. package/dist/evals/synthetic.d.ts +17 -0
  88. package/dist/evals/synthetic.d.ts.map +1 -0
  89. package/dist/evals/synthetic.js +71 -0
  90. package/dist/evals/synthetic.js.map +1 -0
  91. package/dist/evals/types.d.ts +29 -0
  92. package/dist/evals/types.d.ts.map +1 -0
  93. package/dist/evals/types.js +25 -0
  94. package/dist/evals/types.js.map +1 -0
  95. package/dist/evals/workflow.d.ts +33 -0
  96. package/dist/evals/workflow.d.ts.map +1 -0
  97. package/dist/evals/workflow.js +66 -0
  98. package/dist/evals/workflow.js.map +1 -0
  99. package/dist/insights/analyze-cli.d.ts +18 -0
  100. package/dist/insights/analyze-cli.d.ts.map +1 -0
  101. package/dist/insights/analyze-cli.js +71 -0
  102. package/dist/insights/analyze-cli.js.map +1 -0
  103. package/dist/insights/analyze.d.ts +136 -0
  104. package/dist/insights/analyze.d.ts.map +1 -0
  105. package/dist/insights/analyze.js +358 -0
  106. package/dist/insights/analyze.js.map +1 -0
  107. package/dist/insights/review-service.d.ts +127 -0
  108. package/dist/insights/review-service.d.ts.map +1 -0
  109. package/dist/insights/review-service.js +392 -0
  110. package/dist/insights/review-service.js.map +1 -0
  111. package/dist/insights/routes.d.ts +15 -0
  112. package/dist/insights/routes.d.ts.map +1 -0
  113. package/dist/insights/routes.js +66 -0
  114. package/dist/insights/routes.js.map +1 -0
  115. package/dist/insights/run-facts.d.ts +64 -0
  116. package/dist/insights/run-facts.d.ts.map +1 -0
  117. package/dist/insights/run-facts.js +152 -0
  118. package/dist/insights/run-facts.js.map +1 -0
  119. package/dist/insights/stats.d.ts +38 -0
  120. package/dist/insights/stats.d.ts.map +1 -0
  121. package/dist/insights/stats.js +102 -0
  122. package/dist/insights/stats.js.map +1 -0
  123. package/dist/insights/store.d.ts +89 -0
  124. package/dist/insights/store.d.ts.map +1 -0
  125. package/dist/insights/store.js +87 -0
  126. package/dist/insights/store.js.map +1 -0
  127. package/dist/insights/workflow.d.ts +22 -0
  128. package/dist/insights/workflow.d.ts.map +1 -0
  129. package/dist/insights/workflow.js +39 -0
  130. package/dist/insights/workflow.js.map +1 -0
  131. package/dist/qe/ledger.d.ts +15 -0
  132. package/dist/qe/ledger.d.ts.map +1 -1
  133. package/dist/qe/ledger.js +24 -0
  134. package/dist/qe/ledger.js.map +1 -1
  135. package/dist/schedules/routes.d.ts +48 -0
  136. package/dist/schedules/routes.d.ts.map +1 -0
  137. package/dist/schedules/routes.js +72 -0
  138. package/dist/schedules/routes.js.map +1 -0
  139. package/dist/schedules/scheduler.d.ts +58 -0
  140. package/dist/schedules/scheduler.d.ts.map +1 -0
  141. package/dist/schedules/scheduler.js +194 -0
  142. package/dist/schedules/scheduler.js.map +1 -0
  143. package/dist/schedules/store.d.ts +67 -0
  144. package/dist/schedules/store.d.ts.map +1 -0
  145. package/dist/schedules/store.js +148 -0
  146. package/dist/schedules/store.js.map +1 -0
  147. package/dist/skills/runtime.d.ts +12 -2
  148. package/dist/skills/runtime.d.ts.map +1 -1
  149. package/dist/skills/runtime.js +27 -1
  150. package/dist/skills/runtime.js.map +1 -1
  151. package/dist/team/routes.d.ts +10 -0
  152. package/dist/team/routes.d.ts.map +1 -1
  153. package/dist/team/routes.js +3 -0
  154. package/dist/team/routes.js.map +1 -1
  155. package/endpoint-manifest.json +132 -1
  156. package/package.json +4 -3
  157. package/workflows/review-recent-work.json +54 -0
  158. package/workflows/run-evals.json +29 -0
@@ -0,0 +1,39 @@
1
+ /**
2
+ * The `review-recent-work` workflow (DES-RUNS-REVIEW-001 §3) is DATA: `packages/crew/workflows/review-recent-work.json`.
3
+ * This module only reads it, fills the three host tokens (`{node}`, `{analyze_cli}`, `{reviews_dir}`) and hands it to
4
+ * the engine, which validates it (`adapter.registerWorkflow`) like the interactive seams' runtime defs.
5
+ */
6
+ import { readFileSync } from 'node:fs';
7
+ import { homedir } from 'node:os';
8
+ import { join } from 'node:path';
9
+ import { fileURLToPath } from 'node:url';
10
+ export const REVIEW_WORKFLOW = 'review-recent-work';
11
+ /** The packaged def (`packages/crew/workflows/`), from `src/insights/` and from `dist/insights/` alike. */
12
+ export const REVIEW_WORKFLOW_FILE = fileURLToPath(new URL('../../workflows/review-recent-work.json', import.meta.url));
13
+ /** The analyze script beside this module (`.js` in dist; under vitest the `.ts` source sits here instead). */
14
+ export const ANALYZE_CLI = fileURLToPath(new URL('./analyze-cli.js', import.meta.url));
15
+ /** Where each review's run directory lives: outside the daemon state home (the worker fence), like walkthroughs. */
16
+ export function defaultReviewsDir(env = process.env) {
17
+ return env['WICKED_CREW_REVIEWS_DIR'] ?? join(homedir(), '.wicked', 'reviews');
18
+ }
19
+ /** Fill the def's tokens. Only the Tool `cmd` carries them; anything else unfilled is a packaging error. */
20
+ export function fillReviewWorkflow(raw, tokens) {
21
+ const def = { ...raw };
22
+ delete def['$comment'];
23
+ const fill = (s) => s.replaceAll('{node}', tokens.node).replaceAll('{analyze_cli}', tokens.analyzeCli).replaceAll('{reviews_dir}', tokens.reviewsDir);
24
+ const phases = def['phases'].map((p) => {
25
+ const ex = p['executor'];
26
+ if (ex?.type !== 'tool' || !Array.isArray(ex.cmd))
27
+ return p;
28
+ return { ...p, executor: { type: 'tool', cmd: ex.cmd.map(fill) } };
29
+ });
30
+ const out = { ...def, phases };
31
+ const left = JSON.stringify(out.phases.map((p) => p.executor ?? null)).match(/\{(node|analyze_cli|reviews_dir)\}/u);
32
+ if (left !== null)
33
+ throw new Error(`review-recent-work: token ${left[0]} was not filled`);
34
+ return out;
35
+ }
36
+ export function loadReviewWorkflow(tokens, file = REVIEW_WORKFLOW_FILE) {
37
+ return fillReviewWorkflow(JSON.parse(readFileSync(file, 'utf8')), tokens);
38
+ }
39
+ //# sourceMappingURL=workflow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow.js","sourceRoot":"","sources":["../../src/insights/workflow.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAGzC,MAAM,CAAC,MAAM,eAAe,GAAG,oBAAoB,CAAC;AAEpD,2GAA2G;AAC3G,MAAM,CAAC,MAAM,oBAAoB,GAAG,aAAa,CAAC,IAAI,GAAG,CAAC,yCAAyC,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AACvH,8GAA8G;AAC9G,MAAM,CAAC,MAAM,WAAW,GAAG,aAAa,CAAC,IAAI,GAAG,CAAC,kBAAkB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAEvF,oHAAoH;AACpH,MAAM,UAAU,iBAAiB,CAAC,MAAyB,OAAO,CAAC,GAAG;IACpE,OAAO,GAAG,CAAC,yBAAyB,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;AACjF,CAAC;AAQD,4GAA4G;AAC5G,MAAM,UAAU,kBAAkB,CAAC,GAAY,EAAE,MAA4B;IAC3E,MAAM,GAAG,GAAG,EAAE,GAAI,GAA+B,EAAE,CAAC;IACpD,OAAO,GAAG,CAAC,UAAU,CAAC,CAAC;IACvB,MAAM,IAAI,GAAG,CAAC,CAAS,EAAU,EAAE,CACjC,CAAC,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,eAAe,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,UAAU,CAAC,eAAe,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;IACpI,MAAM,MAAM,GAAI,GAAG,CAAC,QAAQ,CAAoC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACzE,MAAM,EAAE,GAAG,CAAC,CAAC,UAAU,CAAkD,CAAC;QAC1E,IAAI,EAAE,EAAE,IAAI,KAAK,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC;YAAE,OAAO,CAAC,CAAC;QAC5D,OAAO,EAAE,GAAG,CAAC,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;IACrE,CAAC,CAAC,CAAC;IACH,MAAM,GAAG,GAAG,EAAE,GAAG,GAAG,EAAE,MAAM,EAA4B,CAAC;IACzD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;IACpH,IAAI,IAAI,KAAK,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC;IAC1F,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,MAA4B,EAAE,IAAI,GAAG,oBAAoB;IAC1F,OAAO,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAY,EAAE,MAAM,CAAC,CAAC;AACvF,CAAC"}
@@ -310,4 +310,19 @@ export declare function readDocReviewVerdicts(reviewRoot: string, runId?: string
310
310
  rows: DocReviewLedgerRow[];
311
311
  error?: string;
312
312
  };
313
+ /** One verdict of a crew run, as the default evals read it (DES-DEFAULT-EVALS-001 S3). */
314
+ export interface RunVerdictRow {
315
+ id: string;
316
+ verdict: string;
317
+ reason: string;
318
+ /** The tree the writer stamped, when it stamped one. */
319
+ tree: string | null;
320
+ createdAt: string;
321
+ }
322
+ /**
323
+ * Every live verdict in a QE ledger root stamped with `crew_run_id` = `runId` (on the verdict or on its run),
324
+ * newest first. Read-only, canonical JSON only, like {@link readAcceptanceState}. A root that does not exist reads
325
+ * as no verdicts; one that cannot be parsed throws, for the caller to surface.
326
+ */
327
+ export declare function readRunVerdicts(root: string, runId: string): RunVerdictRow[];
313
328
  //# sourceMappingURL=ledger.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ledger.d.ts","sourceRoot":"","sources":["../../src/qe/ledger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AAMH,OAAO,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAEhF;;;;;;;;GAQG;AACH,eAAO,MAAM,yBAAyB,eAAe,CAAC;AACtD,eAAO,MAAM,wBAAwB,oBAAoB,CAAC;AAE1D;;;;;;;GAOG;AACH,eAAO,MAAM,iBAAiB,gBAAgB,CAAC;AAE/C,6FAA6F;AAC7F,wBAAgB,eAAe,IAAI,MAAM,CAGxC;AAED;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAQrD;AAED,gHAAgH;AAChH,eAAO,MAAM,cAAc,0BAA0B,CAAC;AAEtD;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,MAAM,GAAG,IAAI,CAsB1F;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE;IAAE,aAAa,CAAC,EAAE,OAAO,CAAA;CAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,CAI5G;AAED;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB,iFAAiF;IACjF,KAAK,EAAE,MAAM,CAAC;IACd;;;;;OAKG;IACH,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB;;;;OAIG;IACH,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,eAAe,EAAE,CAAC;IAC/B;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED,qFAAqF;AACrF,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,4EAA4E;IAC5E,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,kGAAkG;IAClG,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACrB;AA0DD;;;GAGG;AACH,MAAM,MAAM,WAAW,GAAG;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,GAAG,EAAE,UAAU,CAAA;CAAE,CAAC;AAEpE;;;GAGG;AACH,MAAM,MAAM,aAAa;AACvB,8EAA8E;AAC5E;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE;AACrC,0FAA0F;GACxF;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE;AACtC,yGAAyG;GACvG;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,CAAA;CAAE;AACjE,6FAA6F;GAC3F;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAErC;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,aAAa,GAAG,MAAM,CAc5D;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,iBAAiB;IAChC,sDAAsD;IACtD,IAAI,EAAE,MAAM,CAAC;IACb,8CAA8C;IAC9C,KAAK,EAAE,OAAO,CAAC;IACf,iEAAiE;IACjE,GAAG,EAAE,SAAS,GAAG,IAAI,CAAC;IACtB;;;;OAIG;IACH,OAAO,EAAE,aAAa,GAAG,IAAI,CAAC;IAC9B,6EAA6E;IAC7E,QAAQ,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAClC,mEAAmE;IACnE,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,iEAAiE;IACjE,WAAW,EAAE,aAAa,CAAC;IAC3B,iHAAiH;IACjH,cAAc,EAAE,MAAM,CAAC;IACvB;;;OAGG;IACH,kBAAkB,EAAE,MAAM,CAAC;IAC3B;;;OAGG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,wEAAwE;IACxE,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAoRD;;;;;;;;;;GAUG;AACH,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,iBAAiB,CAAC,CAE5B;AAED;;;GAGG;AACH,wBAAsB,yBAAyB,CAC7C,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,iBAAiB,CAAC,CA2C5B;AAgBD,4FAA4F;AAC5F,MAAM,WAAW,iBAAiB;IAChC,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;CACzE;AAED,sDAAsD;AACtD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,iBAAiB,CAa/E;AAED,kHAAkH;AAClH,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,aAAa,CAAC;IACvB,iHAAiH;IACjH,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACrB;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,oBAAoB,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAyBlE;AAED,4FAA4F;AAC5F,MAAM,WAAW,kBAAkB;IACjC,mCAAmC;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,kDAAkD;IAClD,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,mEAAmE;IACnE,QAAQ,EAAE,MAAM,CAAC;IACjB,iHAAiH;IACjH,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,4DAA4D;IAC5D,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,8DAA8D;IAC9D,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,2GAA2G;IAC3G,WAAW,EAAE,OAAO,CAAC;IACrB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,MAAM,EAClB,KAAK,CAAC,EAAE,MAAM,GACb;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,kBAAkB,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAkChE"}
1
+ {"version":3,"file":"ledger.d.ts","sourceRoot":"","sources":["../../src/qe/ledger.ts"],"names":[],"mappings":"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"}
package/dist/qe/ledger.js CHANGED
@@ -627,4 +627,28 @@ export function readDocReviewVerdicts(reviewRoot, runId) {
627
627
  return { found: true, rows: [], error: err instanceof Error ? err.message : String(err) };
628
628
  }
629
629
  }
630
+ /**
631
+ * Every live verdict in a QE ledger root stamped with `crew_run_id` = `runId` (on the verdict or on its run),
632
+ * newest first. Read-only, canonical JSON only, like {@link readAcceptanceState}. A root that does not exist reads
633
+ * as no verdicts; one that cannot be parsed throws, for the caller to surface.
634
+ */
635
+ export function readRunVerdicts(root, runId) {
636
+ if (!existsSync(root))
637
+ return [];
638
+ const rows = [];
639
+ for (const v of listCanonical(root, 'verdicts')) {
640
+ const run = getCanonical(root, 'runs', v.run_id);
641
+ if (stampedCrewRun(v) !== runId && stampedCrewRun(run) !== runId)
642
+ continue;
643
+ const tree = v['tree'] ?? run?.['tree'];
644
+ rows.push({
645
+ id: v.id,
646
+ verdict: String(v.verdict),
647
+ reason: typeof v.reason === 'string' ? v.reason : '',
648
+ tree: typeof tree === 'string' && tree !== '' ? tree : null,
649
+ createdAt: v.created_at,
650
+ });
651
+ }
652
+ return rows;
653
+ }
630
654
  //# sourceMappingURL=ledger.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ledger.js","sourceRoot":"","sources":["../../src/qe/ledger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ledger.js","sourceRoot":"","sources":["../../src/qe/ledger.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,48 @@
1
+ /**
2
+ * `/api/v1/schedules` (DES-RUNS-REVIEW-001 §2): read, save, delete and run-now a workflow schedule. Writes are a
3
+ * person's (the watch routes' human-operator predicate): a worker or system actor may read but never schedule spend.
4
+ */
5
+ import type { FastifyInstance } from 'fastify';
6
+ import { z } from 'zod';
7
+ import type { AuditLog } from '../api/audit.js';
8
+ import { type WorkflowScheduler } from './scheduler.js';
9
+ import { type ScheduleStore } from './store.js';
10
+ export declare const SchedulePutSchema: z.ZodObject<{
11
+ workflow: z.ZodString;
12
+ everyHours: z.ZodNumber;
13
+ enabled: z.ZodOptional<z.ZodBoolean>;
14
+ projectIds: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
15
+ repoRef: z.ZodOptional<z.ZodNullable<z.ZodString>>;
16
+ problem: z.ZodOptional<z.ZodNullable<z.ZodString>>;
17
+ }, "strict", z.ZodTypeAny, {
18
+ workflow: string;
19
+ everyHours: number;
20
+ problem?: string | null | undefined;
21
+ repoRef?: string | null | undefined;
22
+ enabled?: boolean | undefined;
23
+ projectIds?: string[] | undefined;
24
+ }, {
25
+ workflow: string;
26
+ everyHours: number;
27
+ problem?: string | null | undefined;
28
+ repoRef?: string | null | undefined;
29
+ enabled?: boolean | undefined;
30
+ projectIds?: string[] | undefined;
31
+ }>;
32
+ export interface ScheduleRouteDeps {
33
+ store: ScheduleStore;
34
+ scheduler: Pick<WorkflowScheduler, 'runNow'>;
35
+ /** Whether a workflow id is one this daemon can launch. */
36
+ knowsWorkflow: (id: string) => boolean;
37
+ /** The latest review (date and outcome) for Settings, when the schedule runs the review. */
38
+ lastReview?: () => {
39
+ runId: string;
40
+ launchedAt: string;
41
+ endedAt: string | null;
42
+ status: string;
43
+ } | null;
44
+ audit: AuditLog;
45
+ now?: () => Date;
46
+ }
47
+ export declare function registerScheduleRoutes(app: FastifyInstance, deps: ScheduleRouteDeps): void;
48
+ //# sourceMappingURL=routes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../src/schedules/routes.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAgB,MAAM,SAAS,CAAC;AAC7D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAqB,KAAK,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAC3E,OAAO,EAAiD,KAAK,aAAa,EAAyB,MAAM,YAAY,CAAC;AAItH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;EASnB,CAAC;AAEZ,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,aAAa,CAAC;IACrB,SAAS,EAAE,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC;IAC7C,2DAA2D;IAC3D,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC;IACvC,4FAA4F;IAC5F,UAAU,CAAC,EAAE,MAAM;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACxG,KAAK,EAAE,QAAQ,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC;CAClB;AAED,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,eAAe,EAAE,IAAI,EAAE,iBAAiB,GAAG,IAAI,CA8D1F"}
@@ -0,0 +1,72 @@
1
+ /**
2
+ * `/api/v1/schedules` (DES-RUNS-REVIEW-001 §2): read, save, delete and run-now a workflow schedule. Writes are a
3
+ * person's (the watch routes' human-operator predicate): a worker or system actor may read but never schedule spend.
4
+ */
5
+ import { z } from 'zod';
6
+ import { API_PREFIX } from '../api/api-prefix.js';
7
+ import { LOCAL_ACTOR } from '../api/auth.js';
8
+ import { isHumanOperator } from '../api/watch-routes.js';
9
+ import { ScheduleBusyError } from './scheduler.js';
10
+ import { MAX_EVERY_HOURS, MIN_EVERY_HOURS, SCHEDULE_ID } from './store.js';
11
+ const V = API_PREFIX;
12
+ export const SchedulePutSchema = z
13
+ .object({
14
+ workflow: z.string().min(1).max(128),
15
+ everyHours: z.number().int().min(MIN_EVERY_HOURS).max(MAX_EVERY_HOURS),
16
+ enabled: z.boolean().optional(),
17
+ projectIds: z.array(z.string().min(1).max(128)).max(64).optional(),
18
+ repoRef: z.string().min(1).max(256).nullable().optional(),
19
+ problem: z.string().trim().min(1).max(4000).nullable().optional(),
20
+ })
21
+ .strict();
22
+ export function registerScheduleRoutes(app, deps) {
23
+ const actorOf = (req) => req.actor ?? LOCAL_ACTOR;
24
+ const now = () => deps.now?.() ?? new Date();
25
+ const refuse = (reply) => reply.code(403).send({ error: 'Only a person can change a schedule (a worker or system actor cannot)' });
26
+ const view = (row) => row.workflow === 'review-recent-work' && deps.lastReview !== undefined ? { ...row, lastReview: deps.lastReview() } : row;
27
+ app.get(`${V}/schedules`, { config: { manifest: { responseType: 'SchedulesResponse', statusCodes: [200] } } }, async () => ({ schedules: deps.store.list().map(view) }));
28
+ app.put(`${V}/schedules/:id`, { config: { manifest: { requestType: 'SchedulePutBody', responseType: 'WorkflowSchedule', statusCodes: [200, 400, 403, 404] } } }, async (req, reply) => {
29
+ const actor = actorOf(req);
30
+ if (!isHumanOperator(actor))
31
+ return refuse(reply);
32
+ const { id } = req.params;
33
+ if (!SCHEDULE_ID.test(id))
34
+ return reply.code(400).send({ error: 'a schedule id is kebab-case, at most 64 characters' });
35
+ const parsed = SchedulePutSchema.safeParse(req.body);
36
+ if (!parsed.success)
37
+ return reply.code(400).send({ error: parsed.error.issues.map((i) => `${i.path.join('.') || 'body'}: ${i.message}`).join('; ') });
38
+ if (!deps.knowsWorkflow(parsed.data.workflow))
39
+ return reply.code(404).send({ error: `no workflow ${parsed.data.workflow}` });
40
+ const row = deps.store.put(id, parsed.data, now());
41
+ deps.audit.record('schedule.saved', actor, { detail: { id, workflow: row.workflow, everyHours: row.everyHours, enabled: row.enabled } });
42
+ return view(row);
43
+ });
44
+ app.delete(`${V}/schedules/:id`, { config: { manifest: { responseType: '{ deleted: true; id: string }', statusCodes: [200, 403, 404] } } }, async (req, reply) => {
45
+ const actor = actorOf(req);
46
+ if (!isHumanOperator(actor))
47
+ return refuse(reply);
48
+ const { id } = req.params;
49
+ if (!deps.store.delete(id))
50
+ return reply.code(404).send({ error: `no schedule ${id}` });
51
+ deps.audit.record('schedule.deleted', actor, { detail: { id } });
52
+ return { deleted: true, id };
53
+ });
54
+ app.post(`${V}/schedules/:id/run`, { config: { manifest: { responseType: 'ScheduleRunResponse', statusCodes: [200, 403, 404, 409, 502] } } }, async (req, reply) => {
55
+ const actor = actorOf(req);
56
+ if (!isHumanOperator(actor))
57
+ return refuse(reply);
58
+ const { id } = req.params;
59
+ if (deps.store.get(id) === undefined)
60
+ return reply.code(404).send({ error: `no schedule ${id}` });
61
+ try {
62
+ const runId = await deps.scheduler.runNow(id);
63
+ deps.audit.record('schedule.run_now', actor, { runId, detail: { id } });
64
+ return { runId, schedule: view(deps.store.get(id)) };
65
+ }
66
+ catch (err) {
67
+ const message = err instanceof Error ? err.message : String(err);
68
+ return reply.code(err instanceof ScheduleBusyError ? 409 : 502).send({ error: message });
69
+ }
70
+ });
71
+ }
72
+ //# sourceMappingURL=routes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"routes.js","sourceRoot":"","sources":["../../src/schedules/routes.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,58 @@
1
+ /**
2
+ * The generic workflow scheduler (DES-RUNS-REVIEW-001 §2). Once a minute:
3
+ *
4
+ * 1. TICK HOOKS: work that folds terminal runs (the run review's ingest) gets the status map first.
5
+ * 2. RECONCILE: a schedule's launched run that reached a terminal status records its outcome.
6
+ * 3. LAUNCH: at most ONE due schedule launches. A schedule whose last run is still open is SKIPPED (it never runs
7
+ * twice at once; its due time stays, so it fires once that run ends). Nothing launches while any run is
8
+ * planning, distributing or executing (one governed run at a time; one parked on a person is not busy).
9
+ * A refused launch backs off 2^n hours, at most a day. Missed intervals coalesce into one run.
10
+ *
11
+ * The next due time is persisted the moment a launch returns, before any bookkeeping, so a restart can never
12
+ * launch the same interval twice. Sweeps never stack, and Run it now shares their lock.
13
+ */
14
+ import type { SessionView } from 'wicked-crew-api-types';
15
+ import { type ScheduleStore, type WorkflowSchedule } from './store.js';
16
+ export declare const DEFAULT_SWEEP_MS = 60000;
17
+ /** A launched run the daemon does not list holds its schedule's slot this long, then lets go. */
18
+ export declare const STALE_LAUNCH_MS: number;
19
+ /** A reservation (the run id chosen before the engine was called) the daemon never lists lets go after this. */
20
+ export declare const RESERVATION_GRACE_MS: number;
21
+ /** Launch one scheduled run under `runId`; resolves to the engine's run id. Throws when the launch is refused. */
22
+ export type ScheduledLaunch = (schedule: WorkflowSchedule, runId: string, trigger: 'schedule' | 'manual') => Promise<string>;
23
+ export interface SchedulerDeps {
24
+ store: ScheduleStore;
25
+ sessionsDetail: () => Promise<SessionView[]>;
26
+ launch: ScheduledLaunch;
27
+ /** Called every sweep with the run statuses (the review ingest). Errors are logged, never thrown. */
28
+ onTick?: Array<(status: ReadonlyMap<string, string>) => Promise<void>>;
29
+ log: (msg: string) => void;
30
+ now?: () => Date;
31
+ }
32
+ export declare class ScheduleBusyError extends Error {
33
+ constructor(message: string);
34
+ }
35
+ export declare class WorkflowScheduler {
36
+ private readonly deps;
37
+ private timer;
38
+ private lock;
39
+ private sweeping;
40
+ constructor(deps: SchedulerDeps);
41
+ start(intervalMs?: number): void;
42
+ stop(): void;
43
+ private now;
44
+ /** Serialize with every other sweep and Run it now. */
45
+ private exclusive;
46
+ /** One sweep. Never throws; a sweep already running is not stacked. */
47
+ sweep(): Promise<void>;
48
+ private tick;
49
+ private statusMap;
50
+ private reconcile;
51
+ /** Why `row` may not launch now, or `null`. */
52
+ private blocker;
53
+ private launchDue;
54
+ /** "Run it now": the same guards as a sweep, minus "is it due". Resolves to the run id. */
55
+ runNow(id: string): Promise<string>;
56
+ private launchOne;
57
+ }
58
+ //# sourceMappingURL=scheduler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scheduler.d.ts","sourceRoot":"","sources":["../../src/schedules/scheduler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,KAAK,EAAiB,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACxE,OAAO,EAAW,KAAK,aAAa,EAAE,KAAK,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEhF,eAAO,MAAM,gBAAgB,QAAS,CAAC;AACvC,iGAAiG;AACjG,eAAO,MAAM,eAAe,QAAe,CAAC;AAC5C,gHAAgH;AAChH,eAAO,MAAM,oBAAoB,QAAc,CAAC;AAIhD,kHAAkH;AAClH,MAAM,MAAM,eAAe,GAAG,CAAC,QAAQ,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,QAAQ,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;AAE7H,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,aAAa,CAAC;IACrB,cAAc,EAAE,MAAM,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IAC7C,MAAM,EAAE,eAAe,CAAC;IACxB,qGAAqG;IACrG,MAAM,CAAC,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IACvE,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3B,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC;CAClB;AAED,qBAAa,iBAAkB,SAAQ,KAAK;gBAC9B,OAAO,EAAE,MAAM;CAG5B;AAED,qBAAa,iBAAiB;IAKhB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAJjC,OAAO,CAAC,KAAK,CAA+C;IAC5D,OAAO,CAAC,IAAI,CAAuC;IACnD,OAAO,CAAC,QAAQ,CAAS;gBAEI,IAAI,EAAE,aAAa;IAEhD,KAAK,CAAC,UAAU,SAAmB,GAAG,IAAI;IAM1C,IAAI,IAAI,IAAI;IAKZ,OAAO,CAAC,GAAG;IAIX,uDAAuD;IACvD,OAAO,CAAC,SAAS;IAMjB,uEAAuE;IACjE,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;YAiBd,IAAI;YAUJ,SAAS;IAKvB,OAAO,CAAC,SAAS;IAUjB,+CAA+C;IAC/C,OAAO,CAAC,OAAO;YAaD,SAAS;IAevB,2FAA2F;IACrF,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;YAe3B,SAAS;CAuDxB"}
@@ -0,0 +1,194 @@
1
+ /**
2
+ * The generic workflow scheduler (DES-RUNS-REVIEW-001 §2). Once a minute:
3
+ *
4
+ * 1. TICK HOOKS: work that folds terminal runs (the run review's ingest) gets the status map first.
5
+ * 2. RECONCILE: a schedule's launched run that reached a terminal status records its outcome.
6
+ * 3. LAUNCH: at most ONE due schedule launches. A schedule whose last run is still open is SKIPPED (it never runs
7
+ * twice at once; its due time stays, so it fires once that run ends). Nothing launches while any run is
8
+ * planning, distributing or executing (one governed run at a time; one parked on a person is not busy).
9
+ * A refused launch backs off 2^n hours, at most a day. Missed intervals coalesce into one run.
10
+ *
11
+ * The next due time is persisted the moment a launch returns, before any bookkeeping, so a restart can never
12
+ * launch the same interval twice. Sweeps never stack, and Run it now shares their lock.
13
+ */
14
+ import { randomUUID } from 'node:crypto';
15
+ import { HOUR_MS } from './store.js';
16
+ export const DEFAULT_SWEEP_MS = 60_000;
17
+ /** A launched run the daemon does not list holds its schedule's slot this long, then lets go. */
18
+ export const STALE_LAUNCH_MS = 48 * HOUR_MS;
19
+ /** A reservation (the run id chosen before the engine was called) the daemon never lists lets go after this. */
20
+ export const RESERVATION_GRACE_MS = 15 * 60_000;
21
+ const BUSY = new Set(['planning', 'distributing', 'executing']);
22
+ const TERMINAL = new Set(['completed', 'failed', 'cancelled']);
23
+ export class ScheduleBusyError extends Error {
24
+ constructor(message) {
25
+ super(message);
26
+ }
27
+ }
28
+ export class WorkflowScheduler {
29
+ deps;
30
+ timer = null;
31
+ lock = Promise.resolve();
32
+ sweeping = false;
33
+ constructor(deps) {
34
+ this.deps = deps;
35
+ }
36
+ start(intervalMs = DEFAULT_SWEEP_MS) {
37
+ if (this.timer !== null)
38
+ return;
39
+ this.timer = setInterval(() => void this.sweep(), intervalMs);
40
+ this.timer.unref?.();
41
+ }
42
+ stop() {
43
+ if (this.timer !== null)
44
+ clearInterval(this.timer);
45
+ this.timer = null;
46
+ }
47
+ now() {
48
+ return this.deps.now?.() ?? new Date();
49
+ }
50
+ /** Serialize with every other sweep and Run it now. */
51
+ exclusive(fn) {
52
+ const next = this.lock.then(fn, fn);
53
+ this.lock = next.catch(() => undefined);
54
+ return next;
55
+ }
56
+ /** One sweep. Never throws; a sweep already running is not stacked. */
57
+ async sweep() {
58
+ if (this.sweeping)
59
+ return;
60
+ this.sweeping = true;
61
+ try {
62
+ await this.exclusive(async () => {
63
+ const status = await this.statusMap();
64
+ await this.tick(status);
65
+ this.reconcile(status);
66
+ await this.launchDue(status);
67
+ });
68
+ }
69
+ catch (err) {
70
+ this.deps.log(`[schedules] sweep failed: ${err instanceof Error ? err.message : String(err)}`);
71
+ }
72
+ finally {
73
+ this.sweeping = false;
74
+ }
75
+ }
76
+ async tick(status) {
77
+ for (const hook of this.deps.onTick ?? []) {
78
+ try {
79
+ await hook(status);
80
+ }
81
+ catch (err) {
82
+ this.deps.log(`[schedules] tick hook failed: ${err instanceof Error ? err.message : String(err)}`);
83
+ }
84
+ }
85
+ }
86
+ async statusMap() {
87
+ const views = await this.deps.sessionsDetail();
88
+ return new Map(views.map((v) => [v.session.id, String(v.session.status)]));
89
+ }
90
+ reconcile(status) {
91
+ for (const row of this.deps.store.list()) {
92
+ if (row.lastRunId === null || (row.lastOutcome !== 'launched' && row.lastOutcome !== 'launching'))
93
+ continue;
94
+ const s = status.get(row.lastRunId);
95
+ if (s !== undefined && TERMINAL.has(s))
96
+ this.deps.store.update(row.id, { lastOutcome: s }, this.now());
97
+ // A reservation the engine took (the daemon stopped before recording it): it is a launched run.
98
+ else if (s !== undefined && row.lastOutcome === 'launching')
99
+ this.deps.store.update(row.id, { lastOutcome: 'launched' }, this.now());
100
+ }
101
+ }
102
+ /** Why `row` may not launch now, or `null`. */
103
+ blocker(row, status) {
104
+ if (row.lastRunId !== null && (row.lastOutcome === 'launched' || row.lastOutcome === 'launching')) {
105
+ const s = status.get(row.lastRunId);
106
+ // A run the daemon does not list yet holds the slot: a launched one for two days, a reservation the engine
107
+ // may never have seen for a few minutes.
108
+ const hold = row.lastOutcome === 'launching' ? RESERVATION_GRACE_MS : STALE_LAUNCH_MS;
109
+ const open = s !== undefined ? !TERMINAL.has(s) : row.lastRunAt !== null && this.now().getTime() - Date.parse(row.lastRunAt) < hold;
110
+ if (open)
111
+ return 'its last run is still going';
112
+ }
113
+ if ([...status.values()].some((s) => BUSY.has(s)))
114
+ return 'another run is working (one governed run at a time)';
115
+ return null;
116
+ }
117
+ async launchDue(status) {
118
+ const nowMs = this.now().getTime();
119
+ const due = this.deps.store.list().filter((r) => r.enabled && Date.parse(r.nextDueAt) <= nowMs);
120
+ for (const row of due) {
121
+ const why = this.blocker(row, status);
122
+ if (why === null) {
123
+ // A refusal is recorded (and backed off) by launchOne; the sweep itself carries on.
124
+ await this.launchOne(row, 'schedule').catch(() => undefined);
125
+ return; // at most one launch per sweep
126
+ }
127
+ // Skipped, not moved: it fires on the first sweep after the blocker clears. Said once, not every minute.
128
+ if (row.lastNote !== `skipped: ${why}`)
129
+ this.deps.store.update(row.id, { lastNote: `skipped: ${why}` }, this.now());
130
+ }
131
+ }
132
+ /** "Run it now": the same guards as a sweep, minus "is it due". Resolves to the run id. */
133
+ async runNow(id) {
134
+ return this.exclusive(async () => {
135
+ if (this.deps.store.get(id) === undefined)
136
+ throw new Error(`no schedule ${id}`);
137
+ const status = await this.statusMap();
138
+ // What a sweep would fold first (agy r1): a review that ended since the last tick is ingested, so this run's
139
+ // window starts where that one ended rather than re-reviewing it.
140
+ await this.tick(status);
141
+ this.reconcile(status);
142
+ const row = this.deps.store.get(id);
143
+ const why = this.blocker(row, status);
144
+ if (why !== null)
145
+ throw new ScheduleBusyError(`not started: ${why}`);
146
+ return this.launchOne(row, 'manual');
147
+ });
148
+ }
149
+ async launchOne(row, trigger) {
150
+ const now = this.now();
151
+ const reserved = randomUUID();
152
+ // RESERVED before the engine is called (codex r1): a daemon that dies after the engine accepted the run but
153
+ // before the bookkeeping below restarts with this run id already holding the slot, so it never launches the
154
+ // same interval twice. A reservation the engine never saw lets go after RESERVATION_GRACE_MS.
155
+ this.deps.store.update(row.id, {
156
+ lastRunId: reserved,
157
+ lastRunAt: now.toISOString(),
158
+ lastOutcome: 'launching',
159
+ nextDueAt: new Date(now.getTime() + row.everyHours * HOUR_MS).toISOString(),
160
+ }, now);
161
+ let runId;
162
+ try {
163
+ runId = await this.deps.launch(row, reserved, trigger);
164
+ }
165
+ catch (err) {
166
+ const message = err instanceof Error ? err.message : String(err);
167
+ const failures = row.failures + 1;
168
+ this.deps.store.update(row.id, {
169
+ failures,
170
+ lastOutcome: 'refused',
171
+ lastNote: message.slice(0, 500),
172
+ // The reservation is released: nothing runs under it.
173
+ lastRunId: row.lastRunId,
174
+ lastRunAt: row.lastRunAt,
175
+ // A scheduled refusal backs off; Run it now leaves the cadence where it was.
176
+ nextDueAt: trigger === 'schedule' ? new Date(now.getTime() + Math.min(2 ** failures, 24) * HOUR_MS).toISOString() : row.nextDueAt,
177
+ }, now);
178
+ this.deps.log(`[schedules] ${row.id} launch refused (${failures}): ${message}`);
179
+ throw err;
180
+ }
181
+ // Recorded FIRST: the next due time and the slot are durable before anything else can fail.
182
+ this.deps.store.update(row.id, {
183
+ lastRunId: runId,
184
+ lastRunAt: now.toISOString(),
185
+ lastOutcome: 'launched',
186
+ lastNote: null,
187
+ failures: 0,
188
+ nextDueAt: new Date(now.getTime() + row.everyHours * HOUR_MS).toISOString(),
189
+ }, now);
190
+ this.deps.log(`[schedules] ${row.id} (${trigger}) → ${row.workflow} ${runId}`);
191
+ return runId;
192
+ }
193
+ }
194
+ //# sourceMappingURL=scheduler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scheduler.js","sourceRoot":"","sources":["../../src/schedules/scheduler.ts"],"names":[],"mappings":"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"}