@jungjaehoon/mama-os 0.77.0 → 0.79.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (338) hide show
  1. package/CHANGELOG.md +446 -0
  2. package/README.md +59 -30
  3. package/db/migrations/002-model-runs-parent-index.sql +11 -0
  4. package/db/migrations/003-upkeep-settled.sql +15 -0
  5. package/dist/api/google-read-actions.d.ts +30 -0
  6. package/dist/api/google-read-actions.d.ts.map +1 -0
  7. package/dist/api/google-read-actions.js +256 -0
  8. package/dist/api/google-read-actions.js.map +1 -0
  9. package/dist/api/record-actions.d.ts.map +1 -1
  10. package/dist/api/record-actions.js +23 -5
  11. package/dist/api/record-actions.js.map +1 -1
  12. package/dist/api/report-handler.d.ts +0 -6
  13. package/dist/api/report-handler.d.ts.map +1 -1
  14. package/dist/api/report-handler.js +0 -54
  15. package/dist/api/report-handler.js.map +1 -1
  16. package/dist/api/security-events.d.ts +1 -1
  17. package/dist/api/security-events.d.ts.map +1 -1
  18. package/dist/api/security-events.js +10 -1
  19. package/dist/api/security-events.js.map +1 -1
  20. package/dist/api/source-actions.d.ts +9 -0
  21. package/dist/api/source-actions.d.ts.map +1 -1
  22. package/dist/api/source-actions.js +49 -0
  23. package/dist/api/source-actions.js.map +1 -1
  24. package/dist/api/viewer-request-security.d.ts +14 -1
  25. package/dist/api/viewer-request-security.d.ts.map +1 -1
  26. package/dist/api/viewer-request-security.js +26 -3
  27. package/dist/api/viewer-request-security.js.map +1 -1
  28. package/dist/api/viewer-server.d.ts +8 -0
  29. package/dist/api/viewer-server.d.ts.map +1 -1
  30. package/dist/api/viewer-server.js +66 -0
  31. package/dist/api/viewer-server.js.map +1 -1
  32. package/dist/api/work-actions.d.ts +19 -2
  33. package/dist/api/work-actions.d.ts.map +1 -1
  34. package/dist/api/work-actions.js +42 -2
  35. package/dist/api/work-actions.js.map +1 -1
  36. package/dist/cli/commands/backfill.d.ts.map +1 -1
  37. package/dist/cli/commands/backfill.js +1 -0
  38. package/dist/cli/commands/backfill.js.map +1 -1
  39. package/dist/cli/commands/backup.d.ts +14 -0
  40. package/dist/cli/commands/backup.d.ts.map +1 -0
  41. package/dist/cli/commands/backup.js +174 -0
  42. package/dist/cli/commands/backup.js.map +1 -0
  43. package/dist/cli/commands/control.d.ts +44 -0
  44. package/dist/cli/commands/control.d.ts.map +1 -0
  45. package/dist/cli/commands/control.js +354 -0
  46. package/dist/cli/commands/control.js.map +1 -0
  47. package/dist/cli/commands/daemon.d.ts +60 -3
  48. package/dist/cli/commands/daemon.d.ts.map +1 -1
  49. package/dist/cli/commands/daemon.js +454 -78
  50. package/dist/cli/commands/daemon.js.map +1 -1
  51. package/dist/cli/commands/doctor.d.ts +13 -0
  52. package/dist/cli/commands/doctor.d.ts.map +1 -0
  53. package/dist/cli/commands/doctor.js +216 -0
  54. package/dist/cli/commands/doctor.js.map +1 -0
  55. package/dist/cli/commands/init-questions.d.ts +98 -0
  56. package/dist/cli/commands/init-questions.d.ts.map +1 -0
  57. package/dist/cli/commands/init-questions.js +420 -0
  58. package/dist/cli/commands/init-questions.js.map +1 -0
  59. package/dist/cli/commands/init-section.d.ts +13 -0
  60. package/dist/cli/commands/init-section.d.ts.map +1 -0
  61. package/dist/cli/commands/init-section.js +375 -0
  62. package/dist/cli/commands/init-section.js.map +1 -0
  63. package/dist/cli/commands/init.d.ts +56 -2
  64. package/dist/cli/commands/init.d.ts.map +1 -1
  65. package/dist/cli/commands/init.js +562 -350
  66. package/dist/cli/commands/init.js.map +1 -1
  67. package/dist/cli/commands/logs.d.ts +9 -0
  68. package/dist/cli/commands/logs.d.ts.map +1 -0
  69. package/dist/cli/commands/logs.js +109 -0
  70. package/dist/cli/commands/logs.js.map +1 -0
  71. package/dist/cli/commands/node-move.d.ts +20 -0
  72. package/dist/cli/commands/node-move.d.ts.map +1 -0
  73. package/dist/cli/commands/node-move.js +289 -0
  74. package/dist/cli/commands/node-move.js.map +1 -0
  75. package/dist/cli/commands/register-owner.d.ts +3 -0
  76. package/dist/cli/commands/register-owner.d.ts.map +1 -1
  77. package/dist/cli/commands/register-owner.js +14 -0
  78. package/dist/cli/commands/register-owner.js.map +1 -1
  79. package/dist/cli/commands/restore.d.ts +16 -0
  80. package/dist/cli/commands/restore.d.ts.map +1 -0
  81. package/dist/cli/commands/restore.js +137 -0
  82. package/dist/cli/commands/restore.js.map +1 -0
  83. package/dist/cli/commands/service.d.ts +44 -0
  84. package/dist/cli/commands/service.d.ts.map +1 -0
  85. package/dist/cli/commands/service.js +306 -0
  86. package/dist/cli/commands/service.js.map +1 -0
  87. package/dist/cli/commands/tools.d.ts +1 -1
  88. package/dist/cli/commands/tools.d.ts.map +1 -1
  89. package/dist/cli/commands/tools.js +8 -3
  90. package/dist/cli/commands/tools.js.map +1 -1
  91. package/dist/cli/commands/uninstall.d.ts +7 -0
  92. package/dist/cli/commands/uninstall.d.ts.map +1 -0
  93. package/dist/cli/commands/uninstall.js +335 -0
  94. package/dist/cli/commands/uninstall.js.map +1 -0
  95. package/dist/cli/commands/update.d.ts +59 -0
  96. package/dist/cli/commands/update.d.ts.map +1 -0
  97. package/dist/cli/commands/update.js +948 -0
  98. package/dist/cli/commands/update.js.map +1 -0
  99. package/dist/cli/index.js +74 -23
  100. package/dist/cli/index.js.map +1 -1
  101. package/dist/cli/launch-files.d.ts +119 -0
  102. package/dist/cli/launch-files.d.ts.map +1 -1
  103. package/dist/cli/launch-files.js +324 -15
  104. package/dist/cli/launch-files.js.map +1 -1
  105. package/dist/cli/prompt.d.ts +2 -1
  106. package/dist/cli/prompt.d.ts.map +1 -1
  107. package/dist/cli/prompt.js +5 -2
  108. package/dist/cli/prompt.js.map +1 -1
  109. package/dist/cli/runtime/backend-probe.d.ts +34 -0
  110. package/dist/cli/runtime/backend-probe.d.ts.map +1 -0
  111. package/dist/cli/runtime/backend-probe.js +83 -0
  112. package/dist/cli/runtime/backend-probe.js.map +1 -0
  113. package/dist/cli/runtime/backup.d.ts +130 -0
  114. package/dist/cli/runtime/backup.d.ts.map +1 -0
  115. package/dist/cli/runtime/backup.js +592 -0
  116. package/dist/cli/runtime/backup.js.map +1 -0
  117. package/dist/cli/runtime/daemon-control.d.ts +169 -0
  118. package/dist/cli/runtime/daemon-control.d.ts.map +1 -0
  119. package/dist/cli/runtime/daemon-control.js +441 -0
  120. package/dist/cli/runtime/daemon-control.js.map +1 -0
  121. package/dist/cli/runtime/default-roots.d.ts +27 -0
  122. package/dist/cli/runtime/default-roots.d.ts.map +1 -0
  123. package/dist/cli/runtime/default-roots.js +61 -0
  124. package/dist/cli/runtime/default-roots.js.map +1 -0
  125. package/dist/cli/runtime/diagnostics.d.ts +68 -0
  126. package/dist/cli/runtime/diagnostics.d.ts.map +1 -0
  127. package/dist/cli/runtime/diagnostics.js +1139 -0
  128. package/dist/cli/runtime/diagnostics.js.map +1 -0
  129. package/dist/cli/runtime/init-state.d.ts +20 -0
  130. package/dist/cli/runtime/init-state.d.ts.map +1 -0
  131. package/dist/cli/runtime/init-state.js +51 -0
  132. package/dist/cli/runtime/init-state.js.map +1 -0
  133. package/dist/cli/runtime/install-kind.d.ts +54 -0
  134. package/dist/cli/runtime/install-kind.d.ts.map +1 -0
  135. package/dist/cli/runtime/install-kind.js +164 -0
  136. package/dist/cli/runtime/install-kind.js.map +1 -0
  137. package/dist/cli/runtime/node-move-journal.d.ts +44 -0
  138. package/dist/cli/runtime/node-move-journal.d.ts.map +1 -0
  139. package/dist/cli/runtime/node-move-journal.js +48 -0
  140. package/dist/cli/runtime/node-move-journal.js.map +1 -0
  141. package/dist/cli/runtime/release-check.d.ts +94 -0
  142. package/dist/cli/runtime/release-check.d.ts.map +1 -0
  143. package/dist/cli/runtime/release-check.js +316 -0
  144. package/dist/cli/runtime/release-check.js.map +1 -0
  145. package/dist/cli/runtime/restore.d.ts +98 -0
  146. package/dist/cli/runtime/restore.d.ts.map +1 -0
  147. package/dist/cli/runtime/restore.js +756 -0
  148. package/dist/cli/runtime/restore.js.map +1 -0
  149. package/dist/cli/runtime/setup-page.d.ts +57 -0
  150. package/dist/cli/runtime/setup-page.d.ts.map +1 -0
  151. package/dist/cli/runtime/setup-page.js +266 -0
  152. package/dist/cli/runtime/setup-page.js.map +1 -0
  153. package/dist/cli/runtime/source-tools.d.ts +60 -0
  154. package/dist/cli/runtime/source-tools.d.ts.map +1 -0
  155. package/dist/cli/runtime/source-tools.js +170 -0
  156. package/dist/cli/runtime/source-tools.js.map +1 -0
  157. package/dist/cli/runtime/systemd-service.d.ts +13 -0
  158. package/dist/cli/runtime/systemd-service.d.ts.map +1 -0
  159. package/dist/cli/runtime/systemd-service.js +32 -0
  160. package/dist/cli/runtime/systemd-service.js.map +1 -0
  161. package/dist/cli/runtime/telegram-pairing.d.ts +73 -0
  162. package/dist/cli/runtime/telegram-pairing.d.ts.map +1 -0
  163. package/dist/cli/runtime/telegram-pairing.js +184 -0
  164. package/dist/cli/runtime/telegram-pairing.js.map +1 -0
  165. package/dist/cli/runtime/update-journal.d.ts +135 -0
  166. package/dist/cli/runtime/update-journal.d.ts.map +1 -0
  167. package/dist/cli/runtime/update-journal.js +144 -0
  168. package/dist/cli/runtime/update-journal.js.map +1 -0
  169. package/dist/cli/runtime/update-progress.d.ts +95 -0
  170. package/dist/cli/runtime/update-progress.d.ts.map +1 -0
  171. package/dist/cli/runtime/update-progress.js +154 -0
  172. package/dist/cli/runtime/update-progress.js.map +1 -0
  173. package/dist/cli/runtime/update-request.d.ts +58 -0
  174. package/dist/cli/runtime/update-request.d.ts.map +1 -0
  175. package/dist/cli/runtime/update-request.js +172 -0
  176. package/dist/cli/runtime/update-request.js.map +1 -0
  177. package/dist/connectors/calendar/index.d.ts +5 -1
  178. package/dist/connectors/calendar/index.d.ts.map +1 -1
  179. package/dist/connectors/calendar/index.js +19 -28
  180. package/dist/connectors/calendar/index.js.map +1 -1
  181. package/dist/connectors/chatwork/index.d.ts.map +1 -1
  182. package/dist/connectors/chatwork/index.js +7 -3
  183. package/dist/connectors/chatwork/index.js.map +1 -1
  184. package/dist/connectors/config-loader.d.ts +7 -1
  185. package/dist/connectors/config-loader.d.ts.map +1 -1
  186. package/dist/connectors/config-loader.js +11 -2
  187. package/dist/connectors/config-loader.js.map +1 -1
  188. package/dist/connectors/discord/index.d.ts.map +1 -1
  189. package/dist/connectors/discord/index.js +4 -3
  190. package/dist/connectors/discord/index.js.map +1 -1
  191. package/dist/connectors/drive/index.d.ts.map +1 -1
  192. package/dist/connectors/drive/index.js +15 -13
  193. package/dist/connectors/drive/index.js.map +1 -1
  194. package/dist/connectors/framework/gws-utils.d.ts +62 -0
  195. package/dist/connectors/framework/gws-utils.d.ts.map +1 -1
  196. package/dist/connectors/framework/gws-utils.js +133 -3
  197. package/dist/connectors/framework/gws-utils.js.map +1 -1
  198. package/dist/connectors/framework/polling-scheduler.d.ts.map +1 -1
  199. package/dist/connectors/framework/polling-scheduler.js +12 -11
  200. package/dist/connectors/framework/polling-scheduler.js.map +1 -1
  201. package/dist/connectors/framework/types.d.ts +24 -0
  202. package/dist/connectors/framework/types.d.ts.map +1 -1
  203. package/dist/connectors/framework/types.js +9 -0
  204. package/dist/connectors/framework/types.js.map +1 -1
  205. package/dist/connectors/gmail/index.d.ts.map +1 -1
  206. package/dist/connectors/gmail/index.js +14 -13
  207. package/dist/connectors/gmail/index.js.map +1 -1
  208. package/dist/connectors/imessage/index.d.ts.map +1 -1
  209. package/dist/connectors/imessage/index.js +2 -1
  210. package/dist/connectors/imessage/index.js.map +1 -1
  211. package/dist/connectors/index.d.ts +4 -4
  212. package/dist/connectors/index.d.ts.map +1 -1
  213. package/dist/connectors/index.js +4 -10
  214. package/dist/connectors/index.js.map +1 -1
  215. package/dist/connectors/notion/index.d.ts.map +1 -1
  216. package/dist/connectors/notion/index.js +5 -3
  217. package/dist/connectors/notion/index.js.map +1 -1
  218. package/dist/connectors/sheets/index.d.ts.map +1 -1
  219. package/dist/connectors/sheets/index.js +17 -12
  220. package/dist/connectors/sheets/index.js.map +1 -1
  221. package/dist/connectors/slack/index.d.ts.map +1 -1
  222. package/dist/connectors/slack/index.js +9 -3
  223. package/dist/connectors/slack/index.js.map +1 -1
  224. package/dist/connectors/telegram/index.d.ts.map +1 -1
  225. package/dist/connectors/telegram/index.js +4 -3
  226. package/dist/connectors/telegram/index.js.map +1 -1
  227. package/dist/connectors/trello/index.d.ts +1 -1
  228. package/dist/connectors/trello/index.d.ts.map +1 -1
  229. package/dist/connectors/trello/index.js +10 -5
  230. package/dist/connectors/trello/index.js.map +1 -1
  231. package/dist/gateways/discord.d.ts +6 -0
  232. package/dist/gateways/discord.d.ts.map +1 -1
  233. package/dist/gateways/discord.js +38 -27
  234. package/dist/gateways/discord.js.map +1 -1
  235. package/dist/gateways/slack.d.ts +6 -0
  236. package/dist/gateways/slack.d.ts.map +1 -1
  237. package/dist/gateways/slack.js +38 -27
  238. package/dist/gateways/slack.js.map +1 -1
  239. package/dist/gateways/telegram-commands.d.ts +124 -0
  240. package/dist/gateways/telegram-commands.d.ts.map +1 -0
  241. package/dist/gateways/telegram-commands.js +131 -0
  242. package/dist/gateways/telegram-commands.js.map +1 -0
  243. package/dist/gateways/telegram.d.ts +20 -0
  244. package/dist/gateways/telegram.d.ts.map +1 -1
  245. package/dist/gateways/telegram.js +138 -34
  246. package/dist/gateways/telegram.js.map +1 -1
  247. package/dist/gateways/turn-contract.d.ts +11 -0
  248. package/dist/gateways/turn-contract.d.ts.map +1 -1
  249. package/dist/runtime/action-surface.d.ts +1 -1
  250. package/dist/runtime/action-surface.d.ts.map +1 -1
  251. package/dist/runtime/action-surface.js +10 -0
  252. package/dist/runtime/action-surface.js.map +1 -1
  253. package/dist/runtime/backend-security.d.ts +26 -2
  254. package/dist/runtime/backend-security.d.ts.map +1 -1
  255. package/dist/runtime/backend-security.js +63 -10
  256. package/dist/runtime/backend-security.js.map +1 -1
  257. package/dist/runtime/config.d.ts +3 -0
  258. package/dist/runtime/config.d.ts.map +1 -1
  259. package/dist/runtime/config.js +4 -4
  260. package/dist/runtime/config.js.map +1 -1
  261. package/dist/runtime/connectors.d.ts +21 -1
  262. package/dist/runtime/connectors.d.ts.map +1 -1
  263. package/dist/runtime/connectors.js +28 -17
  264. package/dist/runtime/connectors.js.map +1 -1
  265. package/dist/runtime/core-db.d.ts.map +1 -1
  266. package/dist/runtime/core-db.js +2 -0
  267. package/dist/runtime/core-db.js.map +1 -1
  268. package/dist/runtime/member-paths.d.ts +15 -7
  269. package/dist/runtime/member-paths.d.ts.map +1 -1
  270. package/dist/runtime/member-paths.js +64 -12
  271. package/dist/runtime/member-paths.js.map +1 -1
  272. package/dist/runtime/member-session.d.ts +4 -0
  273. package/dist/runtime/member-session.d.ts.map +1 -1
  274. package/dist/runtime/member-session.js +23 -2
  275. package/dist/runtime/member-session.js.map +1 -1
  276. package/dist/runtime/native-session.d.ts +2 -0
  277. package/dist/runtime/native-session.d.ts.map +1 -1
  278. package/dist/runtime/native-session.js +1 -0
  279. package/dist/runtime/native-session.js.map +1 -1
  280. package/dist/runtime/owner-runtime.d.ts +63 -1
  281. package/dist/runtime/owner-runtime.d.ts.map +1 -1
  282. package/dist/runtime/owner-runtime.js +180 -3
  283. package/dist/runtime/owner-runtime.js.map +1 -1
  284. package/dist/runtime/owner-system-prompt.d.ts.map +1 -1
  285. package/dist/runtime/owner-system-prompt.js +6 -5
  286. package/dist/runtime/owner-system-prompt.js.map +1 -1
  287. package/dist/runtime/principal-access.d.ts +2 -0
  288. package/dist/runtime/principal-access.d.ts.map +1 -1
  289. package/dist/runtime/principal-access.js +7 -0
  290. package/dist/runtime/principal-access.js.map +1 -1
  291. package/dist/runtime/principal-sessions.d.ts.map +1 -1
  292. package/dist/runtime/principal-sessions.js +8 -1
  293. package/dist/runtime/principal-sessions.js.map +1 -1
  294. package/dist/runtime/record-orders.d.ts.map +1 -1
  295. package/dist/runtime/record-orders.js +3 -29
  296. package/dist/runtime/record-orders.js.map +1 -1
  297. package/dist/runtime/report-scheduler.d.ts +9 -2
  298. package/dist/runtime/report-scheduler.d.ts.map +1 -1
  299. package/dist/runtime/report-scheduler.js +37 -10
  300. package/dist/runtime/report-scheduler.js.map +1 -1
  301. package/dist/runtime/rotating-log.d.ts +44 -0
  302. package/dist/runtime/rotating-log.d.ts.map +1 -0
  303. package/dist/runtime/rotating-log.js +124 -0
  304. package/dist/runtime/rotating-log.js.map +1 -0
  305. package/dist/runtime/stimulus-delivery.d.ts +3 -0
  306. package/dist/runtime/stimulus-delivery.d.ts.map +1 -1
  307. package/dist/runtime/stimulus-delivery.js +19 -3
  308. package/dist/runtime/stimulus-delivery.js.map +1 -1
  309. package/dist/runtime/tools-paths.d.ts +7 -0
  310. package/dist/runtime/tools-paths.d.ts.map +1 -1
  311. package/dist/runtime/tools-paths.js +11 -5
  312. package/dist/runtime/tools-paths.js.map +1 -1
  313. package/dist/runtime/upkeep-close.d.ts +17 -0
  314. package/dist/runtime/upkeep-close.d.ts.map +1 -0
  315. package/dist/runtime/upkeep-close.js +127 -0
  316. package/dist/runtime/upkeep-close.js.map +1 -0
  317. package/dist/runtime/upkeep-orders.d.ts +124 -0
  318. package/dist/runtime/upkeep-orders.d.ts.map +1 -0
  319. package/dist/runtime/upkeep-orders.js +310 -0
  320. package/dist/runtime/upkeep-orders.js.map +1 -0
  321. package/dist/runtime/upkeep-reconcile.d.ts +25 -0
  322. package/dist/runtime/upkeep-reconcile.d.ts.map +1 -0
  323. package/dist/runtime/upkeep-reconcile.js +231 -0
  324. package/dist/runtime/upkeep-reconcile.js.map +1 -0
  325. package/dist/runtime/upkeep-writeback.d.ts +22 -0
  326. package/dist/runtime/upkeep-writeback.d.ts.map +1 -0
  327. package/dist/runtime/upkeep-writeback.js +203 -0
  328. package/dist/runtime/upkeep-writeback.js.map +1 -0
  329. package/dist/tools/document-toolkit.d.ts +2 -0
  330. package/dist/tools/document-toolkit.d.ts.map +1 -1
  331. package/dist/tools/document-toolkit.js +2 -0
  332. package/dist/tools/document-toolkit.js.map +1 -1
  333. package/dist/utils/untrusted-content.d.ts.map +1 -1
  334. package/dist/utils/untrusted-content.js +8 -1
  335. package/dist/utils/untrusted-content.js.map +1 -1
  336. package/install/install.sh +457 -0
  337. package/install/node.json +9 -0
  338. package/package.json +5 -5
@@ -10,6 +10,7 @@ const node_fs_1 = require("node:fs");
10
10
  const node_path_1 = require("node:path");
11
11
  const grammy_1 = require("grammy");
12
12
  const base_gateway_js_1 = require("./base-gateway.js");
13
+ const telegram_commands_js_1 = require("./telegram-commands.js");
13
14
  const telegram_text_entities_js_1 = require("./telegram-text-entities.js");
14
15
  const telegram_format_js_1 = require("./telegram-format.js");
15
16
  const telegram_message_ledger_js_1 = require("./telegram-message-ledger.js");
@@ -89,6 +90,7 @@ class TelegramGateway extends base_gateway_js_1.BaseGateway {
89
90
  this.stopIntake = () => resolve(undefined);
90
91
  });
91
92
  enrollmentCompletions = new Set();
93
+ commandAnswers = new Set();
92
94
  activePresenters = new Map();
93
95
  recentMessageIds = new Map();
94
96
  activeChat = new node_async_hooks_1.AsyncLocalStorage();
@@ -96,6 +98,7 @@ class TelegramGateway extends base_gateway_js_1.BaseGateway {
96
98
  pendingEnrollments = new Map();
97
99
  onMemberSelection;
98
100
  recordMemberSelection;
101
+ hostCommands;
99
102
  bot = null;
100
103
  lastError = null;
101
104
  lastMessageAt;
@@ -110,6 +113,7 @@ class TelegramGateway extends base_gateway_js_1.BaseGateway {
110
113
  this.principalPaths = options.principalPaths;
111
114
  this.onMemberSelection = options.onMemberSelection;
112
115
  this.recordMemberSelection = options.recordMemberSelection;
116
+ this.hostCommands = options.hostCommands;
113
117
  this.config = {
114
118
  enabled: options.config?.enabled ?? true,
115
119
  allowedChats: options.config?.allowedChats ?? [],
@@ -159,6 +163,17 @@ class TelegramGateway extends base_gateway_js_1.BaseGateway {
159
163
  console.error(`telegram handler failed error=${this.lastError}`);
160
164
  });
161
165
  await this.bot.init();
166
+ // The menu only lists the commands; they are answered whether or not it is registered,
167
+ // so a failed registration is logged and the gateway runs on.
168
+ const commands = telegram_commands_js_1.TELEGRAM_HOST_COMMANDS.map(({ command, description }) => ({
169
+ command,
170
+ description,
171
+ }));
172
+ for (const type of ['all_private_chats', 'all_group_chats']) {
173
+ await this.bot.api.setMyCommands(commands, { scope: { type } }).catch((error) => {
174
+ console.error(`telegram command menu failed scope=${type} error=${telegramErrorMessage(error)}`);
175
+ });
176
+ }
162
177
  this.connected = true;
163
178
  this.lastError = null;
164
179
  this.emitEvent({ type: 'connected', source: 'telegram', timestamp: new Date() });
@@ -196,6 +211,7 @@ class TelegramGateway extends base_gateway_js_1.BaseGateway {
196
211
  async drain() {
197
212
  await super.drain();
198
213
  await Promise.allSettled([...this.enrollmentCompletions]);
214
+ await Promise.allSettled([...this.commandAnswers]);
199
215
  await Promise.allSettled([...this.chatTails.values()]);
200
216
  }
201
217
  async stop() {
@@ -563,6 +579,17 @@ class TelegramGateway extends base_gateway_js_1.BaseGateway {
563
579
  return;
564
580
  }
565
581
  const principalId = principal.principalId;
582
+ // A host command is answered now, ahead of any intake waiting in this chat.
583
+ const command = (0, telegram_commands_js_1.hostCommand)(message, () => this.bot.botInfo.username);
584
+ if (command === 'other_bot')
585
+ return;
586
+ if (command !== null) {
587
+ // /new may wait for a member to be served; polling admits other updates meanwhile.
588
+ const answer = this.answerHostCommand(message, command, principalId).catch((error) => this.log(`telegram host command reply failed command=${command} error=${telegramErrorMessage(error)}`));
589
+ this.commandAnswers.add(answer);
590
+ void answer.finally(() => this.commandAnswers.delete(answer));
591
+ return;
592
+ }
566
593
  const recorded = this.messageLedger.get(sourceMessageRef(chatId, message.message_id));
567
594
  const memberRoom = !privateChat && (recorded ? recorded.principalId !== undefined : !this.ownerAllowed(userId));
568
595
  const selectedIntake = () => privateChat || memberRoom
@@ -612,6 +639,71 @@ class TelegramGateway extends base_gateway_js_1.BaseGateway {
612
639
  }
613
640
  await this.acceptMessage(message, principalId, intake);
614
641
  }
642
+ /** Answer a host command in the chat it came from; no turn and no stored message. */
643
+ async answerHostCommand(message, command, principalId) {
644
+ const chatId = String(message.chat.id);
645
+ const userId = String(message.from.id);
646
+ const privateChat = message.chat.type === 'private';
647
+ const owner = this.ownerAllowed(userId);
648
+ // Owners in the common group speak in the common session; everyone else in their own.
649
+ const target = !privateChat && owner
650
+ ? { kind: 'common' }
651
+ : { kind: 'member', principalId, ...(privateChat ? {} : { room: chatId }) };
652
+ let text;
653
+ try {
654
+ if (command === 'help')
655
+ text = (0, telegram_commands_js_1.helpText)();
656
+ else if (command === 'whoami')
657
+ text = (0, telegram_commands_js_1.whoamiText)({
658
+ userId,
659
+ chatId,
660
+ privateChat,
661
+ commonChannel: chatId === this.config.ownerChatId,
662
+ principalId,
663
+ owner,
664
+ });
665
+ else if (command === 'status')
666
+ // Everyone in a group reads the reply, so the owner's view of every conversation stays
667
+ // in the owner's DM.
668
+ text = (0, telegram_commands_js_1.statusText)(await this.hostCommands.status(target, owner && privateChat)).join('\n');
669
+ else if (command === 'stop')
670
+ text = (0, telegram_commands_js_1.stopText)(await this.hostCommands.stopTurn(target), target);
671
+ else if (command === 'update')
672
+ text = await this.answerUpdate(message, owner, privateChat);
673
+ else
674
+ text = (0, telegram_commands_js_1.startOverText)(await this.hostCommands.startOver(target), target, owner);
675
+ }
676
+ catch (error) {
677
+ this.log(`telegram host command failed command=${command} error=${telegramErrorMessage(error)}`);
678
+ text = `MAMA could not answer /${command}; its log has the error.`;
679
+ }
680
+ await this.bot.api.sendMessage(Number(chatId), text, {
681
+ reply_parameters: { message_id: message.message_id, allow_sending_without_reply: true },
682
+ });
683
+ this.log(`telegram host command=${command} chat=${privateChat ? 'private' : 'group'}`);
684
+ }
685
+ /**
686
+ * /update: an owner in their DM or the common channel; an owner in another group is refused
687
+ * too, since its members would read the progress. An answer that names paths goes to the
688
+ * owner's DM, and the group is told so.
689
+ */
690
+ async answerUpdate(message, owner, privateChat) {
691
+ const chatId = String(message.chat.id);
692
+ if (!owner || (!privateChat && chatId !== this.config.ownerChatId))
693
+ return telegram_commands_js_1.UPDATE_REFUSED;
694
+ const result = await this.hostCommands.update({ chatId, messageId: message.message_id });
695
+ if (privateChat || (result.kind !== 'checkout' && result.kind !== 'not_updatable'))
696
+ return (0, telegram_commands_js_1.updateText)(result);
697
+ let dm = true;
698
+ try {
699
+ await this.bot.api.sendMessage(message.from.id, (0, telegram_commands_js_1.updateText)(result));
700
+ }
701
+ catch (error) {
702
+ dm = false;
703
+ this.log(`telegram /update details not sent to DM error=${telegramErrorMessage(error)}`);
704
+ }
705
+ return (0, telegram_commands_js_1.updateGroupText)(result, dm);
706
+ }
615
707
  async acceptMessage(message, principalId, intake, queuedClaim) {
616
708
  const chatId = String(message.chat.id);
617
709
  const privateChat = message.chat.type === 'private';
@@ -828,45 +920,57 @@ class TelegramGateway extends base_gateway_js_1.BaseGateway {
828
920
  }, true);
829
921
  }
830
922
  async recoverPendingResponses() {
831
- for (const entry of this.messageLedger.listUndelivered()) {
832
- try {
833
- if (entry.deliveryUncertain) {
834
- this.log(`telegram delivery requires reconciliation key=${entry.key} state=${entry.state} next_chunk_index=${entry.nextChunkIndex ?? 0}`);
835
- continue;
836
- }
837
- if (entry.key.startsWith('outbound:') && entry.state === 'ready') {
838
- // Personal turn recovery belongs to mailbox reconciliation, which checks the current person
839
- // and input before sending. Gateway startup cannot establish that authority.
840
- if (entry.idempotencyKey && (0, personal_turns_js_1.isPersonalTurnTextKey)(entry.idempotencyKey))
841
- continue;
842
- const chatId = entry.deliveryTarget?.slice('telegram:'.length);
843
- if (!entry.deliveryTarget?.startsWith('telegram:') || !chatId) {
844
- throw new Error('Telegram outbound entry has no valid destination');
845
- }
846
- if (!this.config.allowedChats?.includes(chatId)) {
847
- const recipient = this.registry.resolveByExternal('telegram', 'private', chatId);
848
- if (recipient?.kind !== 'member' || recipient.status !== 'active')
849
- continue;
850
- }
851
- await this.runInChatQueue(chatId, () => this.deliverOutboundEntry(entry.key, chatId));
852
- continue;
853
- }
854
- if (!entry.key.startsWith('telegram:'))
855
- continue;
856
- const intake = await this.responseIntake(entry.key);
857
- if (entry.state === 'ready' && entry.response !== undefined) {
858
- await this.deliverReadyEntry(entry.key);
859
- continue;
923
+ for (const entry of this.messageLedger.listUndelivered())
924
+ await this.recoverEntry(entry);
925
+ }
926
+ /**
927
+ * Recover one owner message as startup recovery does, for an input parked uncertain while the
928
+ * daemon runs (a turn stopped with /stop, or timed out): every other message still in flight
929
+ * keeps its turn and its answer.
930
+ */
931
+ async recoverResponse(sourceRef) {
932
+ const entry = this.messageLedger.get(sourceRef);
933
+ if (entry && entry.state !== 'delivered')
934
+ await this.recoverEntry(entry);
935
+ }
936
+ async recoverEntry(entry) {
937
+ try {
938
+ if (entry.deliveryUncertain) {
939
+ this.log(`telegram delivery requires reconciliation key=${entry.key} state=${entry.state} next_chunk_index=${entry.nextChunkIndex ?? 0}`);
940
+ return;
941
+ }
942
+ if (entry.key.startsWith('outbound:') && entry.state === 'ready') {
943
+ // Personal turn recovery belongs to mailbox reconciliation, which checks the current person
944
+ // and input before sending. Gateway startup cannot establish that authority.
945
+ if (entry.idempotencyKey && (0, personal_turns_js_1.isPersonalTurnTextKey)(entry.idempotencyKey))
946
+ return;
947
+ const chatId = entry.deliveryTarget?.slice('telegram:'.length);
948
+ if (!entry.deliveryTarget?.startsWith('telegram:') || !chatId) {
949
+ throw new Error('Telegram outbound entry has no valid destination');
860
950
  }
861
- if (entry.state === 'processing' && !intake.isPending?.(entry.key)) {
862
- await this.interruptResponse(entry.key);
951
+ if (!this.config.allowedChats?.includes(chatId)) {
952
+ const recipient = this.registry.resolveByExternal('telegram', 'private', chatId);
953
+ if (recipient?.kind !== 'member' || recipient.status !== 'active')
954
+ return;
863
955
  }
956
+ await this.runInChatQueue(chatId, () => this.deliverOutboundEntry(entry.key, chatId));
957
+ return;
864
958
  }
865
- catch (error) {
866
- // Delivery already recorded its progress; one entry must not keep polling from starting.
867
- this.log(`telegram recovery failed key=${entry.key} error=${telegramErrorMessage(error)}`);
959
+ if (!entry.key.startsWith('telegram:'))
960
+ return;
961
+ const intake = await this.responseIntake(entry.key);
962
+ if (entry.state === 'ready' && entry.response !== undefined) {
963
+ await this.deliverReadyEntry(entry.key);
964
+ return;
965
+ }
966
+ if (entry.state === 'processing' && !intake.isPending?.(entry.key)) {
967
+ await this.interruptResponse(entry.key);
868
968
  }
869
969
  }
970
+ catch (error) {
971
+ // Delivery already recorded its progress; one entry must not keep polling from starting.
972
+ this.log(`telegram recovery failed key=${entry.key} error=${telegramErrorMessage(error)}`);
973
+ }
870
974
  }
871
975
  async sendMessageNow(chatId, text, idempotencyKey) {
872
976
  if (!this.bot)
@@ -1 +1 @@
1
- {"version":3,"file":"telegram.js","sourceRoot":"","sources":["../../src/gateways/telegram.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"telegram.js","sourceRoot":"","sources":["../../src/gateways/telegram.ts"],"names":[],"mappings":"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"}
@@ -72,5 +72,16 @@ export interface SessionDirectory {
72
72
  }
73
73
  /** Kept as the neutral name used by gateway consumers. */
74
74
  export type TurnProcessor = TurnIntake;
75
+ /**
76
+ * The conversation a chat's messages run in: the common session (owners in the common group),
77
+ * or a member's own session for their DM or for a group they write in.
78
+ */
79
+ export type ConversationTarget = {
80
+ kind: 'common';
81
+ } | {
82
+ kind: 'member';
83
+ principalId: string;
84
+ room?: string;
85
+ };
75
86
  export type { NativeTurnResultRecord, NormalizedMessage };
76
87
  //# sourceMappingURL=turn-contract.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"turn-contract.d.ts","sourceRoot":"","sources":["../../src/gateways/turn-contract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"turn-contract.d.ts","sourceRoot":"","sources":["../../src/gateways/turn-contract.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAClE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAC;AAC9E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qDAAqD,CAAC;AAClG,OAAO,KAAK,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEnE,kFAAkF;AAClF,MAAM,WAAW,iBAAiB;IAChC,gGAAgG;IAChG,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,iEAAiE;IACjE,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,OAAO,CAAC,EAAE,SAAS,CAAC;CACrB;AAED,MAAM,WAAW,UAAU;IACzB,6FAA6F;IAC7F,aAAa,CAAC,IAAI,OAAO,CAAC;IAC1B,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,GAAG,eAAe,CAAC;IAC9D,gBAAgB,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,CAAC;IAC/C,sFAAsF;IACtF,eAAe,CAAC,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC;IACpD,SAAS,CAAC,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC;IAC9C,wEAAwE;IACxE,WAAW,CAAC,CAAC,gBAAgB,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;CAC5D;AAED,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,OAAO,GAAG,MAAM,CAAC;IACzB,gBAAgB,EAAE,OAAO,CAAC;CAC3B;AAED,wFAAwF;AACxF,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,iBAAiB,CAAC;IAC3B,KAAK,EAAE,IAAI,CAAC,eAAe,EAAE,MAAM,GAAG,YAAY,GAAG,kBAAkB,CAAC,CAAC;CAC1E;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,cAAc,GACtB;IAAE,MAAM,EAAE,WAAW,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GAC3C;IAAE,MAAM,EAAE,aAAa,CAAC;IAAC,MAAM,EAAE,gBAAgB,GAAG,eAAe,CAAA;CAAE,CAAC;AAE1E,MAAM,WAAW,aAAc,SAAQ,eAAe;IACpD,OAAO,EAAE,WAAW,CAAC;IACrB,UAAU,EAAE,cAAc,CAAC;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,eAAgB,SAAQ,eAAe;IACtD,OAAO,EAAE,cAAc,CAAC;IACxB,QAAQ,EAAE,EAAE,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,qBAAqB,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,MAAM,gBAAgB,GAAG,aAAa,GAAG,eAAe,CAAC;AAE/D,MAAM,WAAW,gBAAgB;IAC/B,YAAY,CACV,MAAM,EAAE,aAAa,GACpB,aAAa,CAAC;QAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC,CAAC;IACvF,iBAAiB,CAAC,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC;CAC3F;AAED,0DAA0D;AAC1D,MAAM,MAAM,aAAa,GAAG,UAAU,CAAC;AAEvC;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAC1B;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,GAClB;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE3D,YAAY,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,CAAC"}
@@ -23,7 +23,7 @@ import { type DriveDeliveryPorts } from '../api/drive-delivery.js';
23
23
  import type { StoredSourceReader } from '../api/stored-source-reader.js';
24
24
  import { type WikiPorts } from '../api/wiki-actions.js';
25
25
  import { LOADABLE_CONNECTORS as OWNER_CONNECTORS } from '../connectors/index.js';
26
- declare const OWNER_ACTIONS: readonly ["skill.list", "skill.read", "skill.publish", "skill.unpublish", "member.directory", "member.notice", "document.render", "code_act", "graph.query", "source.search", "source.recent", "schedule.upcoming", "source.read", "trello.read", "drive.read", "drive.download", "judge", "owner.timezone.set", "manage.member.grant", "manage.member.revoke", "manage.member.suspend", "manage.member.resume", "manage.member.offboard", "manage.member.list", "manage.member.name", "manage.member.enroll", "owner.messages", "memory.checkpoint.list", "memory.checkpoint.save", "work.create", "work.revise", "work.link", "work.list", "work.show", "work.no_update", "help", "memory.save", "memory.search", "memory.read:provenance", "memory.read:record", "memory.read:timeline", "memory.retire", "report.read", "report.publish", "manage.wiki.move", "manage.policy.read", "manage.policy.update", "manage.wiki.publish", "manage.wiki.read", "manage.wiki.update", "source.attachment.list", "source.attachment.download", "deliver.telegram.file", "deliver.discord.file", "deliver.slack.file", "deliver.drive.file"];
26
+ declare const OWNER_ACTIONS: readonly ["skill.list", "skill.read", "skill.publish", "skill.unpublish", "member.directory", "member.notice", "document.render", "code_act", "graph.query", "source.search", "source.recent", "schedule.upcoming", "source.read", "trello.read", "drive.read", "drive.download", "google.read", "judge", "owner.timezone.set", "manage.member.grant", "manage.member.revoke", "manage.member.suspend", "manage.member.resume", "manage.member.offboard", "manage.member.list", "manage.member.name", "manage.member.enroll", "owner.messages", "memory.checkpoint.list", "memory.checkpoint.save", "work.create", "work.revise", "work.link", "work.list", "work.show", "work.no_update", "help", "memory.save", "memory.search", "memory.read:provenance", "memory.read:record", "memory.read:timeline", "memory.retire", "report.read", "report.publish", "manage.wiki.move", "manage.policy.read", "manage.policy.update", "manage.wiki.publish", "manage.wiki.read", "manage.wiki.update", "source.attachment.list", "source.attachment.download", "deliver.telegram.file", "deliver.discord.file", "deliver.slack.file", "deliver.drive.file"];
27
27
  /** The member role: Telegram file delivery honours the caller's DM. Exact catalog names only. */
28
28
  export declare const MEMBER_ACTIONS: readonly ["skill.list", "skill.read", "document.render", "schedule.job.create", "schedule.job.list", "schedule.job.update", "schedule.job.delete", "graph.query", "work.list", "work.show", "memory.search", "memory.read:provenance", "memory.read:record", "memory.read:timeline", "source.search", "source.read", "source.recent", "source.attachment.list", "source.attachment.download", "deliver.telegram.file", "trello.read", "schedule.upcoming", "judge", "memory.save", "memory.share", "records.export", "records.erase", "memory.retire", "memory.checkpoint.list", "memory.checkpoint.save", "help", "code_act"];
29
29
  export interface HostToolDefinition {
@@ -1 +1 @@
1
- {"version":3,"file":"action-surface.d.ts","sourceRoot":"","sources":["../../src/runtime/action-surface.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"action-surface.d.ts","sourceRoot":"","sources":["../../src/runtime/action-surface.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,7 @@ const native_tool_trace_observer_1 = require("@jungjaehoon/mama-core/runtime/nat
19
19
  const outbound_attempts_js_1 = require("./outbound-attempts.js");
20
20
  const mama_core_1 = require("@jungjaehoon/mama-core");
21
21
  const node_crypto_1 = require("node:crypto");
22
+ const node_path_1 = require("node:path");
22
23
  const report_actions_js_1 = require("../api/report-actions.js");
23
24
  const report_handler_js_1 = require("../api/report-handler.js");
24
25
  const attachment_actions_js_1 = require("../api/attachment-actions.js");
@@ -34,6 +35,7 @@ const owner_message_actions_js_1 = require("../api/owner-message-actions.js");
34
35
  const report_source_actions_js_1 = require("../api/report-source-actions.js");
35
36
  const trello_actions_js_1 = require("../api/trello-actions.js");
36
37
  const drive_actions_js_1 = require("../api/drive-actions.js");
38
+ const google_read_actions_js_1 = require("../api/google-read-actions.js");
37
39
  const drive_delivery_js_1 = require("../api/drive-delivery.js");
38
40
  const work_actions_js_1 = require("../api/work-actions.js");
39
41
  const wiki_actions_js_1 = require("../api/wiki-actions.js");
@@ -57,6 +59,7 @@ const OWNER_ACTIONS = [
57
59
  'trello.read',
58
60
  'drive.read',
59
61
  'drive.download',
62
+ 'google.read',
60
63
  'judge',
61
64
  'owner.timezone.set',
62
65
  ...member_lifecycle_js_1.MEMBER_MANAGEMENT_ACTIONS,
@@ -413,6 +416,10 @@ function createActionSurface(options) {
413
416
  ? {}
414
417
  : { principalPaths: options.attachmentPorts.principalPaths }),
415
418
  }),
419
+ // Gmail, Calendar, Sheets and Docs as text, through the same daemon-held gws sign-in.
420
+ ...(0, google_read_actions_js_1.googleReadActionRegistrations)({
421
+ scratchDir: (0, node_path_1.join)(options.runtimeRoot, 'runtime', 'google-read'),
422
+ }),
416
423
  ...(options.driveDelivery === undefined
417
424
  ? []
418
425
  : (0, drive_delivery_js_1.driveDeliveryActionRegistrations)({
@@ -483,11 +490,14 @@ function createActionSurface(options) {
483
490
  result,
484
491
  });
485
492
  }
493
+ const evidence = result.status === 'completed' ? (0, source_actions_js_1.readReceiptEvidence)(action, result.data) : undefined;
486
494
  const common = {
487
495
  tool_name: action,
488
496
  gateway_call_id: session?.gatewayCallId ?? null,
489
497
  input_summary: (0, trace_summary_1.traceSummary)(caller ? { callerPrincipalId: caller, input } : input),
490
498
  output_summary: (0, trace_summary_1.traceSummary)(result),
499
+ // The write-back read receipt (U2): the full handles, not the bounded output_summary.
500
+ ...(evidence === undefined ? {} : { evidence_json: evidence }),
491
501
  execution_status: result.status,
492
502
  duration_ms: durationMs,
493
503
  ...(result.status === 'failed' ? { failure_code: result.error.code } : {}),