macro-agent 0.2.5 → 0.2.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (992) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +30 -56
  3. package/dist/acp/websocket-server.d.ts +6 -0
  4. package/dist/acp/websocket-server.d.ts.map +1 -1
  5. package/dist/acp/websocket-server.js +13 -0
  6. package/dist/acp/websocket-server.js.map +1 -1
  7. package/dist/acp/websocket-stream.d.ts +30 -0
  8. package/dist/acp/websocket-stream.d.ts.map +1 -0
  9. package/dist/acp/websocket-stream.js +118 -0
  10. package/dist/acp/websocket-stream.js.map +1 -0
  11. package/dist/activity/deduplication.d.ts +85 -0
  12. package/dist/activity/deduplication.d.ts.map +1 -0
  13. package/dist/activity/deduplication.js +149 -0
  14. package/dist/activity/deduplication.js.map +1 -0
  15. package/dist/activity/index.d.ts +16 -0
  16. package/dist/activity/index.d.ts.map +1 -0
  17. package/dist/activity/index.js +17 -0
  18. package/dist/activity/index.js.map +1 -0
  19. package/dist/activity/relevance.d.ts +81 -0
  20. package/dist/activity/relevance.d.ts.map +1 -0
  21. package/dist/activity/relevance.js +161 -0
  22. package/dist/activity/relevance.js.map +1 -0
  23. package/dist/activity/types.d.ts +169 -0
  24. package/dist/activity/types.d.ts.map +1 -0
  25. package/dist/activity/types.js +33 -0
  26. package/dist/activity/types.js.map +1 -0
  27. package/dist/activity/watcher.d.ts +64 -0
  28. package/dist/activity/watcher.d.ts.map +1 -0
  29. package/dist/activity/watcher.js +212 -0
  30. package/dist/activity/watcher.js.map +1 -0
  31. package/dist/adapters/federation.d.ts +8 -1
  32. package/dist/adapters/federation.d.ts.map +1 -1
  33. package/dist/adapters/federation.js +33 -2
  34. package/dist/adapters/federation.js.map +1 -1
  35. package/dist/agent/agent-manager-v2.d.ts.map +1 -1
  36. package/dist/agent/agent-manager-v2.js +7 -24
  37. package/dist/agent/agent-manager-v2.js.map +1 -1
  38. package/dist/agent/wake.d.ts +85 -0
  39. package/dist/agent/wake.d.ts.map +1 -0
  40. package/dist/agent/wake.js +278 -0
  41. package/dist/agent/wake.js.map +1 -0
  42. package/dist/api/server.d.ts.map +1 -1
  43. package/dist/api/server.js +41 -25
  44. package/dist/api/server.js.map +1 -1
  45. package/dist/api/types.d.ts +6 -0
  46. package/dist/api/types.d.ts.map +1 -1
  47. package/dist/auth/server-auth.d.ts +43 -0
  48. package/dist/auth/server-auth.d.ts.map +1 -0
  49. package/dist/auth/server-auth.js +80 -0
  50. package/dist/auth/server-auth.js.map +1 -0
  51. package/dist/auth/token.d.ts +4 -0
  52. package/dist/auth/token.d.ts.map +1 -1
  53. package/dist/auth/token.js +7 -6
  54. package/dist/auth/token.js.map +1 -1
  55. package/dist/boot-v2.d.ts +6 -3
  56. package/dist/boot-v2.d.ts.map +1 -1
  57. package/dist/boot-v2.js +44 -25
  58. package/dist/boot-v2.js.map +1 -1
  59. package/dist/cognitive/team-lifecycle.d.ts +82 -0
  60. package/dist/cognitive/team-lifecycle.d.ts.map +1 -0
  61. package/dist/cognitive/team-lifecycle.js +121 -0
  62. package/dist/cognitive/team-lifecycle.js.map +1 -0
  63. package/dist/cognitive/trajectory-extractor.d.ts +25 -0
  64. package/dist/cognitive/trajectory-extractor.d.ts.map +1 -0
  65. package/dist/cognitive/trajectory-extractor.js +134 -0
  66. package/dist/cognitive/trajectory-extractor.js.map +1 -0
  67. package/dist/control/control-server.d.ts.map +1 -1
  68. package/dist/control/control-server.js +10 -0
  69. package/dist/control/control-server.js.map +1 -1
  70. package/dist/dispatch/mail-inbound-consumer.d.ts.map +1 -1
  71. package/dist/dispatch/mail-inbound-consumer.js +43 -10
  72. package/dist/dispatch/mail-inbound-consumer.js.map +1 -1
  73. package/dist/index.d.ts +4 -0
  74. package/dist/index.d.ts.map +1 -1
  75. package/dist/index.js +6 -1
  76. package/dist/index.js.map +1 -1
  77. package/dist/lifecycle/handlers/generic.d.ts +27 -0
  78. package/dist/lifecycle/handlers/generic.d.ts.map +1 -0
  79. package/dist/lifecycle/handlers/generic.js +56 -0
  80. package/dist/lifecycle/handlers/generic.js.map +1 -0
  81. package/dist/lifecycle/handlers/index.d.ts +51 -0
  82. package/dist/lifecycle/handlers/index.d.ts.map +1 -0
  83. package/dist/lifecycle/handlers/index.js +110 -0
  84. package/dist/lifecycle/handlers/index.js.map +1 -0
  85. package/dist/lifecycle/handlers/integrator.d.ts +81 -0
  86. package/dist/lifecycle/handlers/integrator.d.ts.map +1 -0
  87. package/dist/lifecycle/handlers/integrator.js +451 -0
  88. package/dist/lifecycle/handlers/integrator.js.map +1 -0
  89. package/dist/lifecycle/handlers/monitor.d.ts +29 -0
  90. package/dist/lifecycle/handlers/monitor.d.ts.map +1 -0
  91. package/dist/lifecycle/handlers/monitor.js +79 -0
  92. package/dist/lifecycle/handlers/monitor.js.map +1 -0
  93. package/dist/lifecycle/handlers/worker.d.ts +56 -0
  94. package/dist/lifecycle/handlers/worker.d.ts.map +1 -0
  95. package/dist/lifecycle/handlers/worker.js +381 -0
  96. package/dist/lifecycle/handlers/worker.js.map +1 -0
  97. package/dist/lifecycle/handlers-v2.d.ts +0 -2
  98. package/dist/lifecycle/handlers-v2.d.ts.map +1 -1
  99. package/dist/lifecycle/handlers-v2.js +4 -55
  100. package/dist/lifecycle/handlers-v2.js.map +1 -1
  101. package/dist/mail/conversation-map.d.ts +33 -0
  102. package/dist/mail/conversation-map.d.ts.map +1 -0
  103. package/dist/mail/conversation-map.js +61 -0
  104. package/dist/mail/conversation-map.js.map +1 -0
  105. package/dist/mail/index.d.ts +11 -0
  106. package/dist/mail/index.d.ts.map +1 -0
  107. package/dist/mail/index.js +11 -0
  108. package/dist/mail/index.js.map +1 -0
  109. package/dist/mail/mail-service.d.ts +85 -0
  110. package/dist/mail/mail-service.d.ts.map +1 -0
  111. package/dist/mail/mail-service.js +121 -0
  112. package/dist/mail/mail-service.js.map +1 -0
  113. package/dist/mail/stores/eventstore-conversation-store.d.ts +40 -0
  114. package/dist/mail/stores/eventstore-conversation-store.d.ts.map +1 -0
  115. package/dist/mail/stores/eventstore-conversation-store.js +131 -0
  116. package/dist/mail/stores/eventstore-conversation-store.js.map +1 -0
  117. package/dist/mail/stores/eventstore-participant-store.d.ts +43 -0
  118. package/dist/mail/stores/eventstore-participant-store.d.ts.map +1 -0
  119. package/dist/mail/stores/eventstore-participant-store.js +145 -0
  120. package/dist/mail/stores/eventstore-participant-store.js.map +1 -0
  121. package/dist/mail/stores/eventstore-thread-store.d.ts +46 -0
  122. package/dist/mail/stores/eventstore-thread-store.d.ts.map +1 -0
  123. package/dist/mail/stores/eventstore-thread-store.js +118 -0
  124. package/dist/mail/stores/eventstore-thread-store.js.map +1 -0
  125. package/dist/mail/stores/eventstore-turn-store.d.ts +47 -0
  126. package/dist/mail/stores/eventstore-turn-store.d.ts.map +1 -0
  127. package/dist/mail/stores/eventstore-turn-store.js +153 -0
  128. package/dist/mail/stores/eventstore-turn-store.js.map +1 -0
  129. package/dist/mail/stores/index.d.ts +12 -0
  130. package/dist/mail/stores/index.d.ts.map +1 -0
  131. package/dist/mail/stores/index.js +12 -0
  132. package/dist/mail/stores/index.js.map +1 -0
  133. package/dist/mail/stores/types.d.ts +146 -0
  134. package/dist/mail/stores/types.d.ts.map +1 -0
  135. package/dist/mail/stores/types.js +13 -0
  136. package/dist/mail/stores/types.js.map +1 -0
  137. package/dist/mail/turn-recorder.d.ts +30 -0
  138. package/dist/mail/turn-recorder.d.ts.map +1 -0
  139. package/dist/mail/turn-recorder.js +98 -0
  140. package/dist/mail/turn-recorder.js.map +1 -0
  141. package/dist/map/adapter/acp-over-map.d.ts +115 -0
  142. package/dist/map/adapter/acp-over-map.d.ts.map +1 -0
  143. package/dist/map/adapter/acp-over-map.js +1024 -0
  144. package/dist/map/adapter/acp-over-map.js.map +1 -0
  145. package/dist/map/adapter/connection-manager.d.ts +150 -0
  146. package/dist/map/adapter/connection-manager.d.ts.map +1 -0
  147. package/dist/map/adapter/connection-manager.js +207 -0
  148. package/dist/map/adapter/connection-manager.js.map +1 -0
  149. package/dist/map/adapter/event-log.d.ts +87 -0
  150. package/dist/map/adapter/event-log.d.ts.map +1 -0
  151. package/dist/map/adapter/event-log.js +122 -0
  152. package/dist/map/adapter/event-log.js.map +1 -0
  153. package/dist/map/adapter/event-translator.d.ts +85 -0
  154. package/dist/map/adapter/event-translator.d.ts.map +1 -0
  155. package/dist/map/adapter/event-translator.js +295 -0
  156. package/dist/map/adapter/event-translator.js.map +1 -0
  157. package/dist/map/adapter/extensions/agent-detection.d.ts +49 -0
  158. package/dist/map/adapter/extensions/agent-detection.d.ts.map +1 -0
  159. package/dist/map/adapter/extensions/agent-detection.js +91 -0
  160. package/dist/map/adapter/extensions/agent-detection.js.map +1 -0
  161. package/dist/map/adapter/extensions/agent-lifecycle.d.ts +82 -0
  162. package/dist/map/adapter/extensions/agent-lifecycle.d.ts.map +1 -0
  163. package/dist/map/adapter/extensions/agent-lifecycle.js +164 -0
  164. package/dist/map/adapter/extensions/agent-lifecycle.js.map +1 -0
  165. package/dist/map/adapter/extensions/cognitive.d.ts +27 -0
  166. package/dist/map/adapter/extensions/cognitive.d.ts.map +1 -0
  167. package/dist/map/adapter/extensions/cognitive.js +158 -0
  168. package/dist/map/adapter/extensions/cognitive.js.map +1 -0
  169. package/dist/map/adapter/extensions/index.d.ts +95 -0
  170. package/dist/map/adapter/extensions/index.d.ts.map +1 -0
  171. package/dist/map/adapter/extensions/index.js +228 -0
  172. package/dist/map/adapter/extensions/index.js.map +1 -0
  173. package/dist/map/adapter/extensions/mcp-bridge.d.ts +57 -0
  174. package/dist/map/adapter/extensions/mcp-bridge.d.ts.map +1 -0
  175. package/dist/map/adapter/extensions/mcp-bridge.js +745 -0
  176. package/dist/map/adapter/extensions/mcp-bridge.js.map +1 -0
  177. package/dist/map/adapter/extensions/resume.d.ts +47 -0
  178. package/dist/map/adapter/extensions/resume.d.ts.map +1 -0
  179. package/dist/map/adapter/extensions/resume.js +59 -0
  180. package/dist/map/adapter/extensions/resume.js.map +1 -0
  181. package/dist/map/adapter/extensions/streams.d.ts +95 -0
  182. package/dist/map/adapter/extensions/streams.d.ts.map +1 -0
  183. package/dist/map/adapter/extensions/streams.js +515 -0
  184. package/dist/map/adapter/extensions/streams.js.map +1 -0
  185. package/dist/map/adapter/extensions/task.d.ts +40 -0
  186. package/dist/map/adapter/extensions/task.d.ts.map +1 -0
  187. package/dist/map/adapter/extensions/task.js +197 -0
  188. package/dist/map/adapter/extensions/task.js.map +1 -0
  189. package/dist/map/adapter/extensions/update-metadata.d.ts +29 -0
  190. package/dist/map/adapter/extensions/update-metadata.d.ts.map +1 -0
  191. package/dist/map/adapter/extensions/update-metadata.js +67 -0
  192. package/dist/map/adapter/extensions/update-metadata.js.map +1 -0
  193. package/dist/map/adapter/extensions/wake.d.ts +60 -0
  194. package/dist/map/adapter/extensions/wake.d.ts.map +1 -0
  195. package/dist/map/adapter/extensions/wake.js +144 -0
  196. package/dist/map/adapter/extensions/wake.js.map +1 -0
  197. package/dist/map/adapter/extensions/workspace-files.d.ts +42 -0
  198. package/dist/map/adapter/extensions/workspace-files.d.ts.map +1 -0
  199. package/dist/map/adapter/extensions/workspace-files.js +338 -0
  200. package/dist/map/adapter/extensions/workspace-files.js.map +1 -0
  201. package/dist/map/adapter/extensions/workspace.d.ts +57 -0
  202. package/dist/map/adapter/extensions/workspace.d.ts.map +1 -0
  203. package/dist/map/adapter/extensions/workspace.js +81 -0
  204. package/dist/map/adapter/extensions/workspace.js.map +1 -0
  205. package/dist/map/adapter/index.d.ts +20 -0
  206. package/dist/map/adapter/index.d.ts.map +1 -0
  207. package/dist/map/adapter/index.js +40 -0
  208. package/dist/map/adapter/index.js.map +1 -0
  209. package/dist/map/adapter/interface.d.ts +450 -0
  210. package/dist/map/adapter/interface.d.ts.map +1 -0
  211. package/dist/map/adapter/interface.js +24 -0
  212. package/dist/map/adapter/interface.js.map +1 -0
  213. package/dist/map/adapter/mail-handler-adapter.d.ts +27 -0
  214. package/dist/map/adapter/mail-handler-adapter.d.ts.map +1 -0
  215. package/dist/map/adapter/mail-handler-adapter.js +292 -0
  216. package/dist/map/adapter/mail-handler-adapter.js.map +1 -0
  217. package/dist/map/adapter/map-adapter.d.ts +200 -0
  218. package/dist/map/adapter/map-adapter.d.ts.map +1 -0
  219. package/dist/map/adapter/map-adapter.js +1199 -0
  220. package/dist/map/adapter/map-adapter.js.map +1 -0
  221. package/dist/map/adapter/rpc-handler.d.ts +263 -0
  222. package/dist/map/adapter/rpc-handler.d.ts.map +1 -0
  223. package/dist/map/adapter/rpc-handler.js +365 -0
  224. package/dist/map/adapter/rpc-handler.js.map +1 -0
  225. package/dist/map/adapter/subscription-manager.d.ts +174 -0
  226. package/dist/map/adapter/subscription-manager.d.ts.map +1 -0
  227. package/dist/map/adapter/subscription-manager.js +248 -0
  228. package/dist/map/adapter/subscription-manager.js.map +1 -0
  229. package/dist/map/adapter/types.d.ts +194 -0
  230. package/dist/map/adapter/types.d.ts.map +1 -0
  231. package/dist/map/adapter/types.js +27 -0
  232. package/dist/map/adapter/types.js.map +1 -0
  233. package/dist/map/adapter/websocket-integration.d.ts +113 -0
  234. package/dist/map/adapter/websocket-integration.d.ts.map +1 -0
  235. package/dist/map/adapter/websocket-integration.js +134 -0
  236. package/dist/map/adapter/websocket-integration.js.map +1 -0
  237. package/dist/map/cascade-action-handler.d.ts.map +1 -1
  238. package/dist/map/cascade-action-handler.js +19 -5
  239. package/dist/map/cascade-action-handler.js.map +1 -1
  240. package/dist/map/federation/envelope.d.ts +98 -0
  241. package/dist/map/federation/envelope.d.ts.map +1 -0
  242. package/dist/map/federation/envelope.js +160 -0
  243. package/dist/map/federation/envelope.js.map +1 -0
  244. package/dist/map/federation/federation-handler.d.ts +50 -0
  245. package/dist/map/federation/federation-handler.d.ts.map +1 -0
  246. package/dist/map/federation/federation-handler.js +306 -0
  247. package/dist/map/federation/federation-handler.js.map +1 -0
  248. package/dist/map/federation/index.d.ts +14 -0
  249. package/dist/map/federation/index.d.ts.map +1 -0
  250. package/dist/map/federation/index.js +13 -0
  251. package/dist/map/federation/index.js.map +1 -0
  252. package/dist/map/federation/types.d.ts +239 -0
  253. package/dist/map/federation/types.d.ts.map +1 -0
  254. package/dist/map/federation/types.js +23 -0
  255. package/dist/map/federation/types.js.map +1 -0
  256. package/dist/map/server.d.ts.map +1 -1
  257. package/dist/map/server.js +17 -2
  258. package/dist/map/server.js.map +1 -1
  259. package/dist/map/types.d.ts +6 -0
  260. package/dist/map/types.d.ts.map +1 -1
  261. package/dist/mcp/map-client.d.ts +39 -0
  262. package/dist/mcp/map-client.d.ts.map +1 -0
  263. package/dist/mcp/map-client.js +129 -0
  264. package/dist/mcp/map-client.js.map +1 -0
  265. package/dist/mcp/mcp-server.d.ts +72 -0
  266. package/dist/mcp/mcp-server.d.ts.map +1 -0
  267. package/dist/mcp/mcp-server.js +1027 -0
  268. package/dist/mcp/mcp-server.js.map +1 -0
  269. package/dist/mcp/tools/claim_task.d.ts +35 -0
  270. package/dist/mcp/tools/claim_task.d.ts.map +1 -0
  271. package/dist/mcp/tools/claim_task.js +58 -0
  272. package/dist/mcp/tools/claim_task.js.map +1 -0
  273. package/dist/mcp/tools/done-v2.d.ts +0 -1
  274. package/dist/mcp/tools/done-v2.d.ts.map +1 -1
  275. package/dist/mcp/tools/done-v2.js +0 -1
  276. package/dist/mcp/tools/done-v2.js.map +1 -1
  277. package/dist/mcp/tools/done.d.ts +102 -0
  278. package/dist/mcp/tools/done.d.ts.map +1 -0
  279. package/dist/mcp/tools/done.js +253 -0
  280. package/dist/mcp/tools/done.js.map +1 -0
  281. package/dist/mcp/tools/inject_context.d.ts +61 -0
  282. package/dist/mcp/tools/inject_context.d.ts.map +1 -0
  283. package/dist/mcp/tools/inject_context.js +123 -0
  284. package/dist/mcp/tools/inject_context.js.map +1 -0
  285. package/dist/mcp/tools/list_claimable_tasks.d.ts +38 -0
  286. package/dist/mcp/tools/list_claimable_tasks.d.ts.map +1 -0
  287. package/dist/mcp/tools/list_claimable_tasks.js +63 -0
  288. package/dist/mcp/tools/list_claimable_tasks.js.map +1 -0
  289. package/dist/mcp/tools/unclaim_task.d.ts +31 -0
  290. package/dist/mcp/tools/unclaim_task.d.ts.map +1 -0
  291. package/dist/mcp/tools/unclaim_task.js +47 -0
  292. package/dist/mcp/tools/unclaim_task.js.map +1 -0
  293. package/dist/mcp/tools/wait_for_activity.d.ts +60 -0
  294. package/dist/mcp/tools/wait_for_activity.d.ts.map +1 -0
  295. package/dist/mcp/tools/wait_for_activity.js +135 -0
  296. package/dist/mcp/tools/wait_for_activity.js.map +1 -0
  297. package/dist/monitor/health-check-service.d.ts +143 -0
  298. package/dist/monitor/health-check-service.d.ts.map +1 -0
  299. package/dist/monitor/health-check-service.js +240 -0
  300. package/dist/monitor/health-check-service.js.map +1 -0
  301. package/dist/monitor/index.d.ts +14 -0
  302. package/dist/monitor/index.d.ts.map +1 -0
  303. package/dist/monitor/index.js +14 -0
  304. package/dist/monitor/index.js.map +1 -0
  305. package/dist/monitor/stall-detector.d.ts +109 -0
  306. package/dist/monitor/stall-detector.d.ts.map +1 -0
  307. package/dist/monitor/stall-detector.js +152 -0
  308. package/dist/monitor/stall-detector.js.map +1 -0
  309. package/dist/peer/capability-manager.d.ts +56 -0
  310. package/dist/peer/capability-manager.d.ts.map +1 -0
  311. package/dist/peer/capability-manager.js +186 -0
  312. package/dist/peer/capability-manager.js.map +1 -0
  313. package/dist/peer/encapsulation-manager.d.ts +190 -0
  314. package/dist/peer/encapsulation-manager.d.ts.map +1 -0
  315. package/dist/peer/encapsulation-manager.js +486 -0
  316. package/dist/peer/encapsulation-manager.js.map +1 -0
  317. package/dist/peer/federation-manager.d.ts +223 -0
  318. package/dist/peer/federation-manager.d.ts.map +1 -0
  319. package/dist/peer/federation-manager.js +528 -0
  320. package/dist/peer/federation-manager.js.map +1 -0
  321. package/dist/peer/hierarchy-errors.d.ts +208 -0
  322. package/dist/peer/hierarchy-errors.d.ts.map +1 -0
  323. package/dist/peer/hierarchy-errors.js +268 -0
  324. package/dist/peer/hierarchy-errors.js.map +1 -0
  325. package/dist/peer/hierarchy-protocol.d.ts +159 -0
  326. package/dist/peer/hierarchy-protocol.d.ts.map +1 -0
  327. package/dist/peer/hierarchy-protocol.js +142 -0
  328. package/dist/peer/hierarchy-protocol.js.map +1 -0
  329. package/dist/peer/index.d.ts +15 -0
  330. package/dist/peer/index.d.ts.map +1 -0
  331. package/dist/peer/index.js +15 -0
  332. package/dist/peer/index.js.map +1 -0
  333. package/dist/peer/peer-manager.d.ts +99 -0
  334. package/dist/peer/peer-manager.d.ts.map +1 -0
  335. package/dist/peer/peer-manager.js +333 -0
  336. package/dist/peer/peer-manager.js.map +1 -0
  337. package/dist/peer/task-delegation.d.ts +189 -0
  338. package/dist/peer/task-delegation.d.ts.map +1 -0
  339. package/dist/peer/task-delegation.js +303 -0
  340. package/dist/peer/task-delegation.js.map +1 -0
  341. package/dist/peer/transports/index.d.ts +8 -0
  342. package/dist/peer/transports/index.d.ts.map +1 -0
  343. package/dist/peer/transports/index.js +8 -0
  344. package/dist/peer/transports/index.js.map +1 -0
  345. package/dist/peer/transports/local-transport.d.ts +56 -0
  346. package/dist/peer/transports/local-transport.d.ts.map +1 -0
  347. package/dist/peer/transports/local-transport.js +263 -0
  348. package/dist/peer/transports/local-transport.js.map +1 -0
  349. package/dist/peer/transports/websocket-transport.d.ts +86 -0
  350. package/dist/peer/transports/websocket-transport.d.ts.map +1 -0
  351. package/dist/peer/transports/websocket-transport.js +338 -0
  352. package/dist/peer/transports/websocket-transport.js.map +1 -0
  353. package/dist/peer/types.d.ts +268 -0
  354. package/dist/peer/types.d.ts.map +1 -0
  355. package/dist/peer/types.js +36 -0
  356. package/dist/peer/types.js.map +1 -0
  357. package/dist/router/address-resolver.d.ts +102 -0
  358. package/dist/router/address-resolver.d.ts.map +1 -0
  359. package/dist/router/address-resolver.js +198 -0
  360. package/dist/router/address-resolver.js.map +1 -0
  361. package/dist/router/broadcast.d.ts +53 -0
  362. package/dist/router/broadcast.d.ts.map +1 -0
  363. package/dist/router/broadcast.js +75 -0
  364. package/dist/router/broadcast.js.map +1 -0
  365. package/dist/router/channels.d.ts +148 -0
  366. package/dist/router/channels.d.ts.map +1 -0
  367. package/dist/router/channels.js +126 -0
  368. package/dist/router/channels.js.map +1 -0
  369. package/dist/router/index.d.ts +21 -0
  370. package/dist/router/index.d.ts.map +1 -0
  371. package/dist/router/index.js +18 -0
  372. package/dist/router/index.js.map +1 -0
  373. package/dist/router/message-router.d.ts +197 -0
  374. package/dist/router/message-router.d.ts.map +1 -0
  375. package/dist/router/message-router.js +903 -0
  376. package/dist/router/message-router.js.map +1 -0
  377. package/dist/router/message-types.d.ts +183 -0
  378. package/dist/router/message-types.d.ts.map +1 -0
  379. package/dist/router/message-types.js +79 -0
  380. package/dist/router/message-types.js.map +1 -0
  381. package/dist/router/role-resolver.d.ts +67 -0
  382. package/dist/router/role-resolver.d.ts.map +1 -0
  383. package/dist/router/role-resolver.js +106 -0
  384. package/dist/router/role-resolver.js.map +1 -0
  385. package/dist/router/signals.d.ts +253 -0
  386. package/dist/router/signals.d.ts.map +1 -0
  387. package/dist/router/signals.js +53 -0
  388. package/dist/router/signals.js.map +1 -0
  389. package/dist/router/types.d.ts +191 -0
  390. package/dist/router/types.d.ts.map +1 -0
  391. package/dist/router/types.js +34 -0
  392. package/dist/router/types.js.map +1 -0
  393. package/dist/router/wake.d.ts +111 -0
  394. package/dist/router/wake.d.ts.map +1 -0
  395. package/dist/router/wake.js +180 -0
  396. package/dist/router/wake.js.map +1 -0
  397. package/dist/server/combined-server.d.ts +95 -0
  398. package/dist/server/combined-server.d.ts.map +1 -0
  399. package/dist/server/combined-server.js +335 -0
  400. package/dist/server/combined-server.js.map +1 -0
  401. package/dist/steering/index.d.ts +11 -0
  402. package/dist/steering/index.d.ts.map +1 -0
  403. package/dist/steering/index.js +11 -0
  404. package/dist/steering/index.js.map +1 -0
  405. package/dist/steering/inject.d.ts +39 -0
  406. package/dist/steering/inject.d.ts.map +1 -0
  407. package/dist/steering/inject.js +197 -0
  408. package/dist/steering/inject.js.map +1 -0
  409. package/dist/steering/types.d.ts +100 -0
  410. package/dist/steering/types.d.ts.map +1 -0
  411. package/dist/steering/types.js +11 -0
  412. package/dist/steering/types.js.map +1 -0
  413. package/dist/store/backends/index.d.ts +11 -0
  414. package/dist/store/backends/index.d.ts.map +1 -0
  415. package/dist/store/backends/index.js +15 -0
  416. package/dist/store/backends/index.js.map +1 -0
  417. package/dist/store/backends/json-backend.d.ts +23 -0
  418. package/dist/store/backends/json-backend.d.ts.map +1 -0
  419. package/dist/store/backends/json-backend.js +220 -0
  420. package/dist/store/backends/json-backend.js.map +1 -0
  421. package/dist/store/backends/memory-backend.d.ts +12 -0
  422. package/dist/store/backends/memory-backend.d.ts.map +1 -0
  423. package/dist/store/backends/memory-backend.js +205 -0
  424. package/dist/store/backends/memory-backend.js.map +1 -0
  425. package/dist/store/backends/sqlite-backend.d.ts +27 -0
  426. package/dist/store/backends/sqlite-backend.d.ts.map +1 -0
  427. package/dist/store/backends/sqlite-backend.js +231 -0
  428. package/dist/store/backends/sqlite-backend.js.map +1 -0
  429. package/dist/store/backends/tinybase-backend.d.ts +22 -0
  430. package/dist/store/backends/tinybase-backend.d.ts.map +1 -0
  431. package/dist/store/backends/tinybase-backend.js +203 -0
  432. package/dist/store/backends/tinybase-backend.js.map +1 -0
  433. package/dist/store/backends/types.d.ts +175 -0
  434. package/dist/store/backends/types.d.ts.map +1 -0
  435. package/dist/store/backends/types.js +28 -0
  436. package/dist/store/backends/types.js.map +1 -0
  437. package/dist/store/event-store.d.ts +128 -0
  438. package/dist/store/event-store.d.ts.map +1 -0
  439. package/dist/store/event-store.js +1751 -0
  440. package/dist/store/event-store.js.map +1 -0
  441. package/dist/store/instance.d.ts +290 -0
  442. package/dist/store/instance.d.ts.map +1 -0
  443. package/dist/store/instance.js +363 -0
  444. package/dist/store/instance.js.map +1 -0
  445. package/dist/store/migrations.d.ts +41 -0
  446. package/dist/store/migrations.d.ts.map +1 -0
  447. package/dist/store/migrations.js +79 -0
  448. package/dist/store/migrations.js.map +1 -0
  449. package/dist/store/test-utils.d.ts +63 -0
  450. package/dist/store/test-utils.d.ts.map +1 -0
  451. package/dist/store/test-utils.js +63 -0
  452. package/dist/store/test-utils.js.map +1 -0
  453. package/dist/store/types/config.d.ts +16 -0
  454. package/dist/store/types/config.d.ts.map +1 -0
  455. package/dist/store/types/config.js +8 -0
  456. package/dist/store/types/config.js.map +1 -0
  457. package/dist/store/types/conversations.d.ts +91 -0
  458. package/dist/store/types/conversations.d.ts.map +1 -0
  459. package/dist/store/types/conversations.js +8 -0
  460. package/dist/store/types/conversations.js.map +1 -0
  461. package/dist/store/types/sessions.d.ts +44 -0
  462. package/dist/store/types/sessions.d.ts.map +1 -0
  463. package/dist/store/types/sessions.js +9 -0
  464. package/dist/store/types/sessions.js.map +1 -0
  465. package/dist/store/types.d.ts +115 -0
  466. package/dist/store/types.d.ts.map +1 -0
  467. package/dist/store/types.js +6 -0
  468. package/dist/store/types.js.map +1 -0
  469. package/dist/task/backend/index.d.ts +93 -0
  470. package/dist/task/backend/index.d.ts.map +1 -0
  471. package/dist/task/backend/index.js +178 -0
  472. package/dist/task/backend/index.js.map +1 -0
  473. package/dist/task/backend/memory.d.ts +70 -0
  474. package/dist/task/backend/memory.d.ts.map +1 -0
  475. package/dist/task/backend/memory.js +621 -0
  476. package/dist/task/backend/memory.js.map +1 -0
  477. package/dist/task/backend/opentasks/backend.d.ts +140 -0
  478. package/dist/task/backend/opentasks/backend.d.ts.map +1 -0
  479. package/dist/task/backend/opentasks/backend.js +1023 -0
  480. package/dist/task/backend/opentasks/backend.js.map +1 -0
  481. package/dist/task/backend/opentasks/client.d.ts +337 -0
  482. package/dist/task/backend/opentasks/client.d.ts.map +1 -0
  483. package/dist/task/backend/opentasks/client.js +225 -0
  484. package/dist/task/backend/opentasks/client.js.map +1 -0
  485. package/dist/task/backend/opentasks/daemon-manager.d.ts +89 -0
  486. package/dist/task/backend/opentasks/daemon-manager.d.ts.map +1 -0
  487. package/dist/task/backend/opentasks/daemon-manager.js +195 -0
  488. package/dist/task/backend/opentasks/daemon-manager.js.map +1 -0
  489. package/dist/task/backend/opentasks/index.d.ts +21 -0
  490. package/dist/task/backend/opentasks/index.d.ts.map +1 -0
  491. package/dist/task/backend/opentasks/index.js +21 -0
  492. package/dist/task/backend/opentasks/index.js.map +1 -0
  493. package/dist/task/backend/opentasks/mapping.d.ts +48 -0
  494. package/dist/task/backend/opentasks/mapping.d.ts.map +1 -0
  495. package/dist/task/backend/opentasks/mapping.js +77 -0
  496. package/dist/task/backend/opentasks/mapping.js.map +1 -0
  497. package/dist/task/backend/sudocode/__tests__/integration/test-utils.d.ts +54 -0
  498. package/dist/task/backend/sudocode/__tests__/integration/test-utils.d.ts.map +1 -0
  499. package/dist/task/backend/sudocode/__tests__/integration/test-utils.js +88 -0
  500. package/dist/task/backend/sudocode/__tests__/integration/test-utils.js.map +1 -0
  501. package/dist/task/backend/sudocode/backend.d.ts +155 -0
  502. package/dist/task/backend/sudocode/backend.d.ts.map +1 -0
  503. package/dist/task/backend/sudocode/backend.js +942 -0
  504. package/dist/task/backend/sudocode/backend.js.map +1 -0
  505. package/dist/task/backend/sudocode/client.d.ts +303 -0
  506. package/dist/task/backend/sudocode/client.d.ts.map +1 -0
  507. package/dist/task/backend/sudocode/client.js +101 -0
  508. package/dist/task/backend/sudocode/client.js.map +1 -0
  509. package/dist/task/backend/sudocode/index.d.ts +19 -0
  510. package/dist/task/backend/sudocode/index.d.ts.map +1 -0
  511. package/dist/task/backend/sudocode/index.js +17 -0
  512. package/dist/task/backend/sudocode/index.js.map +1 -0
  513. package/dist/task/backend/sudocode/mapping.d.ts +51 -0
  514. package/dist/task/backend/sudocode/mapping.d.ts.map +1 -0
  515. package/dist/task/backend/sudocode/mapping.js +86 -0
  516. package/dist/task/backend/sudocode/mapping.js.map +1 -0
  517. package/dist/task/backend/sudocode/server-client.d.ts +56 -0
  518. package/dist/task/backend/sudocode/server-client.d.ts.map +1 -0
  519. package/dist/task/backend/sudocode/server-client.js +367 -0
  520. package/dist/task/backend/sudocode/server-client.js.map +1 -0
  521. package/dist/task/backend/sudocode/standalone-client.d.ts +91 -0
  522. package/dist/task/backend/sudocode/standalone-client.d.ts.map +1 -0
  523. package/dist/task/backend/sudocode/standalone-client.js +476 -0
  524. package/dist/task/backend/sudocode/standalone-client.js.map +1 -0
  525. package/dist/task/backend/sudocode/sync-policy.d.ts +166 -0
  526. package/dist/task/backend/sudocode/sync-policy.d.ts.map +1 -0
  527. package/dist/task/backend/sudocode/sync-policy.js +221 -0
  528. package/dist/task/backend/sudocode/sync-policy.js.map +1 -0
  529. package/dist/task/backend/sudocode/tools.d.ts +87 -0
  530. package/dist/task/backend/sudocode/tools.d.ts.map +1 -0
  531. package/dist/task/backend/sudocode/tools.js +743 -0
  532. package/dist/task/backend/sudocode/tools.js.map +1 -0
  533. package/dist/task/backend/tool-provider.d.ts +56 -0
  534. package/dist/task/backend/tool-provider.d.ts.map +1 -0
  535. package/dist/task/backend/tool-provider.js +424 -0
  536. package/dist/task/backend/tool-provider.js.map +1 -0
  537. package/dist/task/backend/types.d.ts +297 -0
  538. package/dist/task/backend/types.d.ts.map +1 -0
  539. package/dist/task/backend/types.js +27 -0
  540. package/dist/task/backend/types.js.map +1 -0
  541. package/dist/task/backend/unified-tool-provider.d.ts +57 -0
  542. package/dist/task/backend/unified-tool-provider.d.ts.map +1 -0
  543. package/dist/task/backend/unified-tool-provider.js +623 -0
  544. package/dist/task/backend/unified-tool-provider.js.map +1 -0
  545. package/dist/task/index.d.ts +7 -0
  546. package/dist/task/index.d.ts.map +1 -0
  547. package/dist/task/index.js +7 -0
  548. package/dist/task/index.js.map +1 -0
  549. package/dist/task/retry-policy.d.ts +89 -0
  550. package/dist/task/retry-policy.d.ts.map +1 -0
  551. package/dist/task/retry-policy.js +160 -0
  552. package/dist/task/retry-policy.js.map +1 -0
  553. package/dist/task/task-manager.d.ts +70 -0
  554. package/dist/task/task-manager.d.ts.map +1 -0
  555. package/dist/task/task-manager.js +319 -0
  556. package/dist/task/task-manager.js.map +1 -0
  557. package/dist/task/types.d.ts +72 -0
  558. package/dist/task/types.d.ts.map +1 -0
  559. package/dist/task/types.js +33 -0
  560. package/dist/task/types.js.map +1 -0
  561. package/dist/teams/team-loader.d.ts +2 -1
  562. package/dist/teams/team-loader.d.ts.map +1 -1
  563. package/dist/teams/team-loader.js +2 -1
  564. package/dist/teams/team-loader.js.map +1 -1
  565. package/dist/teams/team-manager.d.ts +101 -0
  566. package/dist/teams/team-manager.d.ts.map +1 -0
  567. package/dist/teams/team-manager.js +260 -0
  568. package/dist/teams/team-manager.js.map +1 -0
  569. package/dist/teams/team-runtime-v2.d.ts +0 -3
  570. package/dist/teams/team-runtime-v2.d.ts.map +1 -1
  571. package/dist/teams/team-runtime-v2.js +8 -87
  572. package/dist/teams/team-runtime-v2.js.map +1 -1
  573. package/dist/teams/team-runtime.d.ts +245 -0
  574. package/dist/teams/team-runtime.d.ts.map +1 -0
  575. package/dist/teams/team-runtime.js +1023 -0
  576. package/dist/teams/team-runtime.js.map +1 -0
  577. package/dist/trigger/router/index.d.ts +11 -0
  578. package/dist/trigger/router/index.d.ts.map +1 -0
  579. package/dist/trigger/router/index.js +10 -0
  580. package/dist/trigger/router/index.js.map +1 -0
  581. package/dist/trigger/router/strategies/ai-router-strategy.d.ts +34 -0
  582. package/dist/trigger/router/strategies/ai-router-strategy.d.ts.map +1 -0
  583. package/dist/trigger/router/strategies/ai-router-strategy.js +359 -0
  584. package/dist/trigger/router/strategies/ai-router-strategy.js.map +1 -0
  585. package/dist/trigger/router/strategies/direct-strategy.d.ts +32 -0
  586. package/dist/trigger/router/strategies/direct-strategy.d.ts.map +1 -0
  587. package/dist/trigger/router/strategies/direct-strategy.js +119 -0
  588. package/dist/trigger/router/strategies/direct-strategy.js.map +1 -0
  589. package/dist/trigger/router/strategies/index.d.ts +11 -0
  590. package/dist/trigger/router/strategies/index.d.ts.map +1 -0
  591. package/dist/trigger/router/strategies/index.js +11 -0
  592. package/dist/trigger/router/strategies/index.js.map +1 -0
  593. package/dist/trigger/router/strategies/role-strategy.d.ts +39 -0
  594. package/dist/trigger/router/strategies/role-strategy.d.ts.map +1 -0
  595. package/dist/trigger/router/strategies/role-strategy.js +207 -0
  596. package/dist/trigger/router/strategies/role-strategy.js.map +1 -0
  597. package/dist/trigger/router/trigger-router.d.ts +54 -0
  598. package/dist/trigger/router/trigger-router.d.ts.map +1 -0
  599. package/dist/trigger/router/trigger-router.js +362 -0
  600. package/dist/trigger/router/trigger-router.js.map +1 -0
  601. package/dist/trigger/router/types.d.ts +225 -0
  602. package/dist/trigger/router/types.d.ts.map +1 -0
  603. package/dist/trigger/router/types.js +10 -0
  604. package/dist/trigger/router/types.js.map +1 -0
  605. package/dist/trigger/sources/cron/cron-service.d.ts.map +1 -1
  606. package/dist/trigger/sources/cron/cron-service.js +6 -3
  607. package/dist/trigger/sources/cron/cron-service.js.map +1 -1
  608. package/dist/trigger/trigger-system.d.ts +77 -0
  609. package/dist/trigger/trigger-system.d.ts.map +1 -0
  610. package/dist/trigger/trigger-system.js +84 -0
  611. package/dist/trigger/trigger-system.js.map +1 -0
  612. package/dist/util/git-safety.d.ts +33 -0
  613. package/dist/util/git-safety.d.ts.map +1 -0
  614. package/dist/util/git-safety.js +94 -0
  615. package/dist/util/git-safety.js.map +1 -0
  616. package/dist/workspace/dataplane-adapter.d.ts +260 -0
  617. package/dist/workspace/dataplane-adapter.d.ts.map +1 -0
  618. package/dist/workspace/dataplane-adapter.js +416 -0
  619. package/dist/workspace/dataplane-adapter.js.map +1 -0
  620. package/dist/workspace/index.d.ts +0 -1
  621. package/dist/workspace/index.d.ts.map +1 -1
  622. package/dist/workspace/index.js +0 -2
  623. package/dist/workspace/index.js.map +1 -1
  624. package/dist/workspace/landing/direct-push.d.ts.map +1 -1
  625. package/dist/workspace/landing/direct-push.js +22 -7
  626. package/dist/workspace/landing/direct-push.js.map +1 -1
  627. package/dist/workspace/landing/queue-to-branch.d.ts.map +1 -1
  628. package/dist/workspace/landing/queue-to-branch.js +1 -3
  629. package/dist/workspace/landing/queue-to-branch.js.map +1 -1
  630. package/dist/workspace/types.d.ts +0 -13
  631. package/dist/workspace/types.d.ts.map +1 -1
  632. package/dist/workspace/workspace-manager.d.ts +0 -11
  633. package/dist/workspace/workspace-manager.d.ts.map +1 -1
  634. package/dist/workspace/workspace-manager.js +0 -30
  635. package/dist/workspace/workspace-manager.js.map +1 -1
  636. package/package.json +28 -2
  637. package/templates/teams/self-driving/prompts/grinder.md +1 -0
  638. package/templates/teams/self-driving/prompts/judge.md +1 -0
  639. package/templates/teams/self-driving/prompts/planner.md +1 -0
  640. package/templates/teams/self-driving/roles/grinder.yaml +15 -0
  641. package/templates/teams/self-driving/roles/judge.yaml +10 -0
  642. package/templates/teams/self-driving/roles/planner.yaml +16 -0
  643. package/.claude/commands/openspec/apply.md +0 -23
  644. package/.claude/commands/openspec/archive.md +0 -27
  645. package/.claude/commands/openspec/proposal.md +0 -28
  646. package/.claude/settings.json +0 -133
  647. package/.gitattributes +0 -3
  648. package/.opentasks/config.json +0 -9
  649. package/.opentasks/graph.jsonl +0 -0
  650. package/.sessionlog/settings.json +0 -4
  651. package/.sudocode/issues.jsonl +0 -183
  652. package/.sudocode/specs.jsonl +0 -56
  653. package/AGENTS.md +0 -18
  654. package/CLAUDE.md +0 -923
  655. package/docs/architecture.md +0 -508
  656. package/docs/configuration.md +0 -323
  657. package/docs/conflict-recovery.md +0 -472
  658. package/docs/design/task-dispatcher.md +0 -880
  659. package/docs/design-subsystem-extraction.md +0 -627
  660. package/docs/git-cascade-integration-gaps.md +0 -678
  661. package/docs/implementation-details.md +0 -1127
  662. package/docs/implementation-summary.md +0 -448
  663. package/docs/lifecycle-events-design.md +0 -111
  664. package/docs/mail-integration.md +0 -608
  665. package/docs/openhive-capability-summary.md +0 -415
  666. package/docs/openhive-integration.md +0 -415
  667. package/docs/plan-self-driving-support.md +0 -433
  668. package/docs/roadmap-v2-gaps.md +0 -216
  669. package/docs/spec-self-driving-support.md +0 -462
  670. package/docs/team-templates.md +0 -860
  671. package/docs/teams.md +0 -306
  672. package/docs/trigger-system-design.md +0 -333
  673. package/docs/troubleshooting.md +0 -489
  674. package/docs/workspace-interfaces.md +0 -731
  675. package/docs/workspace-redesign-plan.md +0 -302
  676. package/examples/distributed-peer-communication.ts +0 -202
  677. package/examples/local-peer-communication.ts +0 -165
  678. package/index.js +0 -2
  679. package/mvp_docs/agent-execution-system.md +0 -347
  680. package/mvp_docs/agent-interface.md +0 -580
  681. package/mvp_docs/data-structures.md +0 -701
  682. package/mvp_docs/dynamic-meta-orchestration.md +0 -116
  683. package/mvp_docs/multi-agent-interaction-design.md +0 -779
  684. package/mvp_docs/mvp-implementation-plan.md +0 -1148
  685. package/renovate.json5 +0 -6
  686. package/scripts/test-acp-integration.ts +0 -422
  687. package/src/__tests__/boot-v2.test.ts +0 -631
  688. package/src/__tests__/e2e/acp-over-map-live.e2e.test.ts +0 -496
  689. package/src/__tests__/e2e/acp-over-map.e2e.test.ts +0 -457
  690. package/src/__tests__/e2e/agent-lifecycle.e2e.test.ts +0 -770
  691. package/src/__tests__/e2e/auto-sync.e2e.test.ts +0 -257
  692. package/src/__tests__/e2e/bootstrap.e2e.test.ts +0 -319
  693. package/src/__tests__/e2e/cascade-rebase.e2e.test.ts +0 -254
  694. package/src/__tests__/e2e/cc-swarm-bridge.e2e.test.ts +0 -253
  695. package/src/__tests__/e2e/cli-run.e2e.test.ts +0 -167
  696. package/src/__tests__/e2e/cognitive-workspace.e2e.test.ts +0 -282
  697. package/src/__tests__/e2e/dispatch-coordination.e2e.test.ts +0 -495
  698. package/src/__tests__/e2e/dispatch-live.e2e.test.ts +0 -564
  699. package/src/__tests__/e2e/dispatch-opentasks.e2e.test.ts +0 -496
  700. package/src/__tests__/e2e/dispatch-phase2-live.e2e.test.ts +0 -456
  701. package/src/__tests__/e2e/dispatch-phase2.e2e.test.ts +0 -386
  702. package/src/__tests__/e2e/dispatch.e2e.test.ts +0 -376
  703. package/src/__tests__/e2e/done-scenarios.e2e.test.ts +0 -322
  704. package/src/__tests__/e2e/live-agent.e2e.test.ts +0 -1330
  705. package/src/__tests__/e2e/map-server.e2e.test.ts +0 -128
  706. package/src/__tests__/e2e/map-sidecar.e2e.test.ts +0 -139
  707. package/src/__tests__/e2e/opentasks-integration.e2e.test.ts +0 -280
  708. package/src/__tests__/e2e/pull-mode.e2e.test.ts +0 -632
  709. package/src/__tests__/e2e/resume-continue.e2e.test.ts +0 -312
  710. package/src/__tests__/e2e/self-driving-v3.e2e.test.ts +0 -197
  711. package/src/__tests__/e2e/spawn-resolver.e2e.test.ts +0 -200
  712. package/src/__tests__/e2e/swarmkit-integration.e2e.test.ts +0 -562
  713. package/src/__tests__/e2e/swarmkit-live.e2e.test.ts +0 -1049
  714. package/src/__tests__/e2e/trajectory-tracking.e2e.test.ts +0 -258
  715. package/src/__tests__/e2e/trigger-wake.e2e.test.ts +0 -257
  716. package/src/__tests__/e2e/workspace-lifecycle.e2e.test.ts +0 -383
  717. package/src/__tests__/e2e/workspace-v3.e2e.test.ts +0 -413
  718. package/src/acp/__tests__/claude-code-replay.test.ts +0 -225
  719. package/src/acp/__tests__/macro-agent.test.ts +0 -387
  720. package/src/acp/__tests__/session-mapper.test.ts +0 -152
  721. package/src/acp/__tests__/websocket-server.test.ts +0 -194
  722. package/src/acp/claude-code-replay.ts +0 -208
  723. package/src/acp/index.ts +0 -32
  724. package/src/acp/macro-agent.ts +0 -995
  725. package/src/acp/map-bridge.ts +0 -193
  726. package/src/acp/session-mapper.ts +0 -116
  727. package/src/acp/types.ts +0 -99
  728. package/src/acp/websocket-server.ts +0 -213
  729. package/src/adapters/__tests__/federation.test.ts +0 -256
  730. package/src/adapters/__tests__/inbox-adapter.test.ts +0 -316
  731. package/src/adapters/__tests__/tasks-adapter.test.ts +0 -270
  732. package/src/adapters/federation.ts +0 -185
  733. package/src/adapters/inbox-adapter.ts +0 -292
  734. package/src/adapters/inbox-client-adapter.ts +0 -173
  735. package/src/adapters/index.ts +0 -44
  736. package/src/adapters/opentasks-daemon.ts +0 -252
  737. package/src/adapters/tasks-adapter.ts +0 -330
  738. package/src/adapters/types.ts +0 -286
  739. package/src/agent/__tests__/agent-manager-topology.test.ts +0 -73
  740. package/src/agent/__tests__/agent-manager-v2.completion-signal.test.ts +0 -284
  741. package/src/agent/__tests__/agent-manager-v2.permission-interception.test.ts +0 -296
  742. package/src/agent/__tests__/agent-manager-v2.permissions.test.ts +0 -233
  743. package/src/agent/__tests__/agent-manager-v2.test.ts +0 -614
  744. package/src/agent/__tests__/agent-store.test.ts +0 -465
  745. package/src/agent/__tests__/task-ref-resolution.test.ts +0 -231
  746. package/src/agent/agent-manager-v2.ts +0 -2187
  747. package/src/agent/agent-manager.ts +0 -403
  748. package/src/agent/agent-store.ts +0 -409
  749. package/src/agent/index.ts +0 -7
  750. package/src/agent/prompts/coordinator-signals.ts +0 -115
  751. package/src/agent/prompts/index.ts +0 -7
  752. package/src/agent/system-prompt.ts +0 -298
  753. package/src/agent/types.ts +0 -480
  754. package/src/agent-detection/__tests__/command-builder.test.ts +0 -336
  755. package/src/agent-detection/__tests__/detector.test.ts +0 -768
  756. package/src/agent-detection/__tests__/registry.test.ts +0 -254
  757. package/src/agent-detection/command-builder.ts +0 -90
  758. package/src/agent-detection/detector.ts +0 -307
  759. package/src/agent-detection/index.ts +0 -36
  760. package/src/agent-detection/registry.ts +0 -200
  761. package/src/agent-detection/types.ts +0 -184
  762. package/src/api/__tests__/server.test.ts +0 -292
  763. package/src/api/index.ts +0 -8
  764. package/src/api/server.ts +0 -380
  765. package/src/api/types.ts +0 -39
  766. package/src/auth/__tests__/token.test.ts +0 -100
  767. package/src/auth/index.ts +0 -1
  768. package/src/auth/token.ts +0 -82
  769. package/src/boot-v2.ts +0 -1343
  770. package/src/cli/__tests__/stable-instance-id.test.ts +0 -57
  771. package/src/cli/acp.ts +0 -101
  772. package/src/cli/inbox-mcp-proxy.ts +0 -56
  773. package/src/cli/index.ts +0 -566
  774. package/src/cli/mcp.ts +0 -305
  775. package/src/cli/parse-args.ts +0 -54
  776. package/src/cli/stable-instance-id.ts +0 -14
  777. package/src/cognitive/__tests__/macro-agent-backend.test.ts +0 -673
  778. package/src/cognitive/__tests__/session-converter.test.ts +0 -423
  779. package/src/cognitive/__tests__/workspace-handler.test.ts +0 -221
  780. package/src/cognitive/analyst-role.ts +0 -59
  781. package/src/cognitive/index.ts +0 -49
  782. package/src/cognitive/macro-agent-backend.ts +0 -402
  783. package/src/cognitive/session-converter.ts +0 -151
  784. package/src/cognitive/types.ts +0 -187
  785. package/src/cognitive/workspace-handler.ts +0 -163
  786. package/src/config/index.ts +0 -9
  787. package/src/config/project-config.ts +0 -294
  788. package/src/control/__tests__/control-resilience.test.ts +0 -251
  789. package/src/control/__tests__/control-socket.test.ts +0 -240
  790. package/src/control/control-client.ts +0 -337
  791. package/src/control/control-server.ts +0 -298
  792. package/src/control/index.ts +0 -17
  793. package/src/control/types.ts +0 -95
  794. package/src/dispatch/CLAUDE.md +0 -129
  795. package/src/dispatch/__tests__/loadout-translation.test.ts +0 -141
  796. package/src/dispatch/__tests__/mail-inbound-consumer.integration.test.ts +0 -519
  797. package/src/dispatch/__tests__/mail-inbound-consumer.test.ts +0 -800
  798. package/src/dispatch/__tests__/mail-inbound-reuse-consumer.test.ts +0 -575
  799. package/src/dispatch/__tests__/permission-evaluator.test.ts +0 -196
  800. package/src/dispatch/__tests__/permission-overlay.test.ts +0 -56
  801. package/src/dispatch/__tests__/permissions-handler.test.ts +0 -168
  802. package/src/dispatch/__tests__/spawn-agent-handler.test.ts +0 -282
  803. package/src/dispatch/loadout-translation.ts +0 -138
  804. package/src/dispatch/mail-inbound-consumer.ts +0 -560
  805. package/src/dispatch/mail-inbound-reuse-consumer.ts +0 -479
  806. package/src/dispatch/permission-evaluator.ts +0 -191
  807. package/src/dispatch/permission-overlay.ts +0 -89
  808. package/src/dispatch/permissions-handler.ts +0 -112
  809. package/src/dispatch/spawn-agent-handler.ts +0 -160
  810. package/src/index.ts +0 -117
  811. package/src/integrations/__tests__/context-builder.test.ts +0 -218
  812. package/src/integrations/__tests__/sessionlog.test.ts +0 -498
  813. package/src/integrations/__tests__/skilltree.test.ts +0 -136
  814. package/src/integrations/context-builder.ts +0 -280
  815. package/src/integrations/sessionlog.ts +0 -194
  816. package/src/integrations/skilltree.ts +0 -184
  817. package/src/lifecycle/__tests__/cascade-consolidation.test.ts +0 -240
  818. package/src/lifecycle/__tests__/handlers-v2.test.ts +0 -565
  819. package/src/lifecycle/cascade.ts +0 -335
  820. package/src/lifecycle/cleanup.ts +0 -373
  821. package/src/lifecycle/handlers-v2.ts +0 -508
  822. package/src/lifecycle/index.ts +0 -76
  823. package/src/lifecycle/types.ts +0 -260
  824. package/src/map/__tests__/cascade-bridge.test.ts +0 -229
  825. package/src/map/__tests__/cascade-diff-server.test.ts +0 -434
  826. package/src/map/__tests__/emit-event.test.ts +0 -71
  827. package/src/map/__tests__/lifecycle-bridge.test.ts +0 -430
  828. package/src/map/__tests__/mail-bridge.test.ts +0 -321
  829. package/src/map/__tests__/permission-forwarding.test.ts +0 -143
  830. package/src/map/__tests__/sidecar-diff-install-smoke.test.ts +0 -90
  831. package/src/map/__tests__/sidecar-integration.test.ts +0 -190
  832. package/src/map/__tests__/task-bridge.test.ts +0 -153
  833. package/src/map/__tests__/trajectory-reporter.test.ts +0 -173
  834. package/src/map/acp-bridge.ts +0 -293
  835. package/src/map/cascade-action-handler.ts +0 -205
  836. package/src/map/cascade-bridge.ts +0 -339
  837. package/src/map/cascade-diff-server.ts +0 -404
  838. package/src/map/cc-swarm-hooks.ts +0 -242
  839. package/src/map/coordination-handler.ts +0 -232
  840. package/src/map/index.ts +0 -18
  841. package/src/map/lifecycle-bridge.ts +0 -236
  842. package/src/map/mail-bridge.ts +0 -263
  843. package/src/map/repo-workspace.ts +0 -82
  844. package/src/map/server.ts +0 -758
  845. package/src/map/sidecar.ts +0 -826
  846. package/src/map/task-bridge.ts +0 -89
  847. package/src/map/trajectory-reporter.ts +0 -124
  848. package/src/map/types.ts +0 -304
  849. package/src/mcp/__tests__/mcp-server-v2.test.ts +0 -236
  850. package/src/mcp/index.ts +0 -6
  851. package/src/mcp/mcp-server-v2.ts +0 -485
  852. package/src/mcp/tools/done-v2.ts +0 -213
  853. package/src/mcp/types.ts +0 -432
  854. package/src/metrics/__tests__/metrics.test.ts +0 -205
  855. package/src/metrics/index.ts +0 -13
  856. package/src/metrics/metrics.ts +0 -151
  857. package/src/metrics/types.ts +0 -63
  858. package/src/roles/__tests__/config-loader.test.ts +0 -540
  859. package/src/roles/builtin/coordinator.ts +0 -75
  860. package/src/roles/builtin/generic.ts +0 -39
  861. package/src/roles/builtin/index.ts +0 -51
  862. package/src/roles/builtin/integrator.ts +0 -62
  863. package/src/roles/builtin/monitor.ts +0 -65
  864. package/src/roles/builtin/worker.ts +0 -134
  865. package/src/roles/capabilities.ts +0 -257
  866. package/src/roles/config-loader.ts +0 -405
  867. package/src/roles/index.ts +0 -141
  868. package/src/roles/registry.ts +0 -713
  869. package/src/roles/types.ts +0 -344
  870. package/src/store/index.ts +0 -8
  871. package/src/store/types/agents.ts +0 -69
  872. package/src/store/types/events.ts +0 -91
  873. package/src/store/types/index.ts +0 -9
  874. package/src/store/types/messages.ts +0 -32
  875. package/src/store/types/primitives.ts +0 -9
  876. package/src/store/types/tasks.ts +0 -124
  877. package/src/teams/__tests__/team-manager-v2.test.ts +0 -425
  878. package/src/teams/__tests__/team-runtime-v2.test.ts +0 -402
  879. package/src/teams/index.ts +0 -29
  880. package/src/teams/seed-defaults.ts +0 -83
  881. package/src/teams/team-loader.ts +0 -476
  882. package/src/teams/team-manager-v2.ts +0 -343
  883. package/src/teams/team-runtime-v2.ts +0 -943
  884. package/src/teams/types.ts +0 -276
  885. package/src/trigger/__tests__/cron-service.test.ts +0 -548
  886. package/src/trigger/__tests__/scheduler.test.ts +0 -371
  887. package/src/trigger/__tests__/system-event-queue.test.ts +0 -147
  888. package/src/trigger/__tests__/trigger-system-v2.test.ts +0 -257
  889. package/src/trigger/__tests__/wake-manager.test.ts +0 -356
  890. package/src/trigger/__tests__/webhook-handler.test.ts +0 -567
  891. package/src/trigger/index.ts +0 -110
  892. package/src/trigger/queue/index.ts +0 -21
  893. package/src/trigger/queue/system-event-queue.ts +0 -232
  894. package/src/trigger/queue/types.ts +0 -149
  895. package/src/trigger/sources/cron/cron-service.ts +0 -499
  896. package/src/trigger/sources/cron/index.ts +0 -41
  897. package/src/trigger/sources/cron/scheduler.ts +0 -344
  898. package/src/trigger/sources/cron/types.ts +0 -333
  899. package/src/trigger/sources/index.ts +0 -10
  900. package/src/trigger/sources/webhook/index.ts +0 -25
  901. package/src/trigger/sources/webhook/types.ts +0 -205
  902. package/src/trigger/sources/webhook/webhook-handler.ts +0 -410
  903. package/src/trigger/strategies/ai-router.ts +0 -170
  904. package/src/trigger/trigger-system-v2.ts +0 -536
  905. package/src/trigger/types.ts +0 -228
  906. package/src/trigger/wake/index.ts +0 -22
  907. package/src/trigger/wake/types.ts +0 -162
  908. package/src/trigger/wake/wake-manager.ts +0 -390
  909. package/src/workspace/__tests__/git-cascade-adapter.test.ts +0 -563
  910. package/src/workspace/__tests__/land-dispatch.test.ts +0 -214
  911. package/src/workspace/__tests__/self-driving-yaml.test.ts +0 -122
  912. package/src/workspace/__tests__/shared-worktree-refcount.test.ts +0 -154
  913. package/src/workspace/__tests__/standalone-mode.test.ts +0 -118
  914. package/src/workspace/__tests__/workspace-manager-v3.test.ts +0 -245
  915. package/src/workspace/__tests__/yaml-schema.test.ts +0 -210
  916. package/src/workspace/config.ts +0 -165
  917. package/src/workspace/git-cascade-adapter.ts +0 -1213
  918. package/src/workspace/index.ts +0 -110
  919. package/src/workspace/landing/__tests__/strategies.test.ts +0 -184
  920. package/src/workspace/landing/direct-push.ts +0 -91
  921. package/src/workspace/landing/index.ts +0 -40
  922. package/src/workspace/landing/merge-to-parent.ts +0 -229
  923. package/src/workspace/landing/optimistic-push.ts +0 -36
  924. package/src/workspace/landing/queue-to-branch.ts +0 -108
  925. package/src/workspace/merge-queue/__tests__/conflict-resolution-git.e2e.test.ts +0 -641
  926. package/src/workspace/merge-queue/__tests__/conflict-resolution.test.ts +0 -707
  927. package/src/workspace/merge-queue/__tests__/merge-queue-concurrent.test.ts +0 -628
  928. package/src/workspace/merge-queue/__tests__/merge-queue-edge-cases.test.ts +0 -1217
  929. package/src/workspace/merge-queue/__tests__/merge-queue.test.ts +0 -506
  930. package/src/workspace/merge-queue/__tests__/real-git-operations.e2e.test.ts +0 -556
  931. package/src/workspace/merge-queue/__tests__/resolver-flow.test.ts +0 -472
  932. package/src/workspace/merge-queue/index.ts +0 -38
  933. package/src/workspace/merge-queue/merge-queue.ts +0 -585
  934. package/src/workspace/merge-queue/schema.ts +0 -98
  935. package/src/workspace/merge-queue/types.ts +0 -316
  936. package/src/workspace/pool/__tests__/worktree-pool.integration.test.ts +0 -1281
  937. package/src/workspace/pool/__tests__/worktree-pool.test.ts +0 -590
  938. package/src/workspace/pool/index.ts +0 -26
  939. package/src/workspace/pool/types.ts +0 -276
  940. package/src/workspace/pool/worktree-pool.ts +0 -659
  941. package/src/workspace/recovery/__tests__/auto-resolve-integration.test.ts +0 -127
  942. package/src/workspace/recovery/__tests__/spawn-resolver.test.ts +0 -139
  943. package/src/workspace/recovery/__tests__/strategies.test.ts +0 -145
  944. package/src/workspace/recovery/abandon.ts +0 -51
  945. package/src/workspace/recovery/auto-resolve.ts +0 -119
  946. package/src/workspace/recovery/defer.ts +0 -23
  947. package/src/workspace/recovery/escalate.ts +0 -30
  948. package/src/workspace/recovery/index.ts +0 -58
  949. package/src/workspace/recovery/spawn-resolver.ts +0 -152
  950. package/src/workspace/recovery/types.ts +0 -54
  951. package/src/workspace/strategies/index.ts +0 -18
  952. package/src/workspace/strategies/optimistic.ts +0 -139
  953. package/src/workspace/strategies/queue.ts +0 -81
  954. package/src/workspace/strategies/registry.ts +0 -89
  955. package/src/workspace/strategies/trunk.ts +0 -123
  956. package/src/workspace/strategies/types.ts +0 -145
  957. package/src/workspace/topology/__tests__/yaml-driven.test.ts +0 -345
  958. package/src/workspace/topology/index.ts +0 -18
  959. package/src/workspace/topology/no-workspace.ts +0 -39
  960. package/src/workspace/topology/types.ts +0 -116
  961. package/src/workspace/topology/yaml-driven.ts +0 -316
  962. package/src/workspace/types-v3.ts +0 -162
  963. package/src/workspace/types.ts +0 -541
  964. package/src/workspace/workspace-manager.ts +0 -1577
  965. package/src/workspace/yaml-schema.ts +0 -216
  966. package/test_fixtures/README.md +0 -425
  967. package/test_fixtures/fixtures/behaviors/coordinators.ts +0 -196
  968. package/test_fixtures/fixtures/behaviors/index.ts +0 -62
  969. package/test_fixtures/fixtures/behaviors/integrators.ts +0 -143
  970. package/test_fixtures/fixtures/behaviors/monitors.ts +0 -199
  971. package/test_fixtures/fixtures/behaviors/workers.ts +0 -348
  972. package/test_fixtures/fixtures/index.ts +0 -7
  973. package/test_fixtures/fixtures/projects/index.ts +0 -23
  974. package/test_fixtures/fixtures/projects/project-with-specs.ts +0 -44
  975. package/test_fixtures/fixtures/projects/typescript-project.ts +0 -200
  976. package/test_fixtures/fixtures/repos/index.ts +0 -6
  977. package/test_fixtures/fixtures/repos/temp-repo-factory.ts +0 -299
  978. package/test_fixtures/fixtures/repos/types.ts +0 -174
  979. package/test_fixtures/harness/assertions/harness-assertions.ts +0 -752
  980. package/test_fixtures/harness/assertions/index.ts +0 -8
  981. package/test_fixtures/harness/index.ts +0 -15
  982. package/test_fixtures/harness/simulator/agent-simulator.ts +0 -768
  983. package/test_fixtures/harness/simulator/behavior-executor.ts +0 -580
  984. package/test_fixtures/harness/simulator/index.ts +0 -14
  985. package/test_fixtures/harness/simulator/types.ts +0 -459
  986. package/test_fixtures/harness/test-harness.ts +0 -770
  987. package/test_fixtures/harness/timing/event-stepper.ts +0 -344
  988. package/test_fixtures/harness/timing/index.ts +0 -8
  989. package/tsconfig.json +0 -21
  990. package/vitest.config.ts +0 -30
  991. package/vitest.e2e.config.ts +0 -28
  992. package/vitest.setup.ts +0 -12
@@ -0,0 +1,451 @@
1
+ /**
2
+ * Integrator Done Handler
3
+ *
4
+ * Handles done() for integrator agents:
5
+ * - Checks merge queue status for the stream
6
+ * - Processes any pending merge requests before termination
7
+ * - Emits INTEGRATOR_DONE signal to coordinator
8
+ *
9
+ * @module lifecycle/handlers/integrator
10
+ * @see s-32xs Self-Cleaning Workers spec
11
+ * @see s-bcqm Change Management spec
12
+ */
13
+ import { execSync } from "child_process";
14
+ import { attemptMerge, abortMerge, getCurrentBranch } from "../cleanup.js";
15
+ // =============================================================================
16
+ // Merge Queue Helpers
17
+ // =============================================================================
18
+ /**
19
+ * Check if merge queue is empty for a stream
20
+ */
21
+ function isMergeQueueEmpty(streamId, mergeQueue) {
22
+ if (!mergeQueue || !streamId) {
23
+ // No queue or no stream - treat as empty
24
+ return true;
25
+ }
26
+ return mergeQueue.getQueueDepth(streamId) === 0;
27
+ }
28
+ /**
29
+ * Get the number of pending merge requests for a stream
30
+ */
31
+ function getPendingCount(streamId, mergeQueue) {
32
+ if (!mergeQueue || !streamId) {
33
+ return 0;
34
+ }
35
+ return mergeQueue.getQueueDepth(streamId);
36
+ }
37
+ /**
38
+ * Spawn a resolver worker to handle merge conflicts.
39
+ *
40
+ * @param mr - The merge request with conflicts
41
+ * @param conflictFiles - List of files with conflicts
42
+ * @param context - Lifecycle context
43
+ * @param deps - Handler dependencies
44
+ * @returns PendingResolver info or null if spawn failed
45
+ */
46
+ async function spawnResolverWorker(mr, conflictFiles, context, deps) {
47
+ if (!deps.agentManager) {
48
+ console.warn("[Integrator] Cannot spawn resolver: no agentManager available");
49
+ return null;
50
+ }
51
+ const timestamp = Date.now();
52
+ const resolverBranch = `resolver/${mr.id}@${timestamp}`;
53
+ // Build task description with conflict context
54
+ const taskDescription = `
55
+ Resolve merge conflict for MR ${mr.id}.
56
+
57
+ **Original worker branch**: ${mr.workerBranch}
58
+ **Worker agent**: ${mr.workerAgentId}
59
+ **Task ID**: ${mr.taskId}
60
+
61
+ **Conflicting files**:
62
+ ${conflictFiles.map((f) => `- ${f}`).join("\n")}
63
+
64
+ **Your task**:
65
+ 1. The baseline has been updated since the original work was done
66
+ 2. Apply the changes from the original work to the updated baseline
67
+ 3. Resolve any conflicts that arise in the listed files
68
+ 4. Ensure tests pass after resolution
69
+ 5. Call done() when complete - do NOT submit to merge queue
70
+
71
+ **Important**: You are a resolver worker. When you call done(), a RESOLVER_DONE signal
72
+ will be emitted instead of MERGE_REQUEST, and your changes will be merged inline by
73
+ the integrator.
74
+ `.trim();
75
+ try {
76
+ const spawned = await deps.agentManager.spawn({
77
+ task: taskDescription,
78
+ parent: context.agentId,
79
+ role: "worker.resolver",
80
+ streamId: context.streamId,
81
+ // Store mrId in agent config for the resolver to access
82
+ config: {
83
+ env: {
84
+ MACRO_RESOLVER_MR_ID: mr.id,
85
+ },
86
+ },
87
+ });
88
+ return {
89
+ mrId: mr.id,
90
+ resolverId: spawned.id,
91
+ resolverBranch,
92
+ conflictFiles,
93
+ spawnedAt: timestamp,
94
+ };
95
+ }
96
+ catch (error) {
97
+ console.error(`[Integrator] Failed to spawn resolver for MR ${mr.id}: ${error instanceof Error ? error.message : error}`);
98
+ return null;
99
+ }
100
+ }
101
+ /**
102
+ * Process a single merge request from the queue
103
+ */
104
+ async function processSingleMerge(mergeQueue, mr, workspacePath, context, deps, expectedBranch) {
105
+ const { id: mrId, workerBranch } = mr;
106
+ // Verify workspace is on expected branch before merge
107
+ if (expectedBranch) {
108
+ const currentBranch = getCurrentBranch(workspacePath);
109
+ if (currentBranch !== expectedBranch) {
110
+ // Don't mark as processing if branch is wrong - this is a system error
111
+ return {
112
+ mrId,
113
+ success: false,
114
+ error: `Workspace is on branch '${currentBranch}', expected '${expectedBranch}'`,
115
+ };
116
+ }
117
+ }
118
+ // Mark as processing
119
+ mergeQueue.markProcessing(mrId);
120
+ // Attempt the merge
121
+ const mergeResult = attemptMerge(workerBranch, workspacePath);
122
+ if (mergeResult.success) {
123
+ if (mergeResult.alreadyMerged) {
124
+ // Branch was already merged - mark as merged with current HEAD
125
+ // This is a no-op merge but we track it for completeness
126
+ const currentHead = execSync("git rev-parse HEAD", {
127
+ cwd: workspacePath,
128
+ encoding: "utf-8",
129
+ }).trim();
130
+ mergeQueue.markMerged(mrId, currentHead);
131
+ return {
132
+ mrId,
133
+ success: true,
134
+ alreadyMerged: true,
135
+ };
136
+ }
137
+ if (mergeResult.mergeCommit) {
138
+ mergeQueue.markMerged(mrId, mergeResult.mergeCommit);
139
+ return {
140
+ mrId,
141
+ success: true,
142
+ mergeCommit: mergeResult.mergeCommit,
143
+ };
144
+ }
145
+ }
146
+ // Merge failed - check for conflicts
147
+ if (mergeResult.conflicts && mergeResult.conflicts.length > 0) {
148
+ // Abort the merge
149
+ abortMerge(workspacePath);
150
+ // Attempt to spawn a resolver worker
151
+ const resolver = await spawnResolverWorker(mr, mergeResult.conflicts, context, deps);
152
+ if (resolver) {
153
+ // Resolver spawned - mark conflict with resolver task ID
154
+ mergeQueue.markConflict(mrId, mergeResult.conflicts, resolver.resolverId);
155
+ // Emit CONFLICT_DETECTED signal for notification
156
+ deps.messageRouter.emitStatus({
157
+ from: { agent_id: context.agentId },
158
+ status_type: "checkpoint",
159
+ summary: `Merge conflict detected for MR ${mrId} - resolver spawned`,
160
+ details: {
161
+ signal: "CONFLICT_DETECTED",
162
+ mrId,
163
+ conflictFiles: mergeResult.conflicts,
164
+ resolverSpawned: true,
165
+ resolverId: resolver.resolverId,
166
+ resolverBranch: resolver.resolverBranch,
167
+ },
168
+ });
169
+ return {
170
+ mrId,
171
+ success: false,
172
+ conflicts: mergeResult.conflicts,
173
+ resolverSpawned: true,
174
+ resolver,
175
+ };
176
+ }
177
+ else {
178
+ // Couldn't spawn resolver - mark conflict without resolver
179
+ mergeQueue.markConflict(mrId, mergeResult.conflicts);
180
+ // Emit CONFLICT_DETECTED signal without resolver
181
+ deps.messageRouter.emitStatus({
182
+ from: { agent_id: context.agentId },
183
+ status_type: "checkpoint",
184
+ summary: `Merge conflict detected for MR ${mrId} - manual resolution required`,
185
+ details: {
186
+ signal: "CONFLICT_DETECTED",
187
+ mrId,
188
+ conflictFiles: mergeResult.conflicts,
189
+ resolverSpawned: false,
190
+ },
191
+ });
192
+ return {
193
+ mrId,
194
+ success: false,
195
+ conflicts: mergeResult.conflicts,
196
+ };
197
+ }
198
+ }
199
+ // Non-conflict error - abort and mark as conflict with error
200
+ abortMerge(workspacePath);
201
+ mergeQueue.markConflict(mrId, [], undefined);
202
+ return {
203
+ mrId,
204
+ success: false,
205
+ error: mergeResult.error ?? "Unknown merge error",
206
+ };
207
+ }
208
+ /**
209
+ * Process all pending merge requests for a stream
210
+ */
211
+ async function processAllPendingMerges(streamId, mergeQueue, workspacePath, context, deps, expectedBranch) {
212
+ let processed = 0;
213
+ let merged = 0;
214
+ let conflicts = 0;
215
+ let branchErrors = 0;
216
+ const pendingResolvers = [];
217
+ // Process queue until empty
218
+ while (true) {
219
+ const next = mergeQueue.getNext(streamId);
220
+ if (!next)
221
+ break;
222
+ const result = await processSingleMerge(mergeQueue, next, workspacePath, context, deps, expectedBranch);
223
+ // Check for branch verification error - if we're on the wrong branch,
224
+ // no merges will succeed, so break out of the loop to avoid infinite loop
225
+ // (the MR was never marked as processing, so it would be returned again)
226
+ if (!result.success && result.error?.includes("expected")) {
227
+ branchErrors++;
228
+ break;
229
+ }
230
+ processed++;
231
+ if (result.success) {
232
+ merged++;
233
+ }
234
+ else {
235
+ conflicts++;
236
+ // Track spawned resolver
237
+ if (result.resolverSpawned && result.resolver) {
238
+ pendingResolvers.push(result.resolver);
239
+ }
240
+ }
241
+ }
242
+ return { processed, merged, conflicts, branchErrors, pendingResolvers };
243
+ }
244
+ // =============================================================================
245
+ // Integrator Handler
246
+ // =============================================================================
247
+ /**
248
+ * Handle done() for integrator agents
249
+ *
250
+ * Processing steps:
251
+ * 1. Process any pending merge requests in the queue
252
+ * 2. Check final queue status
253
+ * 3. Emit INTEGRATOR_DONE signal to coordinator
254
+ * 4. Return shouldTerminate based on queue status
255
+ */
256
+ export async function handleIntegratorDone(context, args, _cleanupStatus, deps) {
257
+ const signalsEmitted = [];
258
+ const cleanupActions = [];
259
+ const warnings = [];
260
+ const streamId = context.streamId;
261
+ const mergeQueue = deps.mergeQueue;
262
+ const workspacePath = deps.workspacePath ?? context.workspacePath;
263
+ // ─────────────────────────────────────────────────────────────────────────────
264
+ // Step 1: Process any pending merge requests before termination
265
+ // ─────────────────────────────────────────────────────────────────────────────
266
+ // Track pending resolvers for the termination decision
267
+ let activePendingResolvers = [];
268
+ if (mergeQueue && streamId && workspacePath) {
269
+ const pendingBefore = getPendingCount(streamId, mergeQueue);
270
+ if (pendingBefore > 0) {
271
+ cleanupActions.push(`Found ${pendingBefore} pending merge request(s) - processing before termination`);
272
+ try {
273
+ // Pass the expected integration branch for verification
274
+ const expectedBranch = context.branch ?? "integration";
275
+ const result = await processAllPendingMerges(streamId, mergeQueue, workspacePath, context, deps, expectedBranch);
276
+ cleanupActions.push(`Processed ${result.processed} merge request(s): ${result.merged} merged, ${result.conflicts} conflicts`);
277
+ if (result.conflicts > 0) {
278
+ if (result.pendingResolvers.length > 0) {
279
+ cleanupActions.push(`Spawned ${result.pendingResolvers.length} resolver(s) for conflicts`);
280
+ activePendingResolvers = result.pendingResolvers;
281
+ }
282
+ else {
283
+ warnings.push(`${result.conflicts} merge request(s) had conflicts - manual resolution required`);
284
+ }
285
+ }
286
+ if (result.branchErrors > 0) {
287
+ warnings.push(`${result.branchErrors} merge request(s) skipped due to workspace not being on expected branch '${expectedBranch}'`);
288
+ }
289
+ }
290
+ catch (error) {
291
+ warnings.push(`Error processing merge queue: ${error instanceof Error ? error.message : "unknown"}`);
292
+ }
293
+ }
294
+ }
295
+ else if (!mergeQueue) {
296
+ cleanupActions.push("Merge queue not configured - skipping queue processing");
297
+ }
298
+ else if (!streamId) {
299
+ cleanupActions.push("No stream ID in context - skipping queue processing");
300
+ }
301
+ else if (!workspacePath) {
302
+ cleanupActions.push("No workspace path available - skipping queue processing");
303
+ }
304
+ // ─────────────────────────────────────────────────────────────────────────────
305
+ // Step 2: Check final merge queue status
306
+ // ─────────────────────────────────────────────────────────────────────────────
307
+ const queueEmpty = isMergeQueueEmpty(streamId, mergeQueue);
308
+ const finalPending = getPendingCount(streamId, mergeQueue);
309
+ if (!queueEmpty) {
310
+ warnings.push(`Merge queue still has ${finalPending} pending request(s) - termination may be premature`);
311
+ }
312
+ cleanupActions.push(`Merge queue final status: ${queueEmpty ? "empty" : `${finalPending} pending`}`);
313
+ // ─────────────────────────────────────────────────────────────────────────────
314
+ // Step 3: Emit INTEGRATOR_DONE signal
315
+ // ─────────────────────────────────────────────────────────────────────────────
316
+ try {
317
+ deps.messageRouter.emitStatus({
318
+ from: { agent_id: context.agentId },
319
+ status_type: args.status === "completed" ? "completed" : "failed",
320
+ summary: args.summary ?? `Integrator done with status: ${args.status}`,
321
+ details: {
322
+ signal: "INTEGRATOR_DONE",
323
+ integratorId: context.agentId,
324
+ streamId,
325
+ status: args.status,
326
+ baseBranch: context.branch ?? "integration",
327
+ queueEmpty,
328
+ pendingCount: finalPending,
329
+ ...args.details,
330
+ },
331
+ });
332
+ signalsEmitted.push("INTEGRATOR_DONE");
333
+ }
334
+ catch (error) {
335
+ warnings.push(`Failed to emit INTEGRATOR_DONE: ${error instanceof Error ? error.message : "unknown"}`);
336
+ }
337
+ // ─────────────────────────────────────────────────────────────────────────────
338
+ // Return result - shouldTerminate depends on pending resolvers
339
+ // ─────────────────────────────────────────────────────────────────────────────
340
+ // If resolvers are active, integrator should stay alive to handle their completion
341
+ const hasActiveResolvers = activePendingResolvers.length > 0;
342
+ if (hasActiveResolvers) {
343
+ cleanupActions.push(`Staying alive to await ${activePendingResolvers.length} pending resolver(s)`);
344
+ // Include resolver info in the result for the agent to track
345
+ return {
346
+ shouldTerminate: false,
347
+ signalsEmitted,
348
+ cleanupActions,
349
+ warnings: warnings.length > 0 ? warnings : undefined,
350
+ // Include pending resolver info for the agent to handle RESOLVER_DONE
351
+ pendingResolvers: activePendingResolvers,
352
+ };
353
+ }
354
+ return {
355
+ shouldTerminate: true,
356
+ signalsEmitted,
357
+ cleanupActions,
358
+ warnings: warnings.length > 0 ? warnings : undefined,
359
+ };
360
+ }
361
+ /**
362
+ * Handle RESOLVER_DONE signal by performing inline merge of resolver branch.
363
+ *
364
+ * This is called when a resolver worker completes. The integrator should:
365
+ * 1. Merge the resolver branch into the integration branch
366
+ * 2. Mark the original MR as resolved via markResolverComplete()
367
+ * 3. If the merge also conflicts (nested conflict), escalate to coordinator
368
+ *
369
+ * @param mrId - The original merge request ID
370
+ * @param resolverBranch - Branch the resolver worked on
371
+ * @param context - Lifecycle context
372
+ * @param deps - Handler dependencies
373
+ * @returns Result of the inline merge
374
+ */
375
+ export async function handleResolverDone(mrId, resolverBranch, context, deps) {
376
+ const { mergeQueue, workspacePath, messageRouter } = deps;
377
+ if (!mergeQueue || !workspacePath) {
378
+ return {
379
+ success: false,
380
+ error: "Missing mergeQueue or workspacePath",
381
+ };
382
+ }
383
+ // Verify the MR exists and is in conflict state
384
+ const mr = mergeQueue.get(mrId);
385
+ if (!mr) {
386
+ return {
387
+ success: false,
388
+ error: `MR ${mrId} not found`,
389
+ };
390
+ }
391
+ if (mr.status !== "conflict") {
392
+ return {
393
+ success: false,
394
+ error: `MR ${mrId} is not in conflict state (status: ${mr.status})`,
395
+ };
396
+ }
397
+ // Attempt inline merge of resolver branch
398
+ const mergeResult = attemptMerge(resolverBranch, workspacePath, `Merge resolved changes for MR ${mrId}`);
399
+ if (mergeResult.success && mergeResult.mergeCommit) {
400
+ // Success! Mark the original MR as resolved
401
+ mergeQueue.markResolverComplete(mrId, mergeResult.mergeCommit, resolverBranch);
402
+ // Emit MERGE_COMPLETE signal
403
+ messageRouter.emitStatus({
404
+ from: { agent_id: context.agentId },
405
+ status_type: "completed",
406
+ summary: `MR ${mrId} resolved and merged`,
407
+ details: {
408
+ signal: "MERGE_COMPLETE",
409
+ mrId,
410
+ mergeCommit: mergeResult.mergeCommit,
411
+ resolvedVia: "resolver",
412
+ resolverBranch,
413
+ },
414
+ });
415
+ return {
416
+ success: true,
417
+ mergeCommit: mergeResult.mergeCommit,
418
+ };
419
+ }
420
+ // Resolver's merge also conflicted - this is a nested conflict!
421
+ if (mergeResult.conflicts && mergeResult.conflicts.length > 0) {
422
+ // Abort the failed merge
423
+ abortMerge(workspacePath);
424
+ // Emit CONFLICT_UNRESOLVED signal for escalation to coordinator
425
+ messageRouter.emitStatus({
426
+ from: { agent_id: context.agentId },
427
+ status_type: "failed",
428
+ summary: `Nested conflict: resolver for MR ${mrId} also conflicted - escalating`,
429
+ details: {
430
+ signal: "CONFLICT_UNRESOLVED",
431
+ mrId,
432
+ resolverBranch,
433
+ conflictFiles: mergeResult.conflicts,
434
+ reason: "resolver_conflict",
435
+ },
436
+ });
437
+ console.warn(`[Integrator] Nested conflict on MR ${mrId}: resolver branch ${resolverBranch} also conflicts`);
438
+ return {
439
+ success: false,
440
+ nestedConflict: true,
441
+ conflictFiles: mergeResult.conflicts,
442
+ };
443
+ }
444
+ // Other error
445
+ abortMerge(workspacePath);
446
+ return {
447
+ success: false,
448
+ error: mergeResult.error ?? "Unknown merge error",
449
+ };
450
+ }
451
+ //# sourceMappingURL=integrator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"integrator.js","sourceRoot":"","sources":["../../../src/lifecycle/handlers/integrator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Monitor Done Handler
3
+ *
4
+ * Handles done() for monitor agents:
5
+ * - Unsubscribes from events
6
+ * - Cleans up monitoring state
7
+ *
8
+ * @module lifecycle/handlers/monitor
9
+ * @see s-32xs Self-Cleaning Workers spec
10
+ */
11
+ import type { MessageRouter } from "../../router/message-router.js";
12
+ import type { LifecycleContext, DoneArgs, CleanupStatus, DoneHandlerResult } from "../types.js";
13
+ /**
14
+ * Dependencies for the monitor handler
15
+ */
16
+ export interface MonitorHandlerDeps {
17
+ /** Message router for managing subscriptions */
18
+ messageRouter: MessageRouter;
19
+ }
20
+ /**
21
+ * Handle done() for monitor agents
22
+ *
23
+ * Processing steps:
24
+ * 1. Unsubscribe from all event channels
25
+ * 2. Clean up any monitoring state
26
+ * 3. Return shouldTerminate=true
27
+ */
28
+ export declare function handleMonitorDone(context: LifecycleContext, args: DoneArgs, _cleanupStatus: CleanupStatus, deps: MonitorHandlerDeps): Promise<DoneHandlerResult>;
29
+ //# sourceMappingURL=monitor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"monitor.d.ts","sourceRoot":"","sources":["../../../src/lifecycle/handlers/monitor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,KAAK,EACV,gBAAgB,EAChB,QAAQ,EACR,aAAa,EACb,iBAAiB,EAClB,MAAM,aAAa,CAAC;AAMrB;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,gDAAgD;IAChD,aAAa,EAAE,aAAa,CAAC;CAC9B;AAMD;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,gBAAgB,EACzB,IAAI,EAAE,QAAQ,EACd,cAAc,EAAE,aAAa,EAC7B,IAAI,EAAE,kBAAkB,GACvB,OAAO,CAAC,iBAAiB,CAAC,CAiE5B"}
@@ -0,0 +1,79 @@
1
+ /**
2
+ * Monitor Done Handler
3
+ *
4
+ * Handles done() for monitor agents:
5
+ * - Unsubscribes from events
6
+ * - Cleans up monitoring state
7
+ *
8
+ * @module lifecycle/handlers/monitor
9
+ * @see s-32xs Self-Cleaning Workers spec
10
+ */
11
+ // =============================================================================
12
+ // Monitor Handler
13
+ // =============================================================================
14
+ /**
15
+ * Handle done() for monitor agents
16
+ *
17
+ * Processing steps:
18
+ * 1. Unsubscribe from all event channels
19
+ * 2. Clean up any monitoring state
20
+ * 3. Return shouldTerminate=true
21
+ */
22
+ export async function handleMonitorDone(context, args, _cleanupStatus, deps) {
23
+ const signalsEmitted = [];
24
+ const cleanupActions = [];
25
+ const warnings = [];
26
+ // ─────────────────────────────────────────────────────────────────────────────
27
+ // Step 1: Unsubscribe from all event channels
28
+ // ─────────────────────────────────────────────────────────────────────────────
29
+ try {
30
+ // Get current subscriptions
31
+ const subscriptions = deps.messageRouter.getSubscriptions(context.agentId);
32
+ // Unsubscribe from each
33
+ for (const sub of subscriptions) {
34
+ try {
35
+ deps.messageRouter.unsubscribe(context.agentId, sub);
36
+ cleanupActions.push(`Unsubscribed from ${sub.type}:${sub.target}`);
37
+ }
38
+ catch {
39
+ warnings.push(`Failed to unsubscribe from ${sub.type}:${sub.target}`);
40
+ }
41
+ }
42
+ if (subscriptions.length === 0) {
43
+ cleanupActions.push("No subscriptions to clean up");
44
+ }
45
+ }
46
+ catch (error) {
47
+ warnings.push(`Failed to get subscriptions: ${error instanceof Error ? error.message : "unknown"}`);
48
+ }
49
+ // ─────────────────────────────────────────────────────────────────────────────
50
+ // Step 2: Emit completion status
51
+ // ─────────────────────────────────────────────────────────────────────────────
52
+ try {
53
+ deps.messageRouter.emitStatus({
54
+ from: { agent_id: context.agentId },
55
+ status_type: args.status === "completed" ? "completed" : "failed",
56
+ summary: args.summary ?? `Monitor done with status: ${args.status}`,
57
+ details: {
58
+ signal: "STATUS",
59
+ monitorId: context.agentId,
60
+ status: args.status,
61
+ ...args.details,
62
+ },
63
+ });
64
+ signalsEmitted.push("STATUS");
65
+ }
66
+ catch (error) {
67
+ warnings.push(`Failed to emit status: ${error instanceof Error ? error.message : "unknown"}`);
68
+ }
69
+ // ─────────────────────────────────────────────────────────────────────────────
70
+ // Return result - shouldTerminate=true for monitors
71
+ // ─────────────────────────────────────────────────────────────────────────────
72
+ return {
73
+ shouldTerminate: true,
74
+ signalsEmitted,
75
+ cleanupActions,
76
+ warnings: warnings.length > 0 ? warnings : undefined,
77
+ };
78
+ }
79
+ //# sourceMappingURL=monitor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"monitor.js","sourceRoot":"","sources":["../../../src/lifecycle/handlers/monitor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAsBH,gFAAgF;AAChF,kBAAkB;AAClB,gFAAgF;AAEhF;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,OAAyB,EACzB,IAAc,EACd,cAA6B,EAC7B,IAAwB;IAExB,MAAM,cAAc,GAAa,EAAE,CAAC;IACpC,MAAM,cAAc,GAAa,EAAE,CAAC;IACpC,MAAM,QAAQ,GAAa,EAAE,CAAC;IAE9B,gFAAgF;IAChF,8CAA8C;IAC9C,gFAAgF;IAEhF,IAAI,CAAC;QACH,4BAA4B;QAC5B,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAE3E,wBAAwB;QACxB,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;YAChC,IAAI,CAAC;gBACH,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;gBACrD,cAAc,CAAC,IAAI,CAAC,qBAAqB,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;YACrE,CAAC;YAAC,MAAM,CAAC;gBACP,QAAQ,CAAC,IAAI,CAAC,8BAA8B,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;YACxE,CAAC;QACH,CAAC;QAED,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,cAAc,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,QAAQ,CAAC,IAAI,CACX,gCAAgC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,CACrF,CAAC;IACJ,CAAC;IAED,gFAAgF;IAChF,iCAAiC;IACjC,gFAAgF;IAEhF,IAAI,CAAC;QACH,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC;YAC5B,IAAI,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,OAAO,EAAE;YACnC,WAAW,EAAE,IAAI,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ;YACjE,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,6BAA6B,IAAI,CAAC,MAAM,EAAE;YACnE,OAAO,EAAE;gBACP,MAAM,EAAE,QAAQ;gBAChB,SAAS,EAAE,OAAO,CAAC,OAAO;gBAC1B,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,GAAG,IAAI,CAAC,OAAO;aAChB;SACF,CAAC,CAAC;QACH,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAChC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,QAAQ,CAAC,IAAI,CACX,0BAA0B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,CAC/E,CAAC;IACJ,CAAC;IAED,gFAAgF;IAChF,oDAAoD;IACpD,gFAAgF;IAEhF,OAAO;QACL,eAAe,EAAE,IAAI;QACrB,cAAc;QACd,cAAc;QACd,QAAQ,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;KACrD,CAAC;AACJ,CAAC"}
@@ -0,0 +1,56 @@
1
+ /**
2
+ * Worker Done Handler
3
+ *
4
+ * Handles done() for worker agents:
5
+ * - Commits workspace changes (no push - bare repo shared)
6
+ * - Creates checkpoints for task commits
7
+ * - Emits WORKER_DONE signal
8
+ * - Emits MERGE_REQUEST signal and submits to merge queue
9
+ * - Signals descendants to prepare for termination
10
+ *
11
+ * Note: Actual termination is handled by AgentManager after done() returns.
12
+ * The AgentManager.terminate() method cascades depth-first to all children.
13
+ * This handler emits signals for notification only.
14
+ *
15
+ * @module lifecycle/handlers/worker
16
+ * @see s-32xs Self-Cleaning Workers spec
17
+ * @see s-bcqm Change Management spec
18
+ */
19
+ import type { MessageRouter } from "../../router/message-router.js";
20
+ import type { AgentManager } from "../../agent/agent-manager.js";
21
+ import type { DataplaneAdapter } from "../../workspace/dataplane-adapter.js";
22
+ import type { MergeQueueInterface } from "../../workspace/merge-queue/types.js";
23
+ import type { LifecycleContext, DoneArgs, CleanupStatus, DoneHandlerResult } from "../types.js";
24
+ /**
25
+ * Dependencies for the worker handler
26
+ */
27
+ export interface WorkerHandlerDeps {
28
+ /** Message router for emitting signals */
29
+ messageRouter: MessageRouter;
30
+ /** Agent manager for cascade termination */
31
+ agentManager: AgentManager;
32
+ /** Dataplane adapter for checkpoint creation (optional) */
33
+ dataplane?: DataplaneAdapter;
34
+ /** Merge queue for submitting merge requests (optional) */
35
+ mergeQueue?: MergeQueueInterface;
36
+ /** Get workspace path for an agent (for resolver → integrator inline merge) */
37
+ getWorkspacePath?: (agentId: string) => string | undefined;
38
+ /** Optional integration strategy (from team config) */
39
+ integrationStrategy?: import("../../workspace/strategies/types.js").IntegrationStrategy;
40
+ /** Optional task mode from team config */
41
+ taskMode?: "push" | "pull";
42
+ }
43
+ /**
44
+ * Handle done() for worker agents
45
+ *
46
+ * Processing steps:
47
+ * 1. Commit any uncommitted changes
48
+ * 1.5. Create checkpoints for task commits (Phase 6)
49
+ * 2. Handle blocked/deferred status (emit HELP_NEEDED, return shouldTerminate=false)
50
+ * 3. Emit WORKER_DONE signal (for completed/failed)
51
+ * 4. Emit MERGE_REQUEST signal and submit to queue
52
+ * 5. Signal children to terminate (basic cascade)
53
+ * 6. Return shouldTerminate=true (for completed/failed only)
54
+ */
55
+ export declare function handleWorkerDone(context: LifecycleContext, args: DoneArgs, cleanupStatus: CleanupStatus, deps: WorkerHandlerDeps): Promise<DoneHandlerResult>;
56
+ //# sourceMappingURL=worker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../../../src/lifecycle/handlers/worker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAChF,OAAO,KAAK,EACV,gBAAgB,EAChB,QAAQ,EACR,aAAa,EACb,iBAAiB,EAClB,MAAM,aAAa,CAAC;AAgBrB;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,0CAA0C;IAC1C,aAAa,EAAE,aAAa,CAAC;IAE7B,4CAA4C;IAC5C,YAAY,EAAE,YAAY,CAAC;IAE3B,2DAA2D;IAC3D,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAE7B,2DAA2D;IAC3D,UAAU,CAAC,EAAE,mBAAmB,CAAC;IAEjC,+EAA+E;IAC/E,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;IAE3D,uDAAuD;IACvD,mBAAmB,CAAC,EAAE,OAAO,qCAAqC,EAAE,mBAAmB,CAAC;IAExF,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC5B;AAMD;;;;;;;;;;;GAWG;AACH,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,gBAAgB,EACzB,IAAI,EAAE,QAAQ,EACd,aAAa,EAAE,aAAa,EAC5B,IAAI,EAAE,iBAAiB,GACtB,OAAO,CAAC,iBAAiB,CAAC,CA8Z5B"}