visionclaw 0.1.219-dev.codex-issue-2805-worker-runtime.2 → 0.1.219-dev.codex-fix-2941-activity-foreground.1

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 (313) hide show
  1. package/dist/agent/api-proxy.d.ts +16 -0
  2. package/dist/agent/api-proxy.d.ts.map +1 -1
  3. package/dist/agent/api-proxy.js +8 -9
  4. package/dist/agent/api-proxy.js.map +1 -1
  5. package/dist/agent/browser-launcher.d.ts +0 -3
  6. package/dist/agent/browser-launcher.d.ts.map +1 -1
  7. package/dist/agent/browser-launcher.js +43 -101
  8. package/dist/agent/browser-launcher.js.map +1 -1
  9. package/dist/agent/coding-conventions.d.ts +3 -2
  10. package/dist/agent/coding-conventions.d.ts.map +1 -1
  11. package/dist/agent/coding-conventions.js +8 -7
  12. package/dist/agent/coding-conventions.js.map +1 -1
  13. package/dist/agent/command-handlers.d.ts.map +1 -1
  14. package/dist/agent/command-handlers.js +16 -4
  15. package/dist/agent/command-handlers.js.map +1 -1
  16. package/dist/agent/context-action-restart-fallback.d.ts.map +1 -1
  17. package/dist/agent/context-action-restart-fallback.js +3 -9
  18. package/dist/agent/context-action-restart-fallback.js.map +1 -1
  19. package/dist/agent/context-refresh.d.ts.map +1 -1
  20. package/dist/agent/context-refresh.js +7 -0
  21. package/dist/agent/context-refresh.js.map +1 -1
  22. package/dist/agent/context.d.ts.map +1 -1
  23. package/dist/agent/context.js +8 -6
  24. package/dist/agent/context.js.map +1 -1
  25. package/dist/agent/engine-fallback.d.ts +35 -0
  26. package/dist/agent/engine-fallback.d.ts.map +1 -1
  27. package/dist/agent/engine-fallback.js +3 -4
  28. package/dist/agent/engine-fallback.js.map +1 -1
  29. package/dist/agent/engines/browser-tool-policy.d.ts +1 -12
  30. package/dist/agent/engines/browser-tool-policy.d.ts.map +1 -1
  31. package/dist/agent/engines/browser-tool-policy.js +2 -17
  32. package/dist/agent/engines/browser-tool-policy.js.map +1 -1
  33. package/dist/agent/engines/claude/session.d.ts +0 -1
  34. package/dist/agent/engines/claude/session.d.ts.map +1 -1
  35. package/dist/agent/engines/claude/session.js +36 -21
  36. package/dist/agent/engines/claude/session.js.map +1 -1
  37. package/dist/agent/engines/pi/tools.d.ts.map +1 -1
  38. package/dist/agent/engines/pi/tools.js +10 -2
  39. package/dist/agent/engines/pi/tools.js.map +1 -1
  40. package/dist/agent/engines/pi-coding/session.d.ts +0 -3
  41. package/dist/agent/engines/pi-coding/session.d.ts.map +1 -1
  42. package/dist/agent/engines/pi-coding/session.js +22 -19
  43. package/dist/agent/engines/pi-coding/session.js.map +1 -1
  44. package/dist/agent/engines/session-types.d.ts +0 -6
  45. package/dist/agent/engines/session-types.d.ts.map +1 -1
  46. package/dist/agent/external-context/runtime.d.ts.map +1 -1
  47. package/dist/agent/external-context/runtime.js +14 -15
  48. package/dist/agent/external-context/runtime.js.map +1 -1
  49. package/dist/agent/fast-responder.d.ts +20 -4
  50. package/dist/agent/fast-responder.d.ts.map +1 -1
  51. package/dist/agent/fast-responder.js +39 -9
  52. package/dist/agent/fast-responder.js.map +1 -1
  53. package/dist/agent/interrupt-handler.d.ts +18 -4
  54. package/dist/agent/interrupt-handler.d.ts.map +1 -1
  55. package/dist/agent/interrupt-handler.js +284 -49
  56. package/dist/agent/interrupt-handler.js.map +1 -1
  57. package/dist/agent/lab-run-system-prompt.d.ts.map +1 -1
  58. package/dist/agent/lab-run-system-prompt.js +0 -3
  59. package/dist/agent/lab-run-system-prompt.js.map +1 -1
  60. package/dist/agent/lifecycle-trace.d.ts.map +1 -1
  61. package/dist/agent/lifecycle-trace.js +5 -6
  62. package/dist/agent/lifecycle-trace.js.map +1 -1
  63. package/dist/agent/loop.d.ts +1 -4
  64. package/dist/agent/loop.d.ts.map +1 -1
  65. package/dist/agent/loop.js +129 -105
  66. package/dist/agent/loop.js.map +1 -1
  67. package/dist/agent/memory-protocol.d.ts +2 -2
  68. package/dist/agent/memory-protocol.d.ts.map +1 -1
  69. package/dist/agent/memory-protocol.js +15 -3
  70. package/dist/agent/memory-protocol.js.map +1 -1
  71. package/dist/agent/memory-store.d.ts.map +1 -1
  72. package/dist/agent/memory-store.js +1 -11
  73. package/dist/agent/memory-store.js.map +1 -1
  74. package/dist/agent/model-provider.d.ts +0 -2
  75. package/dist/agent/model-provider.d.ts.map +1 -1
  76. package/dist/agent/model-provider.js +25 -31
  77. package/dist/agent/model-provider.js.map +1 -1
  78. package/dist/agent/product-identity.d.ts +4 -5
  79. package/dist/agent/product-identity.d.ts.map +1 -1
  80. package/dist/agent/product-identity.js +6 -7
  81. package/dist/agent/product-identity.js.map +1 -1
  82. package/dist/agent/public-activity.d.ts +1 -1
  83. package/dist/agent/public-activity.d.ts.map +1 -1
  84. package/dist/agent/public-activity.js.map +1 -1
  85. package/dist/agent/reply-watchdog.d.ts +3 -5
  86. package/dist/agent/reply-watchdog.d.ts.map +1 -1
  87. package/dist/agent/reply-watchdog.js +4 -6
  88. package/dist/agent/reply-watchdog.js.map +1 -1
  89. package/dist/agent/session-manager.d.ts +0 -5
  90. package/dist/agent/session-manager.d.ts.map +1 -1
  91. package/dist/agent/session-manager.js +0 -7
  92. package/dist/agent/session-manager.js.map +1 -1
  93. package/dist/agent/state.d.ts +0 -7
  94. package/dist/agent/state.d.ts.map +1 -1
  95. package/dist/agent/state.js +11 -21
  96. package/dist/agent/state.js.map +1 -1
  97. package/dist/agent/stream-handler.d.ts.map +1 -1
  98. package/dist/agent/stream-handler.js +17 -0
  99. package/dist/agent/stream-handler.js.map +1 -1
  100. package/dist/agent/system-prompt.d.ts.map +1 -1
  101. package/dist/agent/system-prompt.js +6 -10
  102. package/dist/agent/system-prompt.js.map +1 -1
  103. package/dist/agent/transcript/transcript-indexer.d.ts +28 -0
  104. package/dist/agent/transcript/transcript-indexer.d.ts.map +1 -1
  105. package/dist/agent/transcript/transcript-indexer.js +57 -58
  106. package/dist/agent/transcript/transcript-indexer.js.map +1 -1
  107. package/dist/agent/usage/usage-report-queue.d.ts.map +1 -1
  108. package/dist/agent/usage/usage-report-queue.js +52 -53
  109. package/dist/agent/usage/usage-report-queue.js.map +1 -1
  110. package/dist/agent/wake-cycle-runner.d.ts +8 -7
  111. package/dist/agent/wake-cycle-runner.d.ts.map +1 -1
  112. package/dist/agent/wake-cycle-runner.js +66 -105
  113. package/dist/agent/wake-cycle-runner.js.map +1 -1
  114. package/dist/builtin-skills/owner-manual/SKILL.md +2 -2
  115. package/dist/calendar/occurrence-ownership.d.ts.map +1 -1
  116. package/dist/calendar/occurrence-ownership.js +5 -6
  117. package/dist/calendar/occurrence-ownership.js.map +1 -1
  118. package/dist/calendar/scheduler.d.ts.map +1 -1
  119. package/dist/calendar/scheduler.js +3 -4
  120. package/dist/calendar/scheduler.js.map +1 -1
  121. package/dist/channels/interface.d.ts +2 -8
  122. package/dist/channels/interface.d.ts.map +1 -1
  123. package/dist/channels/interface.js +1 -8
  124. package/dist/channels/interface.js.map +1 -1
  125. package/dist/channels/manager.d.ts.map +1 -1
  126. package/dist/channels/manager.js +0 -2
  127. package/dist/channels/manager.js.map +1 -1
  128. package/dist/channels/qq-status.d.ts.map +1 -1
  129. package/dist/channels/qq-status.js +1 -0
  130. package/dist/channels/qq-status.js.map +1 -1
  131. package/dist/channels/queue.d.ts.map +1 -1
  132. package/dist/channels/queue.js +0 -8
  133. package/dist/channels/queue.js.map +1 -1
  134. package/dist/channels/telegram-status.d.ts.map +1 -1
  135. package/dist/channels/telegram-status.js +2 -0
  136. package/dist/channels/telegram-status.js.map +1 -1
  137. package/dist/channels/tui.d.ts +2 -2
  138. package/dist/channels/tui.d.ts.map +1 -1
  139. package/dist/channels/tui.js +2 -7
  140. package/dist/channels/tui.js.map +1 -1
  141. package/dist/config/index.d.ts.map +1 -1
  142. package/dist/config/index.js +15 -16
  143. package/dist/config/index.js.map +1 -1
  144. package/dist/config/types.d.ts +8 -16
  145. package/dist/config/types.d.ts.map +1 -1
  146. package/dist/config/types.js +24 -13
  147. package/dist/config/types.js.map +1 -1
  148. package/dist/email/email-route-store.d.ts.map +1 -1
  149. package/dist/email/email-route-store.js +5 -6
  150. package/dist/email/email-route-store.js.map +1 -1
  151. package/dist/i18n/messages.d.ts +0 -12
  152. package/dist/i18n/messages.d.ts.map +1 -1
  153. package/dist/i18n/messages.js +9 -21
  154. package/dist/i18n/messages.js.map +1 -1
  155. package/dist/logger.d.ts +0 -2
  156. package/dist/logger.d.ts.map +1 -1
  157. package/dist/logger.js +1 -19
  158. package/dist/logger.js.map +1 -1
  159. package/dist/threads/active-threads-store.d.ts.map +1 -1
  160. package/dist/threads/active-threads-store.js +27 -8
  161. package/dist/threads/active-threads-store.js.map +1 -1
  162. package/dist/threads/execution-host.d.ts.map +1 -1
  163. package/dist/threads/execution-host.js +0 -1
  164. package/dist/threads/execution-host.js.map +1 -1
  165. package/dist/threads/execution-scheduler.d.ts +0 -4
  166. package/dist/threads/execution-scheduler.d.ts.map +1 -1
  167. package/dist/threads/execution-scheduler.js +2 -38
  168. package/dist/threads/execution-scheduler.js.map +1 -1
  169. package/dist/threads/execution-store.d.ts +5 -20
  170. package/dist/threads/execution-store.d.ts.map +1 -1
  171. package/dist/threads/execution-store.js +8 -45
  172. package/dist/threads/execution-store.js.map +1 -1
  173. package/dist/threads/foreground-task.d.ts +6 -10
  174. package/dist/threads/foreground-task.d.ts.map +1 -1
  175. package/dist/threads/foreground-task.js +26 -34
  176. package/dist/threads/foreground-task.js.map +1 -1
  177. package/dist/threads/foreman-client.d.ts.map +1 -1
  178. package/dist/threads/foreman-client.js +1 -3
  179. package/dist/threads/foreman-client.js.map +1 -1
  180. package/dist/threads/foreman-execution.d.ts +12 -12
  181. package/dist/threads/foreman-execution.d.ts.map +1 -1
  182. package/dist/threads/foreman-execution.js +19 -30
  183. package/dist/threads/foreman-execution.js.map +1 -1
  184. package/dist/threads/foreman-host.d.ts +2 -17
  185. package/dist/threads/foreman-host.d.ts.map +1 -1
  186. package/dist/threads/foreman-host.js +59 -423
  187. package/dist/threads/foreman-host.js.map +1 -1
  188. package/dist/threads/foreman-protocol.d.ts +12 -109
  189. package/dist/threads/foreman-protocol.d.ts.map +1 -1
  190. package/dist/threads/foreman-protocol.js +15 -37
  191. package/dist/threads/foreman-protocol.js.map +1 -1
  192. package/dist/threads/foreman-store.d.ts +9 -36
  193. package/dist/threads/foreman-store.d.ts.map +1 -1
  194. package/dist/threads/foreman-store.js +19 -63
  195. package/dist/threads/foreman-store.js.map +1 -1
  196. package/dist/threads/generic-execution.d.ts +2 -2
  197. package/dist/threads/generic-execution.d.ts.map +1 -1
  198. package/dist/threads/generic-execution.js +6 -9
  199. package/dist/threads/generic-execution.js.map +1 -1
  200. package/dist/threads/ipc.d.ts +0 -3
  201. package/dist/threads/ipc.d.ts.map +1 -1
  202. package/dist/threads/ipc.js.map +1 -1
  203. package/dist/threads/relay-adapter.d.ts +2 -0
  204. package/dist/threads/relay-adapter.d.ts.map +1 -1
  205. package/dist/threads/relay-adapter.js +7 -1
  206. package/dist/threads/relay-adapter.js.map +1 -1
  207. package/dist/threads/supervisor.d.ts +51 -21
  208. package/dist/threads/supervisor.d.ts.map +1 -1
  209. package/dist/threads/supervisor.js +449 -160
  210. package/dist/threads/supervisor.js.map +1 -1
  211. package/dist/threads/task-contracts.d.ts +194 -0
  212. package/dist/threads/task-contracts.d.ts.map +1 -0
  213. package/dist/threads/task-contracts.js +82 -0
  214. package/dist/threads/task-contracts.js.map +1 -0
  215. package/dist/threads/task-sidecar.d.ts +145 -0
  216. package/dist/threads/task-sidecar.d.ts.map +1 -0
  217. package/dist/threads/task-sidecar.js +311 -0
  218. package/dist/threads/task-sidecar.js.map +1 -0
  219. package/dist/threads/task-store.d.ts +172 -0
  220. package/dist/threads/task-store.d.ts.map +1 -0
  221. package/dist/threads/task-store.js +599 -0
  222. package/dist/threads/task-store.js.map +1 -0
  223. package/dist/threads/thread-activity-controller.d.ts +7 -0
  224. package/dist/threads/thread-activity-controller.d.ts.map +1 -1
  225. package/dist/threads/thread-activity-controller.js +52 -2
  226. package/dist/threads/thread-activity-controller.js.map +1 -1
  227. package/dist/threads/thread-task-context.d.ts +40 -0
  228. package/dist/threads/thread-task-context.d.ts.map +1 -0
  229. package/dist/threads/thread-task-context.js +160 -0
  230. package/dist/threads/thread-task-context.js.map +1 -0
  231. package/dist/threads/thread-task-controller.d.ts +122 -0
  232. package/dist/threads/thread-task-controller.d.ts.map +1 -0
  233. package/dist/threads/thread-task-controller.js +276 -0
  234. package/dist/threads/thread-task-controller.js.map +1 -0
  235. package/dist/threads/thread-task-runtime.d.ts +350 -0
  236. package/dist/threads/thread-task-runtime.d.ts.map +1 -0
  237. package/dist/threads/thread-task-runtime.js +896 -0
  238. package/dist/threads/thread-task-runtime.js.map +1 -0
  239. package/dist/threads/worker-entry.d.ts.map +1 -1
  240. package/dist/threads/worker-entry.js +28 -29
  241. package/dist/threads/worker-entry.js.map +1 -1
  242. package/dist/threads/worker-execution-runtime.d.ts +2 -3
  243. package/dist/threads/worker-execution-runtime.d.ts.map +1 -1
  244. package/dist/threads/worker-execution-runtime.js +2 -5
  245. package/dist/threads/worker-execution-runtime.js.map +1 -1
  246. package/dist/tools/delegation.d.ts +2 -71
  247. package/dist/tools/delegation.d.ts.map +1 -1
  248. package/dist/tools/delegation.js +28 -62
  249. package/dist/tools/delegation.js.map +1 -1
  250. package/dist/tools/email.d.ts +1 -1
  251. package/dist/tools/execution-control.d.ts +0 -5
  252. package/dist/tools/execution-control.d.ts.map +1 -1
  253. package/dist/tools/execution-control.js +2 -9
  254. package/dist/tools/execution-control.js.map +1 -1
  255. package/dist/tools/index.d.ts.map +1 -1
  256. package/dist/tools/index.js +6 -2
  257. package/dist/tools/index.js.map +1 -1
  258. package/dist/tools/mcp-manager.d.ts +1 -1
  259. package/dist/tools/memory.d.ts +1 -1
  260. package/dist/tools/notify.d.ts +0 -2
  261. package/dist/tools/notify.d.ts.map +1 -1
  262. package/dist/tools/notify.js +5 -21
  263. package/dist/tools/notify.js.map +1 -1
  264. package/dist/tools/skill.d.ts +1 -1
  265. package/dist/tools/thread-tasks.d.ts +23 -0
  266. package/dist/tools/thread-tasks.d.ts.map +1 -0
  267. package/dist/tools/thread-tasks.js +122 -0
  268. package/dist/tools/thread-tasks.js.map +1 -0
  269. package/dist/tools/totp.d.ts +1 -1
  270. package/dist/tui/request-store.d.ts +1 -1
  271. package/dist/tui/request-store.d.ts.map +1 -1
  272. package/dist/tui/request-store.js +2 -2
  273. package/dist/tui/request-store.js.map +1 -1
  274. package/dist/tui/server.d.ts.map +1 -1
  275. package/dist/tui/server.js +2 -17
  276. package/dist/tui/server.js.map +1 -1
  277. package/dist/utils/restart.d.ts.map +1 -1
  278. package/dist/utils/restart.js +0 -6
  279. package/dist/utils/restart.js.map +1 -1
  280. package/dist-agent/bundle.cjs +2 -2
  281. package/package.json +1 -1
  282. package/dist/agent/runtime-context.d.ts +0 -27
  283. package/dist/agent/runtime-context.d.ts.map +0 -1
  284. package/dist/agent/runtime-context.js +0 -60
  285. package/dist/agent/runtime-context.js.map +0 -1
  286. package/dist/agent/runtime-disclosure-policy.d.ts +0 -6
  287. package/dist/agent/runtime-disclosure-policy.d.ts.map +0 -1
  288. package/dist/agent/runtime-disclosure-policy.js +0 -16
  289. package/dist/agent/runtime-disclosure-policy.js.map +0 -1
  290. package/dist/conversations/lazy-runtime.d.ts +0 -5
  291. package/dist/conversations/lazy-runtime.d.ts.map +0 -1
  292. package/dist/conversations/lazy-runtime.js +0 -12
  293. package/dist/conversations/lazy-runtime.js.map +0 -1
  294. package/dist/conversations/runtime.d.ts +0 -17
  295. package/dist/conversations/runtime.d.ts.map +0 -1
  296. package/dist/conversations/runtime.js +0 -92
  297. package/dist/conversations/runtime.js.map +0 -1
  298. package/dist/conversations/scheduler.d.ts +0 -57
  299. package/dist/conversations/scheduler.d.ts.map +0 -1
  300. package/dist/conversations/scheduler.js +0 -175
  301. package/dist/conversations/scheduler.js.map +0 -1
  302. package/dist/threads/foreman-business.d.ts +0 -9
  303. package/dist/threads/foreman-business.d.ts.map +0 -1
  304. package/dist/threads/foreman-business.js +0 -117
  305. package/dist/threads/foreman-business.js.map +0 -1
  306. package/dist/threads/foreman-delivery.d.ts +0 -5
  307. package/dist/threads/foreman-delivery.d.ts.map +0 -1
  308. package/dist/threads/foreman-delivery.js +0 -21
  309. package/dist/threads/foreman-delivery.js.map +0 -1
  310. package/dist/threads/task-workspace.d.ts +0 -8
  311. package/dist/threads/task-workspace.d.ts.map +0 -1
  312. package/dist/threads/task-workspace.js +0 -52
  313. package/dist/threads/task-workspace.js.map +0 -1
@@ -1,7 +1,17 @@
1
1
  /**
2
- * Host for foreground conversations and the shared background execution pool.
3
- * Chat queues run through ConversationScheduler. Only admitted executions and
4
- * LabRuns fork processes; their ledger owns recovery and confirmed stops.
2
+ * ThreadSupervisor: orchestrates worker processes for non-default business threads.
3
+ *
4
+ * Responsibilities:
5
+ * - Spawn worker processes on demand (child_process.fork)
6
+ * - Route messages to workers by threadId
7
+ * - Relay worker replies back to real channels
8
+ * - Enforce concurrency limits (maxConcurrentThreads)
9
+ * - Idle timeout & graceful worker shutdown
10
+ * - Crash detection & auto-restart
11
+ * - Force global commands (/restart, /upgrade, /subscribe, …) to the default thread
12
+ * - Engine switch (/engine): update thread.json + restart worker
13
+ * - Worker admission pause for the main process's nightly maintenance
14
+ * - Graceful supervisor shutdown: notify all workers
5
15
  */
6
16
  import { type CommandMessage } from "../channels/interface.js";
7
17
  import type { ChannelManager } from "../channels/manager.js";
@@ -9,7 +19,6 @@ import { MessageQueue } from "../channels/queue.js";
9
19
  import { type Engine, type VisionClawConfig } from "../config/types.js";
10
20
  import { type ActiveThreadInfo } from "./ipc.js";
11
21
  import { ExecutionStore, type ExecutionCaller, type ExecutionEvent, type ExecutionRecord, type SubmitPayload } from "./execution-store.js";
12
- import { type ConversationFactory } from "../conversations/scheduler.js";
13
22
  import { type ExecutionAuthority } from "./execution-authority.js";
14
23
  import { type ExecutorGroupStatus } from "./process-group.js";
15
24
  import type { ExecutionService } from "../agent/state.js";
@@ -44,8 +53,6 @@ export declare function resolveWorkerEntryPoint(): string;
44
53
  */
45
54
  export declare function parseEngineCommand(text: string): Engine | "default" | null;
46
55
  export interface ThreadSupervisorOptions {
47
- /** Override only the foreground runtime (e.g. a deterministic chat fixture). */
48
- conversationFactory?: ConversationFactory | null;
49
56
  channelManager: ChannelManager;
50
57
  messageQueue: MessageQueue;
51
58
  maxConcurrentThreads: number;
@@ -72,6 +79,7 @@ export interface ThreadSupervisorOptions {
72
79
  /** Main-process browser decision inherited by every worker. */
73
80
  browserRuntimeResolution?: BrowserRuntimeResolution;
74
81
  /** Delay before respawning a crashed worker. Default 2000ms. */
82
+ crashRestartDelayMs?: number;
75
83
  /**
76
84
  * Test seam for the per-thread durable queue. Production uses the queue.db
77
85
  * inside each thread directory; tests can provide an in-memory substitute.
@@ -102,9 +110,6 @@ export interface ThreadSupervisorOptions {
102
110
  * to; internal executions are refused. Absent when Foreman is off.
103
111
  */
104
112
  handleForemanCommand?: (threadId: string, command: ForemanCommand) => Promise<ForemanCommandResult>;
105
- handleForemanBusinessRead?: (executionId: string, command: Extract<ForemanCommand, {
106
- type: "business_read";
107
- }>, workspace: string) => Promise<ForemanCommandResult>;
108
113
  /** Signing authority for snapshots and Lab policies; one per host process by default. */
109
114
  executionAuthority?: ExecutionAuthority;
110
115
  /** Grace between a stop request and the force-kill of a worker. Default 10s. */
@@ -124,8 +129,6 @@ export interface ThreadSupervisorOptions {
124
129
  };
125
130
  }
126
131
  export declare class ThreadSupervisor {
127
- private readonly conversations;
128
- private readonly foregroundDisabled;
129
132
  private readonly channelManager;
130
133
  private readonly messageQueue;
131
134
  private readonly maxConcurrentThreads;
@@ -136,6 +139,7 @@ export declare class ThreadSupervisor {
136
139
  private readonly workerEnv;
137
140
  private readonly desktopRuntimeResolution;
138
141
  private readonly browserRuntimeResolution;
142
+ private readonly crashRestartDelayMs;
139
143
  private readonly threadQueueFactory;
140
144
  private readonly onFeedback?;
141
145
  private readonly onBusyChange?;
@@ -153,14 +157,20 @@ export declare class ThreadSupervisor {
153
157
  private readonly workers;
154
158
  /** Main-process handles for the durable queue.db owned by each thread. */
155
159
  private readonly threadQueues;
160
+ /** Crash counts must outlive WorkerState objects, which are replaced on respawn. */
161
+ private readonly crashCounts;
162
+ /** Threads waiting for their bounded crash-backoff timer. */
163
+ private readonly restartTimers;
164
+ /** Startup failures / exhausted crash budgets stay dormant until new work arrives. */
165
+ private readonly recoveryExhaustedThreads;
156
166
  /** True once shutdownAll() ran — no new workers may be spawned afterwards. */
157
167
  private stopped;
158
168
  private maintenancePaused;
169
+ private maintenanceMessages;
159
170
  /** The one execution the maintenance owner submitted under its pause. */
160
171
  private maintenanceExecutionId;
161
172
  private readonly onMaintenanceInput;
162
173
  private readonly handleForemanCommand;
163
- private readonly handleForemanBusinessRead;
164
174
  private readonly executionStore;
165
175
  private readonly executionScheduler;
166
176
  constructor(options: ThreadSupervisorOptions);
@@ -178,7 +188,22 @@ export declare class ThreadSupervisor {
178
188
  tryPauseForMaintenance(): (() => void) | null;
179
189
  /** Recover and schedule work that survived a daemon restart. */
180
190
  recoverPendingThreads(): void;
181
- /** Resume durable foreground messages without allocating a worker process. */
191
+ /**
192
+ * Whether a thread without queued messages still has a task that may
193
+ * start (#1996 PR 5). Its worker queues the resume itself once it runs:
194
+ * the supervisor only starts it, it never writes the thread's task store.
195
+ * By design (owner 10-03): a task that is not due yet is not counted;
196
+ * its due or unblock wake comes from the existing calendar / event-trigger
197
+ * messages to the thread. Thread tasks never schedule wakes.
198
+ * TODO: a worker started this way whose first pass queues nothing (gated)
199
+ * has no idle timer until its first turn, so it holds a slot until evicted.
200
+ */
201
+ private hasRunnableTasks;
202
+ /**
203
+ * Start persisted threads whenever a worker slot is available. Work remains
204
+ * in its queue.db when all slots are busy and is retried after a worker turn
205
+ * or exit, rather than being rejected or routed to the default thread.
206
+ */
182
207
  private schedulePendingThreads;
183
208
  /**
184
209
  * ThreadRouter hook. Called by ChannelManager for every inbound message whose
@@ -195,6 +220,7 @@ export declare class ThreadSupervisor {
195
220
  tryRouteMessage(msg: CommandMessage, threadId: string): boolean;
196
221
  private routeMessageInternal;
197
222
  private getActiveWorkerCount;
223
+ private evictLeastRecentlyActiveIdleWorker;
198
224
  /**
199
225
  * Switch a thread's engine: persist the model/provider into thread.json, then
200
226
  * restart the worker if it is running (graceful shutdown → the next message
@@ -204,9 +230,6 @@ export declare class ThreadSupervisor {
204
230
  private switchThreadEngine;
205
231
  /** Start admitting and delivering internal executions (#2805 1c). */
206
232
  startExecutions(): void;
207
- /** Foreground turns have their own admission pool; execution slots are unrelated. */
208
- acquireConversationTurn(signal?: AbortSignal): Promise<() => void>;
209
- private handleConversationEvent;
210
233
  /**
211
234
  * The execution API for trusted in-process callers. Submissions are
212
235
  * accepted only after the command, record and snapshot are durable.
@@ -305,6 +328,7 @@ export declare class ThreadSupervisor {
305
328
  * Workers never open the ledger themselves.
306
329
  */
307
330
  private handleExecutionBootstrap;
331
+ private handleFeedback;
308
332
  private handleLabRuntimeBootstrapReady;
309
333
  private handleLabRuntimeBootstrapFailed;
310
334
  private handleReady;
@@ -314,7 +338,10 @@ export declare class ThreadSupervisor {
314
338
  private alertOwnerOfThreadDeliveryFailure;
315
339
  /** Ack a relayed reply with the real adapter outcome. */
316
340
  private sendReplyResult;
341
+ private handleTyping;
317
342
  private handleStatus;
343
+ private handleTurnComplete;
344
+ private armIdleTimer;
318
345
  private handleWorkerExit;
319
346
  /**
320
347
  * The executor's leader exited. Empty its process group (the forked
@@ -322,7 +349,13 @@ export declare class ThreadSupervisor {
322
349
  * emptied keeps the execution, and a Lab's workspace, blocked.
323
350
  */
324
351
  private confirmExecutorGroupStopped;
352
+ private spawnWorkerForPendingMessages;
353
+ private handleWorkerRespawnFailure;
354
+ private outstandingMessages;
325
355
  private freezeLabRuntimePolicy;
356
+ private publishSyntheticActivity;
357
+ /** Best-effort failure notice to the sender(s) of messages we could not process. */
358
+ private notifyPendingSendersOfFailure;
326
359
  /**
327
360
  * Deliver a message to the worker via IPC.
328
361
  */
@@ -330,7 +363,7 @@ export declare class ThreadSupervisor {
330
363
  private authority;
331
364
  private labPolicyVerifyKey;
332
365
  /** Freeze and sign a new generic execution's snapshot with this host's authority. */
333
- signExecutionSnapshotFor(executionId: string, budget?: ExecutionBudgetLimits, caller?: ExecutionCaller): string;
366
+ signExecutionSnapshotFor(executionId: string, budget?: ExecutionBudgetLimits): string;
334
367
  /**
335
368
  * Resolve and sign a new execution's snapshot: the thread's engine choice
336
369
  * (else the profile's), the matching route from the current routing
@@ -351,6 +384,7 @@ export declare class ThreadSupervisor {
351
384
  /** Matches {@link getThreadsOverview}: in-flight turn or buffered work. */
352
385
  private isWorkerVisiblyBusy;
353
386
  private emitBusyChangeIfNeeded;
387
+ private enqueuePendingWork;
354
388
  /**
355
389
  * Get a snapshot of all active (ready) worker threads for cross-thread
356
390
  * awareness. Does not include the main "default" thread.
@@ -364,8 +398,6 @@ export declare class ThreadSupervisor {
364
398
  * contains worker threads.
365
399
  */
366
400
  refreshMainProcessAwareness(): void;
367
- /** A chat must never receive another chat's task descriptions or inputs. */
368
- private getConversationTaskSnapshot;
369
401
  /**
370
402
  * Obs-facing overview of all worker threads (including still-spawning ones),
371
403
  * with pid for the dashboard. Distinct from {@link getActiveThreadsSnapshot}
@@ -376,8 +408,6 @@ export declare class ThreadSupervisor {
376
408
  /** Obs-facing summary of a single worker thread. */
377
409
  export interface ThreadOverview {
378
410
  threadId: string;
379
- kind?: "conversation" | "execution";
380
- taskId?: string;
381
411
  busy: boolean;
382
412
  taskDescription: string;
383
413
  lastActivityAt: string;
@@ -1 +1 @@
1
- {"version":3,"file":"supervisor.d.ts","sourceRoot":"","sources":["../../src/threads/supervisor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"supervisor.d.ts","sourceRoot":"","sources":["../../src/threads/supervisor.ts"],"names":[],"mappings":"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"}