@agimon-ai/doompi-task 0.0.1-alpha.71 → 0.0.1-alpha.73

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 (589) hide show
  1. package/README.md +12 -3
  2. package/dist/_virtual/_rolldown/runtime.cjs +23 -1
  3. package/dist/api-contracts.cjs +7 -1
  4. package/dist/api-contracts.d.cts +1 -1
  5. package/dist/api-contracts.d.mts +1 -1
  6. package/dist/api-contracts.mjs +2 -1
  7. package/dist/commands.cjs +4 -1
  8. package/dist/commands.d.cts +2 -2
  9. package/dist/commands.d.mts +2 -2
  10. package/dist/commands.mjs +2 -1
  11. package/dist/config.cjs +19 -1
  12. package/dist/config.d.cts +1 -1
  13. package/dist/config.d.mts +1 -1
  14. package/dist/config.mjs +2 -1
  15. package/dist/delegation-manager.cjs +10 -1
  16. package/dist/delegation-manager.d.cts +2 -2
  17. package/dist/delegation-manager.d.mts +2 -2
  18. package/dist/delegation-manager.mjs +3 -1
  19. package/dist/extensions/pi.cjs +49 -2
  20. package/dist/extensions/pi.cjs.map +1 -1
  21. package/dist/extensions/pi.d.cts +3 -4
  22. package/dist/extensions/pi.d.cts.map +1 -1
  23. package/dist/extensions/pi.d.mts +3 -4
  24. package/dist/extensions/pi.d.mts.map +1 -1
  25. package/dist/extensions/pi.mjs +44 -2
  26. package/dist/extensions/pi.mjs.map +1 -1
  27. package/dist/extensions/server.cjs +56 -1
  28. package/dist/extensions/server.cjs.map +1 -1
  29. package/dist/extensions/server.d.cts +3 -3
  30. package/dist/extensions/server.d.cts.map +1 -1
  31. package/dist/extensions/server.d.mts +3 -3
  32. package/dist/extensions/server.d.mts.map +1 -1
  33. package/dist/extensions/server.mjs +51 -1
  34. package/dist/extensions/server.mjs.map +1 -1
  35. package/dist/extensions/web.mjs +1013 -0
  36. package/dist/extensions/web.mjs.map +1 -0
  37. package/dist/index.cjs +106 -1
  38. package/dist/index.d.cts +15 -15
  39. package/dist/index.d.mts +15 -15
  40. package/dist/index.mjs +16 -1
  41. package/dist/logSinkTelemetry.cjs +6 -1
  42. package/dist/logSinkTelemetry.d.cts +2 -2
  43. package/dist/logSinkTelemetry.d.mts +2 -2
  44. package/dist/logSinkTelemetry.mjs +3 -1
  45. package/dist/src/constants/promptGuidelines.cjs +26 -0
  46. package/dist/src/constants/promptGuidelines.cjs.map +1 -0
  47. package/dist/src/constants/promptGuidelines.d.cts.map +1 -0
  48. package/dist/src/constants/promptGuidelines.d.mts.map +1 -0
  49. package/dist/src/constants/promptGuidelines.mjs +26 -0
  50. package/dist/src/constants/promptGuidelines.mjs.map +1 -0
  51. package/dist/src/constants/task.cjs +6 -0
  52. package/dist/src/constants/task.cjs.map +1 -0
  53. package/dist/src/constants/task.d.cts.map +1 -0
  54. package/dist/src/constants/task.d.mts.map +1 -0
  55. package/dist/src/constants/task.mjs +6 -0
  56. package/dist/src/constants/task.mjs.map +1 -0
  57. package/dist/src/extensions/(backend)/channel/_lib/task-graph.cjs +90 -0
  58. package/dist/src/extensions/(backend)/channel/_lib/task-graph.cjs.map +1 -0
  59. package/dist/src/extensions/(backend)/channel/_lib/task-graph.mjs +89 -0
  60. package/dist/src/extensions/(backend)/channel/_lib/task-graph.mjs.map +1 -0
  61. package/dist/src/extensions/(backend)/channel/task-graph.server.cjs +7 -0
  62. package/dist/src/extensions/(backend)/channel/task-graph.server.cjs.map +1 -0
  63. package/dist/src/extensions/(backend)/channel/task-graph.server.mjs +8 -0
  64. package/dist/src/extensions/(backend)/channel/task-graph.server.mjs.map +1 -0
  65. package/dist/src/extensions/workspaces/sessions/(backend)/_lib/root.cli.cjs +317 -0
  66. package/dist/src/extensions/workspaces/sessions/(backend)/_lib/root.cli.cjs.map +1 -0
  67. package/dist/src/extensions/workspaces/sessions/(backend)/_lib/root.cli.d.cts +39 -0
  68. package/dist/src/extensions/workspaces/sessions/(backend)/_lib/root.cli.d.cts.map +1 -0
  69. package/dist/src/extensions/workspaces/sessions/(backend)/_lib/root.cli.d.mts +39 -0
  70. package/dist/src/extensions/workspaces/sessions/(backend)/_lib/root.cli.d.mts.map +1 -0
  71. package/dist/src/extensions/workspaces/sessions/(backend)/_lib/root.cli.mjs +317 -0
  72. package/dist/src/extensions/workspaces/sessions/(backend)/_lib/root.cli.mjs.map +1 -0
  73. package/dist/src/extensions/workspaces/sessions/(backend)/_lib/root.server.cjs +95 -0
  74. package/dist/src/extensions/workspaces/sessions/(backend)/_lib/root.server.cjs.map +1 -0
  75. package/dist/src/extensions/workspaces/sessions/(backend)/_lib/root.server.mjs +95 -0
  76. package/dist/src/extensions/workspaces/sessions/(backend)/_lib/root.server.mjs.map +1 -0
  77. package/dist/src/extensions/workspaces/sessions/(backend)/command/_lib/tasks.cli.cjs +30 -0
  78. package/dist/src/extensions/workspaces/sessions/(backend)/command/_lib/tasks.cli.cjs.map +1 -0
  79. package/dist/src/extensions/workspaces/sessions/(backend)/command/_lib/tasks.cli.d.cts +20 -0
  80. package/dist/src/extensions/workspaces/sessions/(backend)/command/_lib/tasks.cli.d.cts.map +1 -0
  81. package/dist/src/extensions/workspaces/sessions/(backend)/command/_lib/tasks.cli.d.mts +20 -0
  82. package/dist/src/extensions/workspaces/sessions/(backend)/command/_lib/tasks.cli.d.mts.map +1 -0
  83. package/dist/src/extensions/workspaces/sessions/(backend)/command/_lib/tasks.cli.mjs +29 -0
  84. package/dist/src/extensions/workspaces/sessions/(backend)/command/_lib/tasks.cli.mjs.map +1 -0
  85. package/dist/src/extensions/workspaces/sessions/(backend)/command/_lib/tasks.server.cjs +19 -0
  86. package/dist/src/extensions/workspaces/sessions/(backend)/command/_lib/tasks.server.cjs.map +1 -0
  87. package/dist/src/extensions/workspaces/sessions/(backend)/command/_lib/tasks.server.mjs +19 -0
  88. package/dist/src/extensions/workspaces/sessions/(backend)/command/_lib/tasks.server.mjs.map +1 -0
  89. package/dist/src/extensions/workspaces/sessions/(backend)/command/tasks.cli.cjs +8 -0
  90. package/dist/src/extensions/workspaces/sessions/(backend)/command/tasks.cli.cjs.map +1 -0
  91. package/dist/src/extensions/workspaces/sessions/(backend)/command/tasks.cli.mjs +9 -0
  92. package/dist/src/extensions/workspaces/sessions/(backend)/command/tasks.cli.mjs.map +1 -0
  93. package/dist/src/extensions/workspaces/sessions/(backend)/command/tasks.server.cjs +7 -0
  94. package/dist/src/extensions/workspaces/sessions/(backend)/command/tasks.server.cjs.map +1 -0
  95. package/dist/src/extensions/workspaces/sessions/(backend)/command/tasks.server.mjs +8 -0
  96. package/dist/src/extensions/workspaces/sessions/(backend)/command/tasks.server.mjs.map +1 -0
  97. package/dist/src/extensions/workspaces/sessions/(backend)/hook/_lib/session-compact.cli.cjs +6 -0
  98. package/dist/src/extensions/workspaces/sessions/(backend)/hook/_lib/session-compact.cli.cjs.map +1 -0
  99. package/dist/src/extensions/workspaces/sessions/(backend)/hook/_lib/session-compact.cli.mjs +6 -0
  100. package/dist/src/extensions/workspaces/sessions/(backend)/hook/_lib/session-compact.cli.mjs.map +1 -0
  101. package/dist/src/extensions/workspaces/sessions/(backend)/hook/_lib/session-start.cli.cjs +6 -0
  102. package/dist/src/extensions/workspaces/sessions/(backend)/hook/_lib/session-start.cli.cjs.map +1 -0
  103. package/dist/src/extensions/workspaces/sessions/(backend)/hook/_lib/session-start.cli.mjs +6 -0
  104. package/dist/src/extensions/workspaces/sessions/(backend)/hook/_lib/session-start.cli.mjs.map +1 -0
  105. package/dist/src/extensions/workspaces/sessions/(backend)/hook/_lib/session-tree.cli.cjs +6 -0
  106. package/dist/src/extensions/workspaces/sessions/(backend)/hook/_lib/session-tree.cli.cjs.map +1 -0
  107. package/dist/src/extensions/workspaces/sessions/(backend)/hook/_lib/session-tree.cli.mjs +6 -0
  108. package/dist/src/extensions/workspaces/sessions/(backend)/hook/_lib/session-tree.cli.mjs.map +1 -0
  109. package/dist/src/extensions/workspaces/sessions/(backend)/hook/_lib/tool-execution-end.cli.cjs +6 -0
  110. package/dist/src/extensions/workspaces/sessions/(backend)/hook/_lib/tool-execution-end.cli.cjs.map +1 -0
  111. package/dist/src/extensions/workspaces/sessions/(backend)/hook/_lib/tool-execution-end.cli.mjs +6 -0
  112. package/dist/src/extensions/workspaces/sessions/(backend)/hook/_lib/tool-execution-end.cli.mjs.map +1 -0
  113. package/dist/src/extensions/workspaces/sessions/(backend)/hook/session-compact.cli.cjs +7 -0
  114. package/dist/src/extensions/workspaces/sessions/(backend)/hook/session-compact.cli.cjs.map +1 -0
  115. package/dist/src/extensions/workspaces/sessions/(backend)/hook/session-compact.cli.mjs +8 -0
  116. package/dist/src/extensions/workspaces/sessions/(backend)/hook/session-compact.cli.mjs.map +1 -0
  117. package/dist/src/extensions/workspaces/sessions/(backend)/hook/session-start.cli.cjs +7 -0
  118. package/dist/src/extensions/workspaces/sessions/(backend)/hook/session-start.cli.cjs.map +1 -0
  119. package/dist/src/extensions/workspaces/sessions/(backend)/hook/session-start.cli.mjs +8 -0
  120. package/dist/src/extensions/workspaces/sessions/(backend)/hook/session-start.cli.mjs.map +1 -0
  121. package/dist/src/extensions/workspaces/sessions/(backend)/hook/session-tree.cli.cjs +7 -0
  122. package/dist/src/extensions/workspaces/sessions/(backend)/hook/session-tree.cli.cjs.map +1 -0
  123. package/dist/src/extensions/workspaces/sessions/(backend)/hook/session-tree.cli.mjs +8 -0
  124. package/dist/src/extensions/workspaces/sessions/(backend)/hook/session-tree.cli.mjs.map +1 -0
  125. package/dist/src/extensions/workspaces/sessions/(backend)/hook/tool-execution-end.cli.cjs +7 -0
  126. package/dist/src/extensions/workspaces/sessions/(backend)/hook/tool-execution-end.cli.cjs.map +1 -0
  127. package/dist/src/extensions/workspaces/sessions/(backend)/hook/tool-execution-end.cli.mjs +8 -0
  128. package/dist/src/extensions/workspaces/sessions/(backend)/hook/tool-execution-end.cli.mjs.map +1 -0
  129. package/dist/src/extensions/workspaces/sessions/(backend)/resource/_lib/task-board.server.cjs +20 -0
  130. package/dist/src/extensions/workspaces/sessions/(backend)/resource/_lib/task-board.server.cjs.map +1 -0
  131. package/dist/src/extensions/workspaces/sessions/(backend)/resource/_lib/task-board.server.mjs +20 -0
  132. package/dist/src/extensions/workspaces/sessions/(backend)/resource/_lib/task-board.server.mjs.map +1 -0
  133. package/dist/src/extensions/workspaces/sessions/(backend)/resource/task-board.server.cjs +7 -0
  134. package/dist/src/extensions/workspaces/sessions/(backend)/resource/task-board.server.cjs.map +1 -0
  135. package/dist/src/extensions/workspaces/sessions/(backend)/resource/task-board.server.mjs +8 -0
  136. package/dist/src/extensions/workspaces/sessions/(backend)/resource/task-board.server.mjs.map +1 -0
  137. package/dist/src/extensions/workspaces/sessions/(backend)/root.cli.cjs +11 -0
  138. package/dist/src/extensions/workspaces/sessions/(backend)/root.cli.cjs.map +1 -0
  139. package/dist/src/extensions/workspaces/sessions/(backend)/root.cli.mjs +12 -0
  140. package/dist/src/extensions/workspaces/sessions/(backend)/root.cli.mjs.map +1 -0
  141. package/dist/src/extensions/workspaces/sessions/(backend)/root.server.cjs +7 -0
  142. package/dist/src/extensions/workspaces/sessions/(backend)/root.server.cjs.map +1 -0
  143. package/dist/src/extensions/workspaces/sessions/(backend)/root.server.mjs +8 -0
  144. package/dist/src/extensions/workspaces/sessions/(backend)/root.server.mjs.map +1 -0
  145. package/dist/src/extensions/workspaces/sessions/(backend)/tool/_lib/task.cli.cjs +160 -0
  146. package/dist/{tools/task.cjs.map → src/extensions/workspaces/sessions/(backend)/tool/_lib/task.cli.cjs.map} +1 -1
  147. package/dist/{tools/task.d.cts → src/extensions/workspaces/sessions/(backend)/tool/_lib/task.cli.d.cts} +11 -8
  148. package/dist/src/extensions/workspaces/sessions/(backend)/tool/_lib/task.cli.d.cts.map +1 -0
  149. package/dist/{tools/task.d.mts → src/extensions/workspaces/sessions/(backend)/tool/_lib/task.cli.d.mts} +11 -8
  150. package/dist/src/extensions/workspaces/sessions/(backend)/tool/_lib/task.cli.d.mts.map +1 -0
  151. package/dist/src/extensions/workspaces/sessions/(backend)/tool/_lib/task.cli.mjs +157 -0
  152. package/dist/src/extensions/workspaces/sessions/(backend)/tool/_lib/task.cli.mjs.map +1 -0
  153. package/dist/src/extensions/workspaces/sessions/(backend)/tool/_lib/task.server.cjs +109 -0
  154. package/dist/src/extensions/workspaces/sessions/(backend)/tool/_lib/task.server.cjs.map +1 -0
  155. package/dist/src/extensions/workspaces/sessions/(backend)/tool/_lib/task.server.mjs +107 -0
  156. package/dist/src/extensions/workspaces/sessions/(backend)/tool/_lib/task.server.mjs.map +1 -0
  157. package/dist/src/extensions/workspaces/sessions/(backend)/tool/task.cli.cjs +7 -0
  158. package/dist/src/extensions/workspaces/sessions/(backend)/tool/task.cli.cjs.map +1 -0
  159. package/dist/src/extensions/workspaces/sessions/(backend)/tool/task.cli.mjs +8 -0
  160. package/dist/src/extensions/workspaces/sessions/(backend)/tool/task.cli.mjs.map +1 -0
  161. package/dist/src/extensions/workspaces/sessions/(backend)/tool/task.server.cjs +7 -0
  162. package/dist/src/extensions/workspaces/sessions/(backend)/tool/task.server.cjs.map +1 -0
  163. package/dist/src/extensions/workspaces/sessions/(backend)/tool/task.server.mjs +8 -0
  164. package/dist/src/extensions/workspaces/sessions/(backend)/tool/task.server.mjs.map +1 -0
  165. package/dist/src/extensions/workspaces/sessions/(frontend)/_shared/format.cli.cjs +333 -0
  166. package/dist/src/extensions/workspaces/sessions/(frontend)/_shared/format.cli.cjs.map +1 -0
  167. package/dist/{tui/format.d.mts → src/extensions/workspaces/sessions/(frontend)/_shared/format.cli.d.cts} +5 -5
  168. package/dist/src/extensions/workspaces/sessions/(frontend)/_shared/format.cli.d.cts.map +1 -0
  169. package/dist/{tui/format.d.cts → src/extensions/workspaces/sessions/(frontend)/_shared/format.cli.d.mts} +5 -5
  170. package/dist/src/extensions/workspaces/sessions/(frontend)/_shared/format.cli.d.mts.map +1 -0
  171. package/dist/src/extensions/workspaces/sessions/(frontend)/_shared/format.cli.mjs +322 -0
  172. package/dist/src/extensions/workspaces/sessions/(frontend)/_shared/format.cli.mjs.map +1 -0
  173. package/dist/src/extensions/workspaces/sessions/(frontend)/message/doom-task-notify.cli.cjs +9 -0
  174. package/dist/src/extensions/workspaces/sessions/(frontend)/message/doom-task-notify.cli.cjs.map +1 -0
  175. package/dist/src/extensions/workspaces/sessions/(frontend)/message/doom-task-notify.cli.mjs +9 -0
  176. package/dist/src/extensions/workspaces/sessions/(frontend)/message/doom-task-notify.cli.mjs.map +1 -0
  177. package/dist/src/extensions/workspaces/sessions/(frontend)/overlay/_lib/selectors.cjs +149 -0
  178. package/dist/src/extensions/workspaces/sessions/(frontend)/overlay/_lib/selectors.cjs.map +1 -0
  179. package/dist/{tui → src/extensions/workspaces/sessions/(frontend)/overlay/_lib}/selectors.d.cts +2 -2
  180. package/dist/src/extensions/workspaces/sessions/(frontend)/overlay/_lib/selectors.d.cts.map +1 -0
  181. package/dist/{tui → src/extensions/workspaces/sessions/(frontend)/overlay/_lib}/selectors.d.mts +2 -2
  182. package/dist/src/extensions/workspaces/sessions/(frontend)/overlay/_lib/selectors.d.mts.map +1 -0
  183. package/dist/src/extensions/workspaces/sessions/(frontend)/overlay/_lib/selectors.mjs +142 -0
  184. package/dist/src/extensions/workspaces/sessions/(frontend)/overlay/_lib/selectors.mjs.map +1 -0
  185. package/dist/src/extensions/workspaces/sessions/(frontend)/overlay/_lib/task-space.cli.cjs +358 -0
  186. package/dist/src/extensions/workspaces/sessions/(frontend)/overlay/_lib/task-space.cli.cjs.map +1 -0
  187. package/dist/{tui/taskSpace.d.cts → src/extensions/workspaces/sessions/(frontend)/overlay/_lib/task-space.cli.d.cts} +4 -3
  188. package/dist/src/extensions/workspaces/sessions/(frontend)/overlay/_lib/task-space.cli.d.cts.map +1 -0
  189. package/dist/{tui/taskSpace.d.mts → src/extensions/workspaces/sessions/(frontend)/overlay/_lib/task-space.cli.d.mts} +4 -3
  190. package/dist/src/extensions/workspaces/sessions/(frontend)/overlay/_lib/task-space.cli.d.mts.map +1 -0
  191. package/dist/src/extensions/workspaces/sessions/(frontend)/overlay/_lib/task-space.cli.mjs +355 -0
  192. package/dist/src/extensions/workspaces/sessions/(frontend)/overlay/_lib/task-space.cli.mjs.map +1 -0
  193. package/dist/src/extensions/workspaces/sessions/(frontend)/overlay/_lib/taskOverlay.cjs +165 -0
  194. package/dist/src/extensions/workspaces/sessions/(frontend)/overlay/_lib/taskOverlay.cjs.map +1 -0
  195. package/dist/{tui → src/extensions/workspaces/sessions/(frontend)/overlay/_lib}/taskOverlay.d.cts +6 -4
  196. package/dist/src/extensions/workspaces/sessions/(frontend)/overlay/_lib/taskOverlay.d.cts.map +1 -0
  197. package/dist/{tui → src/extensions/workspaces/sessions/(frontend)/overlay/_lib}/taskOverlay.d.mts +6 -4
  198. package/dist/src/extensions/workspaces/sessions/(frontend)/overlay/_lib/taskOverlay.d.mts.map +1 -0
  199. package/dist/src/extensions/workspaces/sessions/(frontend)/overlay/_lib/taskOverlay.mjs +164 -0
  200. package/dist/src/extensions/workspaces/sessions/(frontend)/overlay/_lib/taskOverlay.mjs.map +1 -0
  201. package/dist/src/extensions/workspaces/sessions/(frontend)/tool/_lib/task.cli.cjs +13 -0
  202. package/dist/src/extensions/workspaces/sessions/(frontend)/tool/_lib/task.cli.cjs.map +1 -0
  203. package/dist/src/extensions/workspaces/sessions/(frontend)/tool/_lib/task.cli.mjs +13 -0
  204. package/dist/src/extensions/workspaces/sessions/(frontend)/tool/_lib/task.cli.mjs.map +1 -0
  205. package/dist/src/extensions/workspaces/sessions/(frontend)/tool/task.cli.cjs +7 -0
  206. package/dist/src/extensions/workspaces/sessions/(frontend)/tool/task.cli.cjs.map +1 -0
  207. package/dist/src/extensions/workspaces/sessions/(frontend)/tool/task.cli.mjs +8 -0
  208. package/dist/src/extensions/workspaces/sessions/(frontend)/tool/task.cli.mjs.map +1 -0
  209. package/dist/src/models/task.cjs +29 -0
  210. package/dist/src/models/task.cjs.map +1 -0
  211. package/dist/{models → src/models}/task.d.cts +12 -2
  212. package/dist/src/models/task.d.cts.map +1 -0
  213. package/dist/{models → src/models}/task.d.mts +12 -2
  214. package/dist/src/models/task.d.mts.map +1 -0
  215. package/dist/src/models/task.mjs +26 -0
  216. package/dist/src/models/task.mjs.map +1 -0
  217. package/dist/src/models/taskGraph.cjs +67 -0
  218. package/dist/src/models/taskGraph.cjs.map +1 -0
  219. package/dist/src/models/taskGraph.d.cts.map +1 -0
  220. package/dist/src/models/taskGraph.d.mts.map +1 -0
  221. package/dist/src/models/taskGraph.mjs +63 -0
  222. package/dist/src/models/taskGraph.mjs.map +1 -0
  223. package/dist/src/schemas/apiContracts.cjs +51 -0
  224. package/dist/src/schemas/apiContracts.cjs.map +1 -0
  225. package/dist/{schemas → src/schemas}/apiContracts.d.cts.map +1 -1
  226. package/dist/{schemas → src/schemas}/apiContracts.d.mts.map +1 -1
  227. package/dist/src/schemas/apiContracts.mjs +49 -0
  228. package/dist/src/schemas/apiContracts.mjs.map +1 -0
  229. package/dist/src/schemas/task.cjs +130 -0
  230. package/dist/src/schemas/task.cjs.map +1 -0
  231. package/dist/src/schemas/task.d.cts.map +1 -0
  232. package/dist/src/schemas/task.d.mts.map +1 -0
  233. package/dist/src/schemas/task.mjs +117 -0
  234. package/dist/src/schemas/task.mjs.map +1 -0
  235. package/dist/src/services/config/index.cjs +88 -0
  236. package/dist/src/services/config/index.cjs.map +1 -0
  237. package/dist/src/services/config/index.d.cts.map +1 -0
  238. package/dist/src/services/config/index.d.mts.map +1 -0
  239. package/dist/src/services/config/index.mjs +72 -0
  240. package/dist/src/services/config/index.mjs.map +1 -0
  241. package/dist/src/services/contextContribution/index.cjs +51 -0
  242. package/dist/src/services/contextContribution/index.cjs.map +1 -0
  243. package/dist/src/services/contextContribution/index.mjs +46 -0
  244. package/dist/src/services/contextContribution/index.mjs.map +1 -0
  245. package/dist/src/services/delegation/index.cjs +629 -0
  246. package/dist/src/services/delegation/index.cjs.map +1 -0
  247. package/dist/src/services/delegation/index.d.cts.map +1 -0
  248. package/dist/src/services/delegation/index.d.mts.map +1 -0
  249. package/dist/src/services/delegation/index.mjs +623 -0
  250. package/dist/src/services/delegation/index.mjs.map +1 -0
  251. package/dist/src/services/delegationPlatform/index.cjs +23 -0
  252. package/dist/src/services/delegationPlatform/index.cjs.map +1 -0
  253. package/dist/src/services/delegationPlatform/index.mjs +21 -0
  254. package/dist/src/services/delegationPlatform/index.mjs.map +1 -0
  255. package/dist/src/services/invariants/index.cjs +64 -0
  256. package/dist/src/services/invariants/index.cjs.map +1 -0
  257. package/dist/src/services/invariants/index.d.cts.map +1 -0
  258. package/dist/src/services/invariants/index.d.mts.map +1 -0
  259. package/dist/src/services/invariants/index.mjs +62 -0
  260. package/dist/src/services/invariants/index.mjs.map +1 -0
  261. package/dist/src/services/logSinkTelemetry/index.cjs +43 -0
  262. package/dist/src/services/logSinkTelemetry/index.cjs.map +1 -0
  263. package/dist/src/services/logSinkTelemetry/index.d.cts.map +1 -0
  264. package/dist/src/services/logSinkTelemetry/index.d.mts.map +1 -0
  265. package/dist/src/services/logSinkTelemetry/index.mjs +41 -0
  266. package/dist/src/services/logSinkTelemetry/index.mjs.map +1 -0
  267. package/dist/src/services/paths/index.cjs +233 -0
  268. package/dist/src/services/paths/index.cjs.map +1 -0
  269. package/dist/src/services/paths/index.d.cts.map +1 -0
  270. package/dist/src/services/paths/index.d.mts.map +1 -0
  271. package/dist/src/services/paths/index.mjs +218 -0
  272. package/dist/src/services/paths/index.mjs.map +1 -0
  273. package/dist/src/services/processLiveness/index.cjs +20 -0
  274. package/dist/src/services/processLiveness/index.cjs.map +1 -0
  275. package/dist/src/services/processLiveness/index.d.cts.map +1 -0
  276. package/dist/src/services/processLiveness/index.d.mts.map +1 -0
  277. package/dist/src/services/processLiveness/index.mjs +20 -0
  278. package/dist/src/services/processLiveness/index.mjs.map +1 -0
  279. package/dist/src/services/reconcile/index.cjs +65 -0
  280. package/dist/src/services/reconcile/index.cjs.map +1 -0
  281. package/dist/src/services/reconcile/index.d.cts.map +1 -0
  282. package/dist/src/services/reconcile/index.d.mts.map +1 -0
  283. package/dist/src/services/reconcile/index.mjs +63 -0
  284. package/dist/src/services/reconcile/index.mjs.map +1 -0
  285. package/dist/src/services/reducer/index.cjs +350 -0
  286. package/dist/src/services/reducer/index.cjs.map +1 -0
  287. package/dist/src/services/reducer/index.d.cts.map +1 -0
  288. package/dist/src/services/reducer/index.d.mts.map +1 -0
  289. package/dist/src/services/reducer/index.mjs +345 -0
  290. package/dist/src/services/reducer/index.mjs.map +1 -0
  291. package/dist/src/services/taskNarration/index.cjs +32 -0
  292. package/dist/src/services/taskNarration/index.cjs.map +1 -0
  293. package/dist/src/services/taskNarration/index.mjs +32 -0
  294. package/dist/src/services/taskNarration/index.mjs.map +1 -0
  295. package/dist/src/services/taskResult/index.cjs +174 -0
  296. package/dist/src/services/taskResult/index.cjs.map +1 -0
  297. package/dist/src/services/taskResult/index.d.cts.map +1 -0
  298. package/dist/src/services/taskResult/index.d.mts.map +1 -0
  299. package/dist/src/services/taskResult/index.mjs +165 -0
  300. package/dist/src/services/taskResult/index.mjs.map +1 -0
  301. package/dist/src/services/taskStore/index.cjs +216 -0
  302. package/dist/src/services/taskStore/index.cjs.map +1 -0
  303. package/dist/src/services/taskStore/index.d.cts.map +1 -0
  304. package/dist/src/services/taskStore/index.d.mts.map +1 -0
  305. package/dist/src/services/taskStore/index.mjs +213 -0
  306. package/dist/src/services/taskStore/index.mjs.map +1 -0
  307. package/dist/src/types/delegation.cjs +7 -0
  308. package/dist/src/types/delegation.cjs.map +1 -0
  309. package/dist/{types → src/types}/delegation.d.cts.map +1 -1
  310. package/dist/{types → src/types}/delegation.d.mts.map +1 -1
  311. package/dist/src/types/delegation.mjs +7 -0
  312. package/dist/src/types/delegation.mjs.map +1 -0
  313. package/dist/src/types/telemetry.cjs +26 -0
  314. package/dist/src/types/telemetry.cjs.map +1 -0
  315. package/dist/src/types/telemetry.d.cts.map +1 -0
  316. package/dist/src/types/telemetry.d.mts.map +1 -0
  317. package/dist/src/types/telemetry.mjs +26 -0
  318. package/dist/src/types/telemetry.mjs.map +1 -0
  319. package/dist/src/types/webTasks.cjs +7 -0
  320. package/dist/src/types/webTasks.cjs.map +1 -0
  321. package/dist/src/types/webTasks.mjs +7 -0
  322. package/dist/src/types/webTasks.mjs.map +1 -0
  323. package/dist/store-invariants.cjs +5 -1
  324. package/dist/store-invariants.d.cts +1 -1
  325. package/dist/store-invariants.d.mts +1 -1
  326. package/dist/store-invariants.mjs +2 -1
  327. package/dist/store-paths.cjs +14 -1
  328. package/dist/store-paths.d.cts +1 -1
  329. package/dist/store-paths.d.mts +1 -1
  330. package/dist/store-paths.mjs +2 -1
  331. package/dist/store-process-liveness.cjs +3 -1
  332. package/dist/store-process-liveness.d.cts +1 -1
  333. package/dist/store-process-liveness.d.mts +1 -1
  334. package/dist/store-process-liveness.mjs +2 -1
  335. package/dist/store-reconcile.cjs +5 -1
  336. package/dist/store-reconcile.d.cts +1 -1
  337. package/dist/store-reconcile.d.mts +1 -1
  338. package/dist/store-reconcile.mjs +2 -1
  339. package/dist/store-reducer.cjs +8 -1
  340. package/dist/store-reducer.d.cts +1 -1
  341. package/dist/store-reducer.d.mts +1 -1
  342. package/dist/store-reducer.mjs +2 -1
  343. package/dist/store-task-graph.cjs +7 -1
  344. package/dist/store-task-graph.d.cts +1 -1
  345. package/dist/store-task-graph.d.mts +1 -1
  346. package/dist/store-task-graph.mjs +2 -1
  347. package/dist/store-task-store.cjs +3 -1
  348. package/dist/store-task-store.d.cts +1 -1
  349. package/dist/store-task-store.d.mts +1 -1
  350. package/dist/store-task-store.mjs +2 -1
  351. package/dist/store-types.cjs +6 -1
  352. package/dist/store-types.d.cts +1 -1
  353. package/dist/store-types.d.mts +1 -1
  354. package/dist/store-types.mjs +2 -1
  355. package/dist/tool-prompt-guidelines.cjs +3 -1
  356. package/dist/tool-prompt-guidelines.d.cts +1 -1
  357. package/dist/tool-prompt-guidelines.d.mts +1 -1
  358. package/dist/tool-prompt-guidelines.mjs +2 -1
  359. package/dist/tool-response-envelope.cjs +12 -1
  360. package/dist/tool-response-envelope.d.cts +1 -1
  361. package/dist/tool-response-envelope.d.mts +1 -1
  362. package/dist/tool-response-envelope.mjs +2 -1
  363. package/dist/tool-schema.cjs +17 -1
  364. package/dist/tool-schema.d.cts +2 -2
  365. package/dist/tool-schema.d.mts +2 -2
  366. package/dist/tool-schema.mjs +3 -1
  367. package/dist/tool-task-tool.cjs +6 -1
  368. package/dist/tool-task-tool.d.cts +2 -2
  369. package/dist/tool-task-tool.d.mts +2 -2
  370. package/dist/tool-task-tool.mjs +3 -1
  371. package/dist/tui-format.cjs +14 -1
  372. package/dist/tui-format.d.cts +1 -1
  373. package/dist/tui-format.d.mts +1 -1
  374. package/dist/tui-format.mjs +2 -1
  375. package/dist/tui-selectors.cjs +10 -1
  376. package/dist/tui-selectors.d.cts +1 -1
  377. package/dist/tui-selectors.d.mts +1 -1
  378. package/dist/tui-selectors.mjs +2 -1
  379. package/dist/tui-task-overlay.cjs +4 -1
  380. package/dist/tui-task-overlay.d.cts +2 -2
  381. package/dist/tui-task-overlay.d.mts +2 -2
  382. package/dist/tui-task-overlay.mjs +2 -1
  383. package/dist/tui-task-space.cjs +5 -1
  384. package/dist/tui-task-space.d.cts +1 -1
  385. package/dist/tui-task-space.d.mts +1 -1
  386. package/dist/tui-task-space.mjs +2 -1
  387. package/package.json +20 -19
  388. package/dist/constants/promptGuidelines.cjs +0 -2
  389. package/dist/constants/promptGuidelines.cjs.map +0 -1
  390. package/dist/constants/promptGuidelines.d.cts.map +0 -1
  391. package/dist/constants/promptGuidelines.d.mts.map +0 -1
  392. package/dist/constants/promptGuidelines.mjs +0 -2
  393. package/dist/constants/promptGuidelines.mjs.map +0 -1
  394. package/dist/constants/task.cjs +0 -2
  395. package/dist/constants/task.cjs.map +0 -1
  396. package/dist/constants/task.d.cts.map +0 -1
  397. package/dist/constants/task.d.mts.map +0 -1
  398. package/dist/constants/task.mjs +0 -2
  399. package/dist/constants/task.mjs.map +0 -1
  400. package/dist/controllers/tasksCommand.cjs +0 -2
  401. package/dist/controllers/tasksCommand.cjs.map +0 -1
  402. package/dist/controllers/tasksCommand.d.cts +0 -15
  403. package/dist/controllers/tasksCommand.d.cts.map +0 -1
  404. package/dist/controllers/tasksCommand.d.mts +0 -15
  405. package/dist/controllers/tasksCommand.d.mts.map +0 -1
  406. package/dist/controllers/tasksCommand.mjs +0 -2
  407. package/dist/controllers/tasksCommand.mjs.map +0 -1
  408. package/dist/controllers/webTasksChannel.cjs +0 -2
  409. package/dist/controllers/webTasksChannel.cjs.map +0 -1
  410. package/dist/controllers/webTasksChannel.mjs +0 -2
  411. package/dist/controllers/webTasksChannel.mjs.map +0 -1
  412. package/dist/models/task.cjs +0 -2
  413. package/dist/models/task.cjs.map +0 -1
  414. package/dist/models/task.d.cts.map +0 -1
  415. package/dist/models/task.d.mts.map +0 -1
  416. package/dist/models/task.mjs +0 -2
  417. package/dist/models/task.mjs.map +0 -1
  418. package/dist/models/taskGraph.cjs +0 -2
  419. package/dist/models/taskGraph.cjs.map +0 -1
  420. package/dist/models/taskGraph.d.cts.map +0 -1
  421. package/dist/models/taskGraph.d.mts.map +0 -1
  422. package/dist/models/taskGraph.mjs +0 -2
  423. package/dist/models/taskGraph.mjs.map +0 -1
  424. package/dist/schemas/apiContracts.cjs +0 -2
  425. package/dist/schemas/apiContracts.cjs.map +0 -1
  426. package/dist/schemas/apiContracts.mjs +0 -2
  427. package/dist/schemas/apiContracts.mjs.map +0 -1
  428. package/dist/schemas/task.cjs +0 -2
  429. package/dist/schemas/task.cjs.map +0 -1
  430. package/dist/schemas/task.d.cts.map +0 -1
  431. package/dist/schemas/task.d.mts.map +0 -1
  432. package/dist/schemas/task.mjs +0 -2
  433. package/dist/schemas/task.mjs.map +0 -1
  434. package/dist/services/config/index.cjs +0 -2
  435. package/dist/services/config/index.cjs.map +0 -1
  436. package/dist/services/config/index.d.cts.map +0 -1
  437. package/dist/services/config/index.d.mts.map +0 -1
  438. package/dist/services/config/index.mjs +0 -2
  439. package/dist/services/config/index.mjs.map +0 -1
  440. package/dist/services/contextContribution/index.cjs +0 -3
  441. package/dist/services/contextContribution/index.cjs.map +0 -1
  442. package/dist/services/contextContribution/index.mjs +0 -3
  443. package/dist/services/contextContribution/index.mjs.map +0 -1
  444. package/dist/services/delegation/index.cjs +0 -6
  445. package/dist/services/delegation/index.cjs.map +0 -1
  446. package/dist/services/delegation/index.d.cts.map +0 -1
  447. package/dist/services/delegation/index.d.mts.map +0 -1
  448. package/dist/services/delegation/index.mjs +0 -6
  449. package/dist/services/delegation/index.mjs.map +0 -1
  450. package/dist/services/delegationPlatform/index.cjs +0 -2
  451. package/dist/services/delegationPlatform/index.cjs.map +0 -1
  452. package/dist/services/delegationPlatform/index.mjs +0 -2
  453. package/dist/services/delegationPlatform/index.mjs.map +0 -1
  454. package/dist/services/invariants/index.cjs +0 -2
  455. package/dist/services/invariants/index.cjs.map +0 -1
  456. package/dist/services/invariants/index.d.cts.map +0 -1
  457. package/dist/services/invariants/index.d.mts.map +0 -1
  458. package/dist/services/invariants/index.mjs +0 -2
  459. package/dist/services/invariants/index.mjs.map +0 -1
  460. package/dist/services/logSinkTelemetry/index.cjs +0 -2
  461. package/dist/services/logSinkTelemetry/index.cjs.map +0 -1
  462. package/dist/services/logSinkTelemetry/index.d.cts.map +0 -1
  463. package/dist/services/logSinkTelemetry/index.d.mts.map +0 -1
  464. package/dist/services/logSinkTelemetry/index.mjs +0 -2
  465. package/dist/services/logSinkTelemetry/index.mjs.map +0 -1
  466. package/dist/services/paths/index.cjs +0 -2
  467. package/dist/services/paths/index.cjs.map +0 -1
  468. package/dist/services/paths/index.d.cts.map +0 -1
  469. package/dist/services/paths/index.d.mts.map +0 -1
  470. package/dist/services/paths/index.mjs +0 -2
  471. package/dist/services/paths/index.mjs.map +0 -1
  472. package/dist/services/processLiveness/index.cjs +0 -2
  473. package/dist/services/processLiveness/index.cjs.map +0 -1
  474. package/dist/services/processLiveness/index.d.cts.map +0 -1
  475. package/dist/services/processLiveness/index.d.mts.map +0 -1
  476. package/dist/services/processLiveness/index.mjs +0 -2
  477. package/dist/services/processLiveness/index.mjs.map +0 -1
  478. package/dist/services/reconcile/index.cjs +0 -2
  479. package/dist/services/reconcile/index.cjs.map +0 -1
  480. package/dist/services/reconcile/index.d.cts.map +0 -1
  481. package/dist/services/reconcile/index.d.mts.map +0 -1
  482. package/dist/services/reconcile/index.mjs +0 -2
  483. package/dist/services/reconcile/index.mjs.map +0 -1
  484. package/dist/services/reducer/index.cjs +0 -3
  485. package/dist/services/reducer/index.cjs.map +0 -1
  486. package/dist/services/reducer/index.d.cts.map +0 -1
  487. package/dist/services/reducer/index.d.mts.map +0 -1
  488. package/dist/services/reducer/index.mjs +0 -3
  489. package/dist/services/reducer/index.mjs.map +0 -1
  490. package/dist/services/taskNarration/index.cjs +0 -2
  491. package/dist/services/taskNarration/index.cjs.map +0 -1
  492. package/dist/services/taskNarration/index.mjs +0 -2
  493. package/dist/services/taskNarration/index.mjs.map +0 -1
  494. package/dist/services/taskResult/index.cjs +0 -7
  495. package/dist/services/taskResult/index.cjs.map +0 -1
  496. package/dist/services/taskResult/index.d.cts.map +0 -1
  497. package/dist/services/taskResult/index.d.mts.map +0 -1
  498. package/dist/services/taskResult/index.mjs +0 -7
  499. package/dist/services/taskResult/index.mjs.map +0 -1
  500. package/dist/services/taskStore/index.cjs +0 -2
  501. package/dist/services/taskStore/index.cjs.map +0 -1
  502. package/dist/services/taskStore/index.d.cts.map +0 -1
  503. package/dist/services/taskStore/index.d.mts.map +0 -1
  504. package/dist/services/taskStore/index.mjs +0 -2
  505. package/dist/services/taskStore/index.mjs.map +0 -1
  506. package/dist/tools/task.cjs +0 -3
  507. package/dist/tools/task.d.cts.map +0 -1
  508. package/dist/tools/task.d.mts.map +0 -1
  509. package/dist/tools/task.mjs +0 -3
  510. package/dist/tools/task.mjs.map +0 -1
  511. package/dist/tui/format.cjs +0 -4
  512. package/dist/tui/format.cjs.map +0 -1
  513. package/dist/tui/format.d.cts.map +0 -1
  514. package/dist/tui/format.d.mts.map +0 -1
  515. package/dist/tui/format.mjs +0 -4
  516. package/dist/tui/format.mjs.map +0 -1
  517. package/dist/tui/selectors.cjs +0 -2
  518. package/dist/tui/selectors.cjs.map +0 -1
  519. package/dist/tui/selectors.d.cts.map +0 -1
  520. package/dist/tui/selectors.d.mts.map +0 -1
  521. package/dist/tui/selectors.mjs +0 -2
  522. package/dist/tui/selectors.mjs.map +0 -1
  523. package/dist/tui/taskOverlay.cjs +0 -2
  524. package/dist/tui/taskOverlay.cjs.map +0 -1
  525. package/dist/tui/taskOverlay.d.cts.map +0 -1
  526. package/dist/tui/taskOverlay.d.mts.map +0 -1
  527. package/dist/tui/taskOverlay.mjs +0 -2
  528. package/dist/tui/taskOverlay.mjs.map +0 -1
  529. package/dist/tui/taskSpace.cjs +0 -5
  530. package/dist/tui/taskSpace.cjs.map +0 -1
  531. package/dist/tui/taskSpace.d.cts.map +0 -1
  532. package/dist/tui/taskSpace.d.mts.map +0 -1
  533. package/dist/tui/taskSpace.mjs +0 -5
  534. package/dist/tui/taskSpace.mjs.map +0 -1
  535. package/dist/types/delegation.cjs +0 -2
  536. package/dist/types/delegation.cjs.map +0 -1
  537. package/dist/types/delegation.mjs +0 -2
  538. package/dist/types/delegation.mjs.map +0 -1
  539. package/dist/types/telemetry.cjs +0 -2
  540. package/dist/types/telemetry.cjs.map +0 -1
  541. package/dist/types/telemetry.d.cts.map +0 -1
  542. package/dist/types/telemetry.d.mts.map +0 -1
  543. package/dist/types/telemetry.mjs +0 -2
  544. package/dist/types/telemetry.mjs.map +0 -1
  545. package/dist/types/webTasks.cjs +0 -2
  546. package/dist/types/webTasks.cjs.map +0 -1
  547. package/dist/types/webTasks.mjs +0 -2
  548. package/dist/types/webTasks.mjs.map +0 -1
  549. package/src/extensions/web.ts +0 -18
  550. package/src/web/components/TaskDetailDialog.tsx +0 -251
  551. package/src/web/components/TaskToolMessage.tsx +0 -120
  552. package/src/web/components/TasksActivitySection.tsx +0 -200
  553. package/src/web/lib/taskToolFormat.ts +0 -330
  554. package/src/web/stores/tasksStore.ts +0 -114
  555. package/src/web/tsconfig.json +0 -23
  556. /package/dist/{constants → src/constants}/promptGuidelines.d.cts +0 -0
  557. /package/dist/{constants → src/constants}/promptGuidelines.d.mts +0 -0
  558. /package/dist/{constants → src/constants}/task.d.cts +0 -0
  559. /package/dist/{constants → src/constants}/task.d.mts +0 -0
  560. /package/dist/{models → src/models}/taskGraph.d.cts +0 -0
  561. /package/dist/{models → src/models}/taskGraph.d.mts +0 -0
  562. /package/dist/{schemas → src/schemas}/apiContracts.d.cts +0 -0
  563. /package/dist/{schemas → src/schemas}/apiContracts.d.mts +0 -0
  564. /package/dist/{schemas → src/schemas}/task.d.cts +0 -0
  565. /package/dist/{schemas → src/schemas}/task.d.mts +0 -0
  566. /package/dist/{services → src/services}/config/index.d.cts +0 -0
  567. /package/dist/{services → src/services}/config/index.d.mts +0 -0
  568. /package/dist/{services → src/services}/delegation/index.d.cts +0 -0
  569. /package/dist/{services → src/services}/delegation/index.d.mts +0 -0
  570. /package/dist/{services → src/services}/invariants/index.d.cts +0 -0
  571. /package/dist/{services → src/services}/invariants/index.d.mts +0 -0
  572. /package/dist/{services → src/services}/logSinkTelemetry/index.d.cts +0 -0
  573. /package/dist/{services → src/services}/logSinkTelemetry/index.d.mts +0 -0
  574. /package/dist/{services → src/services}/paths/index.d.cts +0 -0
  575. /package/dist/{services → src/services}/paths/index.d.mts +0 -0
  576. /package/dist/{services → src/services}/processLiveness/index.d.cts +0 -0
  577. /package/dist/{services → src/services}/processLiveness/index.d.mts +0 -0
  578. /package/dist/{services → src/services}/reconcile/index.d.cts +0 -0
  579. /package/dist/{services → src/services}/reconcile/index.d.mts +0 -0
  580. /package/dist/{services → src/services}/reducer/index.d.cts +0 -0
  581. /package/dist/{services → src/services}/reducer/index.d.mts +0 -0
  582. /package/dist/{services → src/services}/taskResult/index.d.cts +0 -0
  583. /package/dist/{services → src/services}/taskResult/index.d.mts +0 -0
  584. /package/dist/{services → src/services}/taskStore/index.d.cts +0 -0
  585. /package/dist/{services → src/services}/taskStore/index.d.mts +0 -0
  586. /package/dist/{types → src/types}/delegation.d.cts +0 -0
  587. /package/dist/{types → src/types}/delegation.d.mts +0 -0
  588. /package/dist/{types → src/types}/telemetry.d.cts +0 -0
  589. /package/dist/{types → src/types}/telemetry.d.mts +0 -0
@@ -1,251 +0,0 @@
1
- import type { SessionFrameSender } from '@agimon-ai/doompi-core/web';
2
- import {
3
- Button,
4
- Dialog,
5
- DialogBody,
6
- DialogContent,
7
- DialogFooter,
8
- DialogHeader,
9
- DialogTitle,
10
- Input,
11
- Select,
12
- SelectContent,
13
- SelectItem,
14
- SelectTrigger,
15
- SelectValue,
16
- Textarea,
17
- } from '@agimon-ai/doompi-web-components';
18
- import { type ReactNode, useState } from 'react';
19
-
20
- import type { WebTask, WebTaskStatus } from '../../types/webTasks';
21
- import { requestTaskEdit, requestTaskMessage, taskEditDraft, type TaskEditDraft } from '../stores/tasksStore';
22
-
23
- /** How the one task dialog is opened: reading it, changing it, or steering its run. */
24
- export type TaskDialogMode = 'view' | 'edit' | 'message';
25
-
26
- const STATUS_CHOICES: readonly WebTaskStatus[] = ['pending', 'in_progress', 'completed', 'failed'];
27
- const DESCRIPTION_ROWS = 5;
28
- const MESSAGE_ROWS = 4;
29
-
30
- function FieldLabel({ children }: { children: string }) {
31
- return <span className="text-2xs font-bold tracking-widest text-doom-faint">{children}</span>;
32
- }
33
-
34
- function Field({ label, children }: { label: string; children: ReactNode }) {
35
- return (
36
- <div className="flex flex-col gap-1.5">
37
- <FieldLabel>{label}</FieldLabel>
38
- {children}
39
- </div>
40
- );
41
- }
42
-
43
- function ReadOnlyValue({ value, testId }: { value: string; testId: string }) {
44
- return (
45
- <span data-testid={testId} className="whitespace-pre-wrap break-words text-sm leading-relaxed text-doom-dim">
46
- {value}
47
- </span>
48
- );
49
- }
50
-
51
- function TaskFacts({ task }: { task: WebTask }) {
52
- return (
53
- <div className="flex flex-wrap gap-5">
54
- <Field label="STATUS">
55
- <ReadOnlyValue testId="task-detail-status" value={task.status.replace('_', ' ')} />
56
- </Field>
57
- {task.activeForm ? (
58
- <Field label="ACTIVE FORM">
59
- <ReadOnlyValue testId="task-detail-active-form" value={task.activeForm} />
60
- </Field>
61
- ) : null}
62
- {task.owner ? (
63
- <Field label="OWNER">
64
- <ReadOnlyValue testId="task-detail-owner" value={task.owner} />
65
- </Field>
66
- ) : null}
67
- {task.delegation?.agent ? (
68
- <Field label="DELEGATED TO">
69
- <ReadOnlyValue
70
- testId="task-detail-agent"
71
- value={
72
- task.delegation.state ? `${task.delegation.agent} · ${task.delegation.state}` : task.delegation.agent
73
- }
74
- />
75
- </Field>
76
- ) : null}
77
- {task.blockedBy.length > 0 ? (
78
- <Field label="BLOCKED BY">
79
- <ReadOnlyValue testId="task-detail-blocked-by" value={task.blockedBy.map((id) => `#${id}`).join(', ')} />
80
- </Field>
81
- ) : null}
82
- {task.updatedAt ? (
83
- <Field label="UPDATED">
84
- <ReadOnlyValue testId="task-detail-updated" value={task.updatedAt} />
85
- </Field>
86
- ) : null}
87
- </div>
88
- );
89
- }
90
-
91
- /**
92
- * One task, read first and changed second. Every change leaves as a prompt the
93
- * session can see, so the agent remains the only writer of task state.
94
- */
95
- export function TaskDetailDialog({
96
- task,
97
- sessionId,
98
- mode: initialMode,
99
- send,
100
- onClose,
101
- }: {
102
- task: WebTask;
103
- sessionId: string;
104
- mode: TaskDialogMode;
105
- send: SessionFrameSender;
106
- onClose: () => void;
107
- }) {
108
- const [mode, setMode] = useState<TaskDialogMode>(initialMode);
109
- const [draft, setDraft] = useState<TaskEditDraft>(() => taskEditDraft(task));
110
- const [message, setMessage] = useState('');
111
- const agent = task.delegation?.agent;
112
-
113
- const submitEdit = (): void => {
114
- if (requestTaskEdit(send, sessionId, task, draft)) onClose();
115
- };
116
- const submitMessage = (): void => {
117
- if (!message.trim() || !agent) return;
118
- requestTaskMessage(send, sessionId, task.id, agent, message);
119
- onClose();
120
- };
121
-
122
- return (
123
- <Dialog
124
- open
125
- onOpenChange={(open) => {
126
- if (!open) onClose();
127
- }}
128
- >
129
- <DialogContent width="lg" data-testid="task-detail-dialog" data-mode={mode} aria-describedby={undefined}>
130
- <DialogHeader>
131
- <div className="flex min-w-0 flex-col items-start gap-1 sm:flex-row sm:items-center sm:gap-2.5">
132
- <span className="text-2xs text-doom-faint">task #{task.id}</span>
133
- <DialogTitle data-testid="task-detail-title" className="max-w-full break-words">
134
- {task.subject}
135
- </DialogTitle>
136
- </div>
137
- </DialogHeader>
138
- <DialogBody>
139
- {mode === 'view' ? (
140
- <>
141
- <Field label="DESCRIPTION">
142
- <ReadOnlyValue
143
- testId="task-detail-description"
144
- value={task.description ?? 'no description on this task'}
145
- />
146
- </Field>
147
- <TaskFacts task={task} />
148
- <DialogFooter>
149
- <span className="min-w-0 flex-1" />
150
- {agent ? (
151
- <Button
152
- variant="outline"
153
- size="xs"
154
- data-testid="task-detail-open-message"
155
- onClick={() => setMode('message')}
156
- >
157
- message agent
158
- </Button>
159
- ) : null}
160
- <Button variant="primary" size="xs" data-testid="task-detail-open-edit" onClick={() => setMode('edit')}>
161
- edit
162
- </Button>
163
- </DialogFooter>
164
- </>
165
- ) : null}
166
-
167
- {mode === 'edit' ? (
168
- <>
169
- <Field label="SUBJECT">
170
- <Input
171
- data-testid="task-detail-subject-input"
172
- autoFocus
173
- value={draft.subject}
174
- onChange={(event) => setDraft({ ...draft, subject: event.target.value })}
175
- />
176
- </Field>
177
- <Field label="DESCRIPTION">
178
- <Textarea
179
- data-testid="task-detail-description-input"
180
- rows={DESCRIPTION_ROWS}
181
- value={draft.description}
182
- placeholder="what this task covers"
183
- onChange={(event) => setDraft({ ...draft, description: event.target.value })}
184
- />
185
- </Field>
186
- <Field label="STATUS">
187
- <Select
188
- value={draft.status}
189
- onValueChange={(value) => setDraft({ ...draft, status: value as WebTaskStatus })}
190
- >
191
- <SelectTrigger
192
- data-testid="task-detail-status-input"
193
- className="h-7 w-full min-w-0 text-xs sm:min-w-[200px]"
194
- >
195
- <SelectValue />
196
- </SelectTrigger>
197
- <SelectContent>
198
- {STATUS_CHOICES.map((status) => (
199
- <SelectItem key={status} value={status}>
200
- {status.replace('_', ' ')}
201
- </SelectItem>
202
- ))}
203
- </SelectContent>
204
- </Select>
205
- </Field>
206
- <DialogFooter className="flex-wrap sm:flex-nowrap">
207
- <span className="w-full text-2xs text-doom-faint sm:w-auto">
208
- saved as one prompt naming only the fields you changed
209
- </span>
210
- <span className="min-w-0 flex-1" />
211
- <Button variant="outline" size="xs" data-testid="task-detail-cancel" onClick={onClose}>
212
- cancel
213
- </Button>
214
- <Button variant="primary" size="xs" data-testid="task-detail-save" onClick={submitEdit}>
215
- save
216
- </Button>
217
- </DialogFooter>
218
- </>
219
- ) : null}
220
-
221
- {mode === 'message' && agent ? (
222
- <>
223
- <Field label={`MESSAGE TO ${agent.toUpperCase()}`}>
224
- <Textarea
225
- data-testid="task-detail-message-input"
226
- autoFocus
227
- rows={MESSAGE_ROWS}
228
- value={message}
229
- placeholder="guidance for the run working on this task"
230
- onChange={(event) => setMessage(event.target.value)}
231
- />
232
- </Field>
233
- <DialogFooter className="flex-wrap sm:flex-nowrap">
234
- <span className="w-full text-2xs text-doom-faint sm:w-auto">
235
- steers the run, it does not edit the task
236
- </span>
237
- <span className="min-w-0 flex-1" />
238
- <Button variant="outline" size="xs" data-testid="task-detail-cancel" onClick={onClose}>
239
- cancel
240
- </Button>
241
- <Button variant="primary" size="xs" data-testid="task-detail-send" onClick={submitMessage}>
242
- send
243
- </Button>
244
- </DialogFooter>
245
- </>
246
- ) : null}
247
- </DialogBody>
248
- </DialogContent>
249
- </Dialog>
250
- );
251
- }
@@ -1,120 +0,0 @@
1
- import type { ToolMessageRenderProps } from '@agimon-ai/doompi-core/web';
2
- import {
3
- MessageItem,
4
- MessageItemBody,
5
- MessageItemHeader,
6
- MessageItemStatus,
7
- type StatusTone,
8
- toolTone,
9
- } from '@agimon-ai/doompi-web-components';
10
-
11
- import {
12
- STATUS_LABEL,
13
- type TaskResultTone,
14
- type TaskRow,
15
- type TaskStatus,
16
- taskCallView,
17
- taskResultView,
18
- } from '../lib/taskToolFormat';
19
-
20
- const STATUS_TONE: Record<TaskStatus, string> = {
21
- pending: 'text-doom-dim',
22
- in_progress: 'text-doom-yellow',
23
- completed: 'text-doom-green',
24
- failed: 'text-doom-red',
25
- deleted: 'text-doom-faint',
26
- };
27
-
28
- const RESULT_TONE: Record<TaskResultTone, StatusTone> = {
29
- running: 'running',
30
- ok: 'ok',
31
- error: 'error',
32
- warning: 'running',
33
- };
34
-
35
- /** One task row: status glyph, id, subject and chips on the left, the status label flushed right. */
36
- function TaskRowLine({ row }: { row: TaskRow }) {
37
- return (
38
- <li data-testid="tool-result-task-row" data-task-id={row.id} className="flex items-baseline gap-2">
39
- <span className={`shrink-0 ${STATUS_TONE[row.status]}`}>{row.glyph}</span>
40
- <span className="shrink-0 text-doom-faint">#{row.id}</span>
41
- <span
42
- className={`min-w-0 flex-1 truncate ${row.closed ? 'text-doom-faint line-through' : row.status === 'in_progress' ? 'text-doom-blue' : 'text-doom-text'}`}
43
- >
44
- {row.subject}
45
- {row.agent ? <span className="text-doom-faint"> [{row.agent}]</span> : null}
46
- {row.activeForm ? <span className="text-doom-faint"> ({row.activeForm})</span> : null}
47
- {row.blockedBy.length > 0 ? (
48
- <span className="text-doom-faint"> ⛓ {row.blockedBy.map((id) => `#${id}`).join(',')}</span>
49
- ) : null}
50
- </span>
51
- <span className={`shrink-0 ${STATUS_TONE[row.status]}`}>{STATUS_LABEL[row.status]}</span>
52
- </li>
53
- );
54
- }
55
-
56
- /**
57
- * The task tool's timeline item: `glyph action subject` with the assignee or
58
- * list filter in the header, as renderTaskCall shows it; the rows the action
59
- * touched, then the batch or list summary, in the body, as renderTaskResult
60
- * lays it out.
61
- */
62
- export function TaskToolMessage({ args, result, output, running, isError }: ToolMessageRenderProps) {
63
- const call = taskCallView(args);
64
- const collapsed = taskResultView({ details: result?.details, output, expanded: false, isPartial: running, isError });
65
- const full = taskResultView({ details: result?.details, output, expanded: true, isPartial: running, isError });
66
- const hidden = full.rows.length - collapsed.rows.length + (full.errorLines.length - collapsed.errorLines.length);
67
- return (
68
- <MessageItem tone={toolTone({ running, isError })} expandable={hidden > 0}>
69
- {({ expanded }) => {
70
- const view = expanded ? full : collapsed;
71
- const empty = view.rows.length === 0 && view.errorLines.length === 0 && view.status === null;
72
- return (
73
- <>
74
- <MessageItemHeader title="task">
75
- <span data-testid="tool-call-task" className="flex min-w-0 flex-1 items-center gap-1.5">
76
- <span className="shrink-0 text-doom-text">
77
- {call.glyph} {call.action}
78
- </span>
79
- {call.subject ? (
80
- <span
81
- className={`min-w-0 truncate ${call.subjectTone === 'accent' ? 'text-doom-blue' : 'text-doom-dim'}`}
82
- >
83
- {call.subject}
84
- </span>
85
- ) : null}
86
- {call.detail ? <span className="shrink-0 text-doom-faint">{call.detail}</span> : null}
87
- </span>
88
- </MessageItemHeader>
89
- {empty ? null : (
90
- <MessageItemBody data-testid="tool-result-task" className="flex flex-col gap-1">
91
- {view.rows.length > 0 ? (
92
- <ul className="flex flex-col gap-0.5">
93
- {view.rows.map((row) => (
94
- <TaskRowLine key={row.id} row={row} />
95
- ))}
96
- </ul>
97
- ) : null}
98
- {view.errorLines.length > 0 ? (
99
- <pre className="whitespace-pre-wrap break-words font-mono text-doom-dim">
100
- {view.errorLines.join('\n')}
101
- </pre>
102
- ) : null}
103
- {!expanded && hidden > 0 ? <MessageItemStatus expands>{hidden} more</MessageItemStatus> : null}
104
- {view.status ? (
105
- <MessageItemStatus
106
- data-testid="tool-result-task-status"
107
- tone={RESULT_TONE[view.status.tone]}
108
- glyph={view.status.glyph}
109
- >
110
- {view.status.text}
111
- </MessageItemStatus>
112
- ) : null}
113
- </MessageItemBody>
114
- )}
115
- </>
116
- );
117
- }}
118
- </MessageItem>
119
- );
120
- }
@@ -1,200 +0,0 @@
1
- import type { WebPluginSlotProps } from '@agimon-ai/doompi-core/web';
2
- import {
3
- Button,
4
- ChevronDownIcon,
5
- ChevronRightIcon,
6
- Dot,
7
- DropdownMenu,
8
- DropdownMenuContent,
9
- DropdownMenuItem,
10
- DropdownMenuTrigger,
11
- EditIcon,
12
- KebabIcon,
13
- MessageIcon,
14
- TrashIcon,
15
- type DotTone,
16
- } from '@agimon-ai/doompi-web-components';
17
- import { useStore } from '@tanstack/react-store';
18
- import { useState } from 'react';
19
-
20
- import type { WebTask } from '../../types/webTasks';
21
- import { requestTaskRemoval, tasks } from '../stores/tasksStore';
22
- import { TaskDetailDialog, type TaskDialogMode } from './TaskDetailDialog';
23
-
24
- const STATUS_TONE: Readonly<Record<WebTask['status'], DotTone>> = {
25
- pending: 'muted',
26
- in_progress: 'yellow',
27
- completed: 'green',
28
- failed: 'red',
29
- deleted: 'muted',
30
- };
31
-
32
- interface DialogState {
33
- taskId: number;
34
- mode: TaskDialogMode;
35
- }
36
-
37
- function TaskRow({
38
- task,
39
- sessionId,
40
- sendSessionFrame,
41
- openDialog,
42
- }: {
43
- task: WebTask;
44
- sessionId: string;
45
- sendSessionFrame: WebPluginSlotProps['sendSessionFrame'];
46
- openDialog: (mode: TaskDialogMode) => void;
47
- }) {
48
- const detail = task.status === 'in_progress' ? task.activeForm : task.description;
49
- const agent = task.delegation?.agent;
50
- return (
51
- <div
52
- data-testid={`activity-task-${task.id}`}
53
- data-task-status={task.status}
54
- className="flex flex-col gap-1 rounded-md px-1 py-1"
55
- >
56
- <div className="grid min-w-0 grid-cols-[auto_minmax(0,1fr)_auto_auto] items-center gap-x-1.5">
57
- <Dot tone={STATUS_TONE[task.status]} pulse={task.status === 'in_progress'} />
58
- <button
59
- type="button"
60
- data-testid={`activity-task-title-${task.id}`}
61
- title={task.subject}
62
- onClick={() => openDialog('view')}
63
- className={`min-w-0 truncate text-left text-xs font-bold hover:underline ${task.status === 'failed' ? 'text-doom-red' : task.status === 'completed' ? 'text-doom-dim' : 'text-doom-hi'}`}
64
- >
65
- <span className="text-doom-faint">#{task.id}</span> {task.subject}
66
- </button>
67
- <span className="shrink-0 text-2xs text-doom-faint">{task.status.replace('_', ' ')}</span>
68
- {task.status !== 'completed' && task.status !== 'deleted' ? (
69
- <DropdownMenu>
70
- <DropdownMenuTrigger asChild>
71
- <Button
72
- variant="ghost"
73
- size="icon"
74
- data-testid={`activity-task-menu-${task.id}`}
75
- aria-label={`task #${task.id} actions`}
76
- title={`task #${task.id} actions`}
77
- className="self-center shrink-0 text-doom-faint hover:bg-doom-deep hover:text-doom-hi data-[state=open]:bg-doom-deep data-[state=open]:text-doom-hi"
78
- >
79
- <KebabIcon className="h-3 w-3" />
80
- </Button>
81
- </DropdownMenuTrigger>
82
- <DropdownMenuContent data-testid={`activity-task-menu-list-${task.id}`}>
83
- <DropdownMenuItem data-testid={`activity-task-edit-${task.id}`} onSelect={() => openDialog('edit')}>
84
- <EditIcon className="h-3 w-3" />
85
- Edit
86
- </DropdownMenuItem>
87
- {agent ? (
88
- <DropdownMenuItem
89
- data-testid={`activity-task-message-${task.id}`}
90
- onSelect={() => openDialog('message')}
91
- >
92
- <MessageIcon className="h-3 w-3" />
93
- Message agent
94
- </DropdownMenuItem>
95
- ) : null}
96
- <DropdownMenuItem
97
- variant="destructive"
98
- data-testid={`activity-task-remove-${task.id}`}
99
- onSelect={() => requestTaskRemoval(sendSessionFrame, sessionId, task.id)}
100
- >
101
- <TrashIcon className="h-3 w-3" />
102
- Remove
103
- </DropdownMenuItem>
104
- </DropdownMenuContent>
105
- </DropdownMenu>
106
- ) : null}
107
- </div>
108
- {detail || agent || task.blockedBy.length > 0 ? (
109
- <span className="truncate pl-3 text-2xs text-doom-faint">
110
- {agent ? `[${agent}] ` : ''}
111
- {detail ?? ''}
112
- {task.blockedBy.length > 0 ? ` · blocked by ${task.blockedBy.map((id) => `#${id}`).join(', ')}` : ''}
113
- </span>
114
- ) : null}
115
- </div>
116
- );
117
- }
118
-
119
- /** Session task graph in the activity dock. Empty graphs have no cockpit presence. */
120
- export function TasksActivitySection({ sessionId, sendSessionFrame }: WebPluginSlotProps) {
121
- const sessionTasks = useStore(tasks.store, (state) => tasks.select(state, sessionId).tasks);
122
- const [historyOpen, setHistoryOpen] = useState(false);
123
- const [dialog, setDialog] = useState<DialogState>();
124
- if (sessionId === null || sessionTasks.length === 0) return null;
125
-
126
- const active = sessionTasks.filter((task) => task.status === 'pending' || task.status === 'in_progress');
127
- const history = sessionTasks.filter((task) => task.status === 'completed' || task.status === 'failed');
128
- const dialogTask = dialog ? sessionTasks.find((task) => task.id === dialog.taskId) : undefined;
129
- return (
130
- <section data-testid="activity-tasks" className="flex flex-col gap-2 border-b border-doom-border-soft px-3 py-3">
131
- <div className="flex items-center gap-2 px-1">
132
- <span
133
- aria-hidden
134
- className={
135
- active.length > 0 ? 'animate-pulse text-sm font-bold text-doom-yellow' : 'text-sm font-bold text-doom-faint'
136
- }
137
- >
138
- #
139
- </span>
140
- <span className="flex-1 text-sm font-bold text-doom-text">tasks</span>
141
- <span className="text-2xs text-doom-faint">{active.length} active</span>
142
- </div>
143
- {active.length > 0 ? (
144
- <div className="flex flex-col gap-0.5">
145
- {active.map((task) => (
146
- <TaskRow
147
- key={task.id}
148
- task={task}
149
- sessionId={sessionId}
150
- sendSessionFrame={sendSessionFrame}
151
- openDialog={(mode) => setDialog({ taskId: task.id, mode })}
152
- />
153
- ))}
154
- </div>
155
- ) : null}
156
- {history.length > 0 ? (
157
- <div className="flex flex-col gap-0.5">
158
- <Button
159
- variant="ghost"
160
- size="xs"
161
- aria-expanded={historyOpen}
162
- onClick={() => setHistoryOpen((open) => !open)}
163
- className="justify-start gap-1.5 rounded-md px-1 py-0.5 hover:bg-doom-panel"
164
- >
165
- {historyOpen ? (
166
- <ChevronDownIcon className="h-2.5 w-2.5 text-doom-faint" />
167
- ) : (
168
- <ChevronRightIcon className="h-2.5 w-2.5 text-doom-faint" />
169
- )}
170
- <span className="text-xs font-bold text-doom-dim">session</span>
171
- <span className="text-2xs text-doom-faint">{history.length}</span>
172
- </Button>
173
- {historyOpen ? (
174
- <div className="flex flex-col gap-0.5 pl-2">
175
- {history.map((task) => (
176
- <TaskRow
177
- key={task.id}
178
- task={task}
179
- sessionId={sessionId}
180
- sendSessionFrame={sendSessionFrame}
181
- openDialog={(mode) => setDialog({ taskId: task.id, mode })}
182
- />
183
- ))}
184
- </div>
185
- ) : null}
186
- </div>
187
- ) : null}
188
- {dialog && dialogTask ? (
189
- <TaskDetailDialog
190
- key={`${dialogTask.id}-${dialog.mode}`}
191
- task={dialogTask}
192
- sessionId={sessionId}
193
- mode={dialog.mode}
194
- send={sendSessionFrame}
195
- onClose={() => setDialog(undefined)}
196
- />
197
- ) : null}
198
- </section>
199
- );
200
- }