wicked-crew 0.7.34 → 0.7.36

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 (185) hide show
  1. package/dist/api/chat-scope.d.ts +29 -1
  2. package/dist/api/chat-scope.d.ts.map +1 -1
  3. package/dist/api/chat-scope.js +67 -12
  4. package/dist/api/chat-scope.js.map +1 -1
  5. package/dist/api/chat-transcripts.d.ts +60 -0
  6. package/dist/api/chat-transcripts.d.ts.map +1 -0
  7. package/dist/api/chat-transcripts.js +139 -0
  8. package/dist/api/chat-transcripts.js.map +1 -0
  9. package/dist/api/chat-turns.d.ts +43 -4
  10. package/dist/api/chat-turns.d.ts.map +1 -1
  11. package/dist/api/chat-turns.js +73 -6
  12. package/dist/api/chat-turns.js.map +1 -1
  13. package/dist/api/delivery-cache.d.ts +23 -6
  14. package/dist/api/delivery-cache.d.ts.map +1 -1
  15. package/dist/api/delivery-cache.js +27 -17
  16. package/dist/api/delivery-cache.js.map +1 -1
  17. package/dist/api/delivery-index.d.ts +45 -3
  18. package/dist/api/delivery-index.d.ts.map +1 -1
  19. package/dist/api/delivery-index.js +79 -4
  20. package/dist/api/delivery-index.js.map +1 -1
  21. package/dist/api/requirements.d.ts +3 -5
  22. package/dist/api/requirements.d.ts.map +1 -1
  23. package/dist/api/requirements.js +30 -146
  24. package/dist/api/requirements.js.map +1 -1
  25. package/dist/api/retry-index.d.ts +14 -0
  26. package/dist/api/retry-index.d.ts.map +1 -1
  27. package/dist/api/retry-index.js +29 -0
  28. package/dist/api/retry-index.js.map +1 -1
  29. package/dist/api/roster-standing.d.ts +4 -4
  30. package/dist/api/roster-standing.d.ts.map +1 -1
  31. package/dist/api/roster-standing.js +24 -12
  32. package/dist/api/roster-standing.js.map +1 -1
  33. package/dist/api/routes.d.ts +142 -10
  34. package/dist/api/routes.d.ts.map +1 -1
  35. package/dist/api/routes.js +292 -44
  36. package/dist/api/routes.js.map +1 -1
  37. package/dist/api/run-timing-index.d.ts +22 -0
  38. package/dist/api/run-timing-index.d.ts.map +1 -1
  39. package/dist/api/run-timing-index.js +34 -0
  40. package/dist/api/run-timing-index.js.map +1 -1
  41. package/dist/api/seat-health.d.ts +2 -46
  42. package/dist/api/seat-health.d.ts.map +1 -1
  43. package/dist/api/seat-health.js +28 -111
  44. package/dist/api/seat-health.js.map +1 -1
  45. package/dist/api/seat-standing.d.ts +9 -8
  46. package/dist/api/seat-standing.d.ts.map +1 -1
  47. package/dist/api/seat-standing.js +22 -32
  48. package/dist/api/seat-standing.js.map +1 -1
  49. package/dist/api/server.d.ts.map +1 -1
  50. package/dist/api/server.js +114 -12
  51. package/dist/api/server.js.map +1 -1
  52. package/dist/api/skills.d.ts +2 -2
  53. package/dist/api/skills.d.ts.map +1 -1
  54. package/dist/api/skills.js +5 -2
  55. package/dist/api/skills.js.map +1 -1
  56. package/dist/api/stall-frame-index.d.ts +68 -0
  57. package/dist/api/stall-frame-index.d.ts.map +1 -0
  58. package/dist/api/stall-frame-index.js +106 -0
  59. package/dist/api/stall-frame-index.js.map +1 -0
  60. package/dist/api/stall-watchdog.d.ts +22 -2
  61. package/dist/api/stall-watchdog.d.ts.map +1 -1
  62. package/dist/api/stall-watchdog.js +41 -11
  63. package/dist/api/stall-watchdog.js.map +1 -1
  64. package/dist/campaigns/plan.d.ts +12 -2
  65. package/dist/campaigns/plan.d.ts.map +1 -1
  66. package/dist/campaigns/plan.js +3 -0
  67. package/dist/campaigns/plan.js.map +1 -1
  68. package/dist/campaigns/rollup.d.ts +5 -0
  69. package/dist/campaigns/rollup.d.ts.map +1 -1
  70. package/dist/campaigns/rollup.js +3 -2
  71. package/dist/campaigns/rollup.js.map +1 -1
  72. package/dist/campaigns/routes.d.ts +5 -2
  73. package/dist/campaigns/routes.d.ts.map +1 -1
  74. package/dist/campaigns/routes.js +13 -3
  75. package/dist/campaigns/routes.js.map +1 -1
  76. package/dist/cli/index.js +137 -23
  77. package/dist/cli/index.js.map +1 -1
  78. package/dist/cli/port.d.ts +19 -0
  79. package/dist/cli/port.d.ts.map +1 -0
  80. package/dist/cli/port.js +39 -0
  81. package/dist/cli/port.js.map +1 -0
  82. package/dist/core/adapter.d.ts +68 -2
  83. package/dist/core/adapter.d.ts.map +1 -1
  84. package/dist/core/adapter.js +176 -23
  85. package/dist/core/adapter.js.map +1 -1
  86. package/dist/core/bridge-reaper.d.ts +57 -1
  87. package/dist/core/bridge-reaper.d.ts.map +1 -1
  88. package/dist/core/bridge-reaper.js +143 -21
  89. package/dist/core/bridge-reaper.js.map +1 -1
  90. package/dist/core/cursor.d.ts +7 -0
  91. package/dist/core/cursor.d.ts.map +1 -1
  92. package/dist/core/cursor.js +7 -1
  93. package/dist/core/cursor.js.map +1 -1
  94. package/dist/core/deliver-text.d.ts +35 -2
  95. package/dist/core/deliver-text.d.ts.map +1 -1
  96. package/dist/core/deliver-text.js +127 -17
  97. package/dist/core/deliver-text.js.map +1 -1
  98. package/dist/core/deliver-triage.d.ts.map +1 -1
  99. package/dist/core/deliver-triage.js +5 -2
  100. package/dist/core/deliver-triage.js.map +1 -1
  101. package/dist/core/deliver.d.ts +76 -2
  102. package/dist/core/deliver.d.ts.map +1 -1
  103. package/dist/core/deliver.js +209 -16
  104. package/dist/core/deliver.js.map +1 -1
  105. package/dist/core/engine-roster.d.ts +4 -3
  106. package/dist/core/engine-roster.d.ts.map +1 -1
  107. package/dist/core/engine-roster.js +10 -14
  108. package/dist/core/engine-roster.js.map +1 -1
  109. package/dist/core/types.d.ts +30 -0
  110. package/dist/core/types.d.ts.map +1 -1
  111. package/dist/core/types.js +6 -4
  112. package/dist/core/types.js.map +1 -1
  113. package/dist/core/versions.d.ts +17 -0
  114. package/dist/core/versions.d.ts.map +1 -0
  115. package/dist/core/versions.js +35 -0
  116. package/dist/core/versions.js.map +1 -0
  117. package/dist/interactive/bridge-pool.d.ts +66 -14
  118. package/dist/interactive/bridge-pool.d.ts.map +1 -1
  119. package/dist/interactive/bridge-pool.js +130 -17
  120. package/dist/interactive/bridge-pool.js.map +1 -1
  121. package/dist/interactive/bridge-root.d.ts +47 -16
  122. package/dist/interactive/bridge-root.d.ts.map +1 -1
  123. package/dist/interactive/bridge-root.js +102 -31
  124. package/dist/interactive/bridge-root.js.map +1 -1
  125. package/dist/interactive/doc-delete-routes.d.ts +3 -1
  126. package/dist/interactive/doc-delete-routes.d.ts.map +1 -1
  127. package/dist/interactive/doc-delete-routes.js.map +1 -1
  128. package/dist/interactive/doc-list-routes.d.ts +3 -1
  129. package/dist/interactive/doc-list-routes.d.ts.map +1 -1
  130. package/dist/interactive/doc-list-routes.js.map +1 -1
  131. package/dist/interactive/docs-index.d.ts +3 -1
  132. package/dist/interactive/docs-index.d.ts.map +1 -1
  133. package/dist/interactive/docs-index.js +1 -1
  134. package/dist/interactive/docs-index.js.map +1 -1
  135. package/dist/interactive/project-root.d.ts +8 -2
  136. package/dist/interactive/project-root.d.ts.map +1 -1
  137. package/dist/interactive/project-root.js +1 -1
  138. package/dist/interactive/project-root.js.map +1 -1
  139. package/dist/interactive/proxy-routes.d.ts +3 -1
  140. package/dist/interactive/proxy-routes.d.ts.map +1 -1
  141. package/dist/interactive/proxy-routes.js.map +1 -1
  142. package/dist/projects/graph.d.ts +4 -0
  143. package/dist/projects/graph.d.ts.map +1 -1
  144. package/dist/projects/graph.js +4 -2
  145. package/dist/projects/graph.js.map +1 -1
  146. package/dist/projects/routes.d.ts +2 -2
  147. package/dist/projects/state-home-preflight.d.ts +30 -7
  148. package/dist/projects/state-home-preflight.d.ts.map +1 -1
  149. package/dist/projects/state-home-preflight.js +59 -16
  150. package/dist/projects/state-home-preflight.js.map +1 -1
  151. package/dist/projects/state-home-registry.d.ts.map +1 -1
  152. package/dist/projects/state-home-registry.js +2 -0
  153. package/dist/projects/state-home-registry.js.map +1 -1
  154. package/dist/qe/acceptance.d.ts +9 -0
  155. package/dist/qe/acceptance.d.ts.map +1 -1
  156. package/dist/qe/acceptance.js +16 -1
  157. package/dist/qe/acceptance.js.map +1 -1
  158. package/dist/qe/author-workflow.d.ts.map +1 -1
  159. package/dist/qe/author-workflow.js +2 -1
  160. package/dist/qe/author-workflow.js.map +1 -1
  161. package/dist/skills/base-skill.d.ts +32 -10
  162. package/dist/skills/base-skill.d.ts.map +1 -1
  163. package/dist/skills/base-skill.js +36 -27
  164. package/dist/skills/base-skill.js.map +1 -1
  165. package/dist/skills/guards.d.ts.map +1 -1
  166. package/dist/skills/guards.js +3 -0
  167. package/dist/skills/guards.js.map +1 -1
  168. package/dist/skills/runtime.d.ts +9 -5
  169. package/dist/skills/runtime.d.ts.map +1 -1
  170. package/dist/skills/runtime.js +11 -7
  171. package/dist/skills/runtime.js.map +1 -1
  172. package/dist/skills/store.d.ts +30 -0
  173. package/dist/skills/store.d.ts.map +1 -1
  174. package/dist/skills/store.js +159 -3
  175. package/dist/skills/store.js.map +1 -1
  176. package/dist/skills/tree.d.ts +12 -0
  177. package/dist/skills/tree.d.ts.map +1 -1
  178. package/dist/skills/tree.js +26 -0
  179. package/dist/skills/tree.js.map +1 -1
  180. package/dist/studio/assets/index-Dk98qXKv.js +546 -0
  181. package/dist/studio/index.html +1 -1
  182. package/dist/studio/testid-inventory.json +89 -5
  183. package/endpoint-manifest.json +13 -1
  184. package/package.json +4 -4
  185. package/dist/studio/assets/index-DhojBZ1T.js +0 -544
@@ -0,0 +1,68 @@
1
+ /**
2
+ * The run→watchdog-frame index (wicked-studio#284; the crew companion L8 handed to L3).
3
+ *
4
+ * The stall watchdog's `workerStalled` / `workerStallEscalated` frames are DAEMON-SYNTHETIC: the
5
+ * engine's event log never sees them, so `GET /runs/:id/events` — the only history a RELOADED run
6
+ * page reads — showed nothing of the "needs you" story the live socket carried.
7
+ *
8
+ * Remembering them inside the watchdog fixed the reload only while the run stayed executing and the
9
+ * daemon stayed up. Both halves failed exactly where the finding lives: the watchdog prunes a run's
10
+ * state the moment it leaves the executing listing (completed / cancelled / awaiting_human — which
11
+ * is precisely when a human opens the page to find out what happened), and a restart forgot
12
+ * everything. So the frames are held HERE, and the durable record is the audit trail — the same
13
+ * mechanism every other restart-surviving daemon fact already uses (`RetryIndex`, `GroupIndex`,
14
+ * `RunTimingIndex`, crew#600's `run.ended`): the server writes ONE audit entry per frame it
15
+ * broadcasts and hydrates this map from those entries at boot.
16
+ *
17
+ * Nothing is re-emitted at boot. Hydration fills a map; it never broadcasts, never reassigns and
18
+ * never re-arms a clock — a restarted daemon SHOWS the old frames and re-detects a stall only when
19
+ * its own quiet clock trips. No new state-home root and no core fence-registry entry: the trail is
20
+ * a file crew already owns and already wrote on every escalation (crew#341).
21
+ */
22
+ import type { AuditEntry, WorkerStallEscalatedFrame, WorkerStalledFrame } from '../core/types.js';
23
+ /** A watchdog frame as the daemon REMEMBERS it for `GET /runs/:id/events`: the `/ws` frame plus the
24
+ * capture-time `ts` (the audit entry's own stamp, so the live answer and the post-restart
25
+ * rehydrate agree to the millisecond) and a `daemon: true` marker — it is daemon-authored, so the
26
+ * engine's event log never gave it a `seq` (the events route stamps one at serve time). */
27
+ export type RecordedStallFrame = (WorkerStalledFrame | WorkerStallEscalatedFrame) & {
28
+ ts: number;
29
+ daemon: true;
30
+ };
31
+ /** Audit action for a DETECTION frame (`workerStalled`) — new in crew 0.7.36 with this index. */
32
+ export declare const STALL_DETECTED_ACTION = "run.stall.detected";
33
+ /** Audit action for an ESCALATION frame (`workerStallEscalated`) — the line crew#341 already wrote,
34
+ * spelling unchanged, so trails written by earlier daemons hydrate here without a migration. */
35
+ export declare const STALL_ESCALATED_ACTION = "run.stall.escalated";
36
+ /** Per-run cap on remembered frames — a wedged run emits one detection per quiet period and at most
37
+ * `maxPerRun` escalations, so this is a backstop, not a budget. The NEWEST frames survive it. */
38
+ export declare const STALL_FRAME_CAP = 64;
39
+ /** The audit action a frame is recorded under. */
40
+ export declare function stallFrameAction(frame: WorkerStalledFrame | WorkerStallEscalatedFrame): string;
41
+ export declare class StallFrameIndex {
42
+ /** run id → its remembered frames, oldest first. */
43
+ private readonly byRun;
44
+ /**
45
+ * Remember a frame the watchdog just broadcast. `ts` is the durable stamp the audit entry got
46
+ * (`AuditLog.record`'s return), so what this answers now and what a restart rehydrates are the
47
+ * same instant; a disabled/failed trail (`0`) falls back to the wall clock rather than losing the
48
+ * frame from the live answer.
49
+ */
50
+ record(frame: WorkerStalledFrame | WorkerStallEscalatedFrame, ts: number): void;
51
+ /**
52
+ * Rebuild the frames from pre-read audit entries — the boot seam, fed the `run.stall.detected` +
53
+ * `run.stall.escalated` scans (`readAll` answers newest first; each run's list is sorted oldest
54
+ * first here and capped to the NEWEST {@link STALL_FRAME_CAP}).
55
+ *
56
+ * The entry's `detail` is the frame minus `type` and `session`, which is how the server writes it;
57
+ * both are restored from the entry itself and are spread LAST, so a malformed or stale `detail`
58
+ * can never rewrite which run or which kind a frame belongs to. An entry with another action, no
59
+ * run id, no usable `ts` or no object `detail` is skipped — a trail is append-only and may carry
60
+ * lines from any crew version.
61
+ */
62
+ hydrateFromEntries(entries: AuditEntry[]): void;
63
+ /** The frames remembered for `runId`, oldest first. Empty for a run that never stalled — or one
64
+ * whose stalls predate this daemon's trail. */
65
+ framesFor(runId: string): readonly RecordedStallFrame[];
66
+ private push;
67
+ }
68
+ //# sourceMappingURL=stall-frame-index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stall-frame-index.d.ts","sourceRoot":"","sources":["../../src/api/stall-frame-index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,yBAAyB,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAElG;;;4FAG4F;AAC5F,MAAM,MAAM,kBAAkB,GAAG,CAAC,kBAAkB,GAAG,yBAAyB,CAAC,GAAG;IAClF,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,IAAI,CAAC;CACd,CAAC;AAEF,iGAAiG;AACjG,eAAO,MAAM,qBAAqB,uBAAuB,CAAC;AAE1D;iGACiG;AACjG,eAAO,MAAM,sBAAsB,wBAAwB,CAAC;AAE5D;kGACkG;AAClG,eAAO,MAAM,eAAe,KAAK,CAAC;AAElC,kDAAkD;AAClD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,kBAAkB,GAAG,yBAAyB,GAAG,MAAM,CAE9F;AAQD,qBAAa,eAAe;IAC1B,oDAAoD;IACpD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA2C;IAEjE;;;;;OAKG;IACH,MAAM,CAAC,KAAK,EAAE,kBAAkB,GAAG,yBAAyB,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI;IAK/E;;;;;;;;;;OAUG;IACH,kBAAkB,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,IAAI;IA0B/C;oDACgD;IAChD,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,kBAAkB,EAAE;IAIvD,OAAO,CAAC,IAAI;CAMb"}
@@ -0,0 +1,106 @@
1
+ /**
2
+ * The run→watchdog-frame index (wicked-studio#284; the crew companion L8 handed to L3).
3
+ *
4
+ * The stall watchdog's `workerStalled` / `workerStallEscalated` frames are DAEMON-SYNTHETIC: the
5
+ * engine's event log never sees them, so `GET /runs/:id/events` — the only history a RELOADED run
6
+ * page reads — showed nothing of the "needs you" story the live socket carried.
7
+ *
8
+ * Remembering them inside the watchdog fixed the reload only while the run stayed executing and the
9
+ * daemon stayed up. Both halves failed exactly where the finding lives: the watchdog prunes a run's
10
+ * state the moment it leaves the executing listing (completed / cancelled / awaiting_human — which
11
+ * is precisely when a human opens the page to find out what happened), and a restart forgot
12
+ * everything. So the frames are held HERE, and the durable record is the audit trail — the same
13
+ * mechanism every other restart-surviving daemon fact already uses (`RetryIndex`, `GroupIndex`,
14
+ * `RunTimingIndex`, crew#600's `run.ended`): the server writes ONE audit entry per frame it
15
+ * broadcasts and hydrates this map from those entries at boot.
16
+ *
17
+ * Nothing is re-emitted at boot. Hydration fills a map; it never broadcasts, never reassigns and
18
+ * never re-arms a clock — a restarted daemon SHOWS the old frames and re-detects a stall only when
19
+ * its own quiet clock trips. No new state-home root and no core fence-registry entry: the trail is
20
+ * a file crew already owns and already wrote on every escalation (crew#341).
21
+ */
22
+ /** Audit action for a DETECTION frame (`workerStalled`) — new in crew 0.7.36 with this index. */
23
+ export const STALL_DETECTED_ACTION = 'run.stall.detected';
24
+ /** Audit action for an ESCALATION frame (`workerStallEscalated`) — the line crew#341 already wrote,
25
+ * spelling unchanged, so trails written by earlier daemons hydrate here without a migration. */
26
+ export const STALL_ESCALATED_ACTION = 'run.stall.escalated';
27
+ /** Per-run cap on remembered frames — a wedged run emits one detection per quiet period and at most
28
+ * `maxPerRun` escalations, so this is a backstop, not a budget. The NEWEST frames survive it. */
29
+ export const STALL_FRAME_CAP = 64;
30
+ /** The audit action a frame is recorded under. */
31
+ export function stallFrameAction(frame) {
32
+ return frame.type === 'workerStalled' ? STALL_DETECTED_ACTION : STALL_ESCALATED_ACTION;
33
+ }
34
+ /** …and back: the frame type an audit action names. Anything else in the trail is not ours. */
35
+ const TYPE_FOR_ACTION = {
36
+ [STALL_DETECTED_ACTION]: 'workerStalled',
37
+ [STALL_ESCALATED_ACTION]: 'workerStallEscalated',
38
+ };
39
+ export class StallFrameIndex {
40
+ /** run id → its remembered frames, oldest first. */
41
+ byRun = new Map();
42
+ /**
43
+ * Remember a frame the watchdog just broadcast. `ts` is the durable stamp the audit entry got
44
+ * (`AuditLog.record`'s return), so what this answers now and what a restart rehydrates are the
45
+ * same instant; a disabled/failed trail (`0`) falls back to the wall clock rather than losing the
46
+ * frame from the live answer.
47
+ */
48
+ record(frame, ts) {
49
+ const at = Number.isFinite(ts) && ts > 0 ? ts : Date.now();
50
+ this.push(frame.session, { ...frame, ts: at, daemon: true });
51
+ }
52
+ /**
53
+ * Rebuild the frames from pre-read audit entries — the boot seam, fed the `run.stall.detected` +
54
+ * `run.stall.escalated` scans (`readAll` answers newest first; each run's list is sorted oldest
55
+ * first here and capped to the NEWEST {@link STALL_FRAME_CAP}).
56
+ *
57
+ * The entry's `detail` is the frame minus `type` and `session`, which is how the server writes it;
58
+ * both are restored from the entry itself and are spread LAST, so a malformed or stale `detail`
59
+ * can never rewrite which run or which kind a frame belongs to. An entry with another action, no
60
+ * run id, no usable `ts` or no object `detail` is skipped — a trail is append-only and may carry
61
+ * lines from any crew version.
62
+ */
63
+ hydrateFromEntries(entries) {
64
+ for (const entry of entries) {
65
+ const type = TYPE_FOR_ACTION[entry.action];
66
+ if (type === undefined)
67
+ continue;
68
+ if (typeof entry.runId !== 'string' || entry.runId === '')
69
+ continue;
70
+ if (typeof entry.ts !== 'number' || entry.ts <= 0)
71
+ continue;
72
+ const detail = entry.detail;
73
+ if (typeof detail !== 'object' || detail === null)
74
+ continue;
75
+ // NOT `push`: the trail answers newest first, so capping on insertion order here would drop
76
+ // the NEWEST frames. Collect everything, then order by capture time and cap the tail below.
77
+ const list = this.byRun.get(entry.runId) ?? [];
78
+ list.push({
79
+ ...detail,
80
+ type,
81
+ session: entry.runId,
82
+ ts: entry.ts,
83
+ daemon: true,
84
+ });
85
+ this.byRun.set(entry.runId, list);
86
+ }
87
+ for (const list of this.byRun.values()) {
88
+ list.sort((a, b) => a.ts - b.ts);
89
+ if (list.length > STALL_FRAME_CAP)
90
+ list.splice(0, list.length - STALL_FRAME_CAP);
91
+ }
92
+ }
93
+ /** The frames remembered for `runId`, oldest first. Empty for a run that never stalled — or one
94
+ * whose stalls predate this daemon's trail. */
95
+ framesFor(runId) {
96
+ return this.byRun.get(runId) ?? [];
97
+ }
98
+ push(runId, frame) {
99
+ const list = this.byRun.get(runId) ?? [];
100
+ list.push(frame);
101
+ if (list.length > STALL_FRAME_CAP)
102
+ list.splice(0, list.length - STALL_FRAME_CAP);
103
+ this.byRun.set(runId, list);
104
+ }
105
+ }
106
+ //# sourceMappingURL=stall-frame-index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stall-frame-index.js","sourceRoot":"","sources":["../../src/api/stall-frame-index.ts"],"names":[],"mappings":"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"}
@@ -22,6 +22,14 @@ export interface ExecutingRun {
22
22
  /** The run's own seat pool (`session.clis`), in roster order — the failover candidates a
23
23
  * reassign may route to (perf#4). Absent/empty = no pool known: reassign in place. */
24
24
  seats?: string[];
25
+ /** Seats a failover must NOT land on (DES-L3 PR-3E, F-RC1-012 / crew#436): when the cursor is
26
+ * an EVALUATOR, every seat that built work it reviews — evaluator ≠ creator holds across a
27
+ * stall reassign too. Absent/empty = no constraint (a free-text unit carries no role). */
28
+ avoid?: string[];
29
+ /** What runs the cursor unit (crew #580 / #581): a `tool` unit is the engine's own command —
30
+ * there is no seat to fail over to, so the escalation stage NOTIFIES instead of reassigning.
31
+ * Absent = unknown (older engine views): today's ladder. */
32
+ executor?: 'tool' | 'agent';
25
33
  }
26
34
  /**
27
35
  * The escalation stage's per-sweep configuration (crew#341), resolved live so a PUT /settings
@@ -56,9 +64,14 @@ export interface StallWatchdogDeps {
56
64
  * the engine re-runs the council.
57
65
  */
58
66
  reassign: (runId: string, ord: number, cli?: string) => Promise<void>;
59
- /** Audit sink — the server appends `run.stall.escalated` to the crew audit trail. */
60
- audit?: (frame: WorkerStallEscalatedFrame) => void;
61
67
  };
68
+ /**
69
+ * Every frame this watchdog broadcasts, handed over for RECORDING (wicked-studio#284): the daemon
70
+ * writes one audit line per frame (`run.stall.detected` / `run.stall.escalated`) and fills the
71
+ * index `GET /runs/:id/events` reads. Absent = frames are live-only (`/ws`), the pre-#284
72
+ * behaviour — a directly-driven watchdog in a test records nothing.
73
+ */
74
+ onFrame?: (frame: WorkerStalledFrame | WorkerStallEscalatedFrame) => void;
62
75
  /**
63
76
  * Called when a relayed `unitOutputCaptured` carries `stepStatus: "timed_out"` — the ENGINE's
64
77
  * own turn ceiling fired (the run is terminating; the last-resort backstop the silence ladder
@@ -118,6 +131,13 @@ export declare class WorkerStallWatchdog {
118
131
  private escalationArmed;
119
132
  /** Perform one escalation for `run`, emit its `workerStallEscalated` frame, audit, log. */
120
133
  private escalate;
134
+ /**
135
+ * Put a frame on `/ws` and hand it to the recorder — the ONE place a watchdog frame leaves this
136
+ * class. The recorder (the daemon's `onFrame`) writes the durable audit line and fills the index
137
+ * `GET /runs/:id/events` serves; a throwing recorder is logged and swallowed, because recording
138
+ * a stall must never break detecting the next one.
139
+ */
140
+ private emit;
121
141
  /**
122
142
  * The failover TARGET for a stall reassign (perf#4): the first seat of the run's own pool
123
143
  * that is neither the currently-stalled seat nor one this run already stall-reassigned away
@@ -1 +1 @@
1
- {"version":3,"file":"stall-watchdog.d.ts","sourceRoot":"","sources":["../../src/api/stall-watchdog.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stall-watchdog.d.ts","sourceRoot":"","sources":["../../src/api/stall-watchdog.ts"],"names":[],"mappings":"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"}
@@ -50,6 +50,11 @@
50
50
  // synthetic detection frame AND the engine's PTY-path event) — and AUDITED via the crew
51
51
  // audit trail (`run.stall.escalated`), because an automated actor touching a run is a
52
52
  // privileged action exactly like an operator doing it.
53
+ // - EVERY frame this watchdog broadcasts — detections included — goes to the `onFrame` recorder
54
+ // as well (wicked-studio#284). The daemon writes it to the audit trail and keeps it in
55
+ // `api/stall-frame-index.ts`, which is what `GET /runs/:id/events` serves a reloaded page. This
56
+ // class remembers nothing itself: a run leaving the executing listing, or this process exiting,
57
+ // must not take the "needs you" history with it.
53
58
  //
54
59
  // The synthetic frames go straight to the /ws fan-out, never back through the engine relay, so
55
60
  // they cannot stamp or re-arm the watchdog themselves. A SUCCESSFUL reassign, by contrast,
@@ -198,12 +203,13 @@ export class WorkerStallWatchdog {
198
203
  if (quietForMs >= thresholdMs && !period?.detectionEmitted) {
199
204
  this.quietPeriod(run.id).detectionEmitted = true;
200
205
  const ord = this.lastOrd.get(run.id) ?? run.ord;
201
- this.deps.broadcast({
206
+ const detected = {
202
207
  type: 'workerStalled',
203
208
  session: run.id,
204
209
  ...(ord !== undefined ? { ord } : {}),
205
210
  quietForMs,
206
- });
211
+ };
212
+ this.emit(detected);
207
213
  this.log(`[stall-watchdog] run ${run.id}${ord !== undefined ? ` (unit ${ord})` : ''} silent for ` +
208
214
  `${(quietForMs / 60_000).toFixed(1)} min — workerStalled frame broadcast` +
209
215
  (escalation === undefined
@@ -297,7 +303,19 @@ export class WorkerStallWatchdog {
297
303
  quietForMs,
298
304
  };
299
305
  let frame;
300
- if (escalation.action === 'notify') {
306
+ if (run.executor === 'tool') {
307
+ // crew #580 / #581 (F-BM-004 / F-BM-010): the cursor is a TOOL unit — the engine's own
308
+ // command (a deliver script, an index) — and there is no seat to fail over to. A reassign
309
+ // would spawn a second copy of the same command into the same worktree (run 6: three
310
+ // deliver scripts raced on one branch); the engine now kills the running child on a
311
+ // supersede, so an automatic reassign would only be a kill-and-retry loop burning the
312
+ // budget. Surface it for a human instead; no budget consumed, `stalledSeats` untouched.
313
+ frame = { ...base, action: 'notify', outcome: 'ok', needsYou: true };
314
+ this.deps.log?.(`stall watchdog: run ${run.id} unit ${ord ?? '?'} is a tool command running for ` +
315
+ `${Math.round(quietForMs / 60_000)} min — no seat to fail over to; Cancel run stops it, ` +
316
+ `POST /runs/${run.id}/reassign re-runs it`);
317
+ }
318
+ else if (escalation.action === 'notify') {
301
319
  // The fail-loud rung: surface for a human, touch nothing. No budget — notifying is free.
302
320
  frame = { ...base, action: 'notify', outcome: 'ok', needsYou: true };
303
321
  }
@@ -373,13 +391,7 @@ export class WorkerStallWatchdog {
373
391
  }
374
392
  }
375
393
  }
376
- this.deps.broadcast(frame);
377
- try {
378
- this.deps.escalation?.audit?.(frame);
379
- }
380
- catch (err) {
381
- this.log(`[stall-watchdog] escalation audit sink failed: ${String(err)}`);
382
- }
394
+ this.emit(frame);
383
395
  const where = `run ${run.id}${ord !== undefined ? ` (unit ${ord})` : ''}`;
384
396
  const quiet = `${(quietForMs / 60_000).toFixed(1)} min silent`;
385
397
  if (frame.action === 'notify') {
@@ -405,6 +417,21 @@ export class WorkerStallWatchdog {
405
417
  `happen (${frame.error ?? 'unknown error'}); needs-you frame broadcast`);
406
418
  }
407
419
  }
420
+ /**
421
+ * Put a frame on `/ws` and hand it to the recorder — the ONE place a watchdog frame leaves this
422
+ * class. The recorder (the daemon's `onFrame`) writes the durable audit line and fills the index
423
+ * `GET /runs/:id/events` serves; a throwing recorder is logged and swallowed, because recording
424
+ * a stall must never break detecting the next one.
425
+ */
426
+ emit(frame) {
427
+ this.deps.broadcast(frame);
428
+ try {
429
+ this.deps.onFrame?.(frame);
430
+ }
431
+ catch (err) {
432
+ this.log(`[stall-watchdog] frame recorder failed: ${String(err)}`);
433
+ }
434
+ }
408
435
  /**
409
436
  * The failover TARGET for a stall reassign (perf#4): the first seat of the run's own pool
410
437
  * that is neither the currently-stalled seat nor one this run already stall-reassigned away
@@ -417,7 +444,10 @@ export class WorkerStallWatchdog {
417
444
  if (run.cli === undefined)
418
445
  return undefined; // unknown current seat → council re-pick
419
446
  const stalled = this.stalledSeats.get(run.id);
420
- return (run.seats ?? []).find((s) => s !== run.cli && !(stalled?.has(s) ?? false));
447
+ // DES-L3 PR-3E: never onto a seat the cursor evaluator reviews (`avoid` — the creators'
448
+ // seats); no distinct candidate left ⇒ in-place recycle, as before.
449
+ const avoid = run.avoid ?? [];
450
+ return (run.seats ?? []).find((s) => s !== run.cli && !(stalled?.has(s) ?? false) && !avoid.includes(s));
421
451
  }
422
452
  /** Returns the independent detection/action latches for this quiet period. */
423
453
  quietPeriod(runId) {
@@ -1 +1 @@
1
- {"version":3,"file":"stall-watchdog.js","sourceRoot":"","sources":["../../src/api/stall-watchdog.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stall-watchdog.js","sourceRoot":"","sources":["../../src/api/stall-watchdog.ts"],"names":[],"mappings":"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"}
@@ -43,8 +43,18 @@ export declare const CAMPAIGN_WORKFLOW_PREFIX = "campaign-";
43
43
  export declare function scenarioWorkflowId(campaignId: string, scenarioId: string): string;
44
44
  /** A built campaign: the engine def plus the per-node Tool workflows the adapter must arm
45
45
  * (hot-register + overlay-persist) BEFORE the def launches. */
46
+ /** The engine's `CampaignDef.denial_gate` (wicked-core ≥ 0.7.27; DES-L1 PR-1D). Typed HERE until
47
+ * wicked-crew-api-types carries `CampaignDef.denial_gate?` / `LaunchCampaignBody.denialGate?`
48
+ * (0.39.0) — the engine's serde reads it today; `engineCampaignDef` spreads the def verbatim. */
49
+ export type CampaignDenialGate = 'hold' | 'auto_reject';
50
+ export type EngineCampaignDef = CampaignDef & {
51
+ denial_gate?: CampaignDenialGate;
52
+ };
53
+ export type LaunchCampaignBodyWithDenialGate = LaunchCampaignBody & {
54
+ denialGate?: CampaignDenialGate;
55
+ };
46
56
  export interface BuiltCampaign {
47
- def: CampaignDef;
57
+ def: EngineCampaignDef;
48
58
  workflows: WorkflowDef[];
49
59
  }
50
60
  /** A resolved repo the fan targets — `id` rides `run_spec.repo_ref`, `name` labels titles. */
@@ -137,5 +147,5 @@ export declare function buildReconCampaign(input: ReconCampaignInput): ReconCamp
137
147
  * `defaultClis` is the parsed council roster used for every node that does not carry its own —
138
148
  * Tool nodes never convene it (the phase bypasses the council), agent nodes do.
139
149
  */
140
- export declare function buildCampaign(body: LaunchCampaignBody, defaultClis: unknown[]): BuiltCampaign;
150
+ export declare function buildCampaign(body: LaunchCampaignBodyWithDenialGate, defaultClis: unknown[]): BuiltCampaign;
141
151
  //# sourceMappingURL=plan.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"plan.d.ts","sourceRoot":"","sources":["../../src/campaigns/plan.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,KAAK,EACV,WAAW,EAGX,gBAAgB,EAChB,kBAAkB,EAElB,WAAW,EACZ,MAAM,kBAAkB,CAAC;AAE1B;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,OAAO,CAAC;AASrC;;qEAEqE;AACrE,eAAO,MAAM,wBAAwB,cAAc,CAAC;AAEpD,oEAAoE;AACpE,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAEjF;AAED;gEACgE;AAChE,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,WAAW,CAAC;IACjB,SAAS,EAAE,WAAW,EAAE,CAAC;CAC1B;AAWD,8FAA8F;AAC9F,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AAED,2FAA2F;AAC3F,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,gBAAgB,EAAE,CAAC;IAC9B;;;;;OAKG;IACH,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAOD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,YAAY,CAAC,SAAS,EAAE,gBAAgB,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,eAAe,CA+E7F;AAWD;;yEAEyE;AACzE,eAAO,MAAM,iBAAiB;;CAAyB,CAAC;AAExD;wFACwF;AACxF,eAAO,MAAM,uBAAuB,aAAa,CAAC;AAElD,MAAM,WAAW,kBAAkB;IACjC;mFAC+E;IAC/E,EAAE,EAAE,MAAM,CAAC;IACX;;;qGAGiG;IACjG,OAAO,EAAE,MAAM,CAAC;IAChB;mFAC+E;IAC/E,KAAK,EAAE,OAAO,EAAE,CAAC;IACjB,wDAAwD;IACxD,IAAI,EAAE,OAAO,EAAE,CAAC;IAChB;+FAC2F;IAC3F,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;gGACgG;AAChG,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,WAAW,CAAC;IACjB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAeD;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,kBAAkB,GAAG,aAAa,CA2C3E;AAiDD;;;;;;;;;;;;GAYG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,kBAAkB,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,aAAa,CAwD7F"}
1
+ {"version":3,"file":"plan.d.ts","sourceRoot":"","sources":["../../src/campaigns/plan.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,KAAK,EACV,WAAW,EAGX,gBAAgB,EAChB,kBAAkB,EAElB,WAAW,EACZ,MAAM,kBAAkB,CAAC;AAE1B;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,OAAO,CAAC;AASrC;;qEAEqE;AACrE,eAAO,MAAM,wBAAwB,cAAc,CAAC;AAEpD,oEAAoE;AACpE,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAEjF;AAED;gEACgE;AAChE;;kGAEkG;AAClG,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,aAAa,CAAC;AACxD,MAAM,MAAM,iBAAiB,GAAG,WAAW,GAAG;IAAE,WAAW,CAAC,EAAE,kBAAkB,CAAA;CAAE,CAAC;AACnF,MAAM,MAAM,gCAAgC,GAAG,kBAAkB,GAAG;IAAE,UAAU,CAAC,EAAE,kBAAkB,CAAA;CAAE,CAAC;AAExG,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,iBAAiB,CAAC;IACvB,SAAS,EAAE,WAAW,EAAE,CAAC;CAC1B;AAWD,8FAA8F;AAC9F,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AAED,2FAA2F;AAC3F,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,gBAAgB,EAAE,CAAC;IAC9B;;;;;OAKG;IACH,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAOD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,YAAY,CAAC,SAAS,EAAE,gBAAgB,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,eAAe,CA+E7F;AAWD;;yEAEyE;AACzE,eAAO,MAAM,iBAAiB;;CAAyB,CAAC;AAExD;wFACwF;AACxF,eAAO,MAAM,uBAAuB,aAAa,CAAC;AAElD,MAAM,WAAW,kBAAkB;IACjC;mFAC+E;IAC/E,EAAE,EAAE,MAAM,CAAC;IACX;;;qGAGiG;IACjG,OAAO,EAAE,MAAM,CAAC;IAChB;mFAC+E;IAC/E,KAAK,EAAE,OAAO,EAAE,CAAC;IACjB,wDAAwD;IACxD,IAAI,EAAE,OAAO,EAAE,CAAC;IAChB;+FAC2F;IAC3F,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;gGACgG;AAChG,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,WAAW,CAAC;IACjB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAeD;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,kBAAkB,GAAG,aAAa,CA2C3E;AAiDD;;;;;;;;;;;;GAYG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,gCAAgC,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,aAAa,CA2D3G"}
@@ -314,6 +314,9 @@ export function buildCampaign(body, defaultClis) {
314
314
  edges,
315
315
  policy: body.policy ?? 'continue_independent',
316
316
  max_concurrency: body.maxConcurrency ?? 2,
317
+ // Absent ⇒ the engine's default (`hold`, today's behaviour) — never spelled here, so an
318
+ // older engine sees exactly the def it saw before.
319
+ ...(body.denialGate !== undefined ? { denial_gate: body.denialGate } : {}),
317
320
  },
318
321
  workflows,
319
322
  };
@@ -1 +1 @@
1
- {"version":3,"file":"plan.js","sourceRoot":"","sources":["../../src/campaigns/plan.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plan.js","sourceRoot":"","sources":["../../src/campaigns/plan.ts"],"names":[],"mappings":"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"}
@@ -31,6 +31,11 @@ export interface RollupDeps {
31
31
  /** ERROR-level channel — only a NON-probe derivation throw (a defect) is reported here; the
32
32
  * expected probe-unavailable degrade stays quiet (the probe layer already said it). */
33
33
  logDefect?: (msg: string) => void;
34
+ /** Def-awareness (crew#481 / D-14) — the SAME `runCanDeliver(view, resolveRunWorkflow(…))` the
35
+ * run DTOs' delivery cache applies, so a completed `capture-learnings` node reads `'none'` here
36
+ * AND on `GET /runs` (the split-brain this surface's charter forbids). Absent ⇒ every completed
37
+ * repo-scoped node is a candidate — today's behaviour for a directly-driven route set. */
38
+ canDeliver?: (view: SessionView) => boolean;
34
39
  }
35
40
  /** Index a session list by run id — built once per request from ONE `sessionsDetail()` read. */
36
41
  export declare function sessionsById(views: SessionView[]): Map<string, SessionView>;
@@ -1 +1 @@
1
- {"version":3,"file":"rollup.d.ts","sourceRoot":"","sources":["../../src/campaigns/rollup.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAEV,QAAQ,EAER,QAAQ,EACR,WAAW,EACZ,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAML,KAAK,aAAa,EACnB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD,sFAAsF;AACtF,MAAM,WAAW,UAAU;IACzB,UAAU,EAAE,UAAU,CAAC;IACvB;+FAC2F;IAC3F,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,qEAAqE;IACrE,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;IACtD,sEAAsE;IACtE,OAAO,EAAE,aAAa,CAAC;IACvB;4FACwF;IACxF,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CACnC;AAED,gGAAgG;AAChG,wBAAgB,YAAY,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAE3E;AA+CD;;;;;GAKG;AACH,wBAAsB,cAAc,CAClC,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,EAC9B,IAAI,EAAE,UAAU,GACf,OAAO,CAAC,QAAQ,CAAC,CAwBnB;AAED,6FAA6F;AAC7F,wBAAsB,WAAW,CAC/B,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,EAC9B,IAAI,EAAE,UAAU,GACf,OAAO,CAAC,QAAQ,EAAE,CAAC,CAarB"}
1
+ {"version":3,"file":"rollup.d.ts","sourceRoot":"","sources":["../../src/campaigns/rollup.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAEV,QAAQ,EAER,QAAQ,EACR,WAAW,EACZ,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAML,KAAK,aAAa,EACnB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD,sFAAsF;AACtF,MAAM,WAAW,UAAU;IACzB,UAAU,EAAE,UAAU,CAAC;IACvB;+FAC2F;IAC3F,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,qEAAqE;IACrE,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;IACtD,sEAAsE;IACtE,OAAO,EAAE,aAAa,CAAC;IACvB;4FACwF;IACxF,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC;;;+FAG2F;IAC3F,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,KAAK,OAAO,CAAC;CAC7C;AAED,gGAAgG;AAChG,wBAAgB,YAAY,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAE3E;AAgDD;;;;;GAKG;AACH,wBAAsB,cAAc,CAClC,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,EAC9B,IAAI,EAAE,UAAU,GACf,OAAO,CAAC,QAAQ,CAAC,CAwBnB;AAED,6FAA6F;AAC7F,wBAAsB,WAAW,CAC/B,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,EAC9B,IAAI,EAAE,UAAU,GACf,OAAO,CAAC,QAAQ,EAAE,CAAC,CAarB"}
@@ -31,9 +31,10 @@ async function deliveryOf(view, deps) {
31
31
  return { delivery: 'delivered', deliverUrl: url };
32
32
  if (isDeliverConflictStranded(view))
33
33
  return { delivery: 'stranded' };
34
+ const canDeliver = deps.canDeliver?.(view) ?? true;
34
35
  let state;
35
36
  try {
36
- state = await deliveryStateWithVacuity(view.session, undefined, deps.vacuity);
37
+ state = await deliveryStateWithVacuity(view.session, undefined, deps.vacuity, canDeliver);
37
38
  }
38
39
  catch (err) {
39
40
  // The production probes throw `VacuityProbeUnavailable` when git could not answer — the
@@ -45,7 +46,7 @@ async function deliveryOf(view, deps) {
45
46
  if (!(err instanceof VacuityProbeUnavailable)) {
46
47
  deps.logDefect?.(`[campaigns] DEFECT: delivery derivation for ${view.session.id} threw a non-probe error (served the stat-only label): ${err instanceof Error ? (err.stack ?? err.message) : String(err)}`);
47
48
  }
48
- state = deliveryStateOf(view.session, undefined, deps.vacuity.worktreeExists);
49
+ state = deliveryStateOf(view.session, undefined, deps.vacuity.worktreeExists, canDeliver);
49
50
  }
50
51
  return {
51
52
  delivery: state.delivery,
@@ -1 +1 @@
1
- {"version":3,"file":"rollup.js","sourceRoot":"","sources":["../../src/campaigns/rollup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rollup.js","sourceRoot":"","sources":["../../src/campaigns/rollup.ts"],"names":[],"mappings":"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"}
@@ -79,6 +79,7 @@ export declare const LaunchCampaignSchema: z.ZodObject<{
79
79
  }>, "many">;
80
80
  policy: z.ZodOptional<z.ZodEnum<["fail_fast", "continue_independent", "human_gate_on_failure"]>>;
81
81
  maxConcurrency: z.ZodOptional<z.ZodNumber>;
82
+ denialGate: z.ZodOptional<z.ZodEnum<["hold", "auto_reject"]>>;
82
83
  clisJson: z.ZodOptional<z.ZodString>;
83
84
  projectId: z.ZodOptional<z.ZodString>;
84
85
  repoRefs: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
@@ -97,12 +98,13 @@ export declare const LaunchCampaignSchema: z.ZodObject<{
97
98
  repoRef?: string | undefined;
98
99
  depsCondition?: "on_success" | "on_terminal" | undefined;
99
100
  }[];
101
+ name?: string | undefined;
100
102
  id?: string | undefined;
101
103
  projectId?: string | undefined;
102
- name?: string | undefined;
103
104
  policy?: "continue_independent" | "fail_fast" | "human_gate_on_failure" | undefined;
104
105
  repoRefs?: string[] | undefined;
105
106
  maxConcurrency?: number | undefined;
107
+ denialGate?: "hold" | "auto_reject" | undefined;
106
108
  clisJson?: string | undefined;
107
109
  }, {
108
110
  scenarios: {
@@ -119,12 +121,13 @@ export declare const LaunchCampaignSchema: z.ZodObject<{
119
121
  repoRef?: string | undefined;
120
122
  depsCondition?: "on_success" | "on_terminal" | undefined;
121
123
  }[];
124
+ name?: string | undefined;
122
125
  id?: string | undefined;
123
126
  projectId?: string | undefined;
124
- name?: string | undefined;
125
127
  policy?: "continue_independent" | "fail_fast" | "human_gate_on_failure" | undefined;
126
128
  repoRefs?: string[] | undefined;
127
129
  maxConcurrency?: number | undefined;
130
+ denialGate?: "hold" | "auto_reject" | undefined;
128
131
  clisJson?: string | undefined;
129
132
  }>;
130
133
  export interface CampaignRoutesDeps extends RollupDeps {