@excitedjs/dreamux 0.26.0-beta.265 → 0.26.0

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 (494) hide show
  1. package/CHANGELOG.json +393 -0
  2. package/CHANGELOG.md +71 -1
  3. package/README.md +47 -34
  4. package/dist/admin/client.js +18 -7
  5. package/dist/admin/client.js.map +1 -1
  6. package/dist/admin/socket.js +15 -104
  7. package/dist/admin/socket.js.map +1 -1
  8. package/dist/agent-runtime/capabilities.js +4 -17
  9. package/dist/agent-runtime/capabilities.js.map +1 -1
  10. package/dist/agent-runtime/catalog.js.map +1 -1
  11. package/dist/agent-runtime/external-provider.js.map +1 -1
  12. package/dist/agent-runtime/host-context.js +1 -12
  13. package/dist/agent-runtime/host-context.js.map +1 -1
  14. package/dist/agent-runtime/host-paths.js +1 -1
  15. package/dist/agent-runtime/host-paths.js.map +1 -1
  16. package/dist/agent-runtime/index.js +7 -0
  17. package/dist/agent-runtime/index.js.map +1 -1
  18. package/dist/agent-runtime/skill-sources.js +23 -6
  19. package/dist/agent-runtime/skill-sources.js.map +1 -1
  20. package/dist/channel/catalog.js.map +1 -1
  21. package/dist/channel/external-channel-provider.js.map +1 -1
  22. package/dist/cli/commands/daemon.js +5 -8
  23. package/dist/cli/commands/daemon.js.map +1 -1
  24. package/dist/cli/commands/dispatcher.js +11 -15
  25. package/dist/cli/commands/dispatcher.js.map +1 -1
  26. package/dist/cli/commands/index.js +4 -4
  27. package/dist/cli/commands/index.js.map +1 -1
  28. package/dist/cli/commands/mcp.js +2 -4
  29. package/dist/cli/commands/mcp.js.map +1 -1
  30. package/dist/cli/commands/onboard.js +0 -4
  31. package/dist/cli/commands/onboard.js.map +1 -1
  32. package/dist/cli/commands/parse.js +1 -1
  33. package/dist/cli/commands/parse.js.map +1 -1
  34. package/dist/cli/commands/serve.js +3 -2
  35. package/dist/cli/commands/serve.js.map +1 -1
  36. package/dist/cli/commands/status.js +3 -3
  37. package/dist/cli/commands/status.js.map +1 -1
  38. package/dist/cli/commands/types.js +25 -3
  39. package/dist/cli/commands/types.js.map +1 -1
  40. package/dist/cli/commands/uninstall.js +2 -8
  41. package/dist/cli/commands/uninstall.js.map +1 -1
  42. package/dist/cli/doctor-plugins.js +44 -0
  43. package/dist/cli/doctor-plugins.js.map +1 -0
  44. package/dist/cli/doctor-types.js +2 -0
  45. package/dist/cli/doctor-types.js.map +1 -0
  46. package/dist/cli/doctor.js +48 -125
  47. package/dist/cli/doctor.js.map +1 -1
  48. package/dist/cli/dreamux.js +2 -30
  49. package/dist/cli/dreamux.js.map +1 -1
  50. package/dist/cli/server.js +55 -70
  51. package/dist/cli/server.js.map +1 -1
  52. package/dist/command/errors.js +43 -2
  53. package/dist/command/errors.js.map +1 -1
  54. package/dist/command/host.js +10 -17
  55. package/dist/command/host.js.map +1 -1
  56. package/dist/command/payload.js +0 -9
  57. package/dist/command/payload.js.map +1 -1
  58. package/dist/command/port.js +0 -4
  59. package/dist/command/port.js.map +1 -1
  60. package/dist/command/registry.js +0 -4
  61. package/dist/command/registry.js.map +1 -1
  62. package/dist/command/schema.js.map +1 -1
  63. package/dist/command/types.js.map +1 -0
  64. package/dist/command/validate.js +22 -41
  65. package/dist/command/validate.js.map +1 -1
  66. package/dist/config/commands.js +46 -0
  67. package/dist/config/commands.js.map +1 -0
  68. package/dist/config/config.js +155 -169
  69. package/dist/config/config.js.map +1 -1
  70. package/dist/config/load.js +138 -0
  71. package/dist/config/load.js.map +1 -0
  72. package/dist/config/service.js +196 -0
  73. package/dist/config/service.js.map +1 -0
  74. package/dist/daemon/{service-control.js → control.js} +15 -16
  75. package/dist/daemon/control.js.map +1 -0
  76. package/dist/daemon/environment.js +353 -0
  77. package/dist/daemon/environment.js.map +1 -0
  78. package/dist/daemon/host.js +16 -0
  79. package/dist/daemon/host.js.map +1 -0
  80. package/dist/daemon/install.js +167 -69
  81. package/dist/daemon/install.js.map +1 -1
  82. package/dist/daemon/status.js +87 -0
  83. package/dist/daemon/status.js.map +1 -0
  84. package/dist/{cli/service-status-parse.js → daemon/unit.js} +90 -12
  85. package/dist/daemon/unit.js.map +1 -0
  86. package/dist/{service/mcp/descriptor.js → mcp/launch.js} +3 -7
  87. package/dist/mcp/launch.js.map +1 -0
  88. package/dist/mcp/server.js +9 -5
  89. package/dist/mcp/server.js.map +1 -1
  90. package/dist/mcp/shim.js +18 -16
  91. package/dist/mcp/shim.js.map +1 -1
  92. package/dist/onboard/config-files.js +12 -26
  93. package/dist/onboard/config-files.js.map +1 -1
  94. package/dist/onboard/run.js +47 -66
  95. package/dist/onboard/run.js.map +1 -1
  96. package/dist/onboard/uninstall.js +59 -42
  97. package/dist/onboard/uninstall.js.map +1 -1
  98. package/dist/onboard/wizard.js +33 -18
  99. package/dist/onboard/wizard.js.map +1 -1
  100. package/dist/{onboard/commands.js → platform/command-runner.js} +7 -3
  101. package/dist/platform/command-runner.js.map +1 -0
  102. package/dist/platform/deduplicate.js +32 -0
  103. package/dist/platform/deduplicate.js.map +1 -0
  104. package/dist/{state → platform}/dispatcher-id.js +1 -1
  105. package/dist/platform/dispatcher-id.js.map +1 -0
  106. package/dist/platform/errors.js +23 -23
  107. package/dist/platform/errors.js.map +1 -1
  108. package/dist/{onboard/ledger.js → platform/file-ledger.js} +13 -38
  109. package/dist/platform/file-ledger.js.map +1 -0
  110. package/dist/platform/history-page.js +62 -0
  111. package/dist/platform/history-page.js.map +1 -0
  112. package/dist/platform/in-flight-work.js.map +1 -0
  113. package/dist/platform/instance-lock.js +95 -0
  114. package/dist/platform/instance-lock.js.map +1 -0
  115. package/dist/platform/json-value.js +26 -15
  116. package/dist/platform/json-value.js.map +1 -1
  117. package/dist/platform/jsonl.js.map +1 -1
  118. package/dist/platform/logger.js +5 -5
  119. package/dist/platform/logger.js.map +1 -1
  120. package/dist/platform/package-bin.js +3 -1
  121. package/dist/platform/package-bin.js.map +1 -1
  122. package/dist/platform/paths.js +42 -69
  123. package/dist/platform/paths.js.map +1 -1
  124. package/dist/platform/runtime-sockets.js +7 -2
  125. package/dist/platform/runtime-sockets.js.map +1 -1
  126. package/dist/platform/serial-queue.js +22 -0
  127. package/dist/platform/serial-queue.js.map +1 -0
  128. package/dist/platform/shutdown-errors.js.map +1 -0
  129. package/dist/platform/work-fence.js +30 -0
  130. package/dist/platform/work-fence.js.map +1 -0
  131. package/dist/plugin/hooks.js +407 -0
  132. package/dist/plugin/hooks.js.map +1 -0
  133. package/dist/plugin/host.js +97 -0
  134. package/dist/plugin/host.js.map +1 -0
  135. package/dist/plugin/loader.js +250 -0
  136. package/dist/plugin/loader.js.map +1 -0
  137. package/dist/provider-diagnostics.js +12 -8
  138. package/dist/provider-diagnostics.js.map +1 -1
  139. package/dist/registry/builtins.js +49 -45
  140. package/dist/registry/builtins.js.map +1 -1
  141. package/dist/registry/index.js +10 -2
  142. package/dist/registry/index.js.map +1 -1
  143. package/dist/registry/provider-loader.js +41 -61
  144. package/dist/registry/provider-loader.js.map +1 -1
  145. package/dist/registry/provider-ref.js.map +1 -1
  146. package/dist/registry/registry.js +14 -22
  147. package/dist/registry/registry.js.map +1 -1
  148. package/dist/{command/catalog.js → server/command-catalog.js} +14 -5
  149. package/dist/server/command-catalog.js.map +1 -0
  150. package/dist/server/command-host.js +2 -0
  151. package/dist/server/command-host.js.map +1 -0
  152. package/dist/server-commands.js +1 -1
  153. package/dist/server-commands.js.map +1 -1
  154. package/dist/server.js +70 -129
  155. package/dist/server.js.map +1 -1
  156. package/dist/service/{agent-entity/activity-reader.js → agent/activity.js} +86 -34
  157. package/dist/service/agent/activity.js.map +1 -0
  158. package/dist/service/{teammate-service/admission-ledger.js → agent/admission.js} +66 -1
  159. package/dist/service/agent/admission.js.map +1 -0
  160. package/dist/service/{channel-submission.js → agent/channel-submission.js} +5 -5
  161. package/dist/service/agent/channel-submission.js.map +1 -0
  162. package/dist/service/{teammate-collection → agent}/commands.js +38 -50
  163. package/dist/service/agent/commands.js.map +1 -0
  164. package/dist/service/{teammate-service → agent}/completion-renderer.js +30 -5
  165. package/dist/service/agent/completion-renderer.js.map +1 -0
  166. package/dist/service/agent/errors.js.map +1 -0
  167. package/dist/service/agent/factory.js +78 -0
  168. package/dist/service/agent/factory.js.map +1 -0
  169. package/dist/service/{agent-entity/types.js → agent/identity.js} +28 -34
  170. package/dist/service/agent/identity.js.map +1 -0
  171. package/dist/service/agent/index.js +769 -0
  172. package/dist/service/agent/index.js.map +1 -0
  173. package/dist/service/agent/mcp.js +420 -0
  174. package/dist/service/agent/mcp.js.map +1 -0
  175. package/dist/service/agent/records.js +74 -0
  176. package/dist/service/agent/records.js.map +1 -0
  177. package/dist/service/agent/requests.js +172 -0
  178. package/dist/service/agent/requests.js.map +1 -0
  179. package/dist/service/{teammate-service/runtime-owner.js → agent/runtime-generation.js} +81 -79
  180. package/dist/service/agent/runtime-generation.js.map +1 -0
  181. package/dist/service/agent/runtime-id.js +22 -0
  182. package/dist/service/agent/runtime-id.js.map +1 -0
  183. package/dist/service/{agent-entity → agent}/runtime-state.js +33 -40
  184. package/dist/service/agent/runtime-state.js.map +1 -0
  185. package/dist/service/agent/service-types.js +28 -0
  186. package/dist/service/agent/service-types.js.map +1 -0
  187. package/dist/service/{teammate-service/index.js → agent/service.js} +236 -102
  188. package/dist/service/agent/service.js.map +1 -0
  189. package/dist/service/{agent-entity/identity-store.js → agent/store.js} +175 -96
  190. package/dist/service/agent/store.js.map +1 -0
  191. package/dist/service/agent/submission.js.map +1 -0
  192. package/dist/service/{teammate-collection → agent}/system-prompt.js +7 -3
  193. package/dist/service/agent/system-prompt.js.map +1 -0
  194. package/dist/service/agent/turn.js +89 -0
  195. package/dist/service/agent/turn.js.map +1 -0
  196. package/dist/service/agent/types.js.map +1 -0
  197. package/dist/service/channel-service/commands.js +7 -3
  198. package/dist/service/channel-service/commands.js.map +1 -1
  199. package/dist/{channel → service/channel-service}/core-port.js +6 -5
  200. package/dist/service/channel-service/core-port.js.map +1 -0
  201. package/dist/service/channel-service/index.js +211 -93
  202. package/dist/service/channel-service/index.js.map +1 -1
  203. package/dist/service/channel-service/mcp-delegate.js +8 -9
  204. package/dist/service/channel-service/mcp-delegate.js.map +1 -1
  205. package/dist/service/completion-router/index.js +27 -27
  206. package/dist/service/completion-router/index.js.map +1 -1
  207. package/dist/{channel → service/dispatcher-core-events}/conversation-projection.js +9 -7
  208. package/dist/service/dispatcher-core-events/conversation-projection.js.map +1 -0
  209. package/dist/service/dispatcher-core-events/index.js +76 -68
  210. package/dist/service/dispatcher-core-events/index.js.map +1 -1
  211. package/dist/service/dispatcher-core-events/seal.js +1 -24
  212. package/dist/service/dispatcher-core-events/seal.js.map +1 -1
  213. package/dist/service/dispatcher-service/agent.js +267 -45
  214. package/dist/service/dispatcher-service/agent.js.map +1 -1
  215. package/dist/service/dispatcher-service/base-prompt.js +2 -2
  216. package/dist/service/dispatcher-service/base-prompt.js.map +1 -1
  217. package/dist/service/dispatcher-service/index.js +139 -378
  218. package/dist/service/dispatcher-service/index.js.map +1 -1
  219. package/dist/service/dispatcher-service/lifecycle.js +230 -0
  220. package/dist/service/dispatcher-service/lifecycle.js.map +1 -0
  221. package/dist/{daemon → service/dispatcher-service}/restart-intent.js +17 -38
  222. package/dist/service/dispatcher-service/restart-intent.js.map +1 -0
  223. package/dist/service/dispatcher-workspace.js +10 -23
  224. package/dist/service/dispatcher-workspace.js.map +1 -1
  225. package/dist/service/dispatchers/commands.js +30 -31
  226. package/dist/service/dispatchers/commands.js.map +1 -1
  227. package/dist/service/dispatchers/index.js +92 -64
  228. package/dist/service/dispatchers/index.js.map +1 -1
  229. package/dist/service/index.js +2 -2
  230. package/dist/service/index.js.map +1 -1
  231. package/dist/{mcp → service/mcp}/catalog.js +11 -48
  232. package/dist/service/mcp/catalog.js.map +1 -0
  233. package/dist/service/mcp/commands.js +3 -3
  234. package/dist/service/mcp/commands.js.map +1 -1
  235. package/dist/service/mcp/dispatch-reminders.js +1 -1
  236. package/dist/service/mcp/dispatch-reminders.js.map +1 -1
  237. package/dist/service/mcp/identity-version.js +14 -0
  238. package/dist/service/mcp/identity-version.js.map +1 -1
  239. package/dist/service/mcp/leases.js +12 -33
  240. package/dist/service/mcp/leases.js.map +1 -1
  241. package/dist/service/mcp/tool-metadata.js +15 -76
  242. package/dist/service/mcp/tool-metadata.js.map +1 -1
  243. package/dist/service/name-allocator.js +2 -3
  244. package/dist/service/name-allocator.js.map +1 -1
  245. package/dist/service/scheduler/commands.js +7 -19
  246. package/dist/service/scheduler/commands.js.map +1 -1
  247. package/dist/service/scheduler/errors.js +1 -1
  248. package/dist/service/scheduler/errors.js.map +1 -1
  249. package/dist/service/scheduler/{service.js → index.js} +175 -142
  250. package/dist/service/scheduler/index.js.map +1 -0
  251. package/dist/service/scheduler/{mcp-delegate.js → mcp.js} +61 -58
  252. package/dist/service/scheduler/mcp.js.map +1 -0
  253. package/dist/service/scheduler/requests.js +60 -0
  254. package/dist/service/scheduler/requests.js.map +1 -0
  255. package/dist/service/scheduler/store.js +183 -151
  256. package/dist/service/scheduler/store.js.map +1 -1
  257. package/dist/service/scheduler/types.js +1 -33
  258. package/dist/service/scheduler/types.js.map +1 -1
  259. package/dist/service/{team-collection → team}/commands.js +45 -59
  260. package/dist/service/team/commands.js.map +1 -0
  261. package/dist/service/{team-collection → team}/create-request.js +8 -20
  262. package/dist/service/team/create-request.js.map +1 -0
  263. package/dist/service/{team-collection → team}/errors.js +7 -10
  264. package/dist/service/team/errors.js.map +1 -0
  265. package/dist/service/team/index.js +817 -0
  266. package/dist/service/team/index.js.map +1 -0
  267. package/dist/service/team/leader-mcp.js +42 -0
  268. package/dist/service/team/leader-mcp.js.map +1 -0
  269. package/dist/service/team/leader.js +157 -0
  270. package/dist/service/team/leader.js.map +1 -0
  271. package/dist/service/team/mcp.js +328 -0
  272. package/dist/service/team/mcp.js.map +1 -0
  273. package/dist/service/{team-collection/types.js → team/requests.js} +64 -15
  274. package/dist/service/team/requests.js.map +1 -0
  275. package/dist/service/team/service.js +903 -0
  276. package/dist/service/team/service.js.map +1 -0
  277. package/dist/service/team/store.js +373 -0
  278. package/dist/service/team/store.js.map +1 -0
  279. package/dist/service/team/team-summary.js.map +1 -0
  280. package/dist/service/team/teams-port.js +2 -0
  281. package/dist/service/team/teams-port.js.map +1 -0
  282. package/dist/service/team/types.js +22 -0
  283. package/dist/service/team/types.js.map +1 -0
  284. package/dist/service/workflow-service/commands.js +5 -6
  285. package/dist/service/workflow-service/commands.js.map +1 -1
  286. package/dist/service/workflow-service/errors.js +2 -0
  287. package/dist/service/workflow-service/errors.js.map +1 -1
  288. package/dist/service/workflow-service/index.js +80 -112
  289. package/dist/service/workflow-service/index.js.map +1 -1
  290. package/dist/service/workflow-service/journal.js +90 -6
  291. package/dist/service/workflow-service/journal.js.map +1 -1
  292. package/dist/service/workflow-service/limits.js +20 -9
  293. package/dist/service/workflow-service/limits.js.map +1 -1
  294. package/dist/service/workflow-service/mcp.js +171 -0
  295. package/dist/service/workflow-service/mcp.js.map +1 -0
  296. package/dist/service/workflow-service/protocol.js +72 -1
  297. package/dist/service/workflow-service/protocol.js.map +1 -1
  298. package/dist/service/workflow-service/requests.js +70 -0
  299. package/dist/service/workflow-service/requests.js.map +1 -0
  300. package/dist/service/workflow-service/run.js +258 -145
  301. package/dist/service/workflow-service/run.js.map +1 -1
  302. package/dist/service/workflow-service/runner-process.js +0 -19
  303. package/dist/service/workflow-service/runner-process.js.map +1 -1
  304. package/dist/service/workflow-service/runner.js +6 -30
  305. package/dist/service/workflow-service/runner.js.map +1 -1
  306. package/dist/service/workflow-service/script-compiler.js +7 -9
  307. package/dist/service/workflow-service/script-compiler.js.map +1 -1
  308. package/dist/service/workflow-service/{run-support.js → semaphore.js} +1 -30
  309. package/dist/service/workflow-service/semaphore.js.map +1 -0
  310. package/dist/service/workflow-service/store.js +105 -25
  311. package/dist/service/workflow-service/store.js.map +1 -1
  312. package/dist/service/workflow-service/types.js +1 -77
  313. package/dist/service/workflow-service/types.js.map +1 -1
  314. package/dist/service/worktree/manager.js +29 -62
  315. package/dist/service/worktree/manager.js.map +1 -1
  316. package/dist/service/worktree/paths.js +4 -1
  317. package/dist/service/worktree/paths.js.map +1 -1
  318. package/dist/service/worktree/repo-request.js +38 -14
  319. package/dist/service/worktree/repo-request.js.map +1 -1
  320. package/dist/service/worktree/types.js +2 -0
  321. package/dist/service/worktree/types.js.map +1 -0
  322. package/dist/service/worktree/workspaces.js +27 -34
  323. package/dist/service/worktree/workspaces.js.map +1 -1
  324. package/package.json +13 -8
  325. package/skills/dispatcher/dreamux-maintenance/SKILL.md +5 -4
  326. package/skills/dispatcher/dreamux-maintenance/references/builtin-bootstrap.md +50 -0
  327. package/skills/dispatcher/dreamux-maintenance/references/builtin-codex.md +4 -5
  328. package/skills/dispatcher/dreamux-maintenance/references/builtin-feishu.md +69 -11
  329. package/skills/dispatcher/dreamux-maintenance/references/config-envelope.md +77 -12
  330. package/skills/dispatcher/dreamux-maintenance/references/feishu-access-v3.md +39 -24
  331. package/skills/dispatcher/dreamux-maintenance/references/service-lifecycle.md +105 -37
  332. package/dist/channel/conversation-projection.js.map +0 -1
  333. package/dist/channel/core-port.js.map +0 -1
  334. package/dist/cli/server-ctl.js +0 -163
  335. package/dist/cli/server-ctl.js.map +0 -1
  336. package/dist/cli/service-status-parse.js.map +0 -1
  337. package/dist/command/catalog.js.map +0 -1
  338. package/dist/config/config-helpers.js +0 -100
  339. package/dist/config/config-helpers.js.map +0 -1
  340. package/dist/daemon/restart-intent.js.map +0 -1
  341. package/dist/daemon/service-control.js.map +0 -1
  342. package/dist/mcp/catalog.js.map +0 -1
  343. package/dist/mcp/failure-text.js +0 -46
  344. package/dist/mcp/failure-text.js.map +0 -1
  345. package/dist/onboard/commands.js.map +0 -1
  346. package/dist/onboard/ledger.js.map +0 -1
  347. package/dist/onboard/service-node.js +0 -183
  348. package/dist/onboard/service-node.js.map +0 -1
  349. package/dist/onboard/service.js +0 -310
  350. package/dist/onboard/service.js.map +0 -1
  351. package/dist/platform/atomic-write.js +0 -63
  352. package/dist/platform/atomic-write.js.map +0 -1
  353. package/dist/platform/error-info.js +0 -11
  354. package/dist/platform/error-info.js.map +0 -1
  355. package/dist/platform/json-document-store.js +0 -54
  356. package/dist/platform/json-document-store.js.map +0 -1
  357. package/dist/service/agent-entity/activity-errors.js +0 -71
  358. package/dist/service/agent-entity/activity-errors.js.map +0 -1
  359. package/dist/service/agent-entity/activity-reader.js.map +0 -1
  360. package/dist/service/agent-entity/agent-config.js +0 -48
  361. package/dist/service/agent-entity/agent-config.js.map +0 -1
  362. package/dist/service/agent-entity/history-query.js +0 -60
  363. package/dist/service/agent-entity/history-query.js.map +0 -1
  364. package/dist/service/agent-entity/identity-store.js.map +0 -1
  365. package/dist/service/agent-entity/read-helpers.js +0 -172
  366. package/dist/service/agent-entity/read-helpers.js.map +0 -1
  367. package/dist/service/agent-entity/runtime-profile.js +0 -53
  368. package/dist/service/agent-entity/runtime-profile.js.map +0 -1
  369. package/dist/service/agent-entity/runtime-state.js.map +0 -1
  370. package/dist/service/agent-entity/types.js.map +0 -1
  371. package/dist/service/channel-service/mcp-delegates.js +0 -21
  372. package/dist/service/channel-service/mcp-delegates.js.map +0 -1
  373. package/dist/service/channel-service/types.js.map +0 -1
  374. package/dist/service/channel-submission.js.map +0 -1
  375. package/dist/service/closed-fact.js +0 -49
  376. package/dist/service/closed-fact.js.map +0 -1
  377. package/dist/service/deduplicate.js +0 -42
  378. package/dist/service/deduplicate.js.map +0 -1
  379. package/dist/service/dispatcher-core-events/scoped-source.js +0 -59
  380. package/dist/service/dispatcher-core-events/scoped-source.js.map +0 -1
  381. package/dist/service/dispatcher-service/dispatcher-workflows.js +0 -50
  382. package/dist/service/dispatcher-service/dispatcher-workflows.js.map +0 -1
  383. package/dist/service/dispatcher-service/identity.js +0 -97
  384. package/dist/service/dispatcher-service/identity.js.map +0 -1
  385. package/dist/service/dispatcher-service/inbound-task-drain.js +0 -37
  386. package/dist/service/dispatcher-service/inbound-task-drain.js.map +0 -1
  387. package/dist/service/dispatcher-service/input-source-lifecycle.js +0 -312
  388. package/dist/service/dispatcher-service/input-source-lifecycle.js.map +0 -1
  389. package/dist/service/dispatcher-service/input-source-start-rollback.js +0 -53
  390. package/dist/service/dispatcher-service/input-source-start-rollback.js.map +0 -1
  391. package/dist/service/dispatcher-service/mcp-delegates.js +0 -67
  392. package/dist/service/dispatcher-service/mcp-delegates.js.map +0 -1
  393. package/dist/service/dispatcher-service/restart-notice.js +0 -27
  394. package/dist/service/dispatcher-service/restart-notice.js.map +0 -1
  395. package/dist/service/dispatcher-service/runnable-channel.js +0 -13
  396. package/dist/service/dispatcher-service/runnable-channel.js.map +0 -1
  397. package/dist/service/dispatcher-service/runtime-helpers.js +0 -11
  398. package/dist/service/dispatcher-service/runtime-helpers.js.map +0 -1
  399. package/dist/service/dispatcher-service/runtime-status.js +0 -35
  400. package/dist/service/dispatcher-service/runtime-status.js.map +0 -1
  401. package/dist/service/dispatcher-service/team-leader-handle.js +0 -29
  402. package/dist/service/dispatcher-service/team-leader-handle.js.map +0 -1
  403. package/dist/service/dispatcher-service/team-runtime-stop.js +0 -13
  404. package/dist/service/dispatcher-service/team-runtime-stop.js.map +0 -1
  405. package/dist/service/dispatcher-service/teammate-ops.js +0 -14
  406. package/dist/service/dispatcher-service/teammate-ops.js.map +0 -1
  407. package/dist/service/frozen-snapshot.js +0 -16
  408. package/dist/service/frozen-snapshot.js.map +0 -1
  409. package/dist/service/in-flight-work.js.map +0 -1
  410. package/dist/service/legacy-state.js +0 -119
  411. package/dist/service/legacy-state.js.map +0 -1
  412. package/dist/service/mcp/descriptor.js.map +0 -1
  413. package/dist/service/scheduler/mcp-delegate.js.map +0 -1
  414. package/dist/service/scheduler/service.js.map +0 -1
  415. package/dist/service/serial-queue.js +0 -64
  416. package/dist/service/serial-queue.js.map +0 -1
  417. package/dist/service/shutdown-errors.js.map +0 -1
  418. package/dist/service/team-collection/commands.js.map +0 -1
  419. package/dist/service/team-collection/create-request.js.map +0 -1
  420. package/dist/service/team-collection/errors.js.map +0 -1
  421. package/dist/service/team-collection/index.js +0 -304
  422. package/dist/service/team-collection/index.js.map +0 -1
  423. package/dist/service/team-collection/mcp-delegate.js +0 -389
  424. package/dist/service/team-collection/mcp-delegate.js.map +0 -1
  425. package/dist/service/team-collection/read-helpers.js +0 -66
  426. package/dist/service/team-collection/read-helpers.js.map +0 -1
  427. package/dist/service/team-collection/read-model.js +0 -120
  428. package/dist/service/team-collection/read-model.js.map +0 -1
  429. package/dist/service/team-collection/roster-reader.js +0 -52
  430. package/dist/service/team-collection/roster-reader.js.map +0 -1
  431. package/dist/service/team-collection/runtime-registry.js +0 -369
  432. package/dist/service/team-collection/runtime-registry.js.map +0 -1
  433. package/dist/service/team-collection/store.js +0 -320
  434. package/dist/service/team-collection/store.js.map +0 -1
  435. package/dist/service/team-collection/types.js.map +0 -1
  436. package/dist/service/team-collection/worktree-cleanup.js +0 -45
  437. package/dist/service/team-collection/worktree-cleanup.js.map +0 -1
  438. package/dist/service/team-service/closing.js +0 -279
  439. package/dist/service/team-service/closing.js.map +0 -1
  440. package/dist/service/team-service/collaborators.js +0 -82
  441. package/dist/service/team-service/collaborators.js.map +0 -1
  442. package/dist/service/team-service/completion-targets.js +0 -72
  443. package/dist/service/team-service/completion-targets.js.map +0 -1
  444. package/dist/service/team-service/index.js +0 -559
  445. package/dist/service/team-service/index.js.map +0 -1
  446. package/dist/service/team-service/leader-agent.js +0 -170
  447. package/dist/service/team-service/leader-agent.js.map +0 -1
  448. package/dist/service/team-service/roster-projection.js +0 -69
  449. package/dist/service/team-service/roster-projection.js.map +0 -1
  450. package/dist/service/team-service/team-summary.js.map +0 -1
  451. package/dist/service/team-service/types.js +0 -61
  452. package/dist/service/team-service/types.js.map +0 -1
  453. package/dist/service/teammate-collection/commands.js.map +0 -1
  454. package/dist/service/teammate-collection/dissolve-members.js +0 -44
  455. package/dist/service/teammate-collection/dissolve-members.js.map +0 -1
  456. package/dist/service/teammate-collection/errors.js.map +0 -1
  457. package/dist/service/teammate-collection/index.js +0 -497
  458. package/dist/service/teammate-collection/index.js.map +0 -1
  459. package/dist/service/teammate-collection/mcp-delegate.js +0 -210
  460. package/dist/service/teammate-collection/mcp-delegate.js.map +0 -1
  461. package/dist/service/teammate-collection/mcp-tool-descriptors.js +0 -421
  462. package/dist/service/teammate-collection/mcp-tool-descriptors.js.map +0 -1
  463. package/dist/service/teammate-collection/system-prompt.js.map +0 -1
  464. package/dist/service/teammate-collection/types.js.map +0 -1
  465. package/dist/service/teammate-service/admission-ledger.js.map +0 -1
  466. package/dist/service/teammate-service/completion-renderer.js.map +0 -1
  467. package/dist/service/teammate-service/factory.js +0 -5
  468. package/dist/service/teammate-service/factory.js.map +0 -1
  469. package/dist/service/teammate-service/index.js.map +0 -1
  470. package/dist/service/teammate-service/runtime-owner.js.map +0 -1
  471. package/dist/service/teammate-service/submission.js.map +0 -1
  472. package/dist/service/teammate-service/turn-coordinator.js +0 -93
  473. package/dist/service/teammate-service/turn-coordinator.js.map +0 -1
  474. package/dist/service/teammate-service/turn-recording.js +0 -178
  475. package/dist/service/teammate-service/turn-recording.js.map +0 -1
  476. package/dist/service/teammate-service/types.js +0 -12
  477. package/dist/service/teammate-service/types.js.map +0 -1
  478. package/dist/service/workflow-service/agent-policy.js +0 -6
  479. package/dist/service/workflow-service/agent-policy.js.map +0 -1
  480. package/dist/service/workflow-service/json-args.js +0 -72
  481. package/dist/service/workflow-service/json-args.js.map +0 -1
  482. package/dist/service/workflow-service/run-support.js.map +0 -1
  483. package/dist/service/workflow-service/run-terminal.js +0 -111
  484. package/dist/service/workflow-service/run-terminal.js.map +0 -1
  485. package/dist/state/dispatcher-id.js.map +0 -1
  486. package/dist/state/dispatcher-store.js +0 -73
  487. package/dist/state/dispatcher-store.js.map +0 -1
  488. /package/dist/{service/channel-service → command}/types.js +0 -0
  489. /package/dist/{service → platform}/in-flight-work.js +0 -0
  490. /package/dist/{service → platform}/shutdown-errors.js +0 -0
  491. /package/dist/service/{teammate-collection → agent}/errors.js +0 -0
  492. /package/dist/service/{teammate-service → agent}/submission.js +0 -0
  493. /package/dist/service/{teammate-collection → agent}/types.js +0 -0
  494. /package/dist/service/{team-service → team}/team-summary.js +0 -0
@@ -1,12 +1,10 @@
1
- import { mustDispatcher } from '../../command/host.js';
2
- import { normalizeSkillSources, optionalParsedSkillSources, } from '../../agent-runtime/skill-sources.js';
1
+ import { optionalParsedSkillSources } from '../../agent-runtime/skill-sources.js';
3
2
  import { commandPayload, mustNonBlankString, mustNonEmptyString, mustRecord, optionalBooleanField, optionalNonBlankString, optionalString, } from '../../command/payload.js';
4
- import { REPO_REQUEST_SCHEMA, repoRequest, repoWorktree, } from '../worktree/repo-request.js';
5
3
  import { BOOLEAN, INTEGER, NON_EMPTY_STRING, NULLABLE_STRING, OBJECT, STRING, arrayOf, boundedString, enumOf, objectSchema, } from '../../command/schema.js';
6
- import { CHANNEL_SUBMISSION_PROPERTIES, channelSubmitInput, parseChannelSubmission, } from '../channel-submission.js';
7
- import { MAX_REQUEST_ID_LENGTH, TEAM_LEADER_REQUIRED_SKILL_SOURCES, teamCreatePayloadHash, } from './create-request.js';
8
- import { teamHistoryQuery, teamNameParam, } from './types.js';
9
- import { teamSubmitResult, teamSubmitResultOutput, } from '../team-service/types.js';
4
+ import { CHANNEL_SUBMISSION_PROPERTIES, channelSubmitInput, parseChannelSubmission, } from '../agent/channel-submission.js';
5
+ import { REPO_REQUEST_SCHEMA, repoRequest } from '../worktree/repo-request.js';
6
+ import { MAX_REQUEST_ID_LENGTH, teamCreatePayloadHash, } from './create-request.js';
7
+ import { teamHistoryQuery, teamNameParam, teamSubmitResult, teamSubmitResultOutput, } from './requests.js';
10
8
  export function teamCommands(host) {
11
9
  const create = {
12
10
  name: 'team.create',
@@ -51,39 +49,24 @@ export function teamCommands(host) {
51
49
  // injected TeamLeader requirements: those change with a Dreamux upgrade
52
50
  // and would otherwise turn a legitimate replay into a conflict.
53
51
  payloadHash: teamCreatePayloadHash(command),
54
- parsedSkillSources,
55
52
  };
56
53
  },
57
54
  async execute(context, input) {
58
- const dispatcher = mustDispatcher(host, context);
59
- const skillSources = await normalizeSkillSources(input.parsedSkillSources, {
60
- requiredSources: TEAM_LEADER_REQUIRED_SKILL_SOURCES,
61
- });
62
- const { command } = input;
63
- const repo = repoWorktree(command.repo ?? null);
64
- // A named repository request without an explicit path resolves to the
65
- // dispatcher's own workspace, exactly as the existing creation path does.
66
- const repoCwd = repo === null ? null : repo.cwd ?? (await dispatcher.workspace());
67
- // No catch: an idempotency conflict, a closed Team, and a missing Team
68
- // already state themselves, and anything else must reach the boundary
69
- // that logs it with its stack, name, and cause intact.
70
- return dispatcher.createTeam({
71
- requestId: command.request_id,
55
+ // The repo/skill-source translation this used to do here now runs
56
+ // inside `createFromRequest`, after the owning Dispatcher's `createTeam`
57
+ // hook: a plugin tap sees (and may change) the same wire-shaped command
58
+ // this parsed, not Core's already-resolved internal shape. No catch: an
59
+ // idempotency conflict, a closed Team, and a missing Team already state
60
+ // themselves, and anything else must reach the boundary that logs it
61
+ // with its stack, name, and cause intact.
62
+ return host.addressedDispatcher(context).teams.createFromRequest({
63
+ requestId: input.command.request_id,
72
64
  payloadHash: input.payloadHash,
73
- options: {
74
- namePrefix: command.name_prefix,
75
- intent: command.intent,
76
- leaderAgentRuntime: command.leader.agent_runtime,
77
- ...(repoCwd !== null ? { repoCwd } : {}),
78
- ...(repo !== null ? { worktree: repo.worktree } : {}),
79
- ...(command.leader.prompt !== undefined
80
- ? { prompt: command.leader.prompt }
81
- : {}),
82
- ...(command.leader.identity !== undefined
83
- ? { identity: command.leader.identity }
84
- : {}),
85
- ...(skillSources !== null ? { skillSources } : {}),
86
- },
65
+ command: input.command,
66
+ // No external submission advances the Dispatcher Agent: `admin.sock`
67
+ // and a Channel Command both leave the TeamLeader to answer on its own
68
+ // Channel, exactly as `team.submit` already states for a follow-up turn.
69
+ deliverCompletionToDispatcher: false,
87
70
  });
88
71
  },
89
72
  };
@@ -107,22 +90,26 @@ export function teamCommands(host) {
107
90
  return { command };
108
91
  },
109
92
  async execute(context, input) {
110
- const dispatcher = mustDispatcher(host, context);
111
- const admission = await dispatcher.submitToTeamLeader({
93
+ const admission = await host
94
+ .addressedDispatcher(context)
95
+ .teams.submitToLeader(input.command.team_name, {
112
96
  ...channelSubmitInput(input.command),
113
- teamId: input.command.team_name,
114
97
  // `intent` is Team-Command-only: it updates the leader's durable
115
- // recovery subject, and `dispatcher.submit` has no such field, so the
116
- // shared projection in channel-submission.ts deliberately omits it.
98
+ // recovery subject, and `dispatcher.submit` has no such field, so
99
+ // the shared projection in channel-submission.ts deliberately
100
+ // omits it. Presence is observable (core-command-adapters.test.ts
101
+ // asserts an omitted intent is an omitted key, not an explicit
102
+ // undefined), so this stays a conditional spread rather than a
103
+ // plain assignment.
117
104
  ...(input.command.intent !== undefined
118
105
  ? { intent: input.command.intent }
119
106
  : {}),
120
- // No external submission advances the Dispatcher Agent. Who waits for a
121
- // leader's completion is a property of the operation, not of the
122
- // adapter that carried it: an Agent handing work to a Team says so
123
- // explicitly on the Team MCP delegate, while an external caller —
124
- // Channel or `admin.sock` — is answered by the TeamLeader on its own
125
- // Channel.
107
+ // No external submission advances the Dispatcher Agent. Who waits
108
+ // for a leader's completion is a property of the operation, not of
109
+ // the adapter that carried it: an Agent handing work to a Team
110
+ // says so explicitly on the Team MCP delegate, while an external
111
+ // caller — Channel or `admin.sock` — is answered by the TeamLeader
112
+ // on its own Channel.
126
113
  deliverCompletionToDispatcher: false,
127
114
  });
128
115
  return teamSubmitResult(admission);
@@ -132,14 +119,18 @@ export function teamCommands(host) {
132
119
  name: 'team.interrupt',
133
120
  version: 1,
134
121
  input: objectSchema({ team_name: NON_EMPTY_STRING }, ['team_name']),
135
- output: objectSchema({ status: enumOf(['interrupted', 'idle']) }, ['status']),
122
+ output: objectSchema({ status: enumOf(['interrupted', 'idle']) }, [
123
+ 'status',
124
+ ]),
136
125
  parse(payload) {
137
126
  return {
138
127
  teamName: teamNameParam(commandPayload(payload), 'team_name'),
139
128
  };
140
129
  },
141
130
  async execute(context, input) {
142
- return mustDispatcher(host, context).interruptTeamLeader(input.teamName);
131
+ return host
132
+ .addressedDispatcher(context)
133
+ .teams.interruptLeader(input.teamName);
143
134
  },
144
135
  };
145
136
  const list = {
@@ -151,8 +142,7 @@ export function teamCommands(host) {
151
142
  commandPayload(payload);
152
143
  },
153
144
  async execute(context) {
154
- const dispatcher = mustDispatcher(host, context);
155
- return { teams: await dispatcher.listTeams() };
145
+ return { teams: await host.addressedDispatcher(context).teams.list() };
156
146
  },
157
147
  };
158
148
  const status = {
@@ -164,8 +154,7 @@ export function teamCommands(host) {
164
154
  return { teamName: teamNameParam(commandPayload(payload), 'team_name') };
165
155
  },
166
156
  async execute(context, input) {
167
- const dispatcher = mustDispatcher(host, context);
168
- return dispatcher.getTeamStatus(input.teamName);
157
+ return host.addressedDispatcher(context).teams.summary(input.teamName);
169
158
  },
170
159
  };
171
160
  const history = {
@@ -186,8 +175,7 @@ export function teamCommands(host) {
186
175
  return { query: teamHistoryQuery(commandPayload(payload)) };
187
176
  },
188
177
  async execute(context, input) {
189
- const dispatcher = mustDispatcher(host, context);
190
- return dispatcher.getTeamHistory(input.query);
178
+ return host.addressedDispatcher(context).teams.history(input.query);
191
179
  },
192
180
  };
193
181
  const dissolve = {
@@ -212,11 +200,9 @@ export function teamCommands(host) {
212
200
  };
213
201
  },
214
202
  async execute(context, input) {
215
- const dispatcher = mustDispatcher(host, context);
216
- return dispatcher.dissolveTeam({
217
- teamId: input.teamName,
203
+ return host.addressedDispatcher(context).teams.dissolve(input.teamName, {
218
204
  note: input.note,
219
- ...(input.force !== undefined ? { force: input.force } : {}),
205
+ force: input.force === true,
220
206
  });
221
207
  },
222
208
  };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../src/service/team/commands.ts"],"names":[],"mappings":"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"}
@@ -1,31 +1,19 @@
1
1
  /**
2
2
  * `team.create` request identity.
3
3
  *
4
- * A Team is an expensive, never-reusable resource, so a retried `team.create`
5
- * carrying an already accepted request id must never produce a second Team and
6
- * must resolve to the *same* concrete name. The Team record itself carries that
7
- * identity: exclusive publication of `team/<team>/record.json` is simultaneously
8
- * the acceptance point, the concrete-name ownership point, and the durable
9
- * record of which request produced it. There is no second persisted authority.
4
+ * While a valid Team record carries its acceptance, a retried `team.create` with the same
5
+ * accepted request id and payload resolves to the same concrete name without
6
+ * creating another Team. The Team record itself carries that
7
+ * identity: publication of `team/<team>/record.json` through its canonical
8
+ * serialized owner is the acceptance point, the concrete-name ownership point,
9
+ * and the durable record of which request produced it. There is no second
10
+ * persisted authority. Deleting or damaging a fully retired record removes
11
+ * that request and name claim, so a later request can create a Team anew.
10
12
  *
11
13
  * This module owns only the two derived facts that identity needs — the bound on
12
14
  * a caller-supplied id, and the canonical payload hash written into the record.
13
15
  */
14
16
  import { createHash } from 'node:crypto';
15
- import { bundledSharedSkillRoot, bundledTeamLeaderSkillRoot, } from '../../platform/paths.js';
16
- /**
17
- * The TeamLeader skill roots Core always injects. A caller's `skill_sources`
18
- * extend these; they can never remove them.
19
- */
20
- export const TEAM_LEADER_REQUIRED_SKILL_SOURCES = [{
21
- name: 'team-leader',
22
- path: bundledTeamLeaderSkillRoot(),
23
- source: 'dreamux-core',
24
- }, {
25
- name: 'shared',
26
- path: bundledSharedSkillRoot(),
27
- source: 'dreamux-core',
28
- }];
29
17
  /**
30
18
  * The maximum length of a caller-supplied `request_id`.
31
19
  *
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-request.js","sourceRoot":"","sources":["../../../src/service/team/create-request.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,CAAC;AAEzC,wCAAwC;AACxC,MAAM,oBAAoB,GAAG,gBAAgB,CAAC;AAE9C;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAAgB;IACpD,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACxE,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,uBAAuB,CAAC,KAAc;IACpD,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACvE,CAAC;AAED,sEAAsE;AACtE,MAAM,UAAU,qBAAqB,CAAC,KAAc;IAClD,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE;QACnB,KAAK,CAAC,MAAM,IAAI,qBAAqB,CACtC,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,KAAc;IAChC,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ;QAC7C,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC;IACzC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;IAClE,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC;SAC7D,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC;SAC1C,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACpD,OAAO,IAAI,OAAO;SACf,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;SACpE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;AAClB,CAAC"}
@@ -15,12 +15,12 @@ export class TeamNotFoundError extends StatedFailure {
15
15
  export class TeamClosedError extends StatedFailure {
16
16
  constructor(message) {
17
17
  super('TEAM_CLOSED', message, 'A closed Team never takes work again; create a new Team for the ' +
18
- 'follow-up, and read the closed one through this surface\'s history.');
18
+ "follow-up, and read the closed one through this surface's history.");
19
19
  }
20
20
  }
21
21
  /** Both facts that mean a Team cannot take work now. */
22
22
  export function isTeamUnavailable(error) {
23
- return (error instanceof TeamNotFoundError || error instanceof TeamClosedError);
23
+ return error instanceof TeamNotFoundError || error instanceof TeamClosedError;
24
24
  }
25
25
  /**
26
26
  * The same `request_id` was replayed with a different canonical payload.
@@ -40,9 +40,8 @@ export class IdempotencyConflictError extends StatedFailure {
40
40
  *
41
41
  * A non-forced dissolve asks about the checkout before it accepts anything, so
42
42
  * this one *is* an answer: a caller asked, nothing was touched, and the reply
43
- * has to say what to do about it. The same error is also raised once more from
44
- * behind the receipt, when work appeared in the window between the two reads;
45
- * there it only reaches the operator log, and the Team stays open.
43
+ * has to say what to do about it. After the receipt, cleanup may retain a
44
+ * newly dirty checkout, but it does not reopen the closed Team.
46
45
  */
47
46
  export class TeamDissolveBlockedError extends DreamuxError {
48
47
  constructor(reason) {
@@ -51,11 +50,9 @@ export class TeamDissolveBlockedError extends DreamuxError {
51
50
  }
52
51
  }
53
52
  /**
54
- * Why a submitted dissolve failed, for the operator log.
55
- *
56
- * This one is never an answer: it is raised behind the receipt, so it exists
57
- * to say in the log that the Team is still open because the dissolve itself
58
- * went wrong. It states no next step, because it is answering nobody.
53
+ * Worktree assessment failed before the terminal Team record was committed.
54
+ * The same assessment runs during precheck and behind an accepted receipt;
55
+ * the latter failure is reported in the operator log.
59
56
  */
60
57
  export class TeamDissolveFailedError extends DreamuxError {
61
58
  constructor(message) {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/service/team/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAGvE;;;;;GAKG;AACH,MAAM,OAAO,iBAAkB,SAAQ,aAAa;IAClD,YAAY,OAAe;QACzB,KAAK,CACH,gBAAgB,EAChB,OAAO,EACP,uEAAuE;YACrE,kDAAkD,CACrD,CAAC;IACJ,CAAC;CACF;AAED,6DAA6D;AAC7D,MAAM,OAAO,eAAgB,SAAQ,aAAa;IAChD,YAAY,OAAe;QACzB,KAAK,CACH,aAAa,EACb,OAAO,EACP,kEAAkE;YAChE,oEAAoE,CACvE,CAAC;IACJ,CAAC;CACF;AAED,wDAAwD;AACxD,MAAM,UAAU,iBAAiB,CAAC,KAAc;IAC9C,OAAO,KAAK,YAAY,iBAAiB,IAAI,KAAK,YAAY,eAAe,CAAC;AAChF,CAAC;AAED;;;;;;GAMG;AACH,MAAM,OAAO,wBAAyB,SAAQ,aAAa;IACzD,YAAY,OAAe;QACzB,KAAK,CACH,sBAAsB,EACtB,OAAO,EACP,gEAAgE;YAC9D,gDAAgD,CACnD,CAAC;IACJ,CAAC;CACF;AAED;;;;;;;GAOG;AACH,MAAM,OAAO,wBAAyB,SAAQ,YAAY;IACxD,YAAY,MAAoC;QAC9C,KAAK,CACH,uBAAuB,EACvB,4DAA4D,MAAM,IAAI;YACpE,2EAA2E,CAC9E,CAAC;IACJ,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,OAAO,uBAAwB,SAAQ,YAAY;IACvD,YAAY,OAAe;QACzB,KAAK,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC;IACzC,CAAC;CACF;AAED,MAAM,UAAU,aAAa,CAAC,KAAc;IAC1C,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAC3B,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC;IAC1E,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;AAClC,CAAC"}