@telora/daemon 0.22.227 → 0.22.239

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 (229) hide show
  1. package/build-info.json +4 -3
  2. package/dist/backends/index.d.ts.map +1 -1
  3. package/dist/backends/index.js +1 -0
  4. package/dist/backends/index.js.map +1 -1
  5. package/dist/completion/codex-activity.d.ts +40 -0
  6. package/dist/completion/codex-activity.d.ts.map +1 -0
  7. package/dist/completion/codex-activity.js +69 -0
  8. package/dist/completion/codex-activity.js.map +1 -0
  9. package/dist/completion/completion-phase-registry.d.ts +2 -1
  10. package/dist/completion/completion-phase-registry.d.ts.map +1 -1
  11. package/dist/completion/completion-phase-registry.js +15 -3
  12. package/dist/completion/completion-phase-registry.js.map +1 -1
  13. package/dist/completion/detector.d.ts.map +1 -1
  14. package/dist/completion/detector.js +1 -0
  15. package/dist/completion/detector.js.map +1 -1
  16. package/dist/completion/event-entry-phases.d.ts.map +1 -1
  17. package/dist/completion/event-entry-phases.js +13 -11
  18. package/dist/completion/event-entry-phases.js.map +1 -1
  19. package/dist/completion/event-phases.d.ts.map +1 -1
  20. package/dist/completion/event-phases.js +16 -15
  21. package/dist/completion/event-phases.js.map +1 -1
  22. package/dist/completion/exit-classification.d.ts.map +1 -1
  23. package/dist/completion/exit-classification.js +3 -1
  24. package/dist/completion/exit-classification.js.map +1 -1
  25. package/dist/completion/review-exit-phase.js +1 -1
  26. package/dist/completion/status-advance-phase.d.ts +3 -0
  27. package/dist/completion/status-advance-phase.d.ts.map +1 -1
  28. package/dist/completion/status-advance-phase.js +2 -1
  29. package/dist/completion/status-advance-phase.js.map +1 -1
  30. package/dist/completion/team-phase.d.ts.map +1 -1
  31. package/dist/completion/team-phase.js +3 -2
  32. package/dist/completion/team-phase.js.map +1 -1
  33. package/dist/completion/team-progress-measure.d.ts +22 -1
  34. package/dist/completion/team-progress-measure.d.ts.map +1 -1
  35. package/dist/completion/team-progress-measure.js +54 -6
  36. package/dist/completion/team-progress-measure.js.map +1 -1
  37. package/dist/delivery/delivery-advance-block.d.ts +17 -4
  38. package/dist/delivery/delivery-advance-block.d.ts.map +1 -1
  39. package/dist/delivery/delivery-advance-block.js +203 -173
  40. package/dist/delivery/delivery-advance-block.js.map +1 -1
  41. package/dist/directive/agentless-directive.d.ts +28 -0
  42. package/dist/directive/agentless-directive.d.ts.map +1 -0
  43. package/dist/directive/agentless-directive.js +12 -0
  44. package/dist/directive/agentless-directive.js.map +1 -0
  45. package/dist/directive/directive-dispatch.d.ts +1 -20
  46. package/dist/directive/directive-dispatch.d.ts.map +1 -1
  47. package/dist/directive/directive-dispatch.js +4 -22
  48. package/dist/directive/directive-dispatch.js.map +1 -1
  49. package/dist/directive/directive-queue.d.ts.map +1 -1
  50. package/dist/directive/directive-queue.js +1 -20
  51. package/dist/directive/directive-queue.js.map +1 -1
  52. package/dist/drift/artifact-ref-shape.d.ts +23 -0
  53. package/dist/drift/artifact-ref-shape.d.ts.map +1 -1
  54. package/dist/drift/artifact-ref-shape.js +49 -0
  55. package/dist/drift/artifact-ref-shape.js.map +1 -1
  56. package/dist/focus/advance-hold.d.ts +55 -0
  57. package/dist/focus/advance-hold.d.ts.map +1 -0
  58. package/dist/focus/advance-hold.js +155 -0
  59. package/dist/focus/advance-hold.js.map +1 -0
  60. package/dist/focus/focus-lifecycle.d.ts.map +1 -1
  61. package/dist/focus/focus-lifecycle.js +3 -2
  62. package/dist/focus/focus-lifecycle.js.map +1 -1
  63. package/dist/focus/focus-spawn-decision.d.ts +17 -6
  64. package/dist/focus/focus-spawn-decision.d.ts.map +1 -1
  65. package/dist/focus/focus-spawn-decision.js +6 -6
  66. package/dist/focus/focus-spawn-decision.js.map +1 -1
  67. package/dist/focus/focus-team-state.js +1 -1
  68. package/dist/focus/focus-worktree-state.d.ts.map +1 -1
  69. package/dist/focus/focus-worktree-state.js +1 -0
  70. package/dist/focus/focus-worktree-state.js.map +1 -1
  71. package/dist/focus/listener-auto-advance.d.ts +14 -0
  72. package/dist/focus/listener-auto-advance.d.ts.map +1 -1
  73. package/dist/focus/listener-auto-advance.js +13 -10
  74. package/dist/focus/listener-auto-advance.js.map +1 -1
  75. package/dist/focus/listener-spawn.d.ts.map +1 -1
  76. package/dist/focus/listener-spawn.js +23 -34
  77. package/dist/focus/listener-spawn.js.map +1 -1
  78. package/dist/focus/listener-state.d.ts.map +1 -1
  79. package/dist/focus/listener-state.js +1 -0
  80. package/dist/focus/listener-state.js.map +1 -1
  81. package/dist/focus/listener.d.ts.map +1 -1
  82. package/dist/focus/listener.js +10 -4
  83. package/dist/focus/listener.js.map +1 -1
  84. package/dist/focus/pending-spawn-pass-deps.d.ts +3 -0
  85. package/dist/focus/pending-spawn-pass-deps.d.ts.map +1 -1
  86. package/dist/focus/pending-spawn-pass-deps.js +1 -0
  87. package/dist/focus/pending-spawn-pass-deps.js.map +1 -1
  88. package/dist/focus/ready-focus-spawn-action.d.ts +29 -0
  89. package/dist/focus/ready-focus-spawn-action.d.ts.map +1 -0
  90. package/dist/focus/ready-focus-spawn-action.js +32 -0
  91. package/dist/focus/ready-focus-spawn-action.js.map +1 -0
  92. package/dist/focus/ready-focus-team-work.d.ts +18 -0
  93. package/dist/focus/ready-focus-team-work.d.ts.map +1 -0
  94. package/dist/focus/ready-focus-team-work.js +59 -0
  95. package/dist/focus/ready-focus-team-work.js.map +1 -0
  96. package/dist/focus/team-actionable-work.d.ts +56 -6
  97. package/dist/focus/team-actionable-work.d.ts.map +1 -1
  98. package/dist/focus/team-actionable-work.js +56 -9
  99. package/dist/focus/team-actionable-work.js.map +1 -1
  100. package/dist/git/types.d.ts.map +1 -1
  101. package/dist/git/types.js +1 -0
  102. package/dist/git/types.js.map +1 -1
  103. package/dist/nexus/return.d.ts +44 -1
  104. package/dist/nexus/return.d.ts.map +1 -1
  105. package/dist/nexus/return.js +42 -0
  106. package/dist/nexus/return.js.map +1 -1
  107. package/dist/prompt/focus-prompt-builder.d.ts +10 -8
  108. package/dist/prompt/focus-prompt-builder.d.ts.map +1 -1
  109. package/dist/prompt/focus-prompt-builder.js +19 -10
  110. package/dist/prompt/focus-prompt-builder.js.map +1 -1
  111. package/dist/prompt-sections/execution-sections.d.ts.map +1 -1
  112. package/dist/prompt-sections/execution-sections.js +10 -0
  113. package/dist/prompt-sections/execution-sections.js.map +1 -1
  114. package/dist/prompt-sections/persona-sections.d.ts +15 -0
  115. package/dist/prompt-sections/persona-sections.d.ts.map +1 -1
  116. package/dist/prompt-sections/persona-sections.js +32 -2
  117. package/dist/prompt-sections/persona-sections.js.map +1 -1
  118. package/dist/queries/deliveries.js +1 -1
  119. package/dist/queries/deliveries.js.map +1 -1
  120. package/dist/queries/delivery-gate-holds.d.ts +78 -0
  121. package/dist/queries/delivery-gate-holds.d.ts.map +1 -0
  122. package/dist/queries/delivery-gate-holds.js +5 -0
  123. package/dist/queries/delivery-gate-holds.js.map +1 -0
  124. package/dist/queries/delivery-gate-state.d.ts +13 -58
  125. package/dist/queries/delivery-gate-state.d.ts.map +1 -1
  126. package/dist/queries/delivery-gate-state.js.map +1 -1
  127. package/dist/queries/focus-discovery.js +1 -1
  128. package/dist/queries/focus-discovery.js.map +1 -1
  129. package/dist/queries/focuses.d.ts.map +1 -1
  130. package/dist/queries/focuses.js +2 -0
  131. package/dist/queries/focuses.js.map +1 -1
  132. package/dist/queries/issues.d.ts.map +1 -1
  133. package/dist/queries/issues.js +1 -0
  134. package/dist/queries/issues.js.map +1 -1
  135. package/dist/queries/shared.js +1 -1
  136. package/dist/queries/shortfall-rulings.d.ts +13 -0
  137. package/dist/queries/shortfall-rulings.d.ts.map +1 -1
  138. package/dist/queries/shortfall-rulings.js +14 -0
  139. package/dist/queries/shortfall-rulings.js.map +1 -1
  140. package/dist/queries/workflows.d.ts.map +1 -1
  141. package/dist/queries/workflows.js +1 -0
  142. package/dist/queries/workflows.js.map +1 -1
  143. package/dist/spawn/codex-limit.d.ts +42 -0
  144. package/dist/spawn/codex-limit.d.ts.map +1 -0
  145. package/dist/spawn/codex-limit.js +146 -0
  146. package/dist/spawn/codex-limit.js.map +1 -0
  147. package/dist/spawn/directive-route.d.ts +41 -0
  148. package/dist/spawn/directive-route.d.ts.map +1 -0
  149. package/dist/spawn/directive-route.js +54 -0
  150. package/dist/spawn/directive-route.js.map +1 -0
  151. package/dist/spawn/guards.d.ts.map +1 -1
  152. package/dist/spawn/guards.js +4 -2
  153. package/dist/spawn/guards.js.map +1 -1
  154. package/dist/spawn/helpers.d.ts.map +1 -1
  155. package/dist/spawn/helpers.js +30 -1
  156. package/dist/spawn/helpers.js.map +1 -1
  157. package/dist/spawn/idle-work-stamp.d.ts +13 -7
  158. package/dist/spawn/idle-work-stamp.d.ts.map +1 -1
  159. package/dist/spawn/idle-work-stamp.js +22 -11
  160. package/dist/spawn/idle-work-stamp.js.map +1 -1
  161. package/dist/spawn/index.d.ts +1 -0
  162. package/dist/spawn/index.d.ts.map +1 -1
  163. package/dist/spawn/index.js +1 -0
  164. package/dist/spawn/index.js.map +1 -1
  165. package/dist/spawn/lead-continuation.d.ts.map +1 -1
  166. package/dist/spawn/lead-continuation.js +13 -11
  167. package/dist/spawn/lead-continuation.js.map +1 -1
  168. package/dist/spawn/next-spawn-cooldown.d.ts +43 -0
  169. package/dist/spawn/next-spawn-cooldown.d.ts.map +1 -0
  170. package/dist/spawn/next-spawn-cooldown.js +123 -0
  171. package/dist/spawn/next-spawn-cooldown.js.map +1 -0
  172. package/dist/spawn/one-shot-model.d.ts +4 -3
  173. package/dist/spawn/one-shot-model.d.ts.map +1 -1
  174. package/dist/spawn/one-shot-model.js +8 -6
  175. package/dist/spawn/one-shot-model.js.map +1 -1
  176. package/dist/spawn/provider-window.d.ts +39 -0
  177. package/dist/spawn/provider-window.d.ts.map +1 -0
  178. package/dist/spawn/provider-window.js +99 -0
  179. package/dist/spawn/provider-window.js.map +1 -0
  180. package/dist/spawn/routing-decider-spawn.d.ts.map +1 -1
  181. package/dist/spawn/routing-decider-spawn.js +4 -3
  182. package/dist/spawn/routing-decider-spawn.js.map +1 -1
  183. package/dist/spawn/routing-decider.js +2 -2
  184. package/dist/spawn/routing-decider.js.map +1 -1
  185. package/dist/spawn/spawn-cooldown.d.ts +43 -12
  186. package/dist/spawn/spawn-cooldown.d.ts.map +1 -1
  187. package/dist/spawn/spawn-cooldown.js +51 -58
  188. package/dist/spawn/spawn-cooldown.js.map +1 -1
  189. package/dist/spawn/spawn-decision.d.ts +11 -2
  190. package/dist/spawn/spawn-decision.d.ts.map +1 -1
  191. package/dist/spawn/spawn-decision.js +28 -60
  192. package/dist/spawn/spawn-decision.js.map +1 -1
  193. package/dist/spawn/worktree-session.d.ts +16 -0
  194. package/dist/spawn/worktree-session.d.ts.map +1 -1
  195. package/dist/spawn/worktree-session.js +45 -12
  196. package/dist/spawn/worktree-session.js.map +1 -1
  197. package/dist/testing/fixtures/codex-stream-session.d.ts +10 -0
  198. package/dist/testing/fixtures/codex-stream-session.d.ts.map +1 -0
  199. package/dist/testing/fixtures/codex-stream-session.js +47 -0
  200. package/dist/testing/fixtures/codex-stream-session.js.map +1 -0
  201. package/dist/testing/fixtures/index.js +1 -1
  202. package/dist/types/focus.d.ts +20 -0
  203. package/dist/types/focus.d.ts.map +1 -1
  204. package/dist/types/index.js +1 -1
  205. package/dist/verify/ai-inspection-runner.js +5 -5
  206. package/dist/verify/ai-inspection-runner.js.map +1 -1
  207. package/dist/verify/parked-shortfall-reuse.d.ts.map +1 -1
  208. package/dist/verify/parked-shortfall-reuse.js +3 -0
  209. package/dist/verify/parked-shortfall-reuse.js.map +1 -1
  210. package/dist/verify/ruling-evidence-resolution.d.ts +36 -0
  211. package/dist/verify/ruling-evidence-resolution.d.ts.map +1 -0
  212. package/dist/verify/ruling-evidence-resolution.js +133 -0
  213. package/dist/verify/ruling-evidence-resolution.js.map +1 -0
  214. package/dist/verify/shortfall-rulings.d.ts +30 -2
  215. package/dist/verify/shortfall-rulings.d.ts.map +1 -1
  216. package/dist/verify/shortfall-rulings.js +35 -3
  217. package/dist/verify/shortfall-rulings.js.map +1 -1
  218. package/dist/verify/verification-deps-default.d.ts.map +1 -1
  219. package/dist/verify/verification-deps-default.js +3 -0
  220. package/dist/verify/verification-deps-default.js.map +1 -1
  221. package/dist/verify/verification-deps.d.ts +9 -0
  222. package/dist/verify/verification-deps.d.ts.map +1 -1
  223. package/dist/verify/verification-engine.d.ts.map +1 -1
  224. package/dist/verify/verification-engine.js +4 -4
  225. package/dist/verify/verification-engine.js.map +1 -1
  226. package/dist/verify/verify-restatement.d.ts.map +1 -1
  227. package/dist/verify/verify-restatement.js +1 -19
  228. package/dist/verify/verify-restatement.js.map +1 -1
  229. package/package.json +2 -2
@@ -0,0 +1,146 @@
1
+ // PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
2
+ // Pinned by: packages/daemon/src/spawn/codex-limit.test.ts
3
+ // PINNED-BY-END
4
+ /**
5
+ * Codex usage-limit and rate-limit recognition at the daemon boundary.
6
+ *
7
+ * The Codex counterpart of spawn/rate-limit.ts. Claude hands the daemon a typed
8
+ * rate_limit_event carrying the reset instant; Codex does not. The shape below
9
+ * was CAPTURED, not assumed: the real `codex exec --json` binary (0.154.0) was
10
+ * driven into a usage limit and a rate limit against a stubbed endpoint, and its
11
+ * verbatim output is checked in under testing/fixtures/codex-streams/ (the
12
+ * README there says exactly how). What it showed:
13
+ *
14
+ * - The limit reaches the JSONL stream ONLY as prose, on an `error` line
15
+ * (`{"type":"error","message":...}`) followed by `turn.failed`
16
+ * (`{"type":"turn.failed","error":{"message":...}}`) with the same text. No
17
+ * typed field, no resets_at, no rate-limit snapshot event reaches `--json`.
18
+ * - A usage limit reads "You've hit your usage limit. ... try again at 6:35 PM."
19
+ * (a reset later today) or "... try again at Sep 27th, 2026 3:35 PM." (a
20
+ * later day), in the codex PROCESS's local time zone, at minute precision --
21
+ * or "You've hit your usage limit. Try again later." with no reset at all.
22
+ * - A rate limit whose retries ran out reads
23
+ * "exceeded retry limit, last status: 429 Too Many Requests" (no reset).
24
+ * - The exit code is 1 for every failure, limit or not.
25
+ *
26
+ * So the reader recognizes those sentences and reads the reset instant back out
27
+ * of the wall-clock text in the daemon's own time zone, which is the one the
28
+ * codex child inherits. The instant is rounded UP to the next minute (codex
29
+ * drops the seconds), so a spawn is never attempted before the real reset. When
30
+ * no reset is given the window opens for CODEX_LIMIT_FALLBACK_MS -- never
31
+ * indefinitely, never zero. Anything else is not a limit and returns null, so a
32
+ * non-limit Codex error is handled exactly as before.
33
+ *
34
+ * WHY THE RAW CHANNEL, NOT daemon-core. The Codex parser lives in daemon-core,
35
+ * which is registry-installed: a change there needs a daemon-core publish and a
36
+ * pin bump before the daemon can use it. The parser already forwards every
37
+ * parsed line verbatim on its `raw` channel, which is exactly how the Claude
38
+ * rate-limit reader (spawn/rate-limit.ts) and the background-worker reader
39
+ * (completion/team-progress-measure.ts noteTeamRawEvent) consume what the
40
+ * neutral stream does not carry. The Codex work-activity reader
41
+ * (completion/codex-activity.ts) makes the same choice, so both Codex readers
42
+ * live in the daemon beside their Claude counterparts. Recorded 2026-09-24.
43
+ */
44
+ import { CODEX_PROVIDER, openProviderWindow } from './provider-window.js';
45
+ import { createLogger } from '../shell/log.js';
46
+ const log = createLogger({ module: 'codex-limit' });
47
+ /**
48
+ * How long the Codex window stays open when Codex names no reset instant ("Try
49
+ * again later." / a 429 whose retries ran out). Thirty minutes: long enough that
50
+ * a spawn is not re-thrown into the same limit every poll, short enough that a
51
+ * limit that cleared sooner costs at most one wasted half hour -- and the first
52
+ * spawn after it re-learns the limit from Codex if it still stands.
53
+ */
54
+ export const CODEX_LIMIT_FALLBACK_MS = 30 * 60_000;
55
+ const USAGE_LIMIT_RE = /you've hit your usage limit/i;
56
+ const RATE_LIMIT_RE = /\blast status: 429\b|\b429 Too Many Requests\b/i;
57
+ const MONTHS = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
58
+ const DATED_RESET_RE = /try again at ([A-Z][a-z]{2}) (\d{1,2})(?:st|nd|rd|th)?, (\d{4}) (\d{1,2}):(\d{2}) ?([AP]M)/i;
59
+ const TIME_RESET_RE = /try again at (\d{1,2}):(\d{2}) ?([AP]M)/i;
60
+ const MINUTE_MS = 60_000;
61
+ const DAY_MS = 24 * 3_600_000;
62
+ function isRecord(value) {
63
+ return typeof value === 'object' && value !== null;
64
+ }
65
+ /** The message of a Codex `error` or `turn.failed` line, or null for any other line. */
66
+ function codexFailureMessage(raw) {
67
+ if (!isRecord(raw))
68
+ return null;
69
+ if (raw['type'] === 'error')
70
+ return typeof raw['message'] === 'string' ? raw['message'] : null;
71
+ if (raw['type'] === 'turn.failed') {
72
+ const err = raw['error'];
73
+ return isRecord(err) && typeof err['message'] === 'string' ? err['message'] : null;
74
+ }
75
+ return null;
76
+ }
77
+ function hour24(hour12, meridiem) {
78
+ const h = hour12 % 12;
79
+ return meridiem.toUpperCase() === 'PM' ? h + 12 : h;
80
+ }
81
+ /**
82
+ * Read the reset instant out of a Codex usage-limit message, in the local time
83
+ * zone, rounded up to the next minute. A bare time is today's; one already more
84
+ * than a minute past (the message crossed midnight) is tomorrow's. Pure given
85
+ * `nowMs`; null when the message names no instant.
86
+ */
87
+ export function parseCodexResetAt(message, nowMs) {
88
+ const dated = DATED_RESET_RE.exec(message);
89
+ if (dated) {
90
+ const month = MONTHS.findIndex((m) => m.toLowerCase() === dated[1].toLowerCase());
91
+ if (month < 0)
92
+ return null;
93
+ const at = new Date(Number(dated[3]), month, Number(dated[2]), hour24(Number(dated[4]), dated[6]), Number(dated[5]));
94
+ return Number.isNaN(at.getTime()) ? null : at.getTime() + MINUTE_MS;
95
+ }
96
+ const timed = TIME_RESET_RE.exec(message);
97
+ if (!timed)
98
+ return null;
99
+ const now = new Date(nowMs);
100
+ const at = new Date(now.getFullYear(), now.getMonth(), now.getDate(), hour24(Number(timed[1]), timed[3]), Number(timed[2]));
101
+ let resetMs = at.getTime() + MINUTE_MS;
102
+ if (resetMs < nowMs)
103
+ resetMs += DAY_MS;
104
+ return resetMs;
105
+ }
106
+ /**
107
+ * Parse a raw Codex JSONL line into a CodexLimit, or null when the line is not
108
+ * a usage or rate limit. Pure given `nowMs`.
109
+ */
110
+ export function parseCodexLimit(raw, nowMs) {
111
+ const message = codexFailureMessage(raw);
112
+ if (message === null)
113
+ return null;
114
+ if (USAGE_LIMIT_RE.test(message)) {
115
+ const resetsAtMs = parseCodexResetAt(message, nowMs);
116
+ return { kind: 'usage_limit', resetsAtMs, holdUntilMs: resetsAtMs ?? nowMs + CODEX_LIMIT_FALLBACK_MS, message };
117
+ }
118
+ if (RATE_LIMIT_RE.test(message)) {
119
+ return { kind: 'rate_limit', resetsAtMs: null, holdUntilMs: nowMs + CODEX_LIMIT_FALLBACK_MS, message };
120
+ }
121
+ return null;
122
+ }
123
+ /**
124
+ * Consume a raw line from a Codex team's stream. On a usage or rate limit: open
125
+ * the team's provider window until the reset (every Codex spawn is held until
126
+ * then, whichever focus it is for), carry the instant on the team for its
127
+ * close-path cooldown, and mark the team `modelUnavailable` so its exit is not
128
+ * read as a review or coding outcome. The `error` and `turn.failed` lines repeat
129
+ * one message; the second changes nothing. Returns the limit, or null.
130
+ */
131
+ export function noteCodexTeamLimit(teamState, raw, focusName, nowMs = Date.now()) {
132
+ const limit = parseCodexLimit(raw, nowMs);
133
+ if (!limit)
134
+ return null;
135
+ const provider = teamState.provider ?? CODEX_PROVIDER;
136
+ openProviderWindow(provider, limit.holdUntilMs, nowMs);
137
+ teamState.rateLimitResetAtMs = limit.holdUntilMs;
138
+ if (!teamState.modelUnavailable) {
139
+ log.warn(` [focus-team] Codex ${limit.kind === 'usage_limit' ? 'usage limit' : 'rate limit'} for "${focusName}" -- ` +
140
+ `${limit.resetsAtMs !== null ? 'resets' : 'no reset stated; holding (fallback) until'} ` +
141
+ `${new Date(limit.holdUntilMs).toISOString()}: "${limit.message}"`);
142
+ }
143
+ teamState.modelUnavailable = { kind: limit.kind, provider, holdUntilMs: limit.holdUntilMs };
144
+ return limit;
145
+ }
146
+ //# sourceMappingURL=codex-limit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codex-limit.js","sourceRoot":"","sources":["../../src/spawn/codex-limit.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,41 @@
1
+ /**
2
+ * The ROUTE a spawn's directive declares: the directive metadata Phase B selects
3
+ * the spawn's engine, model and provider from (EngineSelectionMetadata).
4
+ *
5
+ * One definition, read by the two places that must agree on it: the spawn
6
+ * itself (spawn/spawn-decision.ts resolveDirectiveOrFallback) and the spawn
7
+ * gates, which resolve the provider of the spawn they are about to let through
8
+ * before any worktree exists (spawn/next-spawn-cooldown.ts). Each would
9
+ * otherwise derive the route its own way, and a route the two read differently
10
+ * is a spawn one provider's window holds while it runs on the other.
11
+ *
12
+ * The route is what the directive DECLARES, never what its body assembled to.
13
+ * A stage directive whose body assembles empty (the spawn then sends the legacy
14
+ * prompt) still declares its engine, model and local model, exactly as a
15
+ * resume-delta spawn that skips assembly does; the body decides what the team is
16
+ * TOLD, not where it runs. That is also what lets the gate, which cannot
17
+ * assemble, read the same route the spawn will run.
18
+ *
19
+ * Pure.
20
+ */
21
+ import type { PendingSpawnDirective } from '../directive/directive-queue.js';
22
+ import type { WorkflowStageWithDirective, WorkflowWithDirectives } from '../queries/focuses.js';
23
+ import type { EngineSelectionMetadata } from './shared.js';
24
+ /** No directive: nothing pinned, the builtin floor for the model precedence. */
25
+ export declare const NO_DIRECTIVE_ROUTE: EngineSelectionMetadata;
26
+ /** The route a queued spawn directive declares (the respawn path: no workflow read, builtin floor). */
27
+ export declare function pendingDirectiveRoute(pending: PendingSpawnDirective): EngineSelectionMetadata;
28
+ /**
29
+ * The stage a spawn runs at: the one its synced stage id names, or the
30
+ * workflow's initial stage when there is no synced id. A synced id the workflow
31
+ * does not hold names no stage.
32
+ */
33
+ export declare function stageAtSpawn(workflow: WorkflowWithDirectives, syncedStageId: string | null): WorkflowStageWithDirective | undefined;
34
+ /**
35
+ * The route a workflow stage declares. No stage: nothing pinned (the workflow's
36
+ * builtin-ness still ranks the model precedence). A stage with no directive, or
37
+ * an explicit agentless hold: only its name. Otherwise its declared lineage,
38
+ * engine, model and local model -- whatever its body assembles to.
39
+ */
40
+ export declare function stageDirectiveRoute(workflow: WorkflowWithDirectives, stage: WorkflowStageWithDirective | undefined): EngineSelectionMetadata;
41
+ //# sourceMappingURL=directive-route.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"directive-route.d.ts","sourceRoot":"","sources":["../../src/spawn/directive-route.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAE7E,OAAO,KAAK,EAAE,0BAA0B,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAChG,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAE3D,gFAAgF;AAChF,eAAO,MAAM,kBAAkB,EAAE,uBAGhC,CAAC;AAEF,uGAAuG;AACvG,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,qBAAqB,GAAG,uBAAuB,CAU7F;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAC1B,QAAQ,EAAE,sBAAsB,EAChC,aAAa,EAAE,MAAM,GAAG,IAAI,GAC3B,0BAA0B,GAAG,SAAS,CAIxC;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,sBAAsB,EAChC,KAAK,EAAE,0BAA0B,GAAG,SAAS,GAC5C,uBAAuB,CAazB"}
@@ -0,0 +1,54 @@
1
+ // PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
2
+ // Pinned by: none -- no test imports this module directly (baselined; see lint:pinned-by)
3
+ // PINNED-BY-END
4
+ import { isAgentlessDirective } from '../directive/agentless-directive.js';
5
+ /** No directive: nothing pinned, the builtin floor for the model precedence. */
6
+ export const NO_DIRECTIVE_ROUTE = {
7
+ spawnDirectiveDeclared: null, spawnStageName: null, directiveEngine: null, directiveModel: null,
8
+ directiveLocalModel: null, pendingFocusOverrideModel: null, workflowIsBuiltin: true,
9
+ };
10
+ /** The route a queued spawn directive declares (the respawn path: no workflow read, builtin floor). */
11
+ export function pendingDirectiveRoute(pending) {
12
+ return {
13
+ ...NO_DIRECTIVE_ROUTE,
14
+ spawnDirectiveDeclared: { lineage: pending.lineage, continuity: pending.continuity },
15
+ spawnStageName: pending.sessionType === 'review' ? 'reviewing' : null,
16
+ directiveEngine: pending.engine ?? null,
17
+ directiveModel: pending.model,
18
+ directiveLocalModel: pending.localModel ?? null,
19
+ pendingFocusOverrideModel: pending.focusOverrideModel,
20
+ };
21
+ }
22
+ /**
23
+ * The stage a spawn runs at: the one its synced stage id names, or the
24
+ * workflow's initial stage when there is no synced id. A synced id the workflow
25
+ * does not hold names no stage.
26
+ */
27
+ export function stageAtSpawn(workflow, syncedStageId) {
28
+ return syncedStageId
29
+ ? workflow.stages.find((s) => s.id === syncedStageId)
30
+ : workflow.stages.find((s) => s.is_initial);
31
+ }
32
+ /**
33
+ * The route a workflow stage declares. No stage: nothing pinned (the workflow's
34
+ * builtin-ness still ranks the model precedence). A stage with no directive, or
35
+ * an explicit agentless hold: only its name. Otherwise its declared lineage,
36
+ * engine, model and local model -- whatever its body assembles to.
37
+ */
38
+ export function stageDirectiveRoute(workflow, stage) {
39
+ const base = { ...NO_DIRECTIVE_ROUTE, workflowIsBuiltin: workflow.isBuiltin };
40
+ if (!stage)
41
+ return base;
42
+ const directive = stage.agentDirective;
43
+ if (!directive || isAgentlessDirective(directive))
44
+ return { ...base, spawnStageName: stage.name ?? null };
45
+ return {
46
+ ...base,
47
+ spawnDirectiveDeclared: directive,
48
+ spawnStageName: stage.name ?? null,
49
+ directiveEngine: directive.engine ?? null,
50
+ directiveModel: directive.model,
51
+ directiveLocalModel: directive.localModel ?? null,
52
+ };
53
+ }
54
+ //# sourceMappingURL=directive-route.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"directive-route.js","sourceRoot":"","sources":["../../src/spawn/directive-route.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,0FAA0F;AAC1F,gBAAgB;AAwBhB,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAI3E,gFAAgF;AAChF,MAAM,CAAC,MAAM,kBAAkB,GAA4B;IACzD,sBAAsB,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI;IAC/F,mBAAmB,EAAE,IAAI,EAAE,yBAAyB,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI;CACpF,CAAC;AAEF,uGAAuG;AACvG,MAAM,UAAU,qBAAqB,CAAC,OAA8B;IAClE,OAAO;QACL,GAAG,kBAAkB;QACrB,sBAAsB,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE;QACpF,cAAc,EAAE,OAAO,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI;QACrE,eAAe,EAAE,OAAO,CAAC,MAAM,IAAI,IAAI;QACvC,cAAc,EAAE,OAAO,CAAC,KAAK;QAC7B,mBAAmB,EAAE,OAAO,CAAC,UAAU,IAAI,IAAI;QAC/C,yBAAyB,EAAE,OAAO,CAAC,kBAAkB;KACtD,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAC1B,QAAgC,EAChC,aAA4B;IAE5B,OAAO,aAAa;QAClB,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,aAAa,CAAC;QACrD,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;AAChD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CACjC,QAAgC,EAChC,KAA6C;IAE7C,MAAM,IAAI,GAAG,EAAE,GAAG,kBAAkB,EAAE,iBAAiB,EAAE,QAAQ,CAAC,SAAS,EAAE,CAAC;IAC9E,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,MAAM,SAAS,GAAG,KAAK,CAAC,cAAc,CAAC;IACvC,IAAI,CAAC,SAAS,IAAI,oBAAoB,CAAC,SAAS,CAAC;QAAE,OAAO,EAAE,GAAG,IAAI,EAAE,cAAc,EAAE,KAAK,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;IAC1G,OAAO;QACL,GAAG,IAAI;QACP,sBAAsB,EAAE,SAAS;QACjC,cAAc,EAAE,KAAK,CAAC,IAAI,IAAI,IAAI;QAClC,eAAe,EAAE,SAAS,CAAC,MAAM,IAAI,IAAI;QACzC,cAAc,EAAE,SAAS,CAAC,KAAK;QAC/B,mBAAmB,EAAE,SAAS,CAAC,UAAU,IAAI,IAAI;KAClD,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"guards.d.ts","sourceRoot":"","sources":["../../src/spawn/guards.ts"],"names":[],"mappings":"AAiCA,yCAAyC;AACzC,MAAM,WAAW,qBAAqB;IACpC,iBAAiB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC;IAChD,mBAAmB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CAChD;AAOD;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,MAAM,EACf,IAAI,GAAE,qBAAmC,GACxC,OAAO,CAET;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,MAAM,EACf,IAAI,GAAE,qBAAmC,GACxC,IAAI,CAEN"}
1
+ {"version":3,"file":"guards.d.ts","sourceRoot":"","sources":["../../src/spawn/guards.ts"],"names":[],"mappings":"AAkCA,yCAAyC;AACzC,MAAM,WAAW,qBAAqB;IACpC,iBAAiB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC;IAChD,mBAAmB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CAChD;AAQD;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,MAAM,EACf,IAAI,GAAE,qBAAmC,GACxC,OAAO,CAET;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,MAAM,EACf,IAAI,GAAE,qBAAmC,GACxC,IAAI,CAEN"}
@@ -27,9 +27,11 @@
27
27
  * resolve cleanly under tsx --experimental-test-module-mocks (same reasoning
28
28
  * as focus-respawn-guard.ts).
29
29
  */
30
- import { isInSpawnCooldown, recordFocusTeardown } from './spawn-cooldown.js';
30
+ import { recordFocusTeardown } from './spawn-cooldown.js';
31
+ import { isNextSpawnInTeardownCooldown } from './next-spawn-cooldown.js';
31
32
  const defaultDeps = {
32
- isInSpawnCooldown,
33
+ // The teardown streak, whatever the spawn runs on (the listener reads the provider window with it).
34
+ isInSpawnCooldown: isNextSpawnInTeardownCooldown,
33
35
  recordFocusTeardown,
34
36
  };
35
37
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"guards.js","sourceRoot":"","sources":["../../src/spawn/guards.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,mEAAmE;AACnE,gBAAgB;AAEhB;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAQ7E,MAAM,WAAW,GAA0B;IACzC,iBAAiB;IACjB,mBAAmB;CACpB,CAAC;AAEF;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CACpC,OAAe,EACf,OAA8B,WAAW;IAEzC,OAAO,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;AACzC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,yBAAyB,CACvC,OAAe,EACf,OAA8B,WAAW;IAEzC,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;AACpC,CAAC"}
1
+ {"version":3,"file":"guards.js","sourceRoot":"","sources":["../../src/spawn/guards.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,mEAAmE;AACnE,gBAAgB;AAEhB;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,6BAA6B,EAAE,MAAM,0BAA0B,CAAC;AAQzE,MAAM,WAAW,GAA0B;IACzC,oGAAoG;IACpG,iBAAiB,EAAE,6BAA6B;IAChD,mBAAmB;CACpB,CAAC;AAEF;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CACpC,OAAe,EACf,OAA8B,WAAW;IAEzC,OAAO,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;AACzC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,yBAAyB,CACvC,OAAe,EACf,OAA8B,WAAW;IAEzC,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;AACpC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/spawn/helpers.ts"],"names":[],"mappings":"AAYA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE5C,OAAO,KAAK,EACV,YAAY,EACZ,cAAc,EACf,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,EAAE,cAAc,EAAgB,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAG5D,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EACL,cAAc,EAAE,gBAAgB,EAEjC,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAO9D,OAAO,EAAE,gCAAgC,EAAE,MAAM,iCAAiC,CAAC;AACnF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAKvE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AAQzE,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC;IACtD,YAAY,EAAE,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC;IACnD,WAAW,EAAE,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC;CACnD;AAED,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,YAAY,CAAC;IACnB,OAAO,EAAE,YAAY,CAAC;IACtB,SAAS,EAAE,cAAc,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,cAAc,CAAC;CACtB;AAED,MAAM,WAAW,0BAA0B;IACzC,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,eAAe,EAAE,eAAe,CAAC;CAClC;AAED,MAAM,WAAW,4BAA4B;IAC3C,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,cAAc,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,YAAY,CAAC;IACrB,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,eAAe,EAAE,eAAe,CAAC;IACjC,IAAI,EAAE,cAAc,CAAC;IACrB,MAAM,EAAE,oBAAoB,CAAC;IAC7B,QAAQ,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAClC,cAAc,EAAE,CAAC,MAAM,EAAE,oBAAoB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACjE;AAED;;;;;GAKG;AACH,MAAM,WAAW,0BAA0B;IACzC,cAAc,CAAC,EAAE,OAAO,cAAc,CAAC;IACvC,gBAAgB,CAAC,EAAE,OAAO,gBAAgB,CAAC;IAC3C,aAAa,CAAC,EAAE,OAAO,aAAa,CAAC;IACrC,cAAc,CAAC,EAAE,OAAO,cAAc,CAAC;IACvC,oBAAoB,CAAC,EAAE,OAAO,oBAAoB,CAAC;IACnD,mFAAmF;IACnF,0BAA0B,CAAC,EAAE,OAAO,0BAA0B,CAAC;CAChE;AAuBD;;;;GAIG;AACH,wBAAgB,iCAAiC,CAC/C,SAAS,EAAE,cAAc,EACzB,OAAO,EAAE,MAAM,EACf,WAAW,GAAE,OAAO,gCAAmE,GACtF,OAAO,CAWT;AAED,4EAA4E;AAC5E,wBAAgB,4BAA4B,CAC1C,SAAS,EAAE,cAAc,EACzB,OAAO,EAAE,MAAM,EACf,WAAW,CAAC,EAAE,OAAO,gCAAgC,GACpD,OAAO,CAGT;AAED,iFAAiF;AACjF,wBAAgB,6BAA6B,CAC3C,SAAS,EAAE,cAAc,EACzB,OAAO,EAAE,MAAM,EACf,WAAW,CAAC,EAAE,OAAO,gCAAgC,GACpD,OAAO,CAGT;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,cAAc,CAuBzG;AA0ED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,0BAA0B,GAAG,0BAA0B,CA2DnG;AA0CD;;;;;GAKG;AACH,wBAAsB,sBAAsB,CAAC,GAAG,EAAE,4BAA4B,EAAE,IAAI,GAAE,0BAA+B,GAAG,OAAO,CAAC,IAAI,CAAC,CAqHpI"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/spawn/helpers.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  // PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
2
2
  // Pinned by: packages/daemon/src/completion/shutdown-attribution.test.ts,
3
3
  // packages/daemon/src/completion/team-teardown-kills-process-group.test.ts,
4
+ // packages/daemon/src/spawn/finished-lead-not-woken.test.ts,
4
5
  // packages/daemon/src/spawn/helpers-activity-wiring.test.ts,
5
6
  // packages/daemon/src/spawn/progress-measure-wiring.test.ts,
6
7
  // packages/daemon/src/spawn/resume-failure-sigterm-exclusion.test.ts,
@@ -22,8 +23,11 @@ import { handleTeamCompletion } from '../completion/index.js';
22
23
  import { isSigtermExit, classifyTeamExit } from '../completion/exit-classification.js';
23
24
  import { formatTeamExitLine } from '../completion/shutdown-attribution.js';
24
25
  import { parseRateLimitInfo } from './rate-limit.js';
26
+ import { noteCodexTeamLimit } from './codex-limit.js';
27
+ import { codexToolActivityEvent, noteCodexDelegation } from '../completion/codex-activity.js';
25
28
  import { reengageOnIdleResult } from './lead-continuation.js';
26
29
  import { recordRespawnCooldown } from './spawn-cooldown.js';
30
+ import { CLAUDE_PROVIDER } from './provider-window.js';
27
31
  import { stampSessionStarted } from '../session/session-stamp.js';
28
32
  import { acknowledgePendingSpawnDirective } from '../directive/directive-queue.js';
29
33
  import { shouldFailClosedForUndeliveredTools, mcpToolsUndeliveredSessionUpdate, } from '../backends/codex/codex-mcp-proxy.js';
@@ -127,6 +131,13 @@ function handleTeamAgentEvent(event, ctx) {
127
131
  // segment so pass grouping is exact (INJ-A/INJ-B).
128
132
  stampSessionStarted({ teamState, focusId, focusName, engineId, eventSessionId: event.sessionId });
129
133
  break;
134
+ case 'tool_activity':
135
+ // Inspection evidence for the review-exit gate (reviewInspected): every
136
+ // tool the pass invokes -- a Claude tool call, a Codex MCP call, shell
137
+ // command, file change or search (completion/codex-activity.ts). An idle
138
+ // resume that only emits prose leaves it at 0: a blind gate.
139
+ teamState.toolActivityCount = (teamState.toolActivityCount ?? 0) + 1;
140
+ break;
130
141
  case 'subagent_activity':
131
142
  if (event.phase === 'spawned') {
132
143
  log.info(` [focus-team] Worker spawned: ${event.agentName}`);
@@ -164,6 +175,20 @@ function handleTeamAgentEvent(event, ctx) {
164
175
  break;
165
176
  }
166
177
  }
178
+ /**
179
+ * Read one raw line of a Codex team's stream for what the daemon-core parser
180
+ * does not surface: a usage or rate limit (spawn/codex-limit.ts), a silent
181
+ * delegation opening or closing, and a completed shell / file-change / search
182
+ * item, which is handled as the tool_activity event a Claude tool call is
183
+ * (completion/codex-activity.ts).
184
+ */
185
+ function handleCodexRawLine(raw, ctx) {
186
+ noteCodexTeamLimit(ctx.teamState, raw, ctx.focusName);
187
+ noteCodexDelegation(ctx.focusId, raw);
188
+ const toolEvent = codexToolActivityEvent(raw);
189
+ if (toolEvent)
190
+ handleTeamAgentEvent(toolEvent, ctx);
191
+ }
167
192
  /**
168
193
  * Attach stream parser, completion detector, activity tracker, and event
169
194
  * handlers to the spawned team lead process.
@@ -203,6 +228,10 @@ export function attachStreamHandlers(params) {
203
228
  // Capture it on the team so the spawn cooldown can schedule a reset-aware
204
229
  // resume at teardown/close instead of a blind cooldown (spawn/rate-limit.ts,
205
230
  // spawn/spawn-cooldown.ts).
231
+ // Codex facts the neutral stream does not carry (limits, shell/file/search
232
+ // work, silent delegations). Claude's typed rate-limit event is read below.
233
+ if (backend.id === 'codex')
234
+ handleCodexRawLine(raw, { teamState, focusId, focusName, engineId: backend.id });
206
235
  const rl = parseRateLimitInfo(raw);
207
236
  if (rl && rl.status === 'rejected' && rl.resetsAtMs != null) {
208
237
  teamState.rateLimitResetAtMs = rl.resetsAtMs;
@@ -354,7 +383,7 @@ export async function handleTeamProcessClose(ctx, deps = {}) {
354
383
  code, signal, teamPhase: teamState.phase, shutdownReason: teamState.shutdownReason,
355
384
  });
356
385
  recordRespawnCooldown({
357
- focusId,
386
+ focusId, provider: teamState.provider ?? CLAUDE_PROVIDER,
358
387
  disposition: exitClass.disposition,
359
388
  rateLimitResetAtMs: teamState.rateLimitResetAtMs,
360
389
  });
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/spawn/helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/spawn/helpers.ts"],"names":[],"mappings":"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"}
@@ -17,16 +17,18 @@
17
17
  *
18
18
  * @module spawn/idle-work-stamp
19
19
  */
20
- import type { FocusTeamState, FocusDeliveryInfo } from '../types/index.js';
20
+ import type { FocusTeamState, FocusDeliveryInfo, FocusIssueInfo } from '../types/index.js';
21
21
  /**
22
22
  * Dependencies for the stamp, injectable for tests. Defaults read the focus's
23
- * deliveries from the API and use the real clock. isStatusAgentActionable is the
24
- * SAME predicate team-lifecycle.ts uses for "the team still has work" -- imported
25
- * directly (pure) rather than injected, so a test drives it through delivery
26
- * fixtures with real statuses.
23
+ * deliveries + issues from the API and use the real clock. The work fact itself
24
+ * is deliveriesWithTeamWork (focus/team-actionable-work.ts) -- the SAME
25
+ * predicate the team exit and the spawn gate read -- imported directly (pure)
26
+ * rather than injected, so a test drives it through real delivery + issue
27
+ * fixtures.
27
28
  */
28
29
  export interface IdleWorkStampDeps {
29
30
  getFocusDeliveries: (focusId: string) => Promise<FocusDeliveryInfo[]>;
31
+ getFocusIssues: (focusId: string) => Promise<FocusIssueInfo[]>;
30
32
  now: () => number;
31
33
  }
32
34
  /**
@@ -38,8 +40,12 @@ export interface IdleWorkStampDeps {
38
40
  * Gating (all three must hold to stamp):
39
41
  * - the result is NOT an error (an error is owned by errorResultAt in
40
42
  * spawn/helpers.ts; the two are distinct signals and an error never stamps here), AND
41
- * - the focus has at least one agent-actionable delivery (a terminal focus is
42
- * genuinely idle -- stamping it would mislabel a done team as parked).
43
+ * - the focus has team work: a delivery holding an open work issue, or a
44
+ * planning delivery to scope (deliveriesWithTeamWork). A delivery's STATUS
45
+ * is not work: a coding delivery whose every issue is Done waits on the
46
+ * daemon's advance, and waking its lead named nothing it could do (Tinker
47
+ * Tailor, 2026-09-25 -- the lead escalated to a human for a status the
48
+ * daemon owns). Stamping a team with no work would mislabel it as parked.
43
49
  *
44
50
  * Returns the outstanding delivery ids it stamped (empty array when nothing was
45
51
  * stamped). Safe to call unconditionally from the result handler.
@@ -1 +1 @@
1
- {"version":3,"file":"idle-work-stamp.d.ts","sourceRoot":"","sources":["../../src/spawn/idle-work-stamp.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAO3E;;;;;;GAMG;AACH,MAAM,WAAW,iBAAiB;IAChC,kBAAkB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;IACtE,GAAG,EAAE,MAAM,MAAM,CAAC;CACnB;AAOD;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,0BAA0B,CAC9C,IAAI,EAAE;IAAE,SAAS,EAAE,cAAc,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,EACzF,IAAI,GAAE,iBAA+B,GACpC,OAAO,CAAC,MAAM,EAAE,CAAC,CAuBnB"}
1
+ {"version":3,"file":"idle-work-stamp.d.ts","sourceRoot":"","sources":["../../src/spawn/idle-work-stamp.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAW3F;;;;;;;GAOG;AACH,MAAM,WAAW,iBAAiB;IAChC,kBAAkB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;IACtE,cAAc,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;IAC/D,GAAG,EAAE,MAAM,MAAM,CAAC;CACnB;AAQD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,0BAA0B,CAC9C,IAAI,EAAE;IAAE,SAAS,EAAE,cAAc,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,EACzF,IAAI,GAAE,iBAA+B,GACpC,OAAO,CAAC,MAAM,EAAE,CAAC,CA4BnB"}
@@ -1,12 +1,14 @@
1
1
  // PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
2
2
  // Pinned by: packages/daemon/src/spawn/idle-work-stamp.test.ts
3
3
  // PINNED-BY-END
4
- import { getFocusDeliveries as defaultGetFocusDeliveries } from '../queries/focuses.js';
5
- import { isStatusAgentActionable } from '../workflow/stage-classifier.js';
4
+ import { getFocusDeliveries as defaultGetFocusDeliveries, getFocusIssues as defaultGetFocusIssues, } from '../queries/focuses.js';
5
+ import { deliveriesWithTeamWork } from '../focus/team-actionable-work.js';
6
+ import { armFactsFromTeamState } from '../focus/recorded-new-intent.js';
6
7
  import { createLogger } from '../shell/log.js';
7
8
  const log = createLogger({ module: 'focus-executor' });
8
9
  const defaultDeps = {
9
10
  getFocusDeliveries: defaultGetFocusDeliveries,
11
+ getFocusIssues: defaultGetFocusIssues,
10
12
  now: () => Date.now(),
11
13
  };
12
14
  /**
@@ -18,8 +20,12 @@ const defaultDeps = {
18
20
  * Gating (all three must hold to stamp):
19
21
  * - the result is NOT an error (an error is owned by errorResultAt in
20
22
  * spawn/helpers.ts; the two are distinct signals and an error never stamps here), AND
21
- * - the focus has at least one agent-actionable delivery (a terminal focus is
22
- * genuinely idle -- stamping it would mislabel a done team as parked).
23
+ * - the focus has team work: a delivery holding an open work issue, or a
24
+ * planning delivery to scope (deliveriesWithTeamWork). A delivery's STATUS
25
+ * is not work: a coding delivery whose every issue is Done waits on the
26
+ * daemon's advance, and waking its lead named nothing it could do (Tinker
27
+ * Tailor, 2026-09-25 -- the lead escalated to a human for a status the
28
+ * daemon owns). Stamping a team with no work would mislabel it as parked.
23
29
  *
24
30
  * Returns the outstanding delivery ids it stamped (empty array when nothing was
25
31
  * stamped). Safe to call unconditionally from the result handler.
@@ -29,18 +35,23 @@ export async function stampIdleWithWorkRemaining(args, deps = defaultDeps) {
29
35
  // An error result is the errorResultAt path's business, never this stamp's.
30
36
  if (isError)
31
37
  return [];
32
- const deliveries = await deps.getFocusDeliveries(focusId);
33
- const outstanding = deliveries
34
- .filter((d) => isStatusAgentActionable(d.executionStatus ?? ''))
35
- .map((d) => d.id);
36
- // Every delivery terminal -> the lead legitimately has nothing to do; do NOT
37
- // stamp (a stamp would mislabel a genuinely-idle team as parked-with-work).
38
+ const [deliveries, issues] = await Promise.all([
39
+ deps.getFocusDeliveries(focusId),
40
+ deps.getFocusIssues(focusId),
41
+ ]);
42
+ // A read-only focus is an audit whose planning awaits ratification, not the team.
43
+ const outstanding = deliveriesWithTeamWork(deliveries, issues, {
44
+ armFacts: armFactsFromTeamState(teamState),
45
+ planningIsWork: !teamState.readOnly,
46
+ }).map((d) => d.id);
47
+ // No team work -> the lead legitimately has nothing to do; do NOT stamp (a
48
+ // stamp would mislabel a genuinely-idle team as parked-with-work).
38
49
  if (outstanding.length === 0)
39
50
  return [];
40
51
  teamState.idleWithWorkRemainingAt = deps.now();
41
52
  teamState.idleOutstandingDeliveryIds = outstanding;
42
53
  log.warn(`[focus-executor] Lead for "${focusName}" returned a SUCCESS result while ` +
43
- `${outstanding.length} delivery(ies) remain agent-actionable -- stamping ` +
54
+ `${outstanding.length} delivery(ies) hold open work -- stamping ` +
44
55
  `idle-with-work-remaining (the lead parked with work left, it is not done).`);
45
56
  return outstanding;
46
57
  }
@@ -1 +1 @@
1
- {"version":3,"file":"idle-work-stamp.js","sourceRoot":"","sources":["../../src/spawn/idle-work-stamp.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,+DAA+D;AAC/D,gBAAgB;AAuBhB,OAAO,EAAE,kBAAkB,IAAI,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AACxF,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,MAAM,GAAG,GAAG,YAAY,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAC;AAcvD,MAAM,WAAW,GAAsB;IACrC,kBAAkB,EAAE,yBAAyB;IAC7C,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;CACtB,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,IAAyF,EACzF,OAA0B,WAAW;IAErC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IAExD,4EAA4E;IAC5E,IAAI,OAAO;QAAE,OAAO,EAAE,CAAC;IAEvB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAC1D,MAAM,WAAW,GAAG,UAAU;SAC3B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,uBAAuB,CAAC,CAAC,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC;SAC/D,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAEpB,6EAA6E;IAC7E,4EAA4E;IAC5E,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAExC,SAAS,CAAC,uBAAuB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC/C,SAAS,CAAC,0BAA0B,GAAG,WAAW,CAAC;IACnD,GAAG,CAAC,IAAI,CACN,8BAA8B,SAAS,oCAAoC;QACzE,GAAG,WAAW,CAAC,MAAM,qDAAqD;QAC1E,4EAA4E,CAC/E,CAAC;IACF,OAAO,WAAW,CAAC;AACrB,CAAC"}
1
+ {"version":3,"file":"idle-work-stamp.js","sourceRoot":"","sources":["../../src/spawn/idle-work-stamp.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,+DAA+D;AAC/D,gBAAgB;AAuBhB,OAAO,EACL,kBAAkB,IAAI,yBAAyB,EAC/C,cAAc,IAAI,qBAAqB,GACxC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,MAAM,GAAG,GAAG,YAAY,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAC;AAgBvD,MAAM,WAAW,GAAsB;IACrC,kBAAkB,EAAE,yBAAyB;IAC7C,cAAc,EAAE,qBAAqB;IACrC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;CACtB,CAAC;AAEF;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,IAAyF,EACzF,OAA0B,WAAW;IAErC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IAExD,4EAA4E;IAC5E,IAAI,OAAO;QAAE,OAAO,EAAE,CAAC;IAEvB,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC7C,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC;QAChC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;KAC7B,CAAC,CAAC;IACH,kFAAkF;IAClF,MAAM,WAAW,GAAG,sBAAsB,CAAC,UAAU,EAAE,MAAM,EAAE;QAC7D,QAAQ,EAAE,qBAAqB,CAAC,SAAS,CAAC;QAC1C,cAAc,EAAE,CAAC,SAAS,CAAC,QAAQ;KACpC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAEpB,2EAA2E;IAC3E,mEAAmE;IACnE,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAExC,SAAS,CAAC,uBAAuB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC/C,SAAS,CAAC,0BAA0B,GAAG,WAAW,CAAC;IACnD,GAAG,CAAC,IAAI,CACN,8BAA8B,SAAS,oCAAoC;QACzE,GAAG,WAAW,CAAC,MAAM,4CAA4C;QACjE,4EAA4E,CAC/E,CAAC;IACF,OAAO,WAAW,CAAC;AACrB,CAAC"}
@@ -26,4 +26,5 @@ export { setupTeamLogStreams, attachStreamHandlers, handleTeamProcessClose, } fr
26
26
  export type { TeamLogStreams, AttachStreamHandlersParams, AttachStreamHandlersResult, HandleTeamProcessCloseParams, } from './helpers.js';
27
27
  export { shouldSkipPendingSpawn, recordPendingSpawnAttempt, } from './guards.js';
28
28
  export type { PendingSpawnGuardDeps } from './guards.js';
29
+ export { isNextSpawnInCooldown, type NextSpawnRoute } from './next-spawn-cooldown.js';
29
30
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/spawn/index.ts"],"names":[],"mappings":"AAKA;;;;;;;;;;;;;;;;GAgBG;AAKH,OAAO,EACL,YAAY,EACZ,oBAAoB,EACpB,eAAe,EACf,mBAAmB,EACnB,cAAc,GACf,MAAM,YAAY,CAAC;AACpB,YAAY,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAOtE,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,YAAY,EACV,cAAc,EACd,mBAAmB,EACnB,qBAAqB,GACtB,MAAM,gBAAgB,CAAC;AAMxB,OAAO,EACL,WAAW,EACX,uBAAuB,EACvB,cAAc,EACd,cAAc,GACf,MAAM,4BAA4B,CAAC;AACpC,YAAY,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AACvE,YAAY,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAGpD,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,cAAc,CAAC;AACtB,YAAY,EACV,cAAc,EACd,0BAA0B,EAC1B,0BAA0B,EAC1B,4BAA4B,GAC7B,MAAM,cAAc,CAAC;AAGtB,OAAO,EACL,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/spawn/index.ts"],"names":[],"mappings":"AAKA;;;;;;;;;;;;;;;;GAgBG;AAKH,OAAO,EACL,YAAY,EACZ,oBAAoB,EACpB,eAAe,EACf,mBAAmB,EACnB,cAAc,GACf,MAAM,YAAY,CAAC;AACpB,YAAY,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAOtE,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,YAAY,EACV,cAAc,EACd,mBAAmB,EACnB,qBAAqB,GACtB,MAAM,gBAAgB,CAAC;AAMxB,OAAO,EACL,WAAW,EACX,uBAAuB,EACvB,cAAc,EACd,cAAc,GACf,MAAM,4BAA4B,CAAC;AACpC,YAAY,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AACvE,YAAY,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAGpD,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,cAAc,CAAC;AACtB,YAAY,EACV,cAAc,EACd,0BAA0B,EAC1B,0BAA0B,EAC1B,4BAA4B,GAC7B,MAAM,cAAc,CAAC;AAGtB,OAAO,EACL,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,KAAK,cAAc,EAAE,MAAM,0BAA0B,CAAC"}
@@ -38,4 +38,5 @@ export { getGovernor, generateFocusBranchName, buildAgentArgs, spawnFocusTeam, }
38
38
  export { setupTeamLogStreams, attachStreamHandlers, handleTeamProcessClose, } from './helpers.js';
39
39
  // ── Pending-spawn guard (legacy ./pending-spawn-guard.js surface) ────────────
40
40
  export { shouldSkipPendingSpawn, recordPendingSpawnAttempt, } from './guards.js';
41
+ export { isNextSpawnInCooldown } from './next-spawn-cooldown.js';
41
42
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/spawn/index.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,+DAA+D;AAC/D,yDAAyD;AACzD,gBAAgB;AAEhB;;;;;;;;;;;;;;;;GAgBG;AAEH,gFAAgF;AAChF,gFAAgF;AAChF,8EAA8E;AAC9E,OAAO,EACL,YAAY,EACZ,oBAAoB,EACpB,eAAe,EACf,mBAAmB,EACnB,cAAc,GACf,MAAM,YAAY,CAAC;AAGpB,gFAAgF;AAChF,+EAA+E;AAC/E,gFAAgF;AAChF,6EAA6E;AAC7E,yCAAyC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAOjD,gFAAgF;AAChF,gFAAgF;AAChF,+EAA+E;AAC/E,iCAAiC;AACjC,OAAO,EACL,WAAW,EACX,uBAAuB,EACvB,cAAc,EACd,cAAc,GACf,MAAM,4BAA4B,CAAC;AAIpC,gFAAgF;AAChF,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,cAAc,CAAC;AAQtB,gFAAgF;AAChF,OAAO,EACL,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/spawn/index.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,+DAA+D;AAC/D,yDAAyD;AACzD,gBAAgB;AAEhB;;;;;;;;;;;;;;;;GAgBG;AAEH,gFAAgF;AAChF,gFAAgF;AAChF,8EAA8E;AAC9E,OAAO,EACL,YAAY,EACZ,oBAAoB,EACpB,eAAe,EACf,mBAAmB,EACnB,cAAc,GACf,MAAM,YAAY,CAAC;AAGpB,gFAAgF;AAChF,+EAA+E;AAC/E,gFAAgF;AAChF,6EAA6E;AAC7E,yCAAyC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAOjD,gFAAgF;AAChF,gFAAgF;AAChF,+EAA+E;AAC/E,iCAAiC;AACjC,OAAO,EACL,WAAW,EACX,uBAAuB,EACvB,cAAc,EACd,cAAc,GACf,MAAM,4BAA4B,CAAC;AAIpC,gFAAgF;AAChF,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,cAAc,CAAC;AAQtB,gFAAgF;AAChF,OAAO,EACL,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,qBAAqB,EAAuB,MAAM,0BAA0B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"lead-continuation.d.ts","sourceRoot":"","sources":["../../src/spawn/lead-continuation.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAoB7G;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAC/B,kBAAkB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;IACtE,cAAc,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;IAC/D,WAAW,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;IACtC,WAAW,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC;IAC3D,sBAAsB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAClD,oFAAoF;IACpF,qBAAqB,EAAE,MAAM,MAAM,CAAC;IACpC;;;;OAIG;IACH,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,iBAAiB,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,KAAK,gBAAgB,CAAC;IAC/G,wGAAwG;IACxG,WAAW,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC;IACzD,GAAG,EAAE,MAAM,MAAM,CAAC;CACnB;AAeD;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAC3B,kBAAkB,GAClB,UAAU,GACV,cAAc,GACd,kBAAkB,GAClB,cAAc,GACd,MAAM,CAAC;AAsCX;;;;;;;GAOG;AACH,wBAAsB,oBAAoB,CACxC,IAAI,EAAE;IAAE,SAAS,EAAE,cAAc,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,EACzF,IAAI,GAAE,gBAA8B,GACnC,OAAO,CAAC,mBAAmB,CAAC,CAuF9B"}
1
+ {"version":3,"file":"lead-continuation.d.ts","sourceRoot":"","sources":["../../src/spawn/lead-continuation.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAmB7G;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAC/B,kBAAkB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;IACtE,cAAc,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;IAC/D,WAAW,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;IACtC,WAAW,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC;IAC3D,sBAAsB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAClD,oFAAoF;IACpF,qBAAqB,EAAE,MAAM,MAAM,CAAC;IACpC;;;;OAIG;IACH,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,iBAAiB,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,KAAK,gBAAgB,CAAC;IAC/G,wGAAwG;IACxG,WAAW,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC;IACzD,GAAG,EAAE,MAAM,MAAM,CAAC;CACnB;AAeD;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAC3B,kBAAkB,GAClB,UAAU,GACV,cAAc,GACd,kBAAkB,GAClB,cAAc,GACd,MAAM,CAAC;AAsCX;;;;;;;GAOG;AACH,wBAAsB,oBAAoB,CACxC,IAAI,EAAE;IAAE,SAAS,EAAE,cAAc,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,EACzF,IAAI,GAAE,gBAA8B,GACnC,OAAO,CAAC,mBAAmB,CAAC,CA0F9B"}