@openclaw/slack 2026.7.1-beta.2 → 2026.7.1-beta.5

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 (696) hide show
  1. package/dist/{account-inspect-DOtQbKkB.js → account-inspect-Di7ditqZ.js} +1 -1
  2. package/dist/account-inspect-api.js +1 -1
  3. package/dist/{accounts-BPCiCe8y.js → accounts-BOJJiHSr.js} +14 -1
  4. package/dist/accounts.runtime-DWvaCb-X.js +2 -0
  5. package/dist/{action-runtime-E9QZMf0z.js → action-runtime-DoQGk_8D.js} +36 -32
  6. package/dist/action-runtime.runtime-BABj3aM-.js +2 -0
  7. package/dist/{actions-CqRHPciJ.js → actions-DMpDmKEA.js} +211 -57
  8. package/dist/actions.runtime-C103_BPW.js +2 -0
  9. package/dist/api.js +13 -13
  10. package/dist/{approval-handler.runtime-BqNO_HC_.js → approval-handler.runtime-CIUbOt5T.js} +2 -2
  11. package/dist/{channel-jO8Jdkge.js → channel-CG29WLVd.js} +198 -87
  12. package/dist/channel-plugin-api.js +1 -1
  13. package/dist/{channel.setup-CDOZ8V3p.js → channel.setup-Dq6syTNU.js} +3 -3
  14. package/dist/{client-DG9cyk55.js → client-DGxwSL7f.js} +0 -1
  15. package/dist/{directory-config-DDVHDmrN.js → directory-config-BZuS8141.js} +1 -1
  16. package/dist/directory-contract-api.js +1 -1
  17. package/dist/{directory-live-DC-YA5SQ.js → directory-live-BNsxCgqP.js} +2 -2
  18. package/dist/format-YCNoNkM2.js +107 -0
  19. package/dist/http-routes-api.js +1 -1
  20. package/dist/index.js +1 -1
  21. package/dist/{interactive-replies-D-22gTp3.js → interactive-replies-CXpT-vA_.js} +13 -2
  22. package/dist/interactive-replies-api.js +1 -1
  23. package/dist/{message-tool-api--zYyTqrR.js → message-tool-api-BgWKyu2r.js} +11 -4
  24. package/dist/message-tool-api.js +1 -1
  25. package/dist/{monitor-BQ7P93ll.js → monitor-D6Km2CFH.js} +3 -3
  26. package/dist/outbound-adapter-DVoBfBW5.js +272 -0
  27. package/dist/{pipeline.runtime-cxw6Zihc.js → pipeline.runtime-0wEFX2CS.js} +184 -260
  28. package/dist/{plugin-routes-B9PvcDQJ.js → plugin-routes-CLp4obpN.js} +1 -1
  29. package/dist/{policy-DAE6BTN3.js → policy-Dj-puVPb.js} +10 -4
  30. package/dist/{probe-DFKt9Ute.js → probe-CuwRDE5j.js} +10 -4
  31. package/dist/{provider-BdoeWKr8.js → provider-Cot8h818.js} +153 -120
  32. package/dist/{relay-source-OcqQzKfX.js → relay-source-CU1LhyBj.js} +2 -2
  33. package/dist/{replies-D_G-EPr8.js → replies-Bbx6pG_B.js} +4 -3
  34. package/dist/{reply-blocks-CfJqf7eq.js → reply-blocks-BGQ6zSqM.js} +184 -36
  35. package/dist/{resolve-channels-eniB45fy.js → resolve-channels-CstkChBE.js} +1 -1
  36. package/dist/{resolve-users-DDKzl37a.js → resolve-users-C3NP2c-Q.js} +1 -1
  37. package/dist/{runtime-api-DHJ8ntLr.js → runtime-api-CEmqYxR-.js} +1 -1
  38. package/dist/runtime-api.js +12 -12
  39. package/dist/{scopes-BdVdJxFf.js → scopes-DCWVD5-8.js} +2 -2
  40. package/dist/{send-Dg6U9K7_.js → send-DKDXoeoV.js} +392 -225
  41. package/dist/send.runtime-GPRa63l1.js +2 -0
  42. package/dist/{setup-core-BCGzyZhx.js → setup-core-fGd6Gquy.js} +4 -3
  43. package/dist/setup-entry.js +1 -1
  44. package/dist/setup-plugin-api.js +1 -1
  45. package/dist/{setup-surface-D7xdZLxB.js → setup-surface-Dv2fIJNB.js} +5 -5
  46. package/dist/{shared-iMaNxOIL.js → shared-CosfcFri.js} +5 -5
  47. package/dist/{slash-dispatch.runtime-DVhs_fpQ.js → slash-dispatch.runtime-Ccm3quU1.js} +1 -1
  48. package/node_modules/@slack/web-api/dist/chat-stream.d.ts +6 -0
  49. package/node_modules/@slack/web-api/dist/chat-stream.d.ts.map +1 -1
  50. package/node_modules/@slack/web-api/dist/chat-stream.js +8 -0
  51. package/node_modules/@slack/web-api/dist/chat-stream.js.map +1 -1
  52. package/node_modules/@slack/web-api/dist/types/request/assistant.d.ts +1 -1
  53. package/node_modules/@slack/web-api/dist/types/request/assistant.d.ts.map +1 -1
  54. package/node_modules/@slack/web-api/package.json +1 -1
  55. package/node_modules/@types/node/README.md +1 -1
  56. package/node_modules/@types/node/assert/strict.d.ts +10 -1
  57. package/node_modules/@types/node/assert.d.ts +144 -17
  58. package/node_modules/@types/node/async_hooks.d.ts +9 -9
  59. package/node_modules/@types/node/buffer.d.ts +64 -30
  60. package/node_modules/@types/node/child_process.d.ts +17 -21
  61. package/node_modules/@types/node/cluster.d.ts +13 -13
  62. package/node_modules/@types/node/console.d.ts +1 -1
  63. package/node_modules/@types/node/crypto.d.ts +471 -575
  64. package/node_modules/@types/node/diagnostics_channel.d.ts +274 -32
  65. package/node_modules/@types/node/dns.d.ts +15 -15
  66. package/node_modules/@types/node/events.d.ts +3 -3
  67. package/node_modules/@types/node/ffi.d.ts +486 -0
  68. package/node_modules/@types/node/fs/promises.d.ts +7 -4
  69. package/node_modules/@types/node/fs.d.ts +24 -18
  70. package/node_modules/@types/node/globals.d.ts +4 -4
  71. package/node_modules/@types/node/http.d.ts +30 -5
  72. package/node_modules/@types/node/http2.d.ts +2 -1
  73. package/node_modules/@types/node/index.d.ts +1 -3
  74. package/node_modules/@types/node/inspector.d.ts +1 -1
  75. package/node_modules/@types/node/module.d.ts +16 -45
  76. package/node_modules/@types/node/net.d.ts +1 -1
  77. package/node_modules/@types/node/os.d.ts +2 -2
  78. package/node_modules/@types/node/package.json +4 -4
  79. package/node_modules/@types/node/perf_hooks.d.ts +1 -9
  80. package/node_modules/@types/node/process.d.ts +25 -12
  81. package/node_modules/@types/node/quic.d.ts +92 -11
  82. package/node_modules/@types/node/readline.d.ts +12 -11
  83. package/node_modules/@types/node/repl.d.ts +10 -10
  84. package/node_modules/@types/node/sqlite.d.ts +56 -1
  85. package/node_modules/@types/node/stream/iter.d.ts +150 -0
  86. package/node_modules/@types/node/stream/promises.d.ts +2 -2
  87. package/node_modules/@types/node/stream/web.d.ts +1 -1
  88. package/node_modules/@types/node/stream.d.ts +37 -5
  89. package/node_modules/@types/node/test/reporters.d.ts +1 -1
  90. package/node_modules/@types/node/test.d.ts +120 -10
  91. package/node_modules/@types/node/tls.d.ts +1 -1
  92. package/node_modules/@types/node/ts5.6/index.d.ts +2 -4
  93. package/node_modules/@types/node/ts5.7/index.d.ts +1 -3
  94. package/node_modules/@types/node/url.d.ts +3 -3
  95. package/node_modules/@types/node/util/types.d.ts +1 -1
  96. package/node_modules/@types/node/util.d.ts +22 -22
  97. package/node_modules/@types/node/v8.d.ts +85 -3
  98. package/node_modules/@types/node/vm.d.ts +9 -9
  99. package/node_modules/@types/node/web-globals/domexception.d.ts +15 -0
  100. package/node_modules/@types/node/worker_threads.d.ts +10 -12
  101. package/node_modules/@types/node/zlib.d.ts +3 -3
  102. package/node_modules/body-parser/README.md +16 -1
  103. package/node_modules/body-parser/index.js +4 -20
  104. package/node_modules/body-parser/lib/read.js +17 -17
  105. package/node_modules/body-parser/lib/types/json.js +60 -32
  106. package/node_modules/body-parser/lib/types/raw.js +3 -3
  107. package/node_modules/body-parser/lib/types/text.js +3 -3
  108. package/node_modules/body-parser/lib/types/urlencoded.js +16 -20
  109. package/node_modules/body-parser/lib/utils.js +18 -16
  110. package/node_modules/body-parser/node_modules/content-type/LICENSE +22 -0
  111. package/node_modules/body-parser/node_modules/content-type/README.md +69 -0
  112. package/node_modules/body-parser/node_modules/content-type/dist/index.d.ts +26 -0
  113. package/node_modules/body-parser/node_modules/content-type/dist/index.js +170 -0
  114. package/node_modules/body-parser/node_modules/content-type/dist/index.js.map +1 -0
  115. package/node_modules/body-parser/node_modules/content-type/package.json +52 -0
  116. package/node_modules/body-parser/package.json +23 -10
  117. package/node_modules/range-parser/README.md +13 -12
  118. package/node_modules/range-parser/index.js +27 -8
  119. package/node_modules/range-parser/package.json +12 -8
  120. package/node_modules/semver/classes/range.js +6 -2
  121. package/node_modules/semver/package.json +1 -1
  122. package/node_modules/side-channel/CHANGELOG.md +10 -0
  123. package/node_modules/side-channel/README.md +1 -1
  124. package/node_modules/side-channel/index.js +5 -2
  125. package/node_modules/side-channel/package.json +10 -10
  126. package/node_modules/side-channel/test/index.js +16 -0
  127. package/node_modules/typebox/build/compile/validator.d.mts +2 -7
  128. package/node_modules/typebox/build/compile/validator.mjs +6 -36
  129. package/node_modules/typebox/build/error/errors.d.mts +1 -7
  130. package/node_modules/typebox/build/format/_idna.mjs +36 -6
  131. package/node_modules/typebox/build/format/_puny.mjs +4 -1
  132. package/node_modules/typebox/build/format/uuid.d.mts +2 -2
  133. package/node_modules/typebox/build/format/uuid.mjs +3 -3
  134. package/node_modules/typebox/build/guard/emit.d.mts +0 -4
  135. package/node_modules/typebox/build/guard/emit.mjs +0 -8
  136. package/node_modules/typebox/build/guard/guard.d.mts +4 -8
  137. package/node_modules/typebox/build/guard/guard.mjs +5 -13
  138. package/node_modules/typebox/build/schema/engine/boolean.d.mts +3 -3
  139. package/node_modules/typebox/build/schema/engine/boolean.mjs +4 -4
  140. package/node_modules/typebox/build/schema/engine/index.d.mts +0 -1
  141. package/node_modules/typebox/build/schema/engine/index.mjs +0 -1
  142. package/node_modules/typebox/build/schema/engine/schema.mjs +5 -10
  143. package/node_modules/typebox/build/schema/engine/type.mjs +14 -18
  144. package/node_modules/typebox/build/schema/types/dependencies.mjs +1 -1
  145. package/node_modules/typebox/build/schema/types/index.d.mts +0 -1
  146. package/node_modules/typebox/build/schema/types/index.mjs +0 -1
  147. package/node_modules/typebox/build/schema/types/schema.d.mts +1 -1
  148. package/node_modules/typebox/build/schema/types/schema.mjs +2 -2
  149. package/node_modules/typebox/build/system/locale/ar_001.mjs +0 -1
  150. package/node_modules/typebox/build/system/locale/bn_BD.mjs +0 -1
  151. package/node_modules/typebox/build/system/locale/cs_CZ.mjs +0 -1
  152. package/node_modules/typebox/build/system/locale/de_DE.mjs +0 -1
  153. package/node_modules/typebox/build/system/locale/el_GR.mjs +0 -1
  154. package/node_modules/typebox/build/system/locale/en_US.mjs +0 -1
  155. package/node_modules/typebox/build/system/locale/es_419.mjs +0 -1
  156. package/node_modules/typebox/build/system/locale/es_AR.mjs +0 -1
  157. package/node_modules/typebox/build/system/locale/es_ES.mjs +0 -1
  158. package/node_modules/typebox/build/system/locale/es_MX.mjs +0 -1
  159. package/node_modules/typebox/build/system/locale/fa_IR.mjs +0 -1
  160. package/node_modules/typebox/build/system/locale/fil_PH.mjs +0 -1
  161. package/node_modules/typebox/build/system/locale/fr_CA.mjs +0 -1
  162. package/node_modules/typebox/build/system/locale/fr_FR.mjs +0 -1
  163. package/node_modules/typebox/build/system/locale/ha_NG.mjs +0 -1
  164. package/node_modules/typebox/build/system/locale/hi_IN.mjs +0 -1
  165. package/node_modules/typebox/build/system/locale/hu_HU.mjs +0 -1
  166. package/node_modules/typebox/build/system/locale/id_ID.mjs +0 -1
  167. package/node_modules/typebox/build/system/locale/it_IT.mjs +0 -1
  168. package/node_modules/typebox/build/system/locale/ja_JP.mjs +0 -1
  169. package/node_modules/typebox/build/system/locale/ko_KR.mjs +0 -1
  170. package/node_modules/typebox/build/system/locale/ms_MY.mjs +0 -1
  171. package/node_modules/typebox/build/system/locale/nl_NL.mjs +0 -1
  172. package/node_modules/typebox/build/system/locale/pl_PL.mjs +0 -1
  173. package/node_modules/typebox/build/system/locale/pt_BR.mjs +0 -1
  174. package/node_modules/typebox/build/system/locale/pt_PT.mjs +0 -1
  175. package/node_modules/typebox/build/system/locale/ro_RO.mjs +0 -1
  176. package/node_modules/typebox/build/system/locale/ru_RU.mjs +0 -1
  177. package/node_modules/typebox/build/system/locale/sv_SE.mjs +0 -1
  178. package/node_modules/typebox/build/system/locale/sw_TZ.mjs +0 -1
  179. package/node_modules/typebox/build/system/locale/th_TH.mjs +0 -1
  180. package/node_modules/typebox/build/system/locale/tr_TR.mjs +0 -1
  181. package/node_modules/typebox/build/system/locale/uk_UA.mjs +0 -1
  182. package/node_modules/typebox/build/system/locale/ur_PK.mjs +0 -1
  183. package/node_modules/typebox/build/system/locale/vi_VN.mjs +0 -1
  184. package/node_modules/typebox/build/system/locale/yo_NG.mjs +0 -1
  185. package/node_modules/typebox/build/system/locale/zh_Hans.mjs +0 -1
  186. package/node_modules/typebox/build/system/locale/zh_Hant.mjs +0 -1
  187. package/node_modules/typebox/build/system/memory/clone.d.mts +2 -3
  188. package/node_modules/typebox/build/system/memory/clone.mjs +73 -26
  189. package/node_modules/typebox/build/system/settings/settings.d.mts +15 -0
  190. package/node_modules/typebox/build/system/settings/settings.mjs +3 -1
  191. package/node_modules/typebox/build/type/action/_add_immutable.d.mts +11 -0
  192. package/node_modules/typebox/build/type/action/_add_immutable.mjs +11 -0
  193. package/node_modules/typebox/build/type/action/_add_optional.d.mts +11 -0
  194. package/node_modules/typebox/build/type/action/_add_optional.mjs +11 -0
  195. package/node_modules/typebox/build/type/action/_add_readonly.d.mts +11 -0
  196. package/node_modules/typebox/build/type/action/_add_readonly.mjs +11 -0
  197. package/node_modules/typebox/build/type/action/_remove_immutable.d.mts +11 -0
  198. package/node_modules/typebox/build/type/action/_remove_immutable.mjs +11 -0
  199. package/node_modules/typebox/build/type/action/_remove_optional.d.mts +11 -0
  200. package/node_modules/typebox/build/type/action/_remove_optional.mjs +11 -0
  201. package/node_modules/typebox/build/type/action/_remove_readonly.d.mts +11 -0
  202. package/node_modules/typebox/build/type/action/_remove_readonly.mjs +11 -0
  203. package/node_modules/typebox/build/type/action/conditional.d.mts +2 -3
  204. package/node_modules/typebox/build/type/action/conditional.mjs +2 -1
  205. package/node_modules/typebox/build/type/action/index.d.mts +7 -4
  206. package/node_modules/typebox/build/type/action/index.mjs +7 -4
  207. package/node_modules/typebox/build/type/action/mapped.d.mts +2 -3
  208. package/node_modules/typebox/build/type/action/mapped.mjs +2 -1
  209. package/node_modules/typebox/build/type/action/module.d.mts +8 -7
  210. package/node_modules/typebox/build/type/action/module.mjs +7 -6
  211. package/node_modules/typebox/build/type/action/readonly_object.d.mts +0 -5
  212. package/node_modules/typebox/build/type/action/readonly_object.mjs +0 -5
  213. package/node_modules/typebox/build/type/action/with.d.mts +11 -0
  214. package/node_modules/typebox/build/type/action/with.mjs +11 -0
  215. package/node_modules/typebox/build/type/engine/call/distribute_arguments.mjs +1 -1
  216. package/node_modules/typebox/build/type/engine/call/instantiate.d.mts +1 -3
  217. package/node_modules/typebox/build/type/engine/call/instantiate.mjs +3 -2
  218. package/node_modules/typebox/build/type/engine/call/resolve_arguments.mjs +2 -2
  219. package/node_modules/typebox/build/type/engine/constructor_parameters/instantiate.d.mts +3 -4
  220. package/node_modules/typebox/build/type/engine/constructor_parameters/instantiate.mjs +2 -1
  221. package/node_modules/typebox/build/type/engine/cyclic/candidates.d.mts +2 -3
  222. package/node_modules/typebox/build/type/engine/cyclic/candidates.mjs +3 -6
  223. package/node_modules/typebox/build/type/engine/cyclic/check.d.mts +6 -9
  224. package/node_modules/typebox/build/type/engine/cyclic/check.mjs +10 -16
  225. package/node_modules/typebox/build/type/engine/cyclic/dependencies.d.mts +1 -4
  226. package/node_modules/typebox/build/type/engine/cyclic/dependencies.mjs +9 -15
  227. package/node_modules/typebox/build/type/engine/cyclic/extends.d.mts +1 -4
  228. package/node_modules/typebox/build/type/engine/cyclic/extends.mjs +8 -14
  229. package/node_modules/typebox/build/type/engine/cyclic/instantiate.d.mts +2 -5
  230. package/node_modules/typebox/build/type/engine/cyclic/instantiate.mjs +3 -2
  231. package/node_modules/typebox/build/type/engine/enum/index.d.mts +0 -1
  232. package/node_modules/typebox/build/type/engine/enum/index.mjs +0 -1
  233. package/node_modules/typebox/build/type/engine/evaluate/broaden.d.mts +1 -2
  234. package/node_modules/typebox/build/type/engine/evaluate/broaden.mjs +2 -6
  235. package/node_modules/typebox/build/type/engine/evaluate/composite.d.mts +10 -6
  236. package/node_modules/typebox/build/type/engine/evaluate/composite.mjs +10 -6
  237. package/node_modules/typebox/build/type/engine/evaluate/distribute.d.mts +2 -1
  238. package/node_modules/typebox/build/type/engine/evaluate/distribute.mjs +3 -3
  239. package/node_modules/typebox/build/type/engine/evaluate/evaluate.d.mts +17 -5
  240. package/node_modules/typebox/build/type/engine/evaluate/evaluate.mjs +34 -8
  241. package/node_modules/typebox/build/type/engine/exclude/operation.d.mts +5 -6
  242. package/node_modules/typebox/build/type/engine/exclude/operation.mjs +11 -12
  243. package/node_modules/typebox/build/type/engine/extract/operation.d.mts +5 -6
  244. package/node_modules/typebox/build/type/engine/extract/operation.mjs +11 -12
  245. package/node_modules/typebox/build/type/engine/immutable/instantiate_add.d.mts +10 -0
  246. package/node_modules/typebox/build/type/engine/immutable/instantiate_add.mjs +14 -0
  247. package/node_modules/typebox/build/type/engine/immutable/instantiate_remove.d.mts +10 -0
  248. package/node_modules/typebox/build/type/engine/immutable/instantiate_remove.mjs +14 -0
  249. package/node_modules/typebox/build/type/engine/index.d.mts +2 -2
  250. package/node_modules/typebox/build/type/engine/index.mjs +2 -2
  251. package/node_modules/typebox/build/type/engine/indexable/from_dependent.d.mts +5 -0
  252. package/node_modules/typebox/build/type/engine/indexable/from_dependent.mjs +8 -0
  253. package/node_modules/typebox/build/type/engine/indexable/from_enum.d.mts +3 -3
  254. package/node_modules/typebox/build/type/engine/indexable/from_enum.mjs +4 -4
  255. package/node_modules/typebox/build/type/engine/indexable/from_template_literal.d.mts +2 -2
  256. package/node_modules/typebox/build/type/engine/indexable/from_template_literal.mjs +3 -3
  257. package/node_modules/typebox/build/type/engine/indexable/from_type.d.mts +3 -1
  258. package/node_modules/typebox/build/type/engine/indexable/from_type.mjs +9 -6
  259. package/node_modules/typebox/build/type/engine/indexed/instantiate.d.mts +2 -1
  260. package/node_modules/typebox/build/type/engine/indexed/instantiate.mjs +5 -2
  261. package/node_modules/typebox/build/type/engine/instantiate.d.mts +44 -31
  262. package/node_modules/typebox/build/type/engine/instantiate.mjs +82 -83
  263. package/node_modules/typebox/build/type/engine/interface/instantiate.d.mts +3 -6
  264. package/node_modules/typebox/build/type/engine/intrinsics/from_template_literal.d.mts +2 -2
  265. package/node_modules/typebox/build/type/engine/intrinsics/from_template_literal.mjs +3 -3
  266. package/node_modules/typebox/build/type/engine/keyof/instantiate.d.mts +2 -1
  267. package/node_modules/typebox/build/type/engine/keyof/instantiate.mjs +5 -1
  268. package/node_modules/typebox/build/type/engine/mapped/mapped_operation.d.mts +4 -4
  269. package/node_modules/typebox/build/type/engine/mapped/mapped_operation.mjs +3 -3
  270. package/node_modules/typebox/build/type/engine/mapped/mapped_variants.d.mts +5 -4
  271. package/node_modules/typebox/build/type/engine/mapped/mapped_variants.mjs +10 -5
  272. package/node_modules/typebox/build/type/engine/module/instantiate.d.mts +7 -9
  273. package/node_modules/typebox/build/type/engine/module/instantiate.mjs +17 -15
  274. package/node_modules/typebox/build/type/engine/object/from_dependent.d.mts +5 -0
  275. package/node_modules/typebox/build/type/engine/object/from_dependent.mjs +8 -0
  276. package/node_modules/typebox/build/type/engine/object/from_type.d.mts +3 -1
  277. package/node_modules/typebox/build/type/engine/object/from_type.mjs +8 -5
  278. package/node_modules/typebox/build/type/engine/object/from_union.mjs +2 -2
  279. package/node_modules/typebox/build/type/engine/optional/instantiate_add.d.mts +10 -0
  280. package/node_modules/typebox/build/type/engine/optional/instantiate_add.mjs +14 -0
  281. package/node_modules/typebox/build/type/engine/optional/instantiate_remove.d.mts +10 -0
  282. package/node_modules/typebox/build/type/engine/optional/instantiate_remove.mjs +14 -0
  283. package/node_modules/typebox/build/type/engine/parameters/instantiate.d.mts +3 -4
  284. package/node_modules/typebox/build/type/engine/parameters/instantiate.mjs +2 -1
  285. package/node_modules/typebox/build/type/engine/partial/from_dependent.d.mts +5 -0
  286. package/node_modules/typebox/build/type/engine/partial/from_dependent.mjs +8 -0
  287. package/node_modules/typebox/build/type/engine/partial/from_intersect.d.mts +1 -1
  288. package/node_modules/typebox/build/type/engine/partial/from_intersect.mjs +3 -2
  289. package/node_modules/typebox/build/type/engine/partial/from_object.d.mts +2 -2
  290. package/node_modules/typebox/build/type/engine/partial/from_object.mjs +2 -2
  291. package/node_modules/typebox/build/type/engine/partial/from_type.d.mts +3 -1
  292. package/node_modules/typebox/build/type/engine/partial/from_type.mjs +7 -4
  293. package/node_modules/typebox/build/type/engine/priority/index.d.mts +1 -0
  294. package/node_modules/typebox/build/type/engine/priority/index.mjs +1 -0
  295. package/node_modules/typebox/build/type/engine/priority/priority.d.mts +20 -0
  296. package/node_modules/typebox/build/type/engine/priority/priority.mjs +28 -0
  297. package/node_modules/typebox/build/type/engine/readonly/instantiate_add.d.mts +10 -0
  298. package/node_modules/typebox/build/type/engine/readonly/instantiate_add.mjs +14 -0
  299. package/node_modules/typebox/build/type/engine/readonly/instantiate_remove.d.mts +10 -0
  300. package/node_modules/typebox/build/type/engine/readonly/instantiate_remove.mjs +14 -0
  301. package/node_modules/typebox/build/type/engine/readonly_object/from_array.d.mts +2 -2
  302. package/node_modules/typebox/build/type/engine/readonly_object/from_array.mjs +2 -2
  303. package/node_modules/typebox/build/type/engine/readonly_object/from_dependent.d.mts +5 -0
  304. package/node_modules/typebox/build/type/engine/readonly_object/from_dependent.mjs +8 -0
  305. package/node_modules/typebox/build/type/engine/readonly_object/from_intersect.d.mts +1 -1
  306. package/node_modules/typebox/build/type/engine/readonly_object/from_intersect.mjs +3 -2
  307. package/node_modules/typebox/build/type/engine/readonly_object/from_object.d.mts +2 -2
  308. package/node_modules/typebox/build/type/engine/readonly_object/from_object.mjs +2 -2
  309. package/node_modules/typebox/build/type/engine/readonly_object/from_tuple.d.mts +2 -2
  310. package/node_modules/typebox/build/type/engine/readonly_object/from_tuple.mjs +2 -2
  311. package/node_modules/typebox/build/type/engine/readonly_object/from_type.d.mts +3 -1
  312. package/node_modules/typebox/build/type/engine/readonly_object/from_type.mjs +8 -5
  313. package/node_modules/typebox/build/type/engine/record/from_key_enum.d.mts +2 -2
  314. package/node_modules/typebox/build/type/engine/record/from_key_enum.mjs +2 -2
  315. package/node_modules/typebox/build/type/engine/record/from_key_template_literal.d.mts +2 -2
  316. package/node_modules/typebox/build/type/engine/record/from_key_template_literal.mjs +2 -2
  317. package/node_modules/typebox/build/type/engine/ref/instantiate.d.mts +3 -3
  318. package/node_modules/typebox/build/type/engine/ref/instantiate.mjs +6 -6
  319. package/node_modules/typebox/build/type/engine/required/from_dependent.d.mts +5 -0
  320. package/node_modules/typebox/build/type/engine/required/from_dependent.mjs +8 -0
  321. package/node_modules/typebox/build/type/engine/required/from_intersect.d.mts +1 -1
  322. package/node_modules/typebox/build/type/engine/required/from_intersect.mjs +3 -2
  323. package/node_modules/typebox/build/type/engine/required/from_object.d.mts +2 -2
  324. package/node_modules/typebox/build/type/engine/required/from_object.mjs +2 -2
  325. package/node_modules/typebox/build/type/engine/required/from_type.d.mts +3 -1
  326. package/node_modules/typebox/build/type/engine/required/from_type.mjs +7 -4
  327. package/node_modules/typebox/build/type/engine/template_literal/decode.mjs +3 -3
  328. package/node_modules/typebox/build/type/engine/template_literal/encode.d.mts +2 -2
  329. package/node_modules/typebox/build/type/engine/template_literal/encode.mjs +6 -6
  330. package/node_modules/typebox/build/type/engine/template_literal/is_finite.mjs +1 -1
  331. package/node_modules/typebox/build/type/engine/template_literal/is_pattern.mjs +1 -0
  332. package/node_modules/typebox/build/type/engine/this/expand_this.d.mts +1 -4
  333. package/node_modules/typebox/build/type/engine/this/expand_this.mjs +7 -13
  334. package/node_modules/typebox/build/type/engine/with/instantiate.d.mts +8 -0
  335. package/node_modules/typebox/build/type/engine/{options → with}/instantiate.mjs +5 -5
  336. package/node_modules/typebox/build/type/extends/dependent.d.mts +6 -0
  337. package/node_modules/typebox/build/type/extends/dependent.mjs +6 -0
  338. package/node_modules/typebox/build/type/extends/enum.d.mts +4 -4
  339. package/node_modules/typebox/build/type/extends/enum.mjs +3 -2
  340. package/node_modules/typebox/build/type/extends/extends_left.d.mts +5 -7
  341. package/node_modules/typebox/build/type/extends/extends_left.mjs +24 -27
  342. package/node_modules/typebox/build/type/extends/extends_right.d.mts +7 -5
  343. package/node_modules/typebox/build/type/extends/extends_right.mjs +20 -15
  344. package/node_modules/typebox/build/type/extends/inference.mjs +1 -1
  345. package/node_modules/typebox/build/type/extends/object.d.mts +8 -1
  346. package/node_modules/typebox/build/type/extends/object.mjs +25 -3
  347. package/node_modules/typebox/build/type/extends/parameters.mjs +2 -2
  348. package/node_modules/typebox/build/type/extends/record.d.mts +13 -0
  349. package/node_modules/typebox/build/type/extends/record.mjs +23 -0
  350. package/node_modules/typebox/build/type/extends/template_literal.d.mts +3 -3
  351. package/node_modules/typebox/build/type/extends/template_literal.mjs +3 -3
  352. package/node_modules/typebox/build/type/extends/tuple.d.mts +3 -6
  353. package/node_modules/typebox/build/type/extends/tuple.mjs +6 -5
  354. package/node_modules/typebox/build/type/extends/union.mjs +2 -2
  355. package/node_modules/typebox/build/type/script/mapping.d.mts +84 -99
  356. package/node_modules/typebox/build/type/script/mapping.mjs +81 -85
  357. package/node_modules/typebox/build/type/script/parser.d.mts +40 -40
  358. package/node_modules/typebox/build/type/script/parser.mjs +22 -22
  359. package/node_modules/typebox/build/type/script/script.d.mts +3 -4
  360. package/node_modules/typebox/build/type/script/script.mjs +3 -2
  361. package/node_modules/typebox/build/type/script/token/internal/guard.d.mts +1 -1
  362. package/node_modules/typebox/build/type/script/token/internal/guard.mjs +1 -1
  363. package/node_modules/typebox/build/type/script/token/internal/take.mjs +1 -1
  364. package/node_modules/typebox/build/type/script/token/until.mjs +2 -2
  365. package/node_modules/typebox/build/type/types/_codec.d.mts +12 -12
  366. package/node_modules/typebox/build/type/types/_codec.mjs +0 -1
  367. package/node_modules/typebox/build/type/types/_immutable.d.mts +2 -9
  368. package/node_modules/typebox/build/type/types/_immutable.mjs +2 -10
  369. package/node_modules/typebox/build/type/types/_optional.d.mts +2 -9
  370. package/node_modules/typebox/build/type/types/_optional.mjs +2 -11
  371. package/node_modules/typebox/build/type/types/_readonly.d.mts +2 -9
  372. package/node_modules/typebox/build/type/types/_readonly.mjs +2 -10
  373. package/node_modules/typebox/build/type/types/_refine.d.mts +8 -10
  374. package/node_modules/typebox/build/type/types/_refine.mjs +1 -2
  375. package/node_modules/typebox/build/type/types/call.d.mts +3 -3
  376. package/node_modules/typebox/build/type/types/call.mjs +3 -2
  377. package/node_modules/typebox/build/type/types/deferred.d.mts +1 -0
  378. package/node_modules/typebox/build/type/types/deferred.mjs +1 -1
  379. package/node_modules/typebox/build/type/types/dependent.d.mts +17 -0
  380. package/node_modules/typebox/build/type/types/dependent.mjs +24 -0
  381. package/node_modules/typebox/build/type/types/enum.d.mts +3 -1
  382. package/node_modules/typebox/build/type/types/enum.mjs +5 -0
  383. package/node_modules/typebox/build/type/types/index.d.mts +1 -4
  384. package/node_modules/typebox/build/type/types/index.mjs +1 -4
  385. package/node_modules/typebox/build/type/types/number.d.mts +1 -1
  386. package/node_modules/typebox/build/type/types/number.mjs +1 -1
  387. package/node_modules/typebox/build/type/types/record.d.mts +13 -7
  388. package/node_modules/typebox/build/type/types/record.mjs +15 -9
  389. package/node_modules/typebox/build/type/types/static.d.mts +2 -5
  390. package/node_modules/typebox/build/typebox.d.mts +4 -8
  391. package/node_modules/typebox/build/typebox.mjs +4 -8
  392. package/node_modules/typebox/build/value/clean/clean.mjs +4 -2
  393. package/node_modules/typebox/build/value/clean/from_intersect.mjs +2 -2
  394. package/node_modules/typebox/build/value/clean/from_type.mjs +8 -10
  395. package/node_modules/typebox/build/value/clean/from_union.d.mts +1 -1
  396. package/node_modules/typebox/build/value/clean/from_union.mjs +1 -2
  397. package/node_modules/typebox/build/value/clone/clone.mjs +2 -73
  398. package/node_modules/typebox/build/value/codec/decode.mjs +4 -2
  399. package/node_modules/typebox/build/value/codec/encode.mjs +4 -2
  400. package/node_modules/typebox/build/value/codec/from_array.mjs +1 -4
  401. package/node_modules/typebox/build/value/codec/from_object.mjs +1 -4
  402. package/node_modules/typebox/build/value/codec/from_record.mjs +2 -7
  403. package/node_modules/typebox/build/value/codec/from_tuple.mjs +1 -4
  404. package/node_modules/typebox/build/value/codec/from_union.mjs +2 -3
  405. package/node_modules/typebox/build/value/convert/from_enum.mjs +3 -4
  406. package/node_modules/typebox/build/value/convert/from_template_literal.d.mts +1 -1
  407. package/node_modules/typebox/build/value/convert/from_template_literal.mjs +2 -3
  408. package/node_modules/typebox/build/value/convert/from_type.mjs +19 -21
  409. package/node_modules/typebox/build/value/create/from_enum.mjs +2 -2
  410. package/node_modules/typebox/build/value/create/from_type.mjs +23 -31
  411. package/node_modules/typebox/build/value/default/from_object.mjs +1 -1
  412. package/node_modules/typebox/build/value/default/from_type.mjs +8 -10
  413. package/node_modules/typebox/build/value/index.d.mts +0 -1
  414. package/node_modules/typebox/build/value/index.mjs +0 -1
  415. package/node_modules/typebox/build/value/repair/from_enum.mjs +2 -3
  416. package/node_modules/typebox/build/value/repair/from_type.mjs +24 -22
  417. package/node_modules/typebox/build/value/shared/union_priority_sort.d.mts +6 -2
  418. package/node_modules/typebox/build/value/shared/union_priority_sort.mjs +62 -26
  419. package/node_modules/typebox/build/value/value.d.mts +0 -1
  420. package/node_modules/typebox/build/value/value.mjs +0 -1
  421. package/node_modules/typebox/package.json +25 -25
  422. package/node_modules/typebox/readme.md +97 -80
  423. package/node_modules/undici-types/agent.d.ts +0 -2
  424. package/node_modules/undici-types/client.d.ts +25 -19
  425. package/node_modules/undici-types/dispatcher.d.ts +7 -33
  426. package/node_modules/undici-types/dispatcher1-wrapper.d.ts +7 -0
  427. package/node_modules/undici-types/fetch.d.ts +24 -4
  428. package/node_modules/undici-types/h2c-client.d.ts +6 -6
  429. package/node_modules/undici-types/handlers.d.ts +1 -2
  430. package/node_modules/undici-types/header.d.ts +5 -0
  431. package/node_modules/undici-types/index.d.ts +3 -1
  432. package/node_modules/undici-types/interceptors.d.ts +1 -1
  433. package/node_modules/undici-types/package.json +1 -1
  434. package/node_modules/undici-types/pool.d.ts +0 -2
  435. package/node_modules/undici-types/proxy-agent.d.ts +2 -2
  436. package/node_modules/undici-types/round-robin-pool.d.ts +0 -2
  437. package/node_modules/undici-types/snapshot-agent.d.ts +4 -0
  438. package/node_modules/undici-types/socks5-proxy-agent.d.ts +2 -2
  439. package/node_modules/undici-types/webidl.d.ts +0 -1
  440. package/npm-shrinkwrap.json +55 -56
  441. package/openclaw.plugin.json +46 -0
  442. package/package.json +6 -6
  443. package/dist/accounts.runtime-CgWgzjLX.js +0 -2
  444. package/dist/action-runtime.runtime-BQrVgSOq.js +0 -2
  445. package/dist/actions.runtime-Dl6AfO_g.js +0 -2
  446. package/dist/errors-CZtmv-h0.js +0 -107
  447. package/dist/outbound-adapter-BHUtpXz0.js +0 -188
  448. package/dist/send.runtime-a-O4PP2B.js +0 -2
  449. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/LICENSE +0 -21
  450. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/README.md +0 -15
  451. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/assert/strict.d.ts +0 -59
  452. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/assert.d.ts +0 -950
  453. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/async_hooks.d.ts +0 -711
  454. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/buffer.buffer.d.ts +0 -466
  455. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/buffer.d.ts +0 -1765
  456. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/child_process.d.ts +0 -1366
  457. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/cluster.d.ts +0 -432
  458. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/compatibility/iterators.d.ts +0 -21
  459. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/console.d.ts +0 -93
  460. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/constants.d.ts +0 -14
  461. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/crypto.d.ts +0 -4058
  462. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/dgram.d.ts +0 -537
  463. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/diagnostics_channel.d.ts +0 -552
  464. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/dns/promises.d.ts +0 -497
  465. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/dns.d.ts +0 -876
  466. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/domain.d.ts +0 -150
  467. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/events.d.ts +0 -1008
  468. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/fs/promises.d.ts +0 -1468
  469. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/fs.d.ts +0 -4780
  470. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/globals.d.ts +0 -150
  471. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/globals.typedarray.d.ts +0 -101
  472. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/http.d.ts +0 -2147
  473. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/http2.d.ts +0 -2485
  474. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/https.d.ts +0 -400
  475. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/index.d.ts +0 -117
  476. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/inspector/promises.d.ts +0 -35
  477. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/inspector.d.ts +0 -264
  478. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/inspector.generated.d.ts +0 -4406
  479. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/module.d.ts +0 -755
  480. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/net.d.ts +0 -970
  481. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/os.d.ts +0 -498
  482. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/package.json +0 -155
  483. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/path/posix.d.ts +0 -8
  484. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/path/win32.d.ts +0 -8
  485. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/path.d.ts +0 -178
  486. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/perf_hooks.d.ts +0 -612
  487. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/process.d.ts +0 -2204
  488. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/punycode.d.ts +0 -89
  489. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/querystring.d.ts +0 -139
  490. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/quic.d.ts +0 -897
  491. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/readline/promises.d.ts +0 -158
  492. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/readline.d.ts +0 -507
  493. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/repl.d.ts +0 -420
  494. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/sea.d.ts +0 -47
  495. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/sqlite.d.ts +0 -1068
  496. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/stream/consumers.d.ts +0 -114
  497. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/stream/iter.d.ts +0 -301
  498. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/stream/promises.d.ts +0 -211
  499. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/stream/web.d.ts +0 -300
  500. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/stream.d.ts +0 -1774
  501. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/string_decoder.d.ts +0 -27
  502. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/test/reporters.d.ts +0 -59
  503. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/test.d.ts +0 -2279
  504. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/timers/promises.d.ts +0 -93
  505. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/timers.d.ts +0 -149
  506. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/tls.d.ts +0 -1193
  507. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/trace_events.d.ts +0 -103
  508. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +0 -462
  509. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/ts5.6/compatibility/float16array.d.ts +0 -71
  510. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +0 -36
  511. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/ts5.6/index.d.ts +0 -119
  512. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/ts5.7/compatibility/float16array.d.ts +0 -72
  513. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/ts5.7/index.d.ts +0 -119
  514. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/tty.d.ts +0 -225
  515. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/url.d.ts +0 -556
  516. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/util/types.d.ts +0 -558
  517. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/util.d.ts +0 -1677
  518. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/v8.d.ts +0 -980
  519. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/vm.d.ts +0 -1136
  520. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/wasi.d.ts +0 -131
  521. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/abortcontroller.d.ts +0 -59
  522. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/blob.d.ts +0 -23
  523. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/console.d.ts +0 -9
  524. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/crypto.d.ts +0 -39
  525. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/domexception.d.ts +0 -68
  526. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/encoding.d.ts +0 -11
  527. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/events.d.ts +0 -106
  528. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/fetch.d.ts +0 -69
  529. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/importmeta.d.ts +0 -13
  530. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/messaging.d.ts +0 -23
  531. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/navigator.d.ts +0 -25
  532. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/performance.d.ts +0 -45
  533. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/storage.d.ts +0 -24
  534. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/streams.d.ts +0 -115
  535. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/timers.d.ts +0 -44
  536. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/url.d.ts +0 -24
  537. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/worker_threads.d.ts +0 -671
  538. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/zlib/iter.d.ts +0 -131
  539. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/zlib.d.ts +0 -589
  540. package/node_modules/@types/node/compatibility/iterators.d.ts +0 -21
  541. package/node_modules/@types/ws/node_modules/@types/node/LICENSE +0 -21
  542. package/node_modules/@types/ws/node_modules/@types/node/README.md +0 -15
  543. package/node_modules/@types/ws/node_modules/@types/node/assert/strict.d.ts +0 -59
  544. package/node_modules/@types/ws/node_modules/@types/node/assert.d.ts +0 -950
  545. package/node_modules/@types/ws/node_modules/@types/node/async_hooks.d.ts +0 -711
  546. package/node_modules/@types/ws/node_modules/@types/node/buffer.buffer.d.ts +0 -466
  547. package/node_modules/@types/ws/node_modules/@types/node/buffer.d.ts +0 -1765
  548. package/node_modules/@types/ws/node_modules/@types/node/child_process.d.ts +0 -1366
  549. package/node_modules/@types/ws/node_modules/@types/node/cluster.d.ts +0 -432
  550. package/node_modules/@types/ws/node_modules/@types/node/compatibility/iterators.d.ts +0 -21
  551. package/node_modules/@types/ws/node_modules/@types/node/console.d.ts +0 -93
  552. package/node_modules/@types/ws/node_modules/@types/node/constants.d.ts +0 -14
  553. package/node_modules/@types/ws/node_modules/@types/node/crypto.d.ts +0 -4058
  554. package/node_modules/@types/ws/node_modules/@types/node/dgram.d.ts +0 -537
  555. package/node_modules/@types/ws/node_modules/@types/node/diagnostics_channel.d.ts +0 -552
  556. package/node_modules/@types/ws/node_modules/@types/node/dns/promises.d.ts +0 -497
  557. package/node_modules/@types/ws/node_modules/@types/node/dns.d.ts +0 -876
  558. package/node_modules/@types/ws/node_modules/@types/node/domain.d.ts +0 -150
  559. package/node_modules/@types/ws/node_modules/@types/node/events.d.ts +0 -1008
  560. package/node_modules/@types/ws/node_modules/@types/node/fs/promises.d.ts +0 -1468
  561. package/node_modules/@types/ws/node_modules/@types/node/fs.d.ts +0 -4780
  562. package/node_modules/@types/ws/node_modules/@types/node/globals.d.ts +0 -150
  563. package/node_modules/@types/ws/node_modules/@types/node/globals.typedarray.d.ts +0 -101
  564. package/node_modules/@types/ws/node_modules/@types/node/http.d.ts +0 -2147
  565. package/node_modules/@types/ws/node_modules/@types/node/http2.d.ts +0 -2485
  566. package/node_modules/@types/ws/node_modules/@types/node/https.d.ts +0 -400
  567. package/node_modules/@types/ws/node_modules/@types/node/index.d.ts +0 -117
  568. package/node_modules/@types/ws/node_modules/@types/node/inspector/promises.d.ts +0 -35
  569. package/node_modules/@types/ws/node_modules/@types/node/inspector.d.ts +0 -264
  570. package/node_modules/@types/ws/node_modules/@types/node/inspector.generated.d.ts +0 -4406
  571. package/node_modules/@types/ws/node_modules/@types/node/module.d.ts +0 -755
  572. package/node_modules/@types/ws/node_modules/@types/node/net.d.ts +0 -970
  573. package/node_modules/@types/ws/node_modules/@types/node/os.d.ts +0 -498
  574. package/node_modules/@types/ws/node_modules/@types/node/package.json +0 -155
  575. package/node_modules/@types/ws/node_modules/@types/node/path/posix.d.ts +0 -8
  576. package/node_modules/@types/ws/node_modules/@types/node/path/win32.d.ts +0 -8
  577. package/node_modules/@types/ws/node_modules/@types/node/path.d.ts +0 -178
  578. package/node_modules/@types/ws/node_modules/@types/node/perf_hooks.d.ts +0 -612
  579. package/node_modules/@types/ws/node_modules/@types/node/process.d.ts +0 -2204
  580. package/node_modules/@types/ws/node_modules/@types/node/punycode.d.ts +0 -89
  581. package/node_modules/@types/ws/node_modules/@types/node/querystring.d.ts +0 -139
  582. package/node_modules/@types/ws/node_modules/@types/node/quic.d.ts +0 -897
  583. package/node_modules/@types/ws/node_modules/@types/node/readline/promises.d.ts +0 -158
  584. package/node_modules/@types/ws/node_modules/@types/node/readline.d.ts +0 -507
  585. package/node_modules/@types/ws/node_modules/@types/node/repl.d.ts +0 -420
  586. package/node_modules/@types/ws/node_modules/@types/node/sea.d.ts +0 -47
  587. package/node_modules/@types/ws/node_modules/@types/node/sqlite.d.ts +0 -1068
  588. package/node_modules/@types/ws/node_modules/@types/node/stream/consumers.d.ts +0 -114
  589. package/node_modules/@types/ws/node_modules/@types/node/stream/iter.d.ts +0 -301
  590. package/node_modules/@types/ws/node_modules/@types/node/stream/promises.d.ts +0 -211
  591. package/node_modules/@types/ws/node_modules/@types/node/stream/web.d.ts +0 -300
  592. package/node_modules/@types/ws/node_modules/@types/node/stream.d.ts +0 -1774
  593. package/node_modules/@types/ws/node_modules/@types/node/string_decoder.d.ts +0 -27
  594. package/node_modules/@types/ws/node_modules/@types/node/test/reporters.d.ts +0 -59
  595. package/node_modules/@types/ws/node_modules/@types/node/test.d.ts +0 -2279
  596. package/node_modules/@types/ws/node_modules/@types/node/timers/promises.d.ts +0 -93
  597. package/node_modules/@types/ws/node_modules/@types/node/timers.d.ts +0 -149
  598. package/node_modules/@types/ws/node_modules/@types/node/tls.d.ts +0 -1193
  599. package/node_modules/@types/ws/node_modules/@types/node/trace_events.d.ts +0 -103
  600. package/node_modules/@types/ws/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +0 -462
  601. package/node_modules/@types/ws/node_modules/@types/node/ts5.6/compatibility/float16array.d.ts +0 -71
  602. package/node_modules/@types/ws/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +0 -36
  603. package/node_modules/@types/ws/node_modules/@types/node/ts5.6/index.d.ts +0 -119
  604. package/node_modules/@types/ws/node_modules/@types/node/ts5.7/compatibility/float16array.d.ts +0 -72
  605. package/node_modules/@types/ws/node_modules/@types/node/ts5.7/index.d.ts +0 -119
  606. package/node_modules/@types/ws/node_modules/@types/node/tty.d.ts +0 -225
  607. package/node_modules/@types/ws/node_modules/@types/node/url.d.ts +0 -556
  608. package/node_modules/@types/ws/node_modules/@types/node/util/types.d.ts +0 -558
  609. package/node_modules/@types/ws/node_modules/@types/node/util.d.ts +0 -1677
  610. package/node_modules/@types/ws/node_modules/@types/node/v8.d.ts +0 -980
  611. package/node_modules/@types/ws/node_modules/@types/node/vm.d.ts +0 -1136
  612. package/node_modules/@types/ws/node_modules/@types/node/wasi.d.ts +0 -131
  613. package/node_modules/@types/ws/node_modules/@types/node/web-globals/abortcontroller.d.ts +0 -59
  614. package/node_modules/@types/ws/node_modules/@types/node/web-globals/blob.d.ts +0 -23
  615. package/node_modules/@types/ws/node_modules/@types/node/web-globals/console.d.ts +0 -9
  616. package/node_modules/@types/ws/node_modules/@types/node/web-globals/crypto.d.ts +0 -39
  617. package/node_modules/@types/ws/node_modules/@types/node/web-globals/domexception.d.ts +0 -68
  618. package/node_modules/@types/ws/node_modules/@types/node/web-globals/encoding.d.ts +0 -11
  619. package/node_modules/@types/ws/node_modules/@types/node/web-globals/events.d.ts +0 -106
  620. package/node_modules/@types/ws/node_modules/@types/node/web-globals/fetch.d.ts +0 -69
  621. package/node_modules/@types/ws/node_modules/@types/node/web-globals/importmeta.d.ts +0 -13
  622. package/node_modules/@types/ws/node_modules/@types/node/web-globals/messaging.d.ts +0 -23
  623. package/node_modules/@types/ws/node_modules/@types/node/web-globals/navigator.d.ts +0 -25
  624. package/node_modules/@types/ws/node_modules/@types/node/web-globals/performance.d.ts +0 -45
  625. package/node_modules/@types/ws/node_modules/@types/node/web-globals/storage.d.ts +0 -24
  626. package/node_modules/@types/ws/node_modules/@types/node/web-globals/streams.d.ts +0 -115
  627. package/node_modules/@types/ws/node_modules/@types/node/web-globals/timers.d.ts +0 -44
  628. package/node_modules/@types/ws/node_modules/@types/node/web-globals/url.d.ts +0 -24
  629. package/node_modules/@types/ws/node_modules/@types/node/worker_threads.d.ts +0 -671
  630. package/node_modules/@types/ws/node_modules/@types/node/zlib/iter.d.ts +0 -131
  631. package/node_modules/@types/ws/node_modules/@types/node/zlib.d.ts +0 -589
  632. package/node_modules/typebox/build/schema/engine/_guard.d.mts +0 -6
  633. package/node_modules/typebox/build/schema/engine/_guard.mjs +0 -26
  634. package/node_modules/typebox/build/schema/types/_guard.d.mts +0 -10
  635. package/node_modules/typebox/build/schema/types/_guard.mjs +0 -16
  636. package/node_modules/typebox/build/type/action/_optional.d.mts +0 -19
  637. package/node_modules/typebox/build/type/action/_optional.mjs +0 -40
  638. package/node_modules/typebox/build/type/action/_readonly.d.mts +0 -19
  639. package/node_modules/typebox/build/type/action/_readonly.mjs +0 -40
  640. package/node_modules/typebox/build/type/action/awaited.d.mts +0 -15
  641. package/node_modules/typebox/build/type/action/awaited.mjs +0 -15
  642. package/node_modules/typebox/build/type/action/options.d.mts +0 -11
  643. package/node_modules/typebox/build/type/action/options.mjs +0 -11
  644. package/node_modules/typebox/build/type/engine/awaited/instantiate.d.mts +0 -11
  645. package/node_modules/typebox/build/type/engine/awaited/instantiate.mjs +0 -20
  646. package/node_modules/typebox/build/type/engine/enum/enum_to_union.d.mts +0 -14
  647. package/node_modules/typebox/build/type/engine/enum/enum_to_union.mjs +0 -24
  648. package/node_modules/typebox/build/type/engine/options/index.d.mts +0 -1
  649. package/node_modules/typebox/build/type/engine/options/index.mjs +0 -1
  650. package/node_modules/typebox/build/type/engine/options/instantiate.d.mts +0 -8
  651. package/node_modules/typebox/build/type/extends/async_iterator.d.mts +0 -7
  652. package/node_modules/typebox/build/type/extends/async_iterator.mjs +0 -9
  653. package/node_modules/typebox/build/type/extends/iterator.d.mts +0 -7
  654. package/node_modules/typebox/build/type/extends/iterator.mjs +0 -9
  655. package/node_modules/typebox/build/type/extends/promise.d.mts +0 -7
  656. package/node_modules/typebox/build/type/extends/promise.mjs +0 -9
  657. package/node_modules/typebox/build/type/types/async_iterator.d.mts +0 -20
  658. package/node_modules/typebox/build/type/types/async_iterator.mjs +0 -28
  659. package/node_modules/typebox/build/type/types/base.d.mts +0 -50
  660. package/node_modules/typebox/build/type/types/base.mjs +0 -84
  661. package/node_modules/typebox/build/type/types/iterator.d.mts +0 -20
  662. package/node_modules/typebox/build/type/types/iterator.mjs +0 -28
  663. package/node_modules/typebox/build/type/types/promise.d.mts +0 -21
  664. package/node_modules/typebox/build/type/types/promise.mjs +0 -29
  665. package/node_modules/typebox/build/value/clean/from_base.d.mts +0 -2
  666. package/node_modules/typebox/build/value/clean/from_base.mjs +0 -4
  667. package/node_modules/typebox/build/value/convert/from_base.d.mts +0 -2
  668. package/node_modules/typebox/build/value/convert/from_base.mjs +0 -4
  669. package/node_modules/typebox/build/value/create/from_async_iterator.d.mts +0 -2
  670. package/node_modules/typebox/build/value/create/from_async_iterator.mjs +0 -5
  671. package/node_modules/typebox/build/value/create/from_base.d.mts +0 -2
  672. package/node_modules/typebox/build/value/create/from_base.mjs +0 -4
  673. package/node_modules/typebox/build/value/create/from_iterator.d.mts +0 -2
  674. package/node_modules/typebox/build/value/create/from_iterator.mjs +0 -5
  675. package/node_modules/typebox/build/value/create/from_promise.d.mts +0 -2
  676. package/node_modules/typebox/build/value/create/from_promise.mjs +0 -5
  677. package/node_modules/typebox/build/value/default/from_base.d.mts +0 -2
  678. package/node_modules/typebox/build/value/default/from_base.mjs +0 -5
  679. package/node_modules/typebox/build/value/mutate/error.d.mts +0 -3
  680. package/node_modules/typebox/build/value/mutate/error.mjs +0 -6
  681. package/node_modules/typebox/build/value/mutate/from_array.d.mts +0 -2
  682. package/node_modules/typebox/build/value/mutate/from_array.mjs +0 -16
  683. package/node_modules/typebox/build/value/mutate/from_object.d.mts +0 -2
  684. package/node_modules/typebox/build/value/mutate/from_object.mjs +0 -40
  685. package/node_modules/typebox/build/value/mutate/from_unknown.d.mts +0 -2
  686. package/node_modules/typebox/build/value/mutate/from_unknown.mjs +0 -7
  687. package/node_modules/typebox/build/value/mutate/from_value.d.mts +0 -2
  688. package/node_modules/typebox/build/value/mutate/from_value.mjs +0 -12
  689. package/node_modules/typebox/build/value/mutate/index.d.mts +0 -1
  690. package/node_modules/typebox/build/value/mutate/index.mjs +0 -1
  691. package/node_modules/typebox/build/value/mutate/mutate.d.mts +0 -11
  692. package/node_modules/typebox/build/value/mutate/mutate.mjs +0 -41
  693. package/node_modules/typebox/build/value/repair/from_base.d.mts +0 -2
  694. package/node_modules/typebox/build/value/repair/from_base.mjs +0 -8
  695. /package/node_modules/typebox/build/type/engine/{awaited → with}/index.d.mts +0 -0
  696. /package/node_modules/typebox/build/type/engine/{awaited → with}/index.mjs +0 -0
@@ -1,22 +1,23 @@
1
- import { l as resolveSlackReplyToMode } from "./accounts-BPCiCe8y.js";
1
+ import { u as resolveSlackReplyToMode } from "./accounts-BOJJiHSr.js";
2
2
  import { r as parseSlackTarget } from "./target-parsing-3jYH8LfB.js";
3
3
  import "./targets-Dll4NJgs.js";
4
- import { a as SLACK_TEXT_LIMIT, d as normalizeSlackAllowOwnerEntry, p as resolveSlackAllowListMatch, u as normalizeAllowListLower, v as truncateSlackText } from "./reply-blocks-CfJqf7eq.js";
5
- import { n as isSlackInteractiveRepliesEnabled, t as compileSlackInteractiveReplies } from "./interactive-replies-D-22gTp3.js";
4
+ import { a as SLACK_TEXT_LIMIT, b as truncateSlackText, c as formatSlackError, d as normalizeAllowListLower, f as normalizeSlackAllowOwnerEntry, m as resolveSlackAllowListMatch } from "./reply-blocks-BGQ6zSqM.js";
5
+ import { n as isSlackInteractiveRepliesEnabled, t as compileSlackInteractiveReplies } from "./interactive-replies-CXpT-vA_.js";
6
6
  import { n as resolveSlackNativeStreaming, r as resolveSlackStreamingMode, t as mapStreamingModeToSlackLegacyDraftStreamMode } from "./streaming-compat-DjlgH-Be.js";
7
- import { a as hasSlackThreadParticipationWithPersistence, c as normalizeSlackOutboundText, o as recordSlackThreadParticipation, t as sendMessageSlack } from "./send-Dg6U9K7_.js";
8
- import { _ as resolveSlackThreadStarter, b as buildSlackEditTextPayload, f as removeSlackReaction, g as resolveSlackThreadHistory, l as reactSlackMessage, r as editSlackMessage, t as deleteSlackMessage, y as formatSlackFileReference } from "./actions-CqRHPciJ.js";
9
- import { t as formatSlackError } from "./errors-CZtmv-h0.js";
10
- import { C as stripSlackMentionsForCommandDetection, _ as readSessionUpdatedAt, b as resolveStorePath, c as recordInboundSession, d as resolveSlackCommandIngress, f as resolveSlackEffectiveAllowFrom, g as resolveSlackChatType, h as normalizeSlackChannelType, i as authorizeSlackDirectMessage, l as resolveConversationLabel$1, m as parseSlackAssistantThreadMetadata, p as buildSlackAssistantThreadMetadata, r as resolveSlackRoomContextHints, s as escapeSlackMrkdwn, u as authorizeSlackBotRoomMessage, v as resolveChannelContextVisibilityMode, x as updateLastRoute, y as resolveChannelResetConfig } from "./provider-BdoeWKr8.js";
11
- import { n as resolveSlackChannelConfig } from "./policy-DAE6BTN3.js";
12
- import { a as resolveDeliveredSlackReplyThreadTs, i as readSlackReplyBlocks, n as deliverReplies, o as resolveSlackThreadTs, s as emitSlackMessageSentHooks, t as createSlackReplyDeliveryPlan } from "./replies-D_G-EPr8.js";
13
- import { asOptionalRecord, normalizeLowercaseStringOrEmpty, normalizeOptionalLowercaseString, normalizeOptionalString, readStringValue } from "openclaw/plugin-sdk/string-coerce-runtime";
7
+ import { c as recordSlackThreadParticipation, r as sendMessageSlack, s as hasSlackThreadParticipationWithPersistence } from "./send-DKDXoeoV.js";
8
+ import { C as buildSlackEditTextPayload, S as formatSlackFileReference, _ as resolveSlackThreadHistory, b as resolveSlackBlocksText, f as removeSlackReaction, l as reactSlackMessage, r as editSlackMessage, t as deleteSlackMessage, v as resolveSlackThreadStarter, y as chooseSlackPrimaryText } from "./actions-DMpDmKEA.js";
9
+ import { n as normalizeSlackOutboundText } from "./format-YCNoNkM2.js";
10
+ import { C as stripSlackMentionsForCommandDetection, _ as readSessionUpdatedAt, b as resolveStorePath, c as recordInboundSession, d as resolveSlackCommandIngress, f as resolveSlackEffectiveAllowFrom, g as resolveSlackChatType, h as normalizeSlackChannelType, i as authorizeSlackDirectMessage, l as resolveConversationLabel$1, m as parseSlackAssistantThreadMetadata, p as buildSlackAssistantThreadMetadata, r as resolveSlackRoomContextHints, s as escapeSlackMrkdwn, u as authorizeSlackBotRoomMessage, v as resolveChannelContextVisibilityMode, x as updateLastRoute, y as resolveChannelResetConfig } from "./provider-Cot8h818.js";
11
+ import { n as resolveSlackChannelConfig } from "./policy-Dj-puVPb.js";
12
+ import { a as resolveDeliveredSlackReplyThreadTs, i as readSlackReplyBlocks, n as deliverReplies, o as resolveSlackThreadTs, s as emitSlackMessageSentHooks, t as createSlackReplyDeliveryPlan } from "./replies-Bbx6pG_B.js";
13
+ import { asOptionalRecord, normalizeLowercaseStringOrEmpty, normalizeOptionalLowercaseString, normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
14
14
  import { resolveAgentRoute, resolveInboundLastRouteSessionKey, resolveThreadSessionKeys } from "openclaw/plugin-sdk/routing";
15
15
  import { buildChannelProgressDraftLine, buildChannelProgressDraftLineForEntry, createChannelMessageReplyPipeline, createChannelProgressDraftGate, createDraftStreamLoop, defineFinalizableLivePreviewAdapter, deliverWithFinalizableLivePreviewAdapter, formatChannelProgressDraftText, isChannelProgressDraftWorkToolName, mergeChannelProgressDraftLine, resolveAgentOutboundIdentity, resolveChannelMessageSourceReplyDeliveryMode, resolveChannelProgressDraftConfig, resolveChannelProgressDraftMaxLineChars, resolveChannelProgressDraftMaxLines, resolveChannelProgressDraftRender, resolveChannelStreamingBlockEnabled, resolveChannelStreamingNativeTransport, resolveChannelStreamingPreviewToolProgress, resolveChannelStreamingSuppressDefaultToolProgressMessages } from "openclaw/plugin-sdk/channel-outbound";
16
16
  import { createLazyRuntimeModule } from "openclaw/plugin-sdk/lazy-runtime";
17
+ import { danger, logVerbose, shouldLogVerbose, sleep } from "openclaw/plugin-sdk/runtime-env";
17
18
  import { stripReasoningTagsFromText } from "openclaw/plugin-sdk/text-chunking";
19
+ import { truncateUtf16Safe } from "openclaw/plugin-sdk/text-utility-runtime";
18
20
  import { createHash } from "node:crypto";
19
- import { danger, logVerbose, shouldLogVerbose, sleep } from "openclaw/plugin-sdk/runtime-env";
20
21
  import { formatErrorMessage } from "openclaw/plugin-sdk/error-runtime";
21
22
  import { asDateTimestampMs, asFiniteNumberInRange, parseStrictFiniteNumber, resolveExpiresAtMsFromDurationMs } from "openclaw/plugin-sdk/number-runtime";
22
23
  import { buildTtsSupplementMediaPayload, getReplyPayloadTtsSupplement, resolveSendableOutboundReplyParts } from "openclaw/plugin-sdk/reply-payload";
@@ -336,14 +337,22 @@ var SlackStreamNotDeliveredError = class extends Error {
336
337
  * The first chunk of text can optionally be included via `text`.
337
338
  */
338
339
  async function startSlackStream(params) {
339
- const { client, channel, threadTs, text, chunks, taskDisplayMode, teamId, userId } = params;
340
+ const { client, channel, threadTs, text, chunks, taskDisplayMode, teamId, userId, identity } = params;
341
+ const identityPayload = identity?.iconUrl ? {
342
+ ...identity.username ? { username: identity.username } : {},
343
+ icon_url: identity.iconUrl
344
+ } : identity?.iconEmoji ? {
345
+ ...identity.username ? { username: identity.username } : {},
346
+ icon_emoji: identity.iconEmoji
347
+ } : identity?.username ? { username: identity.username } : {};
340
348
  logVerbose(`slack-stream: starting stream in ${channel} thread=${threadTs}${teamId ? ` team=${teamId}` : ""}${userId ? ` user=${userId}` : ""}`);
341
349
  const streamer = client.chatStream({
342
350
  channel,
343
351
  thread_ts: threadTs,
344
352
  ...taskDisplayMode ? { task_display_mode: taskDisplayMode } : {},
345
353
  ...teamId ? { recipient_team_id: teamId } : {},
346
- ...userId ? { recipient_user_id: userId } : {}
354
+ ...userId ? { recipient_user_id: userId } : {},
355
+ ...identityPayload
347
356
  });
348
357
  const session = {
349
358
  streamer,
@@ -441,9 +450,10 @@ async function stopSlackStream(params) {
441
450
  const messageId = stopResponse?.ts ?? stopResponse?.message?.ts;
442
451
  return messageId ? { messageId } : {};
443
452
  } catch (err) {
444
- if (isBenignSlackFinalizeError(err)) {
445
- const code = extractSlackErrorCode(err) ?? "unknown";
446
- if (session.pendingText) throw new SlackStreamNotDeliveredError(session.pendingText, code);
453
+ const code = extractSlackErrorCode(err) ?? "unknown";
454
+ const benignFinalizeError = isBenignSlackFinalizeError(err);
455
+ if (session.pendingText && (benignFinalizeError || code === "missing_scope")) throw new SlackStreamNotDeliveredError(session.pendingText, code);
456
+ if (benignFinalizeError) {
447
457
  if (session.delivered) {
448
458
  logVerbose(`slack-stream: finalize rejected by Slack (${code}); prior appends delivered, treating stream as stopped`);
449
459
  return {};
@@ -460,7 +470,7 @@ async function stopSlackStream(params) {
460
470
  * {@link SlackStreamNotDeliveredError}) or, if prior appends already
461
471
  * delivered text, the error is logged verbosely and swallowed.
462
472
  */
463
- const BENIGN_SLACK_FINALIZE_ERROR_CODES = new Set([
473
+ const BENIGN_SLACK_FINALIZE_ERROR_CODES = /* @__PURE__ */ new Set([
464
474
  "user_not_found",
465
475
  "team_not_found",
466
476
  "missing_recipient_user_id",
@@ -604,33 +614,15 @@ function resolveSlackTimestampMs(ts) {
604
614
  }
605
615
  //#endregion
606
616
  //#region extensions/slack/src/monitor/message-handler/dispatch.ts
607
- const UNICODE_TO_SLACK = {
608
- "👀": "eyes",
609
- "🤔": "thinking_face",
610
- "🔥": "fire",
611
- "👨‍💻": "male-technologist",
612
- "👨💻": "male-technologist",
613
- "👩‍💻": "female-technologist",
614
- "⚡": "zap",
615
- "🌐": "globe_with_meridians",
616
- "✅": "white_check_mark",
617
- "👍": "thumbsup",
618
- "❌": "x",
619
- "😱": "scream",
620
- "🥱": "yawning_face",
621
- "😨": "fearful",
622
- "⏳": "hourglass_flowing_sand",
623
- "⚠️": "warning",
624
- "✍": "writing_hand",
625
- "🗜️": "compression",
626
- "🗜": "compression",
627
- "🧠": "brain",
628
- "🛠️": "hammer_and_wrench",
629
- "💻": "computer"
630
- };
631
617
  const SLACK_REASONING_TAG_RE = /<\s*(\/?)\s*(?:(?:antml:|mm:)?(?:think(?:ing)?|thought)|antthinking)\b[^<>]*>/gi;
632
618
  const SLACK_REASONING_LABEL_PREFIX_RE = /^\s*(?:>\s*)?Reasoning:\s*/iu;
633
619
  const SLACK_THINKING_LABEL_PREFIX_RE = /^\s*(?:>\s*)?Thinking\.{0,3}(?=\s*(?:\n|_))/iu;
620
+ const SLACK_THREAD_LOADING_MESSAGES = [
621
+ "Reading the thread...",
622
+ "Checking context...",
623
+ "Working through the request...",
624
+ "Putting it all together..."
625
+ ];
634
626
  function resolveSlackMessageTimestampMs(message) {
635
627
  return resolveSlackTimestampMs(message.event_ts ?? message.ts);
636
628
  }
@@ -650,12 +642,6 @@ function resolveSlackBotLoopProtection(prepared) {
650
642
  nowMs: resolveSlackMessageTimestampMs(prepared.message)
651
643
  };
652
644
  }
653
- function toSlackEmojiName(emoji) {
654
- let trimmed = emoji.trim();
655
- while (trimmed.startsWith(":")) trimmed = trimmed.slice(1);
656
- while (trimmed.endsWith(":")) trimmed = trimmed.slice(0, -1);
657
- return UNICODE_TO_SLACK[trimmed] ?? trimmed;
658
- }
659
645
  function isSlackStreamingEnabled(params) {
660
646
  if (params.mode === "partial") return params.nativeStreaming;
661
647
  if (params.mode === "progress") return params.nativeStreaming && params.nativeProgressTaskCards === true;
@@ -869,10 +855,10 @@ async function dispatchPreparedSlackMessage(prepared) {
869
855
  const messageTs = message.ts ?? message.event_ts;
870
856
  const incomingThreadTs = message.thread_ts;
871
857
  let didSetStatus = false;
872
- const statusReactionsEnabled = Boolean(prepared.ackReactionPromise) && Boolean(reactionMessageTs) && cfg.messages?.statusReactions?.enabled !== false;
858
+ const statusReactionsEnabled = prepared.ctxPayload.InboundEventKind !== "room_event" && Boolean(prepared.ackReactionPromise) && Boolean(reactionMessageTs) && cfg.messages?.statusReactions?.enabled === true;
873
859
  const slackStatusAdapter = {
874
860
  setReaction: async (emoji) => {
875
- await reactSlackMessage(message.channel, reactionMessageTs ?? "", toSlackEmojiName(emoji), {
861
+ await reactSlackMessage(message.channel, reactionMessageTs ?? "", emoji, {
876
862
  token: ctx.botToken,
877
863
  client: ctx.app.client
878
864
  }).catch((err) => {
@@ -881,7 +867,7 @@ async function dispatchPreparedSlackMessage(prepared) {
881
867
  });
882
868
  },
883
869
  removeReaction: async (emoji) => {
884
- await removeSlackReaction(message.channel, reactionMessageTs ?? "", toSlackEmojiName(emoji), {
870
+ await removeSlackReaction(message.channel, reactionMessageTs ?? "", emoji, {
885
871
  token: ctx.botToken,
886
872
  client: ctx.app.client
887
873
  }).catch((err) => {
@@ -938,7 +924,8 @@ async function dispatchPreparedSlackMessage(prepared) {
938
924
  await ctx.setSlackThreadStatus({
939
925
  channelId: message.channel,
940
926
  threadTs: statusThreadTs,
941
- status: "is typing..."
927
+ status: "is typing...",
928
+ loadingMessages: SLACK_THREAD_LOADING_MESSAGES
942
929
  });
943
930
  if (typingReaction && message.ts) await reactSlackMessage(message.channel, message.ts, typingReaction, {
944
931
  token: ctx.botToken,
@@ -989,15 +976,16 @@ async function dispatchPreparedSlackMessage(prepared) {
989
976
  isThreadReply
990
977
  });
991
978
  const previewStreamingEnabled = !sourceRepliesAreToolOnly && shouldEnableSlackPreviewStreaming({ mode: slackStreaming.mode });
979
+ const hasSlackCustomIdentity = Boolean(slackIdentity?.username || slackIdentity?.iconUrl || slackIdentity?.iconEmoji);
992
980
  const useStreaming = shouldUseStreaming({
993
- streamingEnabled: !slackIdentity && !sourceRepliesAreToolOnly && isSlackStreamingEnabled({
981
+ streamingEnabled: !sourceRepliesAreToolOnly && isSlackStreamingEnabled({
994
982
  mode: slackStreaming.mode,
995
983
  nativeStreaming: slackStreaming.nativeStreaming,
996
984
  nativeProgressTaskCards: resolveSlackNativeProgressTaskCards(account.config)
997
985
  }),
998
986
  threadTs: streamThreadHint
999
987
  });
1000
- const shouldUseDraftStream = shouldInitializeSlackDraftStream({
988
+ const shouldUseDraftStream = !hasSlackCustomIdentity && shouldInitializeSlackDraftStream({
1001
989
  previewStreamingEnabled,
1002
990
  useStreaming
1003
991
  });
@@ -1266,6 +1254,7 @@ async function dispatchPreparedSlackMessage(prepared) {
1266
1254
  channel: message.channel,
1267
1255
  threadTs: streamThreadTs,
1268
1256
  text,
1257
+ ...slackIdentity ? { identity: slackIdentity } : {},
1269
1258
  teamId: await resolveSlackStreamRecipientTeamId({
1270
1259
  client: ctx.app.client,
1271
1260
  token: ctx.botToken,
@@ -1646,6 +1635,7 @@ async function dispatchPreparedSlackMessage(prepared) {
1646
1635
  threadTs: streamThreadTs,
1647
1636
  chunks,
1648
1637
  taskDisplayMode: "plan",
1638
+ ...slackIdentity ? { identity: slackIdentity } : {},
1649
1639
  teamId: await resolveSlackStreamRecipientTeamId({
1650
1640
  client: ctx.app.client,
1651
1641
  token: ctx.botToken,
@@ -2031,7 +2021,7 @@ function toLintErrorObject(value, fallbackMessage) {
2031
2021
  const SLACK_MENTION_RESOLUTION_CONCURRENCY = 4;
2032
2022
  const SLACK_MENTION_RESOLUTION_MAX_LOOKUPS_PER_MESSAGE = 20;
2033
2023
  const SLACK_USER_MENTION_RE$1 = /<@([A-Z0-9]+)(?:\|[^>]+)?>/gi;
2034
- const loadSlackMediaModule$1 = createLazyRuntimeModule(() => import("./actions-CqRHPciJ.js").then((n) => n.h));
2024
+ const loadSlackMediaModule$1 = createLazyRuntimeModule(() => import("./actions-DMpDmKEA.js").then((n) => n.g));
2035
2025
  function collectUniqueSlackMentionIds$1(texts) {
2036
2026
  const seen = /* @__PURE__ */ new Set();
2037
2027
  const mentionIds = [];
@@ -2054,121 +2044,6 @@ function renderSlackUserMentions(text, renderedMentions) {
2054
2044
  return renderedMentions.get(userId) ?? full;
2055
2045
  });
2056
2046
  }
2057
- function readTextObject(value) {
2058
- if (!value || typeof value !== "object") return;
2059
- return normalizeOptionalString(readStringValue(value.text));
2060
- }
2061
- function renderSlackRichTextLeaf(element) {
2062
- switch (element.type) {
2063
- case "text": return readStringValue(element.text) ?? "";
2064
- case "link": return readStringValue(element.text) ?? readStringValue(element.url) ?? "";
2065
- case "user": {
2066
- const userId = readStringValue(element.user_id);
2067
- return userId ? `<@${userId}>` : "";
2068
- }
2069
- case "channel": {
2070
- const channelId = readStringValue(element.channel_id);
2071
- return channelId ? `<#${channelId}>` : "";
2072
- }
2073
- case "usergroup": {
2074
- const usergroupId = readStringValue(element.usergroup_id);
2075
- return usergroupId ? `<!subteam^${usergroupId}>` : "";
2076
- }
2077
- case "broadcast": {
2078
- const range = readStringValue(element.range);
2079
- return range ? `<!${range}>` : "";
2080
- }
2081
- case "emoji": {
2082
- const name = readStringValue(element.name);
2083
- return name ? `:${name}:` : "";
2084
- }
2085
- default: return "";
2086
- }
2087
- }
2088
- function renderSlackRichTextElements(elements) {
2089
- if (!Array.isArray(elements)) return "";
2090
- const parts = [];
2091
- for (const rawElement of elements) {
2092
- if (!rawElement || typeof rawElement !== "object") continue;
2093
- const element = rawElement;
2094
- switch (element.type) {
2095
- case "rich_text_section":
2096
- case "rich_text_preformatted":
2097
- case "rich_text_quote":
2098
- parts.push(renderSlackRichTextElements(element.elements));
2099
- break;
2100
- case "rich_text_list": {
2101
- const listParts = [];
2102
- if (Array.isArray(element.elements)) for (const child of element.elements) {
2103
- if (!child || typeof child !== "object") continue;
2104
- const rendered = renderSlackRichTextElements(child.elements);
2105
- if (rendered) listParts.push(rendered);
2106
- }
2107
- const listText = listParts.join("\n");
2108
- parts.push(listText);
2109
- break;
2110
- }
2111
- default:
2112
- parts.push(renderSlackRichTextLeaf(element));
2113
- break;
2114
- }
2115
- }
2116
- return parts.join("");
2117
- }
2118
- function readSlackBlockText(block) {
2119
- if (!block || typeof block !== "object") return;
2120
- const blockLike = block;
2121
- switch (blockLike.type) {
2122
- case "rich_text": return normalizeOptionalString(renderSlackRichTextElements(blockLike.elements));
2123
- case "section": {
2124
- const text = readTextObject(blockLike.text);
2125
- if (text) return text;
2126
- if (Array.isArray(blockLike.fields)) {
2127
- const fields = [];
2128
- for (const field of blockLike.fields) {
2129
- const fieldText = readTextObject(field);
2130
- if (fieldText) fields.push(fieldText);
2131
- }
2132
- return fields.length > 0 ? fields.join("\n") : void 0;
2133
- }
2134
- return;
2135
- }
2136
- case "header": return readTextObject(blockLike.text);
2137
- case "context": {
2138
- if (!Array.isArray(blockLike.elements)) return;
2139
- const parts = [];
2140
- for (const element of blockLike.elements) {
2141
- const text = readTextObject(element);
2142
- if (text) parts.push(text);
2143
- }
2144
- return parts.length > 0 ? parts.join(" ") : void 0;
2145
- }
2146
- case "image": return normalizeOptionalString(readStringValue(blockLike.alt_text)) ?? readTextObject(blockLike.title);
2147
- case "video": return readTextObject(blockLike.title) ?? normalizeOptionalString(readStringValue(blockLike.alt_text));
2148
- default: return;
2149
- }
2150
- }
2151
- function resolveSlackBlocksText(blocks) {
2152
- if (!blocks?.length) return;
2153
- const parts = [];
2154
- let hasRichText = false;
2155
- for (const block of blocks) {
2156
- if (block && typeof block === "object" && block.type === "rich_text") hasRichText = true;
2157
- const text = readSlackBlockText(block);
2158
- if (text) parts.push(text);
2159
- }
2160
- return parts.length > 0 ? {
2161
- text: parts.join("\n"),
2162
- hasRichText
2163
- } : void 0;
2164
- }
2165
- function chooseSlackPrimaryText(params) {
2166
- const { messageText, blocksText } = params;
2167
- if (!blocksText) return messageText;
2168
- if (!messageText) return blocksText.text;
2169
- if (blocksText.hasRichText && blocksText.text.length > messageText.length) return blocksText.text;
2170
- return blocksText.text.length > messageText.length && blocksText.text.startsWith(messageText) ? blocksText.text : messageText;
2171
- }
2172
2047
  function filterInheritedParentFiles(params) {
2173
2048
  const { files, isThreadReply, threadStarter } = params;
2174
2049
  if (!isThreadReply || !files?.length) return files;
@@ -2407,7 +2282,7 @@ function resolveSlackInitialAgentRoute(params) {
2407
2282
  });
2408
2283
  }
2409
2284
  function resolveSlackRoutingContext(params) {
2410
- const { ctx, account, message, isDirectMessage, isGroupDm, isRoom, isRoomish, seedTopLevelRoomThread, assistantThreadTs } = params;
2285
+ const { ctx, account, message, isDirectMessage, isGroupDm, isRoom, isRoomish, channelConfig, seedTopLevelRoomThread, assistantThreadTs } = params;
2411
2286
  let route = resolveSlackInitialAgentRoute({
2412
2287
  ctx,
2413
2288
  account,
@@ -2416,7 +2291,7 @@ function resolveSlackRoutingContext(params) {
2416
2291
  isRoom
2417
2292
  });
2418
2293
  const chatType = isDirectMessage ? "direct" : isGroupDm ? "group" : "channel";
2419
- const replyToMode = resolveSlackReplyToMode(account, chatType);
2294
+ const replyToMode = channelConfig?.replyToMode ?? resolveSlackReplyToMode(account, chatType);
2420
2295
  const threadContext = resolveSlackThreadContext({
2421
2296
  message,
2422
2297
  replyToMode,
@@ -2535,13 +2410,16 @@ function ensureSlackThreadHistoryHasBotRoot(params) {
2535
2410
  function formatSlackBotStarterThreadLabel(params) {
2536
2411
  const base = `Slack thread ${params.roomLabel}`;
2537
2412
  if (!params.starterText) return base;
2538
- const snippet = params.starterText.replace(/\s+/g, " ").slice(0, 80).trim();
2413
+ const snippet = formatSlackThreadLabelSnippet(params.starterText).trim();
2539
2414
  if (!snippet) return base;
2540
2415
  return `${base} (assistant root): ${snippet}`;
2541
2416
  }
2417
+ function formatSlackThreadLabelSnippet(text) {
2418
+ return truncateUtf16Safe(text.replace(/\s+/g, " "), 80);
2419
+ }
2542
2420
  //#endregion
2543
2421
  //#region extensions/slack/src/monitor/message-handler/prepare-thread-context.ts
2544
- const loadSlackMediaModule = createLazyRuntimeModule(() => import("./actions-CqRHPciJ.js").then((n) => n.h));
2422
+ const loadSlackMediaModule = createLazyRuntimeModule(() => import("./actions-DMpDmKEA.js").then((n) => n.g));
2545
2423
  const SLACK_THREAD_CONTEXT_USER_LOOKUP_CONCURRENCY = 4;
2546
2424
  function resolveSlackThreadSessionFreshness(params) {
2547
2425
  return params.ctx.channelRuntime?.session?.resolveEntryResetFreshness?.({
@@ -2639,9 +2517,9 @@ async function resolveSlackThreadContextData(params) {
2639
2517
  });
2640
2518
  if (starter?.text && includeStarterContext) {
2641
2519
  threadStarterBody = starter.text;
2642
- const snippet = starter.text.replace(/\s+/g, " ").slice(0, 80);
2520
+ const snippet = formatSlackThreadLabelSnippet(starter.text);
2643
2521
  threadLabel = `Slack thread ${params.roomLabel}${snippet ? `: ${snippet}` : ""}`;
2644
- if (!params.effectiveDirectMedia && starter.files && starter.files.length > 0) {
2522
+ if (shouldSeedInitialThreadContext && !params.effectiveDirectMedia && starter.files && starter.files.length > 0) {
2645
2523
  const { resolveSlackMedia } = await loadSlackMediaModule();
2646
2524
  threadStarterMedia = await resolveSlackMedia({
2647
2525
  files: starter.files,
@@ -3141,8 +3019,29 @@ async function prepareSlackMessage(params) {
3141
3019
  if (!authorization) return null;
3142
3020
  const { senderId, allowFromLower } = authorization;
3143
3021
  const messageText = message.text ?? "";
3022
+ let resolvedSenderName = normalizeOptionalString(message.username);
3023
+ const resolveSenderName = async () => {
3024
+ if (resolvedSenderName) return resolvedSenderName;
3025
+ if (message.user) {
3026
+ const normalized = normalizeOptionalString((await ctx.resolveUserName(message.user))?.name);
3027
+ if (normalized) {
3028
+ resolvedSenderName = normalized;
3029
+ return resolvedSenderName;
3030
+ }
3031
+ }
3032
+ resolvedSenderName = message.user ?? message.bot_id ?? "unknown";
3033
+ return resolvedSenderName;
3034
+ };
3144
3035
  const mentionMetadata = collectSlackMentionMetadata(messageText);
3145
3036
  const { mentionedUserIds, mentionedSubteamIds, hasAnyMention } = mentionMetadata;
3037
+ const messageAssistantThreadContext = resolveSlackMessageAssistantThreadContext(message);
3038
+ const assistantContextLookupChannelId = messageAssistantThreadContext?.assistantChannelId ?? message.channel;
3039
+ const assistantContextLookupThreadTs = messageAssistantThreadContext?.threadTs ?? message.thread_ts ?? message.ts;
3040
+ const cachedAssistantThreadContext = isDirectMessage ? ctx.getSlackAssistantThreadContext(assistantContextLookupChannelId, assistantContextLookupThreadTs) : void 0;
3041
+ const restoredAssistantThreadContextPromise = isDirectMessage && !cachedAssistantThreadContext && !hasSlackAssistantThreadMetadata(messageAssistantThreadContext) ? restoreSlackAssistantThreadContextFromMetadata({
3042
+ ctx,
3043
+ message
3044
+ }) : Promise.resolve(void 0);
3146
3045
  const { explicitlyMentionedBotUser, explicitlyMentionedBotSubteam, explicitlyMentioned } = await resolveSlackExplicitMentionState({
3147
3046
  ctx,
3148
3047
  messageText,
@@ -3152,18 +3051,12 @@ async function prepareSlackMessage(params) {
3152
3051
  });
3153
3052
  const channelRequireMention = channelConfig?.requireMention ?? ctx.defaultRequireMention ?? true;
3154
3053
  const channelChatType = isDirectMessage ? "direct" : isGroupDm ? "group" : "channel";
3155
- const messageAssistantThreadContext = resolveSlackMessageAssistantThreadContext(message);
3156
- const assistantContextLookupChannelId = messageAssistantThreadContext?.assistantChannelId ?? message.channel;
3157
- const assistantContextLookupThreadTs = messageAssistantThreadContext?.threadTs ?? message.thread_ts ?? message.ts;
3158
- const cachedAssistantThreadContext = isDirectMessage ? ctx.getSlackAssistantThreadContext(assistantContextLookupChannelId, assistantContextLookupThreadTs) : void 0;
3159
- const restoredAssistantThreadContext = isDirectMessage && !cachedAssistantThreadContext && !hasSlackAssistantThreadMetadata(messageAssistantThreadContext) ? await restoreSlackAssistantThreadContextFromMetadata({
3160
- ctx,
3161
- message
3162
- }) : void 0;
3054
+ const restoredAssistantThreadContext = await restoredAssistantThreadContextPromise;
3163
3055
  const assistantThreadContext = mergeSlackAssistantThreadContext(messageAssistantThreadContext, cachedAssistantThreadContext ?? restoredAssistantThreadContext);
3164
3056
  const assistantThreadContextToCache = messageAssistantThreadContext || restoredAssistantThreadContext ? assistantThreadContext : void 0;
3165
3057
  if (assistantThreadContextToCache) ctx.saveSlackAssistantThreadContext(assistantThreadContextToCache);
3166
- const willImplicitlyThreadReply = isRoom && !channelRequireMention && resolveSlackReplyToMode(account, channelChatType) !== "off";
3058
+ const channelReplyToMode = channelConfig?.replyToMode ?? resolveSlackReplyToMode(account, channelChatType);
3059
+ const willImplicitlyThreadReply = isRoom && !channelRequireMention && channelReplyToMode !== "off";
3167
3060
  const seedTopLevelRoomThreadBySource = opts.source === "app_mention" || opts.wasMentioned === true || explicitlyMentioned || willImplicitlyThreadReply;
3168
3061
  let routing = resolveSlackRoutingContext({
3169
3062
  ctx,
@@ -3173,6 +3066,7 @@ async function prepareSlackMessage(params) {
3173
3066
  isGroupDm,
3174
3067
  isRoom,
3175
3068
  isRoomish,
3069
+ channelConfig,
3176
3070
  seedTopLevelRoomThread: seedTopLevelRoomThreadBySource,
3177
3071
  assistantThreadTs: assistantThreadContext?.threadTs
3178
3072
  });
@@ -3202,6 +3096,7 @@ async function prepareSlackMessage(params) {
3202
3096
  isGroupDm,
3203
3097
  isRoom,
3204
3098
  isRoomish,
3099
+ channelConfig,
3205
3100
  seedTopLevelRoomThread: true,
3206
3101
  assistantThreadTs: assistantThreadContext?.threadTs
3207
3102
  });
@@ -3230,6 +3125,16 @@ async function prepareSlackMessage(params) {
3230
3125
  return null;
3231
3126
  }
3232
3127
  }
3128
+ const senderNameForAuthPromise = ctx.allowNameMatching ? resolveSenderName().then((name) => ({
3129
+ ok: true,
3130
+ name
3131
+ }), (error) => ({
3132
+ ok: false,
3133
+ error
3134
+ })) : Promise.resolve({
3135
+ ok: true,
3136
+ name: void 0
3137
+ });
3233
3138
  const directThreadRoutedToDmSession = !assistantThreadContext && isDirectMessage && isThreadReply && threadTs && runtimeBinding?.conversation.conversationId !== threadTs;
3234
3139
  let implicitMentionKinds = [];
3235
3140
  if (!isDirectMessage && ctx.botUserId && message.thread_ts && !ctx.threadRequireExplicitMention && !wasMentioned) {
@@ -3240,20 +3145,59 @@ async function prepareSlackMessage(params) {
3240
3145
  threadTs: message.thread_ts
3241
3146
  }));
3242
3147
  }
3243
- let resolvedSenderName = normalizeOptionalString(message.username);
3244
- const resolveSenderName = async () => {
3245
- if (resolvedSenderName) return resolvedSenderName;
3246
- if (message.user) {
3247
- const normalized = normalizeOptionalString((await ctx.resolveUserName(message.user))?.name);
3248
- if (normalized) {
3249
- resolvedSenderName = normalized;
3250
- return resolvedSenderName;
3148
+ const recordDroppedHistory = async (reason) => {
3149
+ const pendingText = (message.text ?? "").trim();
3150
+ const historyMediaCandidate = buildSlackHistoryMediaCandidateMessage(message);
3151
+ const fallbackFile = message.files?.length ? `[Slack file: ${formatSlackFileReference(message.files[0])}]` : "";
3152
+ const pendingBody = pendingText || fallbackFile || (!fallbackFile && historyMediaCandidate ? "[Slack media attachment]" : "");
3153
+ const skippedThreadStarter = historyMediaCandidate && isThreadReply && threadTs ? await resolveSlackThreadStarter({
3154
+ channelId: message.channel,
3155
+ threadTs,
3156
+ client: ctx.app.client
3157
+ }) : null;
3158
+ const senderName = pendingBody ? await resolveSenderName() : void 0;
3159
+ await recordDroppedChannelInboundHistory({
3160
+ input: {
3161
+ id: message.ts ?? `${message.channel}:${Date.now()}`,
3162
+ timestamp: resolveSlackTimestampMs(message.ts),
3163
+ rawText: pendingBody,
3164
+ textForAgent: pendingBody,
3165
+ raw: message
3166
+ },
3167
+ admission: {
3168
+ kind: "drop",
3169
+ reason,
3170
+ recordHistory: true
3171
+ },
3172
+ preflight: {
3173
+ message: pendingBody ? {
3174
+ rawBody: pendingBody,
3175
+ body: pendingBody,
3176
+ bodyForAgent: pendingBody,
3177
+ senderLabel: senderName,
3178
+ envelopeFrom: senderName
3179
+ } : void 0,
3180
+ history: {
3181
+ key: historyKey,
3182
+ historyMap: ctx.channelHistories,
3183
+ limit: ctx.historyLimit,
3184
+ recordOnDrop: true,
3185
+ mediaLimit: SLACK_HISTORY_MEDIA_MAX_ATTACHMENTS,
3186
+ shouldRecord: opts.shouldRecordDroppedHistory
3187
+ },
3188
+ media: () => resolveSlackHistoryMediaForPendingRecord({
3189
+ ctx,
3190
+ message,
3191
+ isThreadReply,
3192
+ threadStarter: skippedThreadStarter,
3193
+ isBotMessage
3194
+ })
3251
3195
  }
3252
- }
3253
- resolvedSenderName = message.user ?? message.bot_id ?? "unknown";
3254
- return resolvedSenderName;
3196
+ });
3255
3197
  };
3256
- const senderNameForAuth = ctx.allowNameMatching ? await resolveSenderName() : void 0;
3198
+ const senderNameForAuthResult = await senderNameForAuthPromise;
3199
+ if (!senderNameForAuthResult.ok) throw senderNameForAuthResult.error;
3200
+ const senderNameForAuth = senderNameForAuthResult.name;
3257
3201
  const allowTextCommands = shouldHandleTextCommands({
3258
3202
  cfg,
3259
3203
  surface: "slack"
@@ -3339,66 +3283,50 @@ async function prepareSlackMessage(params) {
3339
3283
  });
3340
3284
  return null;
3341
3285
  }
3286
+ if (isRoom && shouldRequireMention && !canDetectMention && !effectiveWasMentioned) {
3287
+ ctx.logger.info({
3288
+ channel: message.channel,
3289
+ reason: "mention-detection-unavailable"
3290
+ }, "skipping channel message");
3291
+ await recordDroppedHistory("slack-mention-detection-unavailable");
3292
+ return null;
3293
+ }
3294
+ const ignoreOtherMentions = channelConfig?.ignoreOtherMentions ?? false;
3295
+ if (isRoom && ignoreOtherMentions && Boolean(ctx.botUserId) && hasAnyMention && !wasMentioned) {
3296
+ logInboundDrop({
3297
+ log: logVerbose,
3298
+ channel: "slack",
3299
+ reason: "other-mention",
3300
+ target: senderId
3301
+ });
3302
+ await recordDroppedHistory("slack-other-mention");
3303
+ return null;
3304
+ }
3342
3305
  if (isRoom && shouldRequireMention && messageIngress.activationAccess.shouldSkip) {
3343
3306
  ctx.logger.info({
3344
3307
  channel: message.channel,
3345
3308
  reason: "no-mention"
3346
3309
  }, "skipping channel message");
3347
- const pendingText = (message.text ?? "").trim();
3348
- const historyMediaCandidate = buildSlackHistoryMediaCandidateMessage(message);
3349
- const fallbackFile = message.files?.length ? `[Slack file: ${formatSlackFileReference(message.files[0])}]` : "";
3350
- const pendingBody = pendingText || fallbackFile || (!fallbackFile && historyMediaCandidate ? "[Slack media attachment]" : "");
3351
- const skippedThreadStarter = historyMediaCandidate && isThreadReply && threadTs ? await resolveSlackThreadStarter({
3352
- channelId: message.channel,
3353
- threadTs,
3354
- client: ctx.app.client
3355
- }) : null;
3356
- const timestamp = resolveSlackTimestampMs(message.ts);
3357
- const senderName = pendingBody ? await resolveSenderName() : void 0;
3358
- await recordDroppedChannelInboundHistory({
3359
- input: {
3360
- id: message.ts ?? `${message.channel}:${Date.now()}`,
3361
- timestamp,
3362
- rawText: pendingBody,
3363
- textForAgent: pendingBody,
3364
- raw: message
3365
- },
3366
- admission: {
3367
- kind: "drop",
3368
- reason: "slack-no-mention",
3369
- recordHistory: true
3370
- },
3371
- preflight: {
3372
- message: pendingBody ? {
3373
- rawBody: pendingBody,
3374
- body: pendingBody,
3375
- bodyForAgent: pendingBody,
3376
- senderLabel: senderName,
3377
- envelopeFrom: senderName
3378
- } : void 0,
3379
- history: {
3380
- key: historyKey,
3381
- historyMap: ctx.channelHistories,
3382
- limit: ctx.historyLimit,
3383
- recordOnDrop: true,
3384
- mediaLimit: SLACK_HISTORY_MEDIA_MAX_ATTACHMENTS
3385
- },
3386
- media: () => resolveSlackHistoryMediaForPendingRecord({
3387
- ctx,
3388
- message,
3389
- isThreadReply,
3390
- threadStarter: skippedThreadStarter,
3391
- isBotMessage
3392
- })
3393
- }
3394
- });
3310
+ await recordDroppedHistory("slack-no-mention");
3395
3311
  return null;
3396
3312
  }
3397
- const threadStarter = isThreadReply && threadTs ? await resolveSlackThreadStarter({
3313
+ const threadStarterPromise = isThreadReply && threadTs ? resolveSlackThreadStarter({
3398
3314
  channelId: message.channel,
3399
3315
  threadTs,
3400
3316
  client: ctx.app.client
3401
- }) : null;
3317
+ }) : Promise.resolve(null);
3318
+ const chatType = resolveSlackChatType(conversation.resolvedChannelType);
3319
+ const inboundEventKind = classifyChannelInboundEvent({
3320
+ conversation: { kind: chatType },
3321
+ unmentionedGroupPolicy: resolveUnmentionedGroupInboundPolicy({
3322
+ cfg,
3323
+ agentId: route.agentId
3324
+ }),
3325
+ wasMentioned: effectiveWasMentioned,
3326
+ hasControlCommand: hasControlCommandInMessage,
3327
+ hasAbortRequest
3328
+ });
3329
+ const threadStarter = await threadStarterPromise;
3402
3330
  const resolvedMessageContent = await resolveSlackMessageContent({
3403
3331
  message,
3404
3332
  isThreadReply,
@@ -3411,17 +3339,6 @@ async function prepareSlackMessage(params) {
3411
3339
  });
3412
3340
  if (!resolvedMessageContent) return null;
3413
3341
  const { rawBody, effectiveDirectMedia } = resolvedMessageContent;
3414
- const chatType = resolveSlackChatType(conversation.resolvedChannelType);
3415
- const inboundEventKind = classifyChannelInboundEvent({
3416
- conversation: { kind: chatType },
3417
- unmentionedGroupPolicy: resolveUnmentionedGroupInboundPolicy({
3418
- cfg,
3419
- agentId: route.agentId
3420
- }),
3421
- wasMentioned: effectiveWasMentioned,
3422
- hasControlCommand: hasControlCommandInMessage,
3423
- hasAbortRequest
3424
- });
3425
3342
  const ackReaction = resolveAckReaction(cfg, route.agentId, {
3426
3343
  channel: "slack",
3427
3344
  accountId: account.accountId
@@ -3435,8 +3352,10 @@ async function prepareSlackMessage(params) {
3435
3352
  }
3436
3353
  }) === "message_tool_only";
3437
3354
  const statusReactionsExplicitlyEnabled = cfg.messages?.statusReactions?.enabled === true;
3355
+ const isRoomEvent = inboundEventKind === "room_event";
3438
3356
  const shouldAckReaction$1 = () => Boolean(ackReaction && shouldAckReaction({
3439
3357
  scope: ctx.ackReactionScope,
3358
+ inboundEventKind,
3440
3359
  isDirect: isDirectMessage,
3441
3360
  isGroup: isRoomish,
3442
3361
  isMentionableGroup: isRoom,
@@ -3447,8 +3366,8 @@ async function prepareSlackMessage(params) {
3447
3366
  }));
3448
3367
  const ackReactionMessageTs = message.ts;
3449
3368
  const allowToolOnlyStatusReaction = statusReactionsExplicitlyEnabled && (effectiveWasMentioned || shouldBypassMention);
3450
- const shouldSendAckReaction = shouldAckReaction$1() && (!sourceRepliesAreToolOnly || allowToolOnlyStatusReaction);
3451
- const statusReactionsWillHandle = Boolean(ackReactionMessageTs) && cfg.messages?.statusReactions?.enabled !== false && shouldSendAckReaction;
3369
+ const shouldSendAckReaction = shouldAckReaction$1() && (!sourceRepliesAreToolOnly || allowToolOnlyStatusReaction || isRoomEvent);
3370
+ const statusReactionsWillHandle = Boolean(ackReactionMessageTs) && !isRoomEvent && statusReactionsExplicitlyEnabled && shouldSendAckReaction;
3452
3371
  const ackReactionPromise = !statusReactionsWillHandle && shouldSendAckReaction && ackReactionMessageTs && ackReactionValue ? reactSlackMessage(message.channel, ackReactionMessageTs, ackReactionValue, {
3453
3372
  token: ctx.botToken,
3454
3373
  client: ctx.app.client
@@ -3479,6 +3398,10 @@ async function prepareSlackMessage(params) {
3479
3398
  storePath,
3480
3399
  sessionKey
3481
3400
  });
3401
+ if (opts.source === "app_mention" && !ctx.botUserId && message.ts) {
3402
+ const pendingHistory = ctx.channelHistories.get(historyKey);
3403
+ if (pendingHistory) ctx.channelHistories.set(historyKey, pendingHistory.filter((entry) => entry.messageId !== message.ts));
3404
+ }
3482
3405
  const channelHistory = createChannelHistoryWindow({ historyMap: ctx.channelHistories });
3483
3406
  const dmHistoryLimit = isDirectMessage ? resolveSlackDmHistoryLimit({
3484
3407
  account,
@@ -3634,6 +3557,7 @@ async function prepareSlackMessage(params) {
3634
3557
  })
3635
3558
  }
3636
3559
  });
3560
+ ctxPayload.ReplyToMode = replyToMode;
3637
3561
  if (isRoomish && !shouldRequireMention) channelHistory.record({
3638
3562
  historyKey,
3639
3563
  limit: ctx.historyLimit,
@@ -3651,7 +3575,7 @@ async function prepareSlackMessage(params) {
3651
3575
  }) : null;
3652
3576
  const replyTarget = isDirectMessage ? `channel:${message.channel}` : ctxPayload.To ?? void 0;
3653
3577
  if (!replyTarget) return null;
3654
- if (shouldLogVerbose()) logVerbose(`slack inbound: channel=${message.channel} from=${slackFrom} preview="${preview}"`);
3578
+ if (shouldLogVerbose()) logVerbose(`slack inbound: account=${route.accountId} agent=${route.agentId} channel=${message.channel} message_ts=${message.ts ?? "unknown"} thread_ts=${effectiveMessageThreadId ?? "none"} from=${slackFrom} chat=${chatType} chars=${rawBody.length}`);
3655
3579
  const updateLastRouteSessionKey = resolveInboundLastRouteSessionKey({
3656
3580
  route,
3657
3581
  sessionKey