kimaki 1.3.0 → 1.5.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 (346) hide show
  1. package/assets/fonts/Geist-Bold.ttf +0 -0
  2. package/assets/fonts/Geist-Regular.ttf +0 -0
  3. package/assets/fonts/GeistMono-Regular.ttf +0 -0
  4. package/assets/fonts/OFL.txt +92 -0
  5. package/dist/agent-ui.e2e.test.js +27 -13
  6. package/dist/agent-ui.e2e.test.js.map +1 -1
  7. package/dist/agent-ui.js +2 -1
  8. package/dist/agent-ui.js.map +1 -1
  9. package/dist/analytics.e2e.test.js +1 -1
  10. package/dist/analytics.e2e.test.js.map +1 -1
  11. package/dist/autostart.d.ts +4 -0
  12. package/dist/autostart.js +55 -10
  13. package/dist/autostart.js.map +1 -1
  14. package/dist/bot.d.ts +13 -6
  15. package/dist/bot.js +17 -15
  16. package/dist/bot.js.map +1 -1
  17. package/dist/btw.e2e.test.js +3 -3
  18. package/dist/builtin-skills.d.ts +3 -0
  19. package/dist/builtin-skills.js +29 -0
  20. package/dist/builtin-skills.js.map +1 -1
  21. package/dist/builtin-skills.test.js +72 -1
  22. package/dist/builtin-skills.test.js.map +1 -1
  23. package/dist/catalog-refresh.e2e.test.js +2 -2
  24. package/dist/cli/bot.d.ts +1 -1
  25. package/dist/cli/bot.js +33 -18
  26. package/dist/cli/bot.js.map +1 -1
  27. package/dist/cli/discord.js +32 -6
  28. package/dist/cli/discord.js.map +1 -1
  29. package/dist/cli/schedule.js +23 -9
  30. package/dist/cli/schedule.js.map +1 -1
  31. package/dist/cli/session.js +37 -12
  32. package/dist/cli/session.js.map +1 -1
  33. package/dist/cli/shared.d.ts +5 -3
  34. package/dist/cli/shared.js +45 -10
  35. package/dist/cli/shared.js.map +1 -1
  36. package/dist/cli-discord.e2e.test.js +13 -8
  37. package/dist/cli-discord.e2e.test.js.map +1 -1
  38. package/dist/cli-lock.e2e.test.js +87 -20
  39. package/dist/cli-lock.e2e.test.js.map +1 -1
  40. package/dist/cli-read.e2e.test.js +18 -9
  41. package/dist/cli-read.e2e.test.js.map +1 -1
  42. package/dist/cli-sessions.e2e.test.js +4 -3
  43. package/dist/cli-sessions.e2e.test.js.map +1 -1
  44. package/dist/cli.js +2 -0
  45. package/dist/cli.js.map +1 -1
  46. package/dist/commands/preference-commands.d.ts +4 -0
  47. package/dist/commands/preference-commands.js +38 -4
  48. package/dist/commands/preference-commands.js.map +1 -1
  49. package/dist/commands/session-commands.js +11 -8
  50. package/dist/commands/session-commands.js.map +1 -1
  51. package/dist/commands/thread-commands.js +94 -24
  52. package/dist/commands/thread-commands.js.map +1 -1
  53. package/dist/commands/worktree-commands.d.ts +5 -6
  54. package/dist/commands/worktree-commands.js +8 -7
  55. package/dist/commands/worktree-commands.js.map +1 -1
  56. package/dist/commands.e2e.test.js +25 -21
  57. package/dist/commands.e2e.test.js.map +1 -1
  58. package/dist/coordinator-agents.e2e.test.d.ts +1 -0
  59. package/dist/coordinator-agents.e2e.test.js +113 -0
  60. package/dist/coordinator-agents.e2e.test.js.map +1 -0
  61. package/dist/coordinator-idle.e2e.test.d.ts +1 -0
  62. package/dist/coordinator-idle.e2e.test.js +100 -0
  63. package/dist/coordinator-idle.e2e.test.js.map +1 -0
  64. package/dist/coordinator-queue.e2e.test.d.ts +1 -0
  65. package/dist/coordinator-queue.e2e.test.js +244 -0
  66. package/dist/coordinator-queue.e2e.test.js.map +1 -0
  67. package/dist/coordinator-warmup.e2e.test.d.ts +1 -0
  68. package/dist/coordinator-warmup.e2e.test.js +131 -0
  69. package/dist/coordinator-warmup.e2e.test.js.map +1 -0
  70. package/dist/coordinator.d.ts +6 -0
  71. package/dist/coordinator.e2e.test.d.ts +1 -0
  72. package/dist/coordinator.e2e.test.js +505 -0
  73. package/dist/coordinator.e2e.test.js.map +1 -0
  74. package/dist/coordinator.js +164 -0
  75. package/dist/coordinator.js.map +1 -0
  76. package/dist/db.d.ts +78 -3
  77. package/dist/db.test.js +1 -0
  78. package/dist/db.test.js.map +1 -1
  79. package/dist/diagram.d.ts +11 -0
  80. package/dist/diagram.js +232 -0
  81. package/dist/diagram.js.map +1 -0
  82. package/dist/diagram.test.d.ts +1 -0
  83. package/dist/diagram.test.js +52 -0
  84. package/dist/diagram.test.js.map +1 -0
  85. package/dist/duration.js +13 -5
  86. package/dist/duration.js.map +1 -1
  87. package/dist/effects.d.ts +6 -1
  88. package/dist/effects.js +97 -26
  89. package/dist/effects.js.map +1 -1
  90. package/dist/event-loop.d.ts +2 -3
  91. package/dist/event-loop.js +74 -44
  92. package/dist/event-loop.js.map +1 -1
  93. package/dist/format-parts.d.ts +21 -4
  94. package/dist/format-parts.js +40 -23
  95. package/dist/format-parts.js.map +1 -1
  96. package/dist/gateway-replay.e2e.test.js +4 -4
  97. package/dist/harness.e2e.test.js +2 -2
  98. package/dist/harness.e2e.test.js.map +1 -1
  99. package/dist/hello-thread.e2e.test.js +56 -5
  100. package/dist/hello-thread.e2e.test.js.map +1 -1
  101. package/dist/ingress.js +47 -12
  102. package/dist/ingress.js.map +1 -1
  103. package/dist/interaction-context.d.ts +4 -4
  104. package/dist/interaction-context.js +9 -7
  105. package/dist/interaction-context.js.map +1 -1
  106. package/dist/interrupt.e2e.test.js +8 -5
  107. package/dist/interrupt.e2e.test.js.map +1 -1
  108. package/dist/legacy.e2e.test.js +1 -1
  109. package/dist/lock-routes.d.ts +83 -31
  110. package/dist/lock-routes.js +68 -8
  111. package/dist/lock-routes.js.map +1 -1
  112. package/dist/lock-server.d.ts +3 -2
  113. package/dist/lock-server.js +23 -7
  114. package/dist/lock-server.js.map +1 -1
  115. package/dist/main.d.ts +6 -3
  116. package/dist/main.js +14 -4
  117. package/dist/main.js.map +1 -1
  118. package/dist/mainmast-idle.e2e.test.d.ts +1 -0
  119. package/dist/mainmast-idle.e2e.test.js +99 -0
  120. package/dist/mainmast-idle.e2e.test.js.map +1 -0
  121. package/dist/mainmast-queue.e2e.test.d.ts +1 -0
  122. package/dist/mainmast-queue.e2e.test.js +244 -0
  123. package/dist/mainmast-queue.e2e.test.js.map +1 -0
  124. package/dist/mainmast-warmup.e2e.test.d.ts +1 -0
  125. package/dist/mainmast-warmup.e2e.test.js +130 -0
  126. package/dist/mainmast-warmup.e2e.test.js.map +1 -0
  127. package/dist/mainmast.d.ts +6 -0
  128. package/dist/mainmast.e2e.test.d.ts +1 -0
  129. package/dist/mainmast.e2e.test.js +428 -0
  130. package/dist/mainmast.e2e.test.js.map +1 -0
  131. package/dist/mainmast.js +156 -0
  132. package/dist/mainmast.js.map +1 -0
  133. package/dist/markdown/markdown.test.js +14 -4
  134. package/dist/markdown/markdown.test.js.map +1 -1
  135. package/dist/markdown/render-markdown.js +9 -6
  136. package/dist/markdown/render-markdown.js.map +1 -1
  137. package/dist/onboarding-cli.e2e.test.js +7 -6
  138. package/dist/onboarding-cli.e2e.test.js.map +1 -1
  139. package/dist/onboarding.d.ts +3 -10
  140. package/dist/onboarding.e2e.test.js +8 -10
  141. package/dist/onboarding.e2e.test.js.map +1 -1
  142. package/dist/onboarding.js +14 -24
  143. package/dist/onboarding.js.map +1 -1
  144. package/dist/permissions.e2e.test.js +3 -3
  145. package/dist/plugin/coordinator.d.ts +4 -0
  146. package/dist/plugin/coordinator.js +389 -0
  147. package/dist/plugin/coordinator.js.map +1 -0
  148. package/dist/plugin/index.js +93 -61
  149. package/dist/plugin/index.js.map +1 -1
  150. package/dist/plugin/mainmast.d.ts +4 -0
  151. package/dist/plugin/mainmast.js +379 -0
  152. package/dist/plugin/mainmast.js.map +1 -0
  153. package/dist/plugin.e2e.test.js +1 -1
  154. package/dist/preference-commands.e2e.test.js +103 -24
  155. package/dist/preference-commands.e2e.test.js.map +1 -1
  156. package/dist/project.d.ts +1 -1
  157. package/dist/prompt.d.ts +22 -9
  158. package/dist/prompt.js +64 -48
  159. package/dist/prompt.js.map +1 -1
  160. package/dist/questions.e2e.test.js +13 -13
  161. package/dist/queue-sources.e2e.test.d.ts +1 -0
  162. package/dist/queue-sources.e2e.test.js +168 -0
  163. package/dist/queue-sources.e2e.test.js.map +1 -0
  164. package/dist/queue.d.ts +9 -1
  165. package/dist/queue.e2e.test.js +48 -30
  166. package/dist/queue.e2e.test.js.map +1 -1
  167. package/dist/queue.js +97 -24
  168. package/dist/queue.js.map +1 -1
  169. package/dist/queue.test.d.ts +1 -0
  170. package/dist/queue.test.js +57 -0
  171. package/dist/queue.test.js.map +1 -0
  172. package/dist/remote-send.e2e.test.js +6 -6
  173. package/dist/remote-send.js +2 -1
  174. package/dist/remote-send.js.map +1 -1
  175. package/dist/renderer.e2e.test.js +7 -7
  176. package/dist/restart.e2e.test.js +2 -2
  177. package/dist/routines.e2e.test.js +2 -2
  178. package/dist/scheduler.d.ts +3 -3
  179. package/dist/scheduler.e2e.test.js +43 -20
  180. package/dist/scheduler.e2e.test.js.map +1 -1
  181. package/dist/scheduler.js +4 -2
  182. package/dist/scheduler.js.map +1 -1
  183. package/dist/schema-sql.d.ts +1 -1
  184. package/dist/schema-sql.js +1 -1
  185. package/dist/schema-sql.js.map +1 -1
  186. package/dist/schema.d.ts +152 -6
  187. package/dist/schema.js +12 -0
  188. package/dist/schema.js.map +1 -1
  189. package/dist/session-commands.e2e.test.js +36 -11
  190. package/dist/session-commands.e2e.test.js.map +1 -1
  191. package/dist/session-events.d.ts +18 -6
  192. package/dist/session-events.js +175 -27
  193. package/dist/session-events.js.map +1 -1
  194. package/dist/session-ops.e2e.test.js +63 -12
  195. package/dist/session-ops.e2e.test.js.map +1 -1
  196. package/dist/sessions.d.ts +44 -21
  197. package/dist/sessions.js +177 -65
  198. package/dist/sessions.js.map +1 -1
  199. package/dist/shell.e2e.test.js +4 -4
  200. package/dist/slash-commands.js +6 -4
  201. package/dist/slash-commands.js.map +1 -1
  202. package/dist/slash-commands.test.js +2 -0
  203. package/dist/slash-commands.test.js.map +1 -1
  204. package/dist/sleep.e2e.test.js +29 -14
  205. package/dist/sleep.e2e.test.js.map +1 -1
  206. package/dist/sleeps.d.ts +2 -1
  207. package/dist/sleeps.js +21 -3
  208. package/dist/sleeps.js.map +1 -1
  209. package/dist/store.d.ts +1 -0
  210. package/dist/store.js +3 -2
  211. package/dist/store.js.map +1 -1
  212. package/dist/system-prompt.d.ts +5 -15
  213. package/dist/system-prompt.js +180 -131
  214. package/dist/system-prompt.js.map +1 -1
  215. package/dist/test/generate-log-plugin/index.d.ts +3 -0
  216. package/dist/test/generate-log-plugin/index.js +15 -0
  217. package/dist/test/generate-log-plugin/index.js.map +1 -0
  218. package/dist/test/harness.d.ts +20 -2
  219. package/dist/test/harness.js +51 -11
  220. package/dist/test/harness.js.map +1 -1
  221. package/dist/test/replay.js +11 -8
  222. package/dist/test/replay.js.map +1 -1
  223. package/dist/thread-reducer.d.ts +29 -6
  224. package/dist/thread-reducer.fixtures.test.js +58 -51
  225. package/dist/thread-reducer.fixtures.test.js.map +1 -1
  226. package/dist/thread-reducer.js +109 -50
  227. package/dist/thread-reducer.js.map +1 -1
  228. package/dist/thread-reducer.test.js +190 -48
  229. package/dist/thread-reducer.test.js.map +1 -1
  230. package/dist/tunnel.d.ts +9 -0
  231. package/dist/tunnel.js +117 -28
  232. package/dist/tunnel.js.map +1 -1
  233. package/dist/tunnel.test.js +81 -5
  234. package/dist/tunnel.test.js.map +1 -1
  235. package/dist/voice-attachments.e2e.test.js +108 -18
  236. package/dist/voice-attachments.e2e.test.js.map +1 -1
  237. package/dist/voice-call.e2e.test.js +9 -9
  238. package/dist/voice-call.js +6 -6
  239. package/dist/voice-call.js.map +1 -1
  240. package/dist/voice-openai.e2e.test.js +59 -23
  241. package/dist/voice-openai.e2e.test.js.map +1 -1
  242. package/dist/voice.d.ts +1 -1
  243. package/dist/voice.js +72 -24
  244. package/dist/voice.js.map +1 -1
  245. package/dist/working-directory.e2e.test.js +11 -11
  246. package/dist/working-directory.e2e.test.js.map +1 -1
  247. package/package.json +11 -5
  248. package/skills/kimaki-tunnel/SKILL.md +3 -2
  249. package/src/agent-ui.e2e.test.ts +27 -13
  250. package/src/agent-ui.ts +2 -1
  251. package/src/analytics.e2e.test.ts +1 -1
  252. package/src/autostart.ts +55 -10
  253. package/src/bot.ts +36 -19
  254. package/src/btw.e2e.test.ts +3 -3
  255. package/src/builtin-skills.test.ts +73 -1
  256. package/src/builtin-skills.ts +33 -0
  257. package/src/catalog-refresh.e2e.test.ts +2 -2
  258. package/src/cli/bot.ts +30 -19
  259. package/src/cli/discord.ts +30 -6
  260. package/src/cli/schedule.ts +23 -9
  261. package/src/cli/session.ts +35 -12
  262. package/src/cli/shared.ts +43 -8
  263. package/src/cli-discord.e2e.test.ts +13 -8
  264. package/src/cli-lock.e2e.test.ts +88 -20
  265. package/src/cli-read.e2e.test.ts +17 -8
  266. package/src/cli-sessions.e2e.test.ts +4 -3
  267. package/src/cli.ts +2 -0
  268. package/src/commands/preference-commands.ts +38 -4
  269. package/src/commands/session-commands.ts +12 -7
  270. package/src/commands/thread-commands.ts +92 -24
  271. package/src/commands/worktree-commands.ts +10 -9
  272. package/src/commands.e2e.test.ts +25 -21
  273. package/src/coordinator-agents.e2e.test.ts +145 -0
  274. package/src/coordinator-idle.e2e.test.ts +122 -0
  275. package/src/coordinator-queue.e2e.test.ts +279 -0
  276. package/src/coordinator-warmup.e2e.test.ts +158 -0
  277. package/src/coordinator.e2e.test.ts +545 -0
  278. package/src/coordinator.ts +168 -0
  279. package/src/db.test.ts +1 -0
  280. package/src/diagram.test.ts +56 -0
  281. package/src/diagram.ts +243 -0
  282. package/src/duration.ts +13 -5
  283. package/src/effects.ts +99 -27
  284. package/src/event-loop.ts +71 -45
  285. package/src/format-parts.ts +53 -22
  286. package/src/gateway-replay.e2e.test.ts +4 -4
  287. package/src/harness.e2e.test.ts +2 -2
  288. package/src/hello-thread.e2e.test.ts +59 -5
  289. package/src/ingress.ts +44 -11
  290. package/src/interaction-context.ts +12 -11
  291. package/src/interrupt.e2e.test.ts +8 -5
  292. package/src/legacy.e2e.test.ts +1 -1
  293. package/src/lock-routes.ts +62 -8
  294. package/src/lock-server.ts +23 -7
  295. package/src/main.ts +26 -10
  296. package/src/markdown/markdown.test.ts +15 -4
  297. package/src/markdown/render-markdown.ts +9 -6
  298. package/src/onboarding-cli.e2e.test.ts +7 -6
  299. package/src/onboarding.e2e.test.ts +8 -10
  300. package/src/onboarding.ts +13 -29
  301. package/src/permissions.e2e.test.ts +3 -3
  302. package/src/plugin/coordinator.ts +401 -0
  303. package/src/plugin/index.ts +86 -59
  304. package/src/plugin.e2e.test.ts +1 -1
  305. package/src/preference-commands.e2e.test.ts +103 -23
  306. package/src/prompt.ts +87 -43
  307. package/src/questions.e2e.test.ts +13 -13
  308. package/src/queue-sources.e2e.test.ts +197 -0
  309. package/src/queue.e2e.test.ts +48 -30
  310. package/src/queue.test.ts +59 -0
  311. package/src/queue.ts +104 -24
  312. package/src/remote-send.e2e.test.ts +6 -6
  313. package/src/remote-send.ts +2 -1
  314. package/src/renderer.e2e.test.ts +7 -7
  315. package/src/restart.e2e.test.ts +2 -2
  316. package/src/routines.e2e.test.ts +2 -2
  317. package/src/scheduler.e2e.test.ts +45 -19
  318. package/src/scheduler.ts +4 -2
  319. package/src/schema-sql.ts +1 -1
  320. package/src/schema.ts +13 -0
  321. package/src/session-commands.e2e.test.ts +38 -11
  322. package/src/session-events.ts +168 -25
  323. package/src/session-ops.e2e.test.ts +64 -11
  324. package/src/sessions.ts +217 -67
  325. package/src/shell.e2e.test.ts +4 -4
  326. package/src/slash-commands.test.ts +2 -0
  327. package/src/slash-commands.ts +6 -4
  328. package/src/sleep.e2e.test.ts +30 -13
  329. package/src/sleeps.ts +20 -3
  330. package/src/store.ts +5 -2
  331. package/src/system-prompt.ts +190 -134
  332. package/src/test/generate-log-plugin/index.ts +16 -0
  333. package/src/test/harness.ts +77 -17
  334. package/src/test/replay.ts +12 -7
  335. package/src/thread-reducer.fixtures.test.ts +58 -51
  336. package/src/thread-reducer.test.ts +199 -49
  337. package/src/thread-reducer.ts +135 -66
  338. package/src/tunnel.test.ts +81 -5
  339. package/src/tunnel.ts +124 -25
  340. package/src/voice-attachments.e2e.test.ts +110 -18
  341. package/src/voice-call.e2e.test.ts +9 -9
  342. package/src/voice-call.ts +6 -6
  343. package/src/voice-openai.e2e.test.ts +64 -24
  344. package/src/voice.ts +93 -26
  345. package/src/working-directory.e2e.test.ts +11 -11
  346. package/src/message-tool.e2e.test.ts +0 -45
package/dist/queue.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"queue.js","sourceRoot":"","sources":["../src/queue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"queue.js","sourceRoot":"","sources":["../src/queue.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,4EAA4E;AAC5E,mCAAmC;AACnC,EAAE;AACF,qEAAqE;AACrE,6FAA6F;AAC7F,6GAA6G;AAC7G,wEAAwE;AACxE,EAAE;AACF,8EAA8E;AAC9E,mFAAmF;AACnF,6EAA6E;AAC7E,8EAA8E;AAC9E,EAAE;AACF,0EAA0E;AAC1E,0EAA0E;AAC1E,gFAAgF;AAChF,8EAA8E;AAM9E,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAAE,gBAAgB,EAAuB,MAAM,0BAA0B,CAAA;AAChF,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAA;AAsBlE,MAAM,UAAU,WAAW,CAAC,IAA+B;IACzD,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAA;AAC/D,CAAC;AAED,SAAS,MAAM,CAAC,OAAe;IAC7B,OAAO,SAAS,OAAO,EAAE,CAAA;AAC3B,CAAC;AAED,6EAA6E;AAC7E,MAAM,UAAU,gBAAgB,CAAC,SAAiB;IAChD,OAAO,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAA;AACnD,CAAC;AAED,SAAS,WAAW,CAAC,EAAE,OAAO,EAAE,SAAS,EAAsG;IAC7I,MAAM,IAAI,GAAG,gBAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAC3C,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,CAAA;IAC7C,gFAAgF;IAChF,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACtE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;IACpJ,CAAC;IACD,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;IACpC,MAAM,GAAG,GAAG,OAAO,CAAC,WAAW,CAAC,CAAA;IAChC,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IAC5B,MAAM,SAAS,GAAG,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IACxE,OAAO;QACL,QAAQ,EAAE,KAAK;QACf,IAAI;QACJ,QAAQ,EAAE,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI;QACxD,SAAS;QACT,qEAAqE;QACrE,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI;QAC7D,gFAAgF;QAChF,IAAI,EAAE,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;KAC7C,CAAA;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,EAAE,QAAQ,EAAE,IAAI,EAA6C;IAC7E,mFAAmF;IACnF,MAAM,SAAS,GAAG,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAA;IAC9D,OAAO,OAAO,QAAQ,IAAI,QAAQ,MAAM,SAAS,GAAG,IAAI,EAAE,CAAA;AAC5D,CAAC;AAED,mEAAmE;AACnE,MAAM,oBAAoB,GAAG,yEAAyE,CAAA;AACtG,MAAM,UAAU,GAAG,kBAAkB,CAAA;AAErC,4EAA4E;AAC5E,kGAAkG;AAClG,MAAM,UAAU,UAAU,CAAC,KAAgD;IACzE,OAAO,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAA;AACjC,CAAC;AAED,2EAA2E;AAC3E,6EAA6E;AAC7E,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,SAAS,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAA;AACjI,CAAC;AAED,+FAA+F;AAC/F,MAAM,UAAU,eAAe,CAAC,KAAgD;IAC9E,OAAO,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,kBAAkB,CAAC,CAAA;AACnD,CAAC;AAED,8EAA8E;AAC9E,mFAAmF;AACnF,SAAS,OAAO,CAAC,IAAY;IAC3B,IAAI,MAAM,GAAG,KAAK,CAAA;IAClB,OAAO,IAAI;SACR,KAAK,CAAC,IAAI,CAAC;SACX,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QAChB,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,MAAM,GAAG,CAAC,MAAM,CAAA;aACtC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE;YAAE,OAAO,EAAE,CAAA;aAC5C,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;YAAE,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAA;QAChG,OAAO,CAAC,IAAI,CAAC,CAAA;IACf,CAAC,CAAC;SACD,IAAI,CAAC,IAAI,CAAC,CAAA;AACf,CAAC;AAED,MAAM,OAAO,GAAG,2BAA2B,CAAA;AAE3C,SAAS,GAAG,CAAC,IAAY,EAAE,KAAa;IACtC,OAAO,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAA;AACpE,CAAC;AAED,8EAA8E;AAC9E,6EAA6E;AAC7E,SAAS,UAAU,CAAC,IAAkB,EAAE,MAAqB;IAC3D,IAAI,IAAI,CAAC,SAAS;QAAE,OAAO,SAAS,CAAC,MAAM,IAAI,EAAE,CAAC,CAAA;IAClD,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;IACnD,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,kBAAkB,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,CAAA;AAChG,CAAC;AAID,SAAS,QAAQ,CAAC,EAAE,IAAI,EAAS,EAAE,IAAkB,EAAE,MAAc;IACnE,IAAI,IAAI,CAAC,KAAK;QAAE,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;AACnH,CAAC;AAED,0EAA0E;AAC1E,4EAA4E;AAC5E,gFAAgF;AAChF,SAAS,WAAW,CAAC,EAAE,IAAI,EAAS,EAAE,IAAkB;IACtD,MAAM,GAAG,GAAG,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;IACxE,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,qBAAqB,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAA;AACtI,CAAC;AAED,wEAAwE;AACxE,SAAS,UAAU,CAAC,EAAE,KAAK,EAAS,EAAE,OAAe;IACnD,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,OAAO,KAAK,OAAO,CAAC,CAAA;IAC3E,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,OAAO,KAAK,OAAO,CAAC,CAAA;IAC9E,OAAO,IAAI,EAAE,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;AACxD,CAAC;AAED,0EAA0E;AAC1E,MAAM,UAAU,YAAY,CAC1B,KAAoG;IAEpG,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,KAAK,CAAA;IACzC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAA;IAC9B,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,OAAO,KAAK,OAAO,CAAC;QAAE,OAAM;IAClG,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,EAAE,GAAG,WAAW,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAA;IAClG,2GAA2G;IAC3G,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAA;IACtD,IAAI,QAAQ;QAAE,KAAK,CAAC,cAAc,GAAG,IAAI,CAAA;IACzC,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC,CAAC,MAAM,CAAA;IACzD,8EAA8E;IAC9E,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,KAAK,OAAO,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IAC3E,MAAM,OAAO,GAAiB,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,CAAA;IAClF,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACzB,IAAI,IAAI,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QAC9B,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,OAAM;QACtB,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;QACnD,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAA;QACrB,OAAM;IACR,CAAC;IACD,IAAI,CAAC,KAAK;QAAE,OAAM;IAClB,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,MAAM,CAAA;IAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,kDAAkD,CAAC,CAAC,CAAC,gBAAgB,CAAA;IACrG,MAAM,GAAG,GAAG,QAAQ,CAAC,UAAU,CAAC,OAAO,EAAE,sBAAsB,QAAQ,KAAK,MAAM,0BAA0B,QAAQ,EAAE,CAAC,CAAC,CAAA;IACxH,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;AACnH,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,KAAkC;IAC9D,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAA;IAC7C,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAM;IAChD,KAAK,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAA;IAC3B,IAAI,IAAI,CAAC,KAAK;QAAE,OAAO,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IAC/C,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;AAC/E,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,KAAkC;IAC7D,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAA;IAC7C,IAAI,IAAI;QAAE,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,oBAAoB,CAAC,CAAA;AACvD,CAAC;AAED,qFAAqF;AACrF,MAAM,UAAU,aAAa,CAAC,KAAkC;IAC9D,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO,CAAC,CAAA;IACvF,IAAI,IAAI,EAAE,QAAQ,KAAK,OAAO;QAAE,OAAM;IACtC,IAAI,IAAI,CAAC,KAAK;QAAE,WAAW,CAAC,KAAK,EAAE,EAAE,GAAG,IAAI,EAAE,CAAC,CAAA;IAC/C,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAA;AACzB,CAAC;AAED,8EAA8E;AAC9E,4EAA4E;AAC5E,yDAAyD;AACzD,MAAM,UAAU,YAAY,CAAC,KAAqD;IAChF,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,KAAK,CAAA;IAC9B,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,CAAA;IAC1D,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAA;IACrD,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;QACtC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,QAAQ,CAAC,KAAK,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,kBAAkB,CAAC,CAAA;IAClF,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;IAC7E,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAgB,EAAE;QAC7C,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACnC,IAAI,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC,QAAQ;YAAE,OAAO,QAAQ,CAAA;QACzD,IAAI,QAAQ,EAAE,QAAQ,KAAK,OAAO,IAAI,IAAI,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;YAChE,IAAI,QAAQ,CAAC,KAAK;gBAAE,WAAW,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;YAChD,OAAO,EAAE,GAAG,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAA;QAC3C,CAAC;QACD,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,MAAM,EAAE,GAAG,WAAW,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAA;QAC7G,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAA;IACnG,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,GAAQ,EAAE,EAAE,QAAQ,EAAE,SAAS,EAA2C;IACtG,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;IACnD,OAAO,CAAC,IAAI,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,IAAI,IAAI,CAAA;AACzF,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,57 @@
1
+ import { expect, test } from 'vitest';
2
+ import { formatEcho } from "./queue.js";
3
+ import { markdownPayloads } from "./markdown/components.js";
4
+ test('echo puts block markdown on the line below the prefix', () => {
5
+ const texts = ['plain text', '# Title', '> quote', '- item', '1. step', '```ts\ncode\n```', '---', '| a | b |', '-# small', 'use #hashtag', '5 > 3', '**bold** start'];
6
+ expect(texts.map((text) => formatEcho({ username: 'CLI', text }))).toMatchInlineSnapshot(`
7
+ [
8
+ "-# » **CLI:** plain text",
9
+ "-# » **CLI:**
10
+ -# **Title**",
11
+ "-# » **CLI:**
12
+ -# > quote",
13
+ "-# » **CLI:**
14
+ -# - item",
15
+ "-# » **CLI:**
16
+ -# 1. step",
17
+ "-# » **CLI:**
18
+ \`\`\`ts
19
+ code
20
+ \`\`\`",
21
+ "-# » **CLI:**
22
+ -# ---",
23
+ "-# » **CLI:**
24
+ -# | a | b |",
25
+ "-# » **CLI:**
26
+ -# small",
27
+ "-# » **CLI:** use #hashtag",
28
+ "-# » **CLI:** 5 > 3",
29
+ "-# » **CLI:** **bold** start",
30
+ ]
31
+ `);
32
+ });
33
+ test('echo is subtext, code blocks stay as they are', () => {
34
+ const text = '## Plan\n\n- read `queue.ts`\n- run tests\n\n```ts\nconst a = 1\n\nconst b = 2\n```\n-# already small\nlast line';
35
+ expect('\n' + formatEcho({ username: 'CLI', text })).toMatchInlineSnapshot(`
36
+ "
37
+ -# » **CLI:**
38
+ -# **Plan**
39
+ -# - read \`queue.ts\`
40
+ -# - run tests
41
+ \`\`\`ts
42
+ const a = 1
43
+
44
+ const b = 2
45
+ \`\`\`
46
+ -# already small
47
+ -# last line"
48
+ `);
49
+ });
50
+ test('long subtext echo splits into messages that keep subtext on every line', () => {
51
+ const text = Array.from({ length: 120 }, (_, index) => `line ${index} of a long prompt sent from the CLI`).join('\n');
52
+ const payloads = markdownPayloads(formatEcho({ username: 'CLI', text }));
53
+ const lines = payloads.flatMap((payload) => String(Reflect.get(payload, 'content') ?? 'not text').split('\n'));
54
+ expect(payloads.length).toBeGreaterThan(1);
55
+ expect(lines.filter((line) => line !== '' && !line.startsWith('-# '))).toEqual([]);
56
+ });
57
+ //# sourceMappingURL=queue.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queue.test.js","sourceRoot":"","sources":["../src/queue.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AACvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAE3D,IAAI,CAAC,uDAAuD,EAAE,GAAG,EAAE;IACjE,MAAM,KAAK,GAAG,CAAC,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,kBAAkB,EAAE,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,cAAc,EAAE,OAAO,EAAE,gBAAgB,CAAC,CAAA;IACtK,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;GAyBxF,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,+CAA+C,EAAE,GAAG,EAAE;IACzD,MAAM,IAAI,GAAG,kHAAkH,CAAA;IAC/H,MAAM,CAAC,IAAI,GAAG,UAAU,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,qBAAqB,CAAC;;;;;;;;;;;;;GAa1E,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,wEAAwE,EAAE,GAAG,EAAE;IAClF,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,QAAQ,KAAK,qCAAqC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACrH,MAAM,QAAQ,GAAG,gBAAgB,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;IACxE,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,SAAS,CAAC,IAAI,UAAU,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAA;IAC9G,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAA;IAC1C,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;AACpF,CAAC,CAAC,CAAA"}
@@ -37,17 +37,17 @@ test('CLI remote envelope runs only on the owning bot and returns its IDs', asyn
37
37
  await waitForFooter({ discord: twin.discord, threadId: ids.threadId, count: 2 });
38
38
  expect((await twin.discord.thread(ids.threadId).text()).replaceAll(ids.threadId, 'THREAD')).toMatchInlineSnapshot(`
39
39
  "--- from: assistant (TestBot)
40
- » **CLI:** Remote first
41
- Files: remote.txt
40
+ -# » **CLI:** Remote first
41
+ -# Files: remote.txt
42
42
  -# *using deterministic-provider/deterministic-v2 ⋅ build*
43
43
  ok
44
- -# *project ⋅ main ⋅ Ns ⋅ deterministic-v2*
44
+ -# *main ⋅ Ns ⋅ deterministic-v2*
45
45
  Remote queued. queue
46
46
  [embed]
47
47
  Delivered to <#THREAD>
48
48
  [embed]
49
49
  ok
50
- -# *project ⋅ main ⋅ Ns ⋅ deterministic-v2*"
50
+ -# *main ⋅ Ns ⋅ deterministic-v2*"
51
51
  `);
52
52
  expect(a.store.getState().roots[ids.threadId]).toBeUndefined();
53
53
  expect(b.store.getState().roots[ids.threadId]).toBe(ids.sessionId);
@@ -65,10 +65,10 @@ test('CI send with only KIMAKI_BOT_TOKEN and no local bot reaches the owning bot
65
65
  await waitForFooter({ discord: twin.discord, threadId: ids.threadId });
66
66
  expect(await twin.discord.thread(ids.threadId).text()).toMatchInlineSnapshot(`
67
67
  "--- from: assistant (TestBot)
68
- » **CLI:** From CI
68
+ -# » **CLI:** From CI
69
69
  -# *using deterministic-provider/deterministic-v2 ⋅ build*
70
70
  ok
71
- -# *project ⋅ main ⋅ Ns ⋅ deterministic-v2*"
71
+ -# *main ⋅ Ns ⋅ deterministic-v2*"
72
72
  `);
73
73
  expect(b.store.getState().roots[ids.threadId]).toBe(ids.sessionId);
74
74
  expect(fs.readdirSync(ciDataDir)).toEqual([]);
@@ -27,7 +27,8 @@ export function promptFilePath(file) {
27
27
  // file path; the prompt file goes first, because the receiver reads the first attachment.
28
28
  export function remoteEnvelope(input) {
29
29
  const requestId = crypto.randomBytes(8).toString('hex');
30
- const { files, prompt, ...options } = input;
30
+ // A session of this machine means nothing to the receiving bot.
31
+ const { files, prompt, senderSessionId: _sender, ...options } = input;
31
32
  // A prompt over the message limit travels as an attachment; the content keeps a preview.
32
33
  const long = prompt.length > 2000;
33
34
  const footer = `${REMOTE_SEND_PREFIX}${JSON.stringify({ requestId, options, ...(long && { promptFile: REMOTE_PROMPT_FILE }) })}`;
@@ -1 +1 @@
1
- {"version":3,"file":"remote-send.js","sourceRoot":"","sources":["../src/remote-send.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"remote-send.js","sourceRoot":"","sources":["../src/remote-send.ts"],"names":[],"mappings":"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"}
@@ -139,7 +139,7 @@ test('shell and edit lines are shown, read is hidden at the default verbosity',
139
139
  -# ◼︎ edit *notes.md* (+1-0)
140
140
 
141
141
  Edited notes.md.
142
- -# *project ⋅ main ⋅ Ns ⋅ N% ⋅ deterministic-v2*"
142
+ -# *main ⋅ Ns ⋅ N% ⋅ deterministic-v2*"
143
143
  `);
144
144
  });
145
145
  test('Code Mode execute shows its description, then one line per inner tool call', async () => {
@@ -154,7 +154,7 @@ test('Code Mode execute shows its description, then one line per inner tool call
154
154
  -# ┣ execute.opencode.list\\_mcp\\_resources
155
155
 
156
156
  Found the models.
157
- -# *project ⋅ main ⋅ Ns ⋅ N% ⋅ deterministic-v2*"
157
+ -# *main ⋅ Ns ⋅ N% ⋅ deterministic-v2*"
158
158
  `);
159
159
  });
160
160
  test('Code Mode execute shows failed inner calls and the code error', async () => {
@@ -170,7 +170,7 @@ test('Code Mode execute shows failed inner calls and the code error', async () =
170
170
  -# ⨯ execute _Error: broken on purpose_
171
171
 
172
172
  The code failed.
173
- -# *project ⋅ main ⋅ Ns ⋅ N% ⋅ deterministic-v2*"
173
+ -# *main ⋅ Ns ⋅ N% ⋅ deterministic-v2*"
174
174
  `);
175
175
  });
176
176
  test('table and callout render as components, long code splits into valid messages', async () => {
@@ -220,7 +220,7 @@ test('table and callout render as components, long code splits into valid messag
220
220
  {
221
221
  "components": false,
222
222
  "fences": 0,
223
- "length": 49,
223
+ "length": 39,
224
224
  },
225
225
  ]
226
226
  `);
@@ -324,7 +324,7 @@ test('table and callout render as components, long code splits into valid messag
324
324
  const value78 = compute(78) // line 78
325
325
  const value79 = compute(79) // line 79
326
326
  \`\`\`
327
- -# *project ⋅ main ⋅ Ns ⋅ N% ⋅ deterministic-v2*"
327
+ -# *main ⋅ Ns ⋅ N% ⋅ deterministic-v2*"
328
328
  `);
329
329
  });
330
330
  test('foreground subagent: child tool lines labelled with the agent, one footer', async () => {
@@ -338,7 +338,7 @@ test('foreground subagent: child tool lines labelled with the agent, one footer'
338
338
  -# ┣ general ⋅ shell _ls \\*.md_
339
339
 
340
340
  The child found notes.md.
341
- -# *project ⋅ main ⋅ Ns ⋅ N% ⋅ deterministic-v2*"
341
+ -# *main ⋅ Ns ⋅ N% ⋅ deterministic-v2*"
342
342
  `);
343
343
  });
344
344
  test('channel verbosity text shows only text and edit lines', async () => {
@@ -351,7 +351,7 @@ test('channel verbosity text shows only text and edit lines', async () => {
351
351
  -# ◼︎ edit *notes.md* (+1-0)
352
352
 
353
353
  Edited notes.md.
354
- -# *project ⋅ main ⋅ Ns ⋅ N% ⋅ deterministic-v2*"
354
+ -# *main ⋅ Ns ⋅ N% ⋅ deterministic-v2*"
355
355
  `);
356
356
  });
357
357
  //# sourceMappingURL=renderer.e2e.test.js.map
@@ -41,12 +41,12 @@ test('restarted bot continues the session of an existing thread', async () => {
41
41
  --- from: assistant (TestBot)
42
42
  -# *using deterministic-provider/deterministic-v2 ⋅ build*
43
43
  ok
44
- -# *project ⋅ main ⋅ Ns ⋅ deterministic-v2*
44
+ -# *main ⋅ Ns ⋅ deterministic-v2*
45
45
  --- from: user (tommy)
46
46
  second message after restart
47
47
  --- from: assistant (TestBot)
48
48
  ok
49
- -# *project ⋅ main ⋅ Ns ⋅ deterministic-v2*"
49
+ -# *main ⋅ Ns ⋅ deterministic-v2*"
50
50
  `);
51
51
  const rows = await bot.db.query.thread_sessions.findMany();
52
52
  expect(rows.map((row) => row.session_id)).toEqual([binding?.session_id]);
@@ -72,10 +72,10 @@ test('a routine row written by V1 runs unchanged', async () => {
72
72
  await waitForFooter({ discord: twin.discord, threadId: threadId });
73
73
  expect(await twin.discord.thread(threadId).text()).toMatchInlineSnapshot(`
74
74
  "--- from: assistant (TestBot)
75
- » **routine #3:** V1 weekly check
75
+ -# » **routine #3:** V1 weekly check
76
76
  -# *using deterministic-provider/deterministic-v2 ⋅ build*
77
77
  ok
78
- -# *project ⋅ main ⋅ Ns ⋅ deterministic-v2*"
78
+ -# *main ⋅ Ns ⋅ deterministic-v2*"
79
79
  `);
80
80
  expect((await listTasks()).find((task) => task.id === row.id)).toMatchObject({ status: 'planned', nextRunAt: '2030-01-14T09:00:00.000Z' });
81
81
  // V1 history: finished rows only show with the V1 `task list --all`.
@@ -77,16 +77,16 @@ export declare function listTasks({ db, guildId, all }: {
77
77
  export declare function createTask(bot: Bot, { send: input, options }: {
78
78
  send: SendInput;
79
79
  options: ScheduleOptions;
80
- }): Promise<DbError | DiscordError | ConfigError | {
80
+ }): Promise<ConfigError | DbError | DiscordError | {
81
81
  routineId: number;
82
82
  schedule: string;
83
83
  nextRunAt: string;
84
84
  }>;
85
- export declare function editTask(bot: Bot, edit: TaskEdit): Promise<DbError | ConfigError | {
85
+ export declare function editTask(bot: Bot, edit: TaskEdit): Promise<ConfigError | DbError | {
86
86
  routineId: number;
87
87
  updated: string[];
88
88
  }>;
89
- export declare function deleteTask(bot: Bot, id: number): Promise<DbError | ConfigError | {
89
+ export declare function deleteTask(bot: Bot, id: number): Promise<ConfigError | DbError | {
90
90
  routineId: number;
91
91
  deleted: boolean;
92
92
  }>;
@@ -5,7 +5,7 @@ import fs from 'node:fs';
5
5
  import { git } from "./worktrees.js";
6
6
  import { afterAll, beforeAll, expect, test } from 'vitest';
7
7
  import { send } from "./prompt.js";
8
- import { manualClock, schedulingKit, seedProjectChannel, startOpencodeTestServer, startTestBot, startTwin, tempDataDir, waitForFooter, warmUp, } from "./test/harness.js";
8
+ import { manualClock, schedulingKit, seedProjectChannel, slowTextMatcher, startOpencodeTestServer, startTestBot, startTwin, tempDataDir, textParts, waitForBotMessageContaining, waitForFooter, warmUp, } from "./test/harness.js";
9
9
  const dataDir = tempDataDir();
10
10
  const clock = manualClock(Date.parse('2030-01-01T09:00:00Z'));
11
11
  let server;
@@ -14,7 +14,10 @@ let bot;
14
14
  const { cli, schedule, tick, listTasks, request } = schedulingKit({ suite: () => ({ bot, twin, server }), dataDir, clock });
15
15
  beforeAll(async () => {
16
16
  ;
17
- [server, twin] = await Promise.all([startOpencodeTestServer(), startTwin()]);
17
+ [server, twin] = await Promise.all([startOpencodeTestServer({ matchers: [
18
+ slowTextMatcher({ marker: 'slow-marker', text: 'slow-done', delayMs: 800 }),
19
+ { id: 'report', priority: 50, when: { latestUserTextIncludes: 'Report when done' }, then: { parts: textParts('report ok') } },
20
+ ] }), startTwin()]);
18
21
  await seedProjectChannel({ dataDir, channelId: twin.channelId, guildId: twin.discord.guildId, directory: server.projectDirectory });
19
22
  bot = await startTestBot({ dataDir, twin, server, clock, schedulerIntervalMs: null });
20
23
  await warmUp({ server });
@@ -33,10 +36,10 @@ test('a one-shot routine starts a thread at its time, then is gone', async () =>
33
36
  await waitForFooter({ discord: twin.discord, threadId: threadId });
34
37
  expect(await twin.discord.thread(threadId).text()).toMatchInlineSnapshot(`
35
38
  "--- from: assistant (TestBot)
36
- » **routine #1:** Check the deploy once
39
+ -# » **routine #1:** Check the deploy once
37
40
  -# *using deterministic-provider/deterministic-v2 ⋅ build*
38
41
  ok
39
- -# *project ⋅ main ⋅ Ns ⋅ deterministic-v2*"
42
+ -# *main ⋅ Ns ⋅ deterministic-v2*"
40
43
  `);
41
44
  const thread = (await twin.discord.channel(twin.channelId).getThreads()).find((candidate) => candidate.id === threadId);
42
45
  expect(thread?.name).toBe('Deploy check');
@@ -74,10 +77,10 @@ test('a cron routine fires once per occurrence, in a new thread each time', asyn
74
77
  expect([first.length, second.length]).toEqual([1, 1]);
75
78
  expect(await twin.discord.thread(second[0]).text()).toMatchInlineSnapshot(`
76
79
  "--- from: assistant (TestBot)
77
- » **routine #2:** Hourly report
80
+ -# » **routine #2:** Hourly report
78
81
  -# *using deterministic-provider/deterministic-v2 ⋅ build*
79
82
  ok
80
- -# *project ⋅ main ⋅ Ns ⋅ deterministic-v2*"
83
+ -# *main ⋅ Ns ⋅ deterministic-v2*"
81
84
  `);
82
85
  expect((await listTasks()).find((row) => row.id === task.routineId)).toMatchObject({ status: 'planned', nextRunAt: '2030-01-01T13:00:00.000Z' });
83
86
  await request('task.delete', { id: task.routineId });
@@ -95,16 +98,16 @@ test('a routine for an existing thread prompts that thread, with or without . qu
95
98
  await waitForFooter({ discord: twin.discord, threadId: started.threadId, count: 3 });
96
99
  expect(await twin.discord.thread(started.threadId).text()).toMatchInlineSnapshot(`
97
100
  "--- from: assistant (TestBot)
98
- » **CLI:** Thread for a reminder
101
+ -# » **CLI:** Thread for a reminder
99
102
  -# *using deterministic-provider/deterministic-v2 ⋅ build*
100
103
  ok
101
- -# *project ⋅ main ⋅ Ns ⋅ deterministic-v2*
102
- » **routine #3:** Reminder: check the logs
104
+ -# *main ⋅ Ns ⋅ deterministic-v2*
105
+ -# » **routine #3:** Reminder: check the logs
103
106
  ok
104
- -# *project ⋅ main ⋅ Ns ⋅ deterministic-v2*
105
- » **routine #4:** Then summarize them
107
+ -# *main ⋅ Ns ⋅ deterministic-v2*
108
+ -# » **routine #4:** Then summarize them
106
109
  ok
107
- -# *project ⋅ main ⋅ Ns ⋅ deterministic-v2*"
110
+ -# *main ⋅ Ns ⋅ deterministic-v2*"
108
111
  `);
109
112
  });
110
113
  test('--pre-run: a failing command skips the run, output is appended to the prompt', async () => {
@@ -116,14 +119,12 @@ test('--pre-run: a failing command skips the run, output is appended to the prom
116
119
  await waitForFooter({ discord: twin.discord, threadId: created[0] });
117
120
  expect(await twin.discord.thread(created[0]).text()).toMatchInlineSnapshot(`
118
121
  "--- from: assistant (TestBot)
119
- » **routine #6:** Summarize the new issues
120
-
121
- ## Pre-run command output
122
-
123
- issue 42 is new
122
+ -# » **routine #6:** Summarize the new issues
123
+ -# **Pre-run command output**
124
+ -# issue 42 is new
124
125
  -# *using deterministic-provider/deterministic-v2 ⋅ build*
125
126
  ok
126
- -# *project ⋅ main ⋅ Ns ⋅ deterministic-v2*"
127
+ -# *main ⋅ Ns ⋅ deterministic-v2*"
127
128
  `);
128
129
  // A skipped one-shot is done too, like V1.
129
130
  expect((await listTasks()).filter((row) => row.id === skipped.routineId || row.id === ran.routineId)).toEqual([]);
@@ -142,14 +143,14 @@ test('recurring worktree routines get a fresh checkout on every run', async () =
142
143
  const normalize = (text) => text.replace(/report-[a-f0-9]{8}/g, 'report-ID');
143
144
  expect(normalize(await twin.discord.thread(first[0]).text())).toMatchInlineSnapshot(`
144
145
  "--- from: assistant (TestBot)
145
- » **routine #7:** Isolated recurring report
146
+ -# » **routine #7:** Isolated recurring report
146
147
  -# *using deterministic-provider/deterministic-v2 ⋅ build*
147
148
  ok
148
149
  -# *report-ID ⋅ opencode/kimaki-report-ID ⋅ Ns ⋅ deterministic-v2*"
149
150
  `);
150
151
  expect(normalize(await twin.discord.thread(second[0]).text())).toMatchInlineSnapshot(`
151
152
  "--- from: assistant (TestBot)
152
- » **routine #7:** Isolated recurring report
153
+ -# » **routine #7:** Isolated recurring report
153
154
  -# *using deterministic-provider/deterministic-v2 ⋅ build*
154
155
  ok
155
156
  -# *report-ID ⋅ opencode/kimaki-report-ID ⋅ Ns ⋅ deterministic-v2*"
@@ -160,4 +161,26 @@ test('recurring worktree routines get a fresh checkout on every run', async () =
160
161
  expect(directories.every((directory) => directory !== server.projectDirectory)).toBe(true);
161
162
  await request('task.delete', { id: task.routineId });
162
163
  });
164
+ // Without --allow-concurrency a thread routine waits until the thread is idle, then runs at once.
165
+ test('a . queue routine with --allow-concurrency that fires while its thread is busy waits in the queue, then gets its reply', async () => {
166
+ const started = await send(bot, { channelId: twin.channelId, prompt: 'Long work slow-marker' });
167
+ if (started instanceof Error)
168
+ throw started;
169
+ await waitForBotMessageContaining({ discord: twin.discord, threadId: started.threadId, text: '*using ' });
170
+ await request('send', { threadId: started.threadId, prompt: 'Report when done. queue', sendAt: '2030-01-01T19:00:00Z', allowConcurrency: true });
171
+ expect(await tick('2030-01-01T19:00:00Z')).toEqual([]);
172
+ await waitForFooter({ discord: twin.discord, threadId: started.threadId, count: 2 });
173
+ expect(await twin.discord.thread(started.threadId).text({ showReplies: true })).toMatchInlineSnapshot(`
174
+ "--- from: assistant (TestBot)
175
+ -# » **CLI:** Long work slow-marker
176
+ -# *using deterministic-provider/deterministic-v2 ⋅ build*
177
+ -# » **routine #8:** Report when done
178
+ slow-done
179
+ -# *main ⋅ Ns ⋅ N% ⋅ deterministic-v2*
180
+ [reply to TestBot: -# » **routine #8:** Report when done]
181
+ -# Queued message sent
182
+ report ok
183
+ -# *main ⋅ Ns ⋅ N% ⋅ deterministic-v2*"
184
+ `);
185
+ });
163
186
  //# sourceMappingURL=scheduler.e2e.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"scheduler.e2e.test.js","sourceRoot":"","sources":["../src/scheduler.e2e.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scheduler.e2e.test.js","sourceRoot":"","sources":["../src/scheduler.e2e.test.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,0EAA0E;AAC1E,wEAAwE;AAExE,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAG1D,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAClC,OAAO,EACL,WAAW,EACX,aAAa,EACb,kBAAkB,EAClB,eAAe,EACf,uBAAuB,EACvB,YAAY,EACZ,SAAS,EACT,WAAW,EACX,SAAS,EACT,2BAA2B,EAC3B,aAAa,EACb,MAAM,GAGP,MAAM,mBAAmB,CAAA;AAE1B,MAAM,OAAO,GAAG,WAAW,EAAE,CAAA;AAC7B,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAA;AAC7D,IAAI,MAA0B,CAAA;AAC9B,IAAI,IAAc,CAAA;AAClB,IAAI,GAAc,CAAA;AAClB,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,aAAa,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAA;AAE3H,SAAS,CAAC,KAAK,IAAI,EAAE;IACnB,CAAC;IAAA,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,uBAAuB,CAAC,EAAE,QAAQ,EAAE;gBACvE,eAAe,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;gBAC3E,EAAE,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,WAAW,CAAC,EAAE,EAAE;aAC9H,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAA;IACnB,MAAM,kBAAkB,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAA;IACnI,GAAG,GAAG,MAAM,YAAY,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,mBAAmB,EAAE,IAAI,EAAE,CAAC,CAAA;IACrF,MAAM,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,CAAA;AAC1B,CAAC,EAAE,MAAM,CAAC,CAAA;AAEV,QAAQ,CAAC,KAAK,IAAI,EAAE;IAClB,MAAM,GAAG,EAAE,IAAI,EAAE,CAAA;IACjB,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;IACjD,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;AACtD,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,8DAA8D,EAAE,KAAK,IAAI,EAAE;IAC9E,+EAA+E;IAC/E,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,uBAAuB,EAAE,WAAW,EAAE,sBAAsB,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC,CAA6C,CAAA;IACzN,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAA;IACvD,MAAM,CAAC,MAAM,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IACtD,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,CAAA;IACrD,MAAM,aAAa,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAS,EAAE,CAAC,CAAA;IACnE,MAAM,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAS,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,qBAAqB,CAAC;;;;;;GAMzE,CAAC,CAAA;IACF,MAAM,MAAM,GAAG,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAA;IACvH,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;IACzC,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,QAAS,CAAE,CAAA;IACxD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAA;IAChF,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAA;IAC3F,kGAAkG;IAClG,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAA;IACvG,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACnE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC;;;;;;;;GAQ1G,CAAC,CAAA;IACF,MAAM,CAAC,CAAC,MAAM,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAClF,oGAAoG;IACpG,MAAM,OAAO,CAAC,gBAAgB,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAA;IACzE,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAA;IACvG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,6CAA6C,CAAC,CAAA;IACvH,MAAM,CAAC,CAAC,MAAM,CAAC,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAA;AAC9J,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,qEAAqE,EAAE,KAAK,IAAI,EAAE;IACrF,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAA;IAC7C,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAA;IAC7E,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAA;IACvD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,CAAA;IAChD,MAAM,aAAa,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAE,EAAE,CAAC,CAAA;IACnE,MAAM,CAAC,MAAM,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IACtD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,CAAA;IACjD,MAAM,aAAa,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAE,EAAE,CAAC,CAAA;IACpE,MAAM,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IACrD,MAAM,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,qBAAqB,CAAC;;;;;;GAM1E,CAAC,CAAA;IACF,MAAM,CAAC,CAAC,MAAM,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,0BAA0B,EAAE,CAAC,CAAA;IAChJ,MAAM,OAAO,CAAC,aAAa,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAA;AACtD,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,+EAA+E,EAAE,KAAK,IAAI,EAAE;IAC/F,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,uBAAuB,EAAE,CAAC,CAAA;IAC/F,IAAI,OAAO,YAAY,KAAK;QAAE,MAAM,OAAO,CAAA;IAC3C,MAAM,aAAa,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAA;IAC1E,MAAM,OAAO,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,0BAA0B,EAAE,MAAM,EAAE,sBAAsB,EAAE,CAAC,CAAA;IACzH,MAAM,OAAO,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,4BAA4B,EAAE,MAAM,EAAE,sBAAsB,EAAE,CAAC,CAAA;IAC3H,MAAM,CAAC,MAAM,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IACtD,MAAM,aAAa,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAA;IACpF,MAAM,CAAC,MAAM,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IACtD,MAAM,aAAa,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAA;IACpF,MAAM,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,qBAAqB,CAAC;;;;;;;;;;;;GAYhF,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,8EAA8E,EAAE,KAAK,IAAI,EAAE;IAC9F,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAA;IAC7C,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,sBAAsB,EAAE,MAAM,EAAE,4BAA4B,EAAE,CAAC,CAAA;IAChI,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,EAAE,MAAM,EAAE,0BAA0B,EAAE,MAAM,EAAE,sBAAsB,EAAE,MAAM,EAAE,sBAAsB,EAAE,CAAC,CAAA;IAClI,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,CAAA;IAClD,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IAC9B,MAAM,aAAa,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAE,EAAE,CAAC,CAAA;IACrE,MAAM,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,qBAAqB,CAAC;;;;;;;;GAQ3E,CAAC,CAAA;IACF,2CAA2C;IAC3C,MAAM,CAAC,CAAC,MAAM,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,OAAO,CAAC,SAAS,IAAI,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;AACnH,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,+DAA+D,EAAE,KAAK,IAAI,EAAE;IAC/E,KAAK,MAAM,IAAI,IAAI,CAAC,CAAC,QAAQ,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,YAAY,EAAE,kBAAkB,CAAC,EAAE,CAAC,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC;QAClJ,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAA;QACtE,IAAI,MAAM,YAAY,KAAK;YAAE,MAAM,MAAM,CAAA;IAC3C,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,EAAE,MAAM,EAAE,2BAA2B,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAA;IACjI,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,CAAA;IAChD,MAAM,aAAa,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAE,EAAE,CAAC,CAAA;IACnE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,CAAA;IACjD,MAAM,aAAa,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAE,EAAE,CAAC,CAAA;IACpE,MAAM,SAAS,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,qBAAqB,EAAE,WAAW,CAAC,CAAA;IACpF,MAAM,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,qBAAqB,CAAC;;;;;;GAMpF,CAAC,CAAA;IACF,MAAM,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,qBAAqB,CAAC;;;;;;GAMrF,CAAC,CAAA;IACF,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,EAAE,CAAA;IACpC,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAE,EAAE,MAAM,CAAC,CAAC,CAAE,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,MAAM,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAA;IAC3L,MAAM,CAAC,IAAI,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACzC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,KAAK,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC1F,MAAM,OAAO,CAAC,aAAa,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAA;AACtD,CAAC,CAAC,CAAA;AAEF,kGAAkG;AAClG,IAAI,CAAC,wHAAwH,EAAE,KAAK,IAAI,EAAE;IACxI,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,uBAAuB,EAAE,CAAC,CAAA;IAC/F,IAAI,OAAO,YAAY,KAAK;QAAE,MAAM,OAAO,CAAA;IAC3C,MAAM,2BAA2B,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAA;IACzG,MAAM,OAAO,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,yBAAyB,EAAE,MAAM,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAA;IAChJ,MAAM,CAAC,MAAM,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IACtD,MAAM,aAAa,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAA;IACpF,MAAM,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,qBAAqB,CAAC;;;;;;;;;;;GAWrG,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
package/dist/scheduler.js CHANGED
@@ -365,9 +365,11 @@ export async function createTask(bot, { send: input, options }) {
365
365
  const thread = await bot.discord.channels.fetch(threadId).catch((cause) => new DiscordError({ operation: `fetch thread ${threadId}`, cause }));
366
366
  if (thread instanceof Error)
367
367
  return thread;
368
- if (!thread?.isThread() || !thread.parentId)
368
+ // A coordinator channel is its own project channel.
369
+ const channelId = thread?.isThread() ? thread.parentId : thread?.id;
370
+ if (!channelId)
369
371
  return null;
370
- return projectOf(bot, thread.parentId);
372
+ return projectOf(bot, channelId);
371
373
  }
372
374
  return bot.db.query.channel_directories
373
375
  .findFirst({ where: input.channelId ? { channel_id: input.channelId } : { directory: path.resolve(input.project) } })