@rubytech/create-maxy-code 0.1.423 → 0.1.427

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 (306) hide show
  1. package/package.json +1 -1
  2. package/payload/platform/neo4j/schema.cypher +13 -0
  3. package/payload/platform/plugins/admin/.claude-plugin/plugin.json +1 -1
  4. package/payload/platform/plugins/admin/PLUGIN.md +5 -1
  5. package/payload/platform/plugins/admin/hooks/__tests__/datetime-inject.test.sh +119 -0
  6. package/payload/platform/plugins/admin/hooks/datetime-inject.sh +115 -0
  7. package/payload/platform/plugins/admin/mcp/dist/index.js +62 -4
  8. package/payload/platform/plugins/admin/mcp/dist/index.js.map +1 -1
  9. package/payload/platform/plugins/admin/mcp/dist/tools/account-lifecycle.d.ts +44 -0
  10. package/payload/platform/plugins/admin/mcp/dist/tools/account-lifecycle.d.ts.map +1 -1
  11. package/payload/platform/plugins/admin/mcp/dist/tools/account-lifecycle.js +96 -0
  12. package/payload/platform/plugins/admin/mcp/dist/tools/account-lifecycle.js.map +1 -1
  13. package/payload/platform/plugins/admin/skills/datetime/SKILL.md +9 -2
  14. package/payload/platform/plugins/admin/skills/platform-architecture/SKILL.md +14 -2
  15. package/payload/platform/plugins/docs/references/cross-account-authority.md +8 -0
  16. package/payload/platform/plugins/docs/references/internals.md +4 -0
  17. package/payload/platform/plugins/docs/references/plugins-guide.md +1 -1
  18. package/payload/platform/plugins/email/PLUGIN.md +2 -2
  19. package/payload/platform/plugins/email/mcp/dist/__tests__/imap-drafts.test.js +73 -4
  20. package/payload/platform/plugins/email/mcp/dist/__tests__/imap-drafts.test.js.map +1 -1
  21. package/payload/platform/plugins/email/mcp/dist/__tests__/mailbox-resolve.test.js +42 -1
  22. package/payload/platform/plugins/email/mcp/dist/__tests__/mailbox-resolve.test.js.map +1 -1
  23. package/payload/platform/plugins/email/mcp/dist/index.js +1 -0
  24. package/payload/platform/plugins/email/mcp/dist/index.js.map +1 -1
  25. package/payload/platform/plugins/email/mcp/dist/lib/credentials.d.ts +4 -0
  26. package/payload/platform/plugins/email/mcp/dist/lib/credentials.d.ts.map +1 -1
  27. package/payload/platform/plugins/email/mcp/dist/lib/credentials.js +5 -0
  28. package/payload/platform/plugins/email/mcp/dist/lib/credentials.js.map +1 -1
  29. package/payload/platform/plugins/email/mcp/dist/lib/imap.d.ts +25 -3
  30. package/payload/platform/plugins/email/mcp/dist/lib/imap.d.ts.map +1 -1
  31. package/payload/platform/plugins/email/mcp/dist/lib/imap.js +67 -12
  32. package/payload/platform/plugins/email/mcp/dist/lib/imap.js.map +1 -1
  33. package/payload/platform/plugins/email/mcp/dist/tools/email-setup.d.ts +1 -0
  34. package/payload/platform/plugins/email/mcp/dist/tools/email-setup.d.ts.map +1 -1
  35. package/payload/platform/plugins/email/mcp/dist/tools/email-setup.js +1 -0
  36. package/payload/platform/plugins/email/mcp/dist/tools/email-setup.js.map +1 -1
  37. package/payload/platform/plugins/email/references/email-reference.md +8 -0
  38. package/payload/platform/plugins/scheduling/PLUGIN.md +1 -1
  39. package/payload/platform/plugins/scheduling/mcp/dist/index.js +5 -2
  40. package/payload/platform/plugins/scheduling/mcp/dist/index.js.map +1 -1
  41. package/payload/platform/plugins/scheduling/mcp/dist/lib/__tests__/agent-dispatch.test.js +50 -1
  42. package/payload/platform/plugins/scheduling/mcp/dist/lib/__tests__/agent-dispatch.test.js.map +1 -1
  43. package/payload/platform/plugins/scheduling/mcp/dist/lib/__tests__/scheduled-seat-id.test.d.ts +2 -0
  44. package/payload/platform/plugins/scheduling/mcp/dist/lib/__tests__/scheduled-seat-id.test.d.ts.map +1 -0
  45. package/payload/platform/plugins/scheduling/mcp/dist/lib/__tests__/scheduled-seat-id.test.js +22 -0
  46. package/payload/platform/plugins/scheduling/mcp/dist/lib/__tests__/scheduled-seat-id.test.js.map +1 -0
  47. package/payload/platform/plugins/scheduling/mcp/dist/lib/agent-dispatch.d.ts +35 -0
  48. package/payload/platform/plugins/scheduling/mcp/dist/lib/agent-dispatch.d.ts.map +1 -1
  49. package/payload/platform/plugins/scheduling/mcp/dist/lib/agent-dispatch.js +36 -0
  50. package/payload/platform/plugins/scheduling/mcp/dist/lib/agent-dispatch.js.map +1 -1
  51. package/payload/platform/plugins/scheduling/mcp/dist/lib/scheduled-seat-id.d.ts +11 -0
  52. package/payload/platform/plugins/scheduling/mcp/dist/lib/scheduled-seat-id.d.ts.map +1 -0
  53. package/payload/platform/plugins/scheduling/mcp/dist/lib/scheduled-seat-id.js +19 -0
  54. package/payload/platform/plugins/scheduling/mcp/dist/lib/scheduled-seat-id.js.map +1 -0
  55. package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/agent-turn-dispatch.test.js +85 -3
  56. package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/agent-turn-dispatch.test.js.map +1 -1
  57. package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/standing-audit.test.js +32 -1
  58. package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/standing-audit.test.js.map +1 -1
  59. package/payload/platform/plugins/scheduling/mcp/dist/scripts/agent-turn-dispatch.d.ts +14 -1
  60. package/payload/platform/plugins/scheduling/mcp/dist/scripts/agent-turn-dispatch.d.ts.map +1 -1
  61. package/payload/platform/plugins/scheduling/mcp/dist/scripts/agent-turn-dispatch.js +94 -4
  62. package/payload/platform/plugins/scheduling/mcp/dist/scripts/agent-turn-dispatch.js.map +1 -1
  63. package/payload/platform/plugins/scheduling/mcp/dist/scripts/check-due-events.js +23 -7
  64. package/payload/platform/plugins/scheduling/mcp/dist/scripts/check-due-events.js.map +1 -1
  65. package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-cancel.test.d.ts +2 -0
  66. package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-cancel.test.d.ts.map +1 -0
  67. package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-cancel.test.js +30 -0
  68. package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-cancel.test.js.map +1 -0
  69. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-cancel.d.ts +29 -0
  70. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-cancel.d.ts.map +1 -1
  71. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-cancel.js +47 -2
  72. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-cancel.js.map +1 -1
  73. package/payload/platform/plugins/whatsapp/PLUGIN.md +2 -0
  74. package/payload/platform/plugins/whatsapp/mcp/dist/__tests__/caller-scope-headers.test.d.ts +2 -0
  75. package/payload/platform/plugins/whatsapp/mcp/dist/__tests__/caller-scope-headers.test.d.ts.map +1 -0
  76. package/payload/platform/plugins/whatsapp/mcp/dist/__tests__/caller-scope-headers.test.js +20 -0
  77. package/payload/platform/plugins/whatsapp/mcp/dist/__tests__/caller-scope-headers.test.js.map +1 -0
  78. package/payload/platform/plugins/whatsapp/mcp/dist/call-api.d.ts +1 -1
  79. package/payload/platform/plugins/whatsapp/mcp/dist/call-api.d.ts.map +1 -1
  80. package/payload/platform/plugins/whatsapp/mcp/dist/call-api.js +5 -2
  81. package/payload/platform/plugins/whatsapp/mcp/dist/call-api.js.map +1 -1
  82. package/payload/platform/plugins/whatsapp/mcp/dist/caller-scope-headers.d.ts +9 -0
  83. package/payload/platform/plugins/whatsapp/mcp/dist/caller-scope-headers.d.ts.map +1 -0
  84. package/payload/platform/plugins/whatsapp/mcp/dist/caller-scope-headers.js +18 -0
  85. package/payload/platform/plugins/whatsapp/mcp/dist/caller-scope-headers.js.map +1 -0
  86. package/payload/platform/plugins/whatsapp/mcp/dist/index.js +13 -11
  87. package/payload/platform/plugins/whatsapp/mcp/dist/index.js.map +1 -1
  88. package/payload/platform/plugins/work/PLUGIN.md +1 -1
  89. package/payload/platform/plugins/work/mcp/dist/__tests__/work-create-assigned-admin-env.test.d.ts +2 -0
  90. package/payload/platform/plugins/work/mcp/dist/__tests__/work-create-assigned-admin-env.test.d.ts.map +1 -0
  91. package/payload/platform/plugins/work/mcp/dist/__tests__/work-create-assigned-admin-env.test.js +72 -0
  92. package/payload/platform/plugins/work/mcp/dist/__tests__/work-create-assigned-admin-env.test.js.map +1 -0
  93. package/payload/platform/plugins/work/mcp/dist/__tests__/work-create-client-fields.test.d.ts +2 -0
  94. package/payload/platform/plugins/work/mcp/dist/__tests__/work-create-client-fields.test.d.ts.map +1 -0
  95. package/payload/platform/plugins/work/mcp/dist/__tests__/work-create-client-fields.test.js +67 -0
  96. package/payload/platform/plugins/work/mcp/dist/__tests__/work-create-client-fields.test.js.map +1 -0
  97. package/payload/platform/plugins/work/mcp/dist/index.js +3 -0
  98. package/payload/platform/plugins/work/mcp/dist/index.js.map +1 -1
  99. package/payload/platform/plugins/work/mcp/dist/tools/work-create.d.ts +6 -0
  100. package/payload/platform/plugins/work/mcp/dist/tools/work-create.d.ts.map +1 -1
  101. package/payload/platform/plugins/work/mcp/dist/tools/work-create.js +34 -1
  102. package/payload/platform/plugins/work/mcp/dist/tools/work-create.js.map +1 -1
  103. package/payload/platform/scripts/lib/provision-account-dir.sh +2 -1
  104. package/payload/platform/services/claude-session-manager/dist/account-admin-census.d.ts +39 -0
  105. package/payload/platform/services/claude-session-manager/dist/account-admin-census.d.ts.map +1 -0
  106. package/payload/platform/services/claude-session-manager/dist/account-admin-census.js +122 -0
  107. package/payload/platform/services/claude-session-manager/dist/account-admin-census.js.map +1 -0
  108. package/payload/platform/services/claude-session-manager/dist/account-timezone.d.ts +40 -0
  109. package/payload/platform/services/claude-session-manager/dist/account-timezone.d.ts.map +1 -0
  110. package/payload/platform/services/claude-session-manager/dist/account-timezone.js +126 -0
  111. package/payload/platform/services/claude-session-manager/dist/account-timezone.js.map +1 -0
  112. package/payload/platform/services/claude-session-manager/dist/canonical-tool-names.generated.d.ts.map +1 -1
  113. package/payload/platform/services/claude-session-manager/dist/canonical-tool-names.generated.js +1 -0
  114. package/payload/platform/services/claude-session-manager/dist/canonical-tool-names.generated.js.map +1 -1
  115. package/payload/platform/services/claude-session-manager/dist/http-server.d.ts.map +1 -1
  116. package/payload/platform/services/claude-session-manager/dist/http-server.js +18 -1
  117. package/payload/platform/services/claude-session-manager/dist/http-server.js.map +1 -1
  118. package/payload/platform/services/claude-session-manager/dist/index.js +13 -0
  119. package/payload/platform/services/claude-session-manager/dist/index.js.map +1 -1
  120. package/payload/platform/services/claude-session-manager/dist/pty-spawner.d.ts +11 -0
  121. package/payload/platform/services/claude-session-manager/dist/pty-spawner.d.ts.map +1 -1
  122. package/payload/platform/services/claude-session-manager/dist/pty-spawner.js +28 -0
  123. package/payload/platform/services/claude-session-manager/dist/pty-spawner.js.map +1 -1
  124. package/payload/platform/services/telegram-channel/dist/instructions.d.ts.map +1 -1
  125. package/payload/platform/services/telegram-channel/dist/instructions.js +8 -1
  126. package/payload/platform/services/telegram-channel/dist/instructions.js.map +1 -1
  127. package/payload/platform/services/telegram-channel/dist/notification.d.ts +22 -0
  128. package/payload/platform/services/telegram-channel/dist/notification.d.ts.map +1 -1
  129. package/payload/platform/services/telegram-channel/dist/notification.js +22 -1
  130. package/payload/platform/services/telegram-channel/dist/notification.js.map +1 -1
  131. package/payload/platform/services/webchat-channel/dist/instructions.d.ts.map +1 -1
  132. package/payload/platform/services/webchat-channel/dist/instructions.js +8 -1
  133. package/payload/platform/services/webchat-channel/dist/instructions.js.map +1 -1
  134. package/payload/platform/services/webchat-channel/dist/notification.d.ts +22 -0
  135. package/payload/platform/services/webchat-channel/dist/notification.d.ts.map +1 -1
  136. package/payload/platform/services/webchat-channel/dist/notification.js +22 -1
  137. package/payload/platform/services/webchat-channel/dist/notification.js.map +1 -1
  138. package/payload/platform/services/whatsapp-channel/dist/notification.d.ts +28 -2
  139. package/payload/platform/services/whatsapp-channel/dist/notification.d.ts.map +1 -1
  140. package/payload/platform/services/whatsapp-channel/dist/notification.js +32 -3
  141. package/payload/platform/services/whatsapp-channel/dist/notification.js.map +1 -1
  142. package/payload/platform/templates/account.json +2 -1
  143. package/payload/platform/templates/agents/admin/IDENTITY.md +1 -1
  144. package/payload/server/public/assets/{AdminLoginScreens-B1P6PrZ3.js → AdminLoginScreens-yAIhWcGc.js} +1 -1
  145. package/payload/server/public/assets/AdminShell-Bk1AFQ4D.js +2 -0
  146. package/payload/server/public/assets/{Checkbox-CgCqOslz.js → Checkbox-B_lfjsqd.js} +1 -1
  147. package/payload/server/public/assets/Transcript-D67OZnVM.js +2 -0
  148. package/payload/server/public/assets/admin-DuOhkvrZ.js +1 -0
  149. package/payload/server/public/assets/{arc-DyzjCWmw.js → arc-dVLpR-ec.js} +1 -1
  150. package/payload/server/public/assets/architecture-YZFGNWBL-CgeA3HPD.js +1 -0
  151. package/payload/server/public/assets/{architectureDiagram-Q4EWVU46-qWfElD16.js → architectureDiagram-Q4EWVU46-C6u_CVzb.js} +1 -1
  152. package/payload/server/public/assets/{blockDiagram-DXYQGD6D-DO2fFHC3.js → blockDiagram-DXYQGD6D-Cy8F5b8O.js} +1 -1
  153. package/payload/server/public/assets/browser-CCWufeXr.js +1 -0
  154. package/payload/server/public/assets/{c4Diagram-AHTNJAMY-Ca-q5gDe.js → c4Diagram-AHTNJAMY-DRXrlepj.js} +1 -1
  155. package/payload/server/public/assets/calendar-CNk1iPrA.js +1 -0
  156. package/payload/server/public/assets/channel-B04VBWf7.js +1 -0
  157. package/payload/server/public/assets/chat-7qB-dwBq.js +1 -0
  158. package/payload/server/public/assets/chevron-left-CpcDbHIz.js +1 -0
  159. package/payload/server/public/assets/{chunk-2KRD3SAO-CX2PxuDw.js → chunk-2KRD3SAO-fEyfhRLz.js} +1 -1
  160. package/payload/server/public/assets/{chunk-336JU56O-D8l6U4Ne.js → chunk-336JU56O-NUWO4y7q.js} +2 -2
  161. package/payload/server/public/assets/chunk-426QAEUC-DZkHcXRA.js +1 -0
  162. package/payload/server/public/assets/{chunk-4BX2VUAB-CG32Lkbh.js → chunk-4BX2VUAB-BnfiNR3l.js} +1 -1
  163. package/payload/server/public/assets/{chunk-4TB4RGXK-BnAQbO-v.js → chunk-4TB4RGXK-Bj_aJOz8.js} +1 -1
  164. package/payload/server/public/assets/{chunk-55IACEB6-ejqRH2M5.js → chunk-55IACEB6-aK0DNSKb.js} +1 -1
  165. package/payload/server/public/assets/{chunk-5FUZZQ4R-ClkicQ-T.js → chunk-5FUZZQ4R-DeqAkq5C.js} +1 -1
  166. package/payload/server/public/assets/{chunk-5PVQY5BW-Be-mE_rx.js → chunk-5PVQY5BW-SShlujAQ.js} +1 -1
  167. package/payload/server/public/assets/{chunk-67CJDMHE-DPsemed2.js → chunk-67CJDMHE-CZpzQ0DL.js} +1 -1
  168. package/payload/server/public/assets/{chunk-7N4EOEYR-BQRQJETl.js → chunk-7N4EOEYR-COnjO6jy.js} +1 -1
  169. package/payload/server/public/assets/{chunk-AA7GKIK3-B1wcAVCK.js → chunk-AA7GKIK3-C9V31L2z.js} +1 -1
  170. package/payload/server/public/assets/{chunk-BSJP7CBP-DIua053h.js → chunk-BSJP7CBP-DSwnSGe3.js} +1 -1
  171. package/payload/server/public/assets/{chunk-CIAEETIT-C9GHSCS9.js → chunk-CIAEETIT-CnRUTuta.js} +1 -1
  172. package/payload/server/public/assets/{chunk-EDXVE4YY-C1T3l1xj.js → chunk-EDXVE4YY-BexiL2LH.js} +1 -1
  173. package/payload/server/public/assets/{chunk-ENJZ2VHE-8kPcXEQC.js → chunk-ENJZ2VHE-aTklWdJQ.js} +1 -1
  174. package/payload/server/public/assets/{chunk-FMBD7UC4-Bhoeq9sD.js → chunk-FMBD7UC4-svcEBQzs.js} +1 -1
  175. package/payload/server/public/assets/{chunk-FOC6F5B3-BIBpJi8I.js → chunk-FOC6F5B3-CG7R7Xri.js} +1 -1
  176. package/payload/server/public/assets/{chunk-ICPOFSXX-DELXp6fj.js → chunk-ICPOFSXX-CGN7Z4x9.js} +2 -2
  177. package/payload/server/public/assets/{chunk-K5T4RW27-DdckXldP.js → chunk-K5T4RW27-CWBh78jw.js} +1 -1
  178. package/payload/server/public/assets/{chunk-KGLVRYIC-BJhXejKT.js → chunk-KGLVRYIC-Ctiq4q-5.js} +1 -1
  179. package/payload/server/public/assets/{chunk-LIHQZDEY-BSd8nyM2.js → chunk-LIHQZDEY-BII77Q7K.js} +1 -1
  180. package/payload/server/public/assets/{chunk-ORNJ4GCN-CBi55uxq.js → chunk-ORNJ4GCN-DT7R01H8.js} +1 -1
  181. package/payload/server/public/assets/{chunk-OYMX7WX6-Dfbzl8xh.js → chunk-OYMX7WX6-y-Jkbd4C.js} +1 -1
  182. package/payload/server/public/assets/chunk-QZHKN3VN-D9Mwgzti.js +1 -0
  183. package/payload/server/public/assets/{chunk-U2HBQHQK-BN1w8_Cq.js → chunk-U2HBQHQK-DzFo6KbQ.js} +1 -1
  184. package/payload/server/public/assets/{chunk-X2U36JSP-CrRay1NJ.js → chunk-X2U36JSP-CYSwgtLV.js} +1 -1
  185. package/payload/server/public/assets/{chunk-XPW4576I-C_ZE776O.js → chunk-XPW4576I-DHlM4tOn.js} +1 -1
  186. package/payload/server/public/assets/{chunk-YZCP3GAM-CUSlqWBY.js → chunk-YZCP3GAM-B20rTmLl.js} +1 -1
  187. package/payload/server/public/assets/{chunk-ZZ45TVLE-BdPUfSiD.js → chunk-ZZ45TVLE-C7hP4J8m.js} +1 -1
  188. package/payload/server/public/assets/classDiagram-6PBFFD2Q-CIo_TzfF.js +1 -0
  189. package/payload/server/public/assets/classDiagram-v2-HSJHXN6E-SzQYvAUZ.js +1 -0
  190. package/payload/server/public/assets/clone-BVjcjsBA.js +1 -0
  191. package/payload/server/public/assets/{cose-bilkent-S5V4N54A-D4E9htTz.js → cose-bilkent-S5V4N54A-nKjTv9sR.js} +1 -1
  192. package/payload/server/public/assets/{dagre-D1B5TQL1.js → dagre-Cx8LiiUZ.js} +1 -1
  193. package/payload/server/public/assets/{dagre-KV5264BT-ByuvYV7N.js → dagre-KV5264BT-BNJYTnls.js} +1 -1
  194. package/payload/server/public/assets/data-BnHcS27X.js +1 -0
  195. package/payload/server/public/assets/{diagram-5BDNPKRD-B-0KduTa.js → diagram-5BDNPKRD-CoAN5_f9.js} +1 -1
  196. package/payload/server/public/assets/{diagram-G4DWMVQ6-CSQmo3eB.js → diagram-G4DWMVQ6-pRmsN4_x.js} +1 -1
  197. package/payload/server/public/assets/{diagram-MMDJMWI5-DK0kWiB3.js → diagram-MMDJMWI5-CRoylyp4.js} +1 -1
  198. package/payload/server/public/assets/{diagram-TYMM5635-CYbK2reZ.js → diagram-TYMM5635-BT3ZtG5b.js} +1 -1
  199. package/payload/server/public/assets/{dist-CADCHk0t.js → dist-CRpLAnCP.js} +1 -1
  200. package/payload/server/public/assets/{erDiagram-SMLLAGMA-C-JQHvJF.js → erDiagram-SMLLAGMA-DSKws1ZV.js} +1 -1
  201. package/payload/server/public/assets/file-download-Hf_UILaA.js +1 -0
  202. package/payload/server/public/assets/{flatten-ROVzlo1u.js → flatten-jn8bZgcI.js} +1 -1
  203. package/payload/server/public/assets/{flowDiagram-DWJPFMVM-OTOd2czg.js → flowDiagram-DWJPFMVM-C2L38ZE5.js} +1 -1
  204. package/payload/server/public/assets/{ganttDiagram-T4ZO3ILL-BWJ778ou.js → ganttDiagram-T4ZO3ILL-Bm2h-vjm.js} +1 -1
  205. package/payload/server/public/assets/gitGraph-7Q5UKJZL-DzQ18i0T.js +1 -0
  206. package/payload/server/public/assets/{gitGraphDiagram-UUTBAWPF-CkNcyISe.js → gitGraphDiagram-UUTBAWPF-BoowbF7u.js} +1 -1
  207. package/payload/server/public/assets/graph-klLugHEK.js +51 -0
  208. package/payload/server/public/assets/{graph-labels-BfG6FO25.js → graph-labels-BLx-0vyT.js} +1 -1
  209. package/payload/server/public/assets/{graphlib-8z59Ng6C.js → graphlib-BvT2s_o1.js} +1 -1
  210. package/payload/server/public/assets/info-OMHHGYJF-CwsoaVzV.js +1 -0
  211. package/payload/server/public/assets/infoDiagram-42DDH7IO-ieNsH2bV.js +2 -0
  212. package/payload/server/public/assets/{isEmpty-DXf_sApt.js → isEmpty-Dkk6_L-B.js} +1 -1
  213. package/payload/server/public/assets/{ishikawaDiagram-UXIWVN3A-Cg7pRRGp.js → ishikawaDiagram-UXIWVN3A-nxcmj-IX.js} +1 -1
  214. package/payload/server/public/assets/{journeyDiagram-VCZTEJTY-CZT_4r_Z.js → journeyDiagram-VCZTEJTY-q5SNIvmS.js} +1 -1
  215. package/payload/server/public/assets/{kanban-definition-6JOO6SKY-Dp1Vd5YM.js → kanban-definition-6JOO6SKY-BugG9Q1o.js} +1 -1
  216. package/payload/server/public/assets/{line-UPAcwY66.js → line-MZCQLR-q.js} +1 -1
  217. package/payload/server/public/assets/{linear-BeeahLKw.js → linear-DmQGNk-g.js} +1 -1
  218. package/payload/server/public/assets/{maximize-2-DrBaKD3z.js → maximize-2-CnNQnj_v.js} +1 -1
  219. package/payload/server/public/assets/{mermaid-parser.core-CLKle8df.js → mermaid-parser.core-DvoeqLxw.js} +2 -2
  220. package/payload/server/public/assets/{mermaid.core-CwRj5rL5.js → mermaid.core-BLaw7iG4.js} +3 -3
  221. package/payload/server/public/assets/{mindmap-definition-QFDTVHPH-CNQUY9UJ.js → mindmap-definition-QFDTVHPH-DMkt10Vc.js} +1 -1
  222. package/payload/server/public/assets/operator-CRcySYv9.js +1 -0
  223. package/payload/server/public/assets/{ordinal-B2r5L1v4.js → ordinal-DuJYM7p1.js} +1 -1
  224. package/payload/server/public/assets/packet-4T2RLAQJ-DxB-bO4L.js +1 -0
  225. package/payload/server/public/assets/page-CVo3CWIY.js +1 -0
  226. package/payload/server/public/assets/page-DPTbZRwl.js +32 -0
  227. package/payload/server/public/assets/{pdf-render-m08Xm2Nm.js → pdf-render-riHufgrn.js} +1 -1
  228. package/payload/server/public/assets/pie-ZZUOXDRM-PSdKvB8-.js +1 -0
  229. package/payload/server/public/assets/{pieDiagram-DEJITSTG-Scnq58FX.js → pieDiagram-DEJITSTG-DRp4lD2B.js} +1 -1
  230. package/payload/server/public/assets/play-yEkd7ouW.js +1 -0
  231. package/payload/server/public/assets/public-Fi6ccYaE.js +1 -0
  232. package/payload/server/public/assets/{quadrantDiagram-34T5L4WZ-wPfZo_vs.js → quadrantDiagram-34T5L4WZ-DkT63Dn4.js} +1 -1
  233. package/payload/server/public/assets/radar-PYXPWWZC-D8FqRiWq.js +1 -0
  234. package/payload/server/public/assets/{reduce-CFlDlJf5.js → reduce-COyotL2V.js} +1 -1
  235. package/payload/server/public/assets/{requirementDiagram-MS252O5E-yYkH12K2.js → requirementDiagram-MS252O5E-65GGtDkc.js} +1 -1
  236. package/payload/server/public/assets/rotate-ccw-xHksz9mr.js +1 -0
  237. package/payload/server/public/assets/{sankeyDiagram-XADWPNL6-fVWRBzzV.js → sankeyDiagram-XADWPNL6-D1vRwLWd.js} +1 -1
  238. package/payload/server/public/assets/{sequenceDiagram-FGHM5R23-Dbap3X6h.js → sequenceDiagram-FGHM5R23-Bp47ZSN2.js} +1 -1
  239. package/payload/server/public/assets/square-BZqaxg7D.js +1 -0
  240. package/payload/server/public/assets/{src-Bi0fLV9t.js → src-xN1oULc8.js} +1 -1
  241. package/payload/server/public/assets/{stateDiagram-FHFEXIEX-DkPLAqIh.js → stateDiagram-FHFEXIEX-BZHHcP_e.js} +1 -1
  242. package/payload/server/public/assets/stateDiagram-v2-QKLJ7IA2-qVtoGx56.js +1 -0
  243. package/payload/server/public/assets/tasks-COWmfts8.js +1 -0
  244. package/payload/server/public/assets/{timeline-definition-GMOUNBTQ-DabKBJyd.js → timeline-definition-GMOUNBTQ-DZ1wUyj-.js} +1 -1
  245. package/payload/server/public/assets/treeView-SZITEDCU-i-w4rJmQ.js +1 -0
  246. package/payload/server/public/assets/treemap-W4RFUUIX-Dij6AlAj.js +1 -0
  247. package/payload/server/public/assets/useSubAccountSwitcher-DADvGnr1.js +9 -0
  248. package/payload/server/public/assets/useSubAccountSwitcher-ayajZz8T.css +1 -0
  249. package/payload/server/public/assets/{vennDiagram-DHZGUBPP-CaKT7c-c.js → vennDiagram-DHZGUBPP-CttBahsn.js} +1 -1
  250. package/payload/server/public/assets/wardley-RL74JXVD-BJhOQVqW.js +1 -0
  251. package/payload/server/public/assets/{wardleyDiagram-NUSXRM2D-BZ5TTSOL.js → wardleyDiagram-NUSXRM2D-Y5tWieZg.js} +1 -1
  252. package/payload/server/public/assets/{xychartDiagram-5P7HB3ND-CLfeklJ9.js → xychartDiagram-5P7HB3ND-C78A9qbe.js} +1 -1
  253. package/payload/server/public/browser.html +7 -5
  254. package/payload/server/public/calendar.html +8 -6
  255. package/payload/server/public/chat.html +15 -12
  256. package/payload/server/public/data.html +11 -10
  257. package/payload/server/public/graph.html +12 -10
  258. package/payload/server/public/index.html +16 -14
  259. package/payload/server/public/operator.html +17 -14
  260. package/payload/server/public/public.html +15 -12
  261. package/payload/server/public/tasks.html +18 -0
  262. package/payload/server/server.js +604 -224
  263. package/payload/server/public/assets/AdminShell-Y1fHQApK.js +0 -2
  264. package/payload/server/public/assets/Transcript-DZzFjhoq.js +0 -2
  265. package/payload/server/public/assets/admin-BRBjJEci.js +0 -1
  266. package/payload/server/public/assets/architecture-YZFGNWBL-XiVs-N7Z.js +0 -1
  267. package/payload/server/public/assets/browser-ID7iqIi4.js +0 -1
  268. package/payload/server/public/assets/calendar-BEQPMTtd.js +0 -1
  269. package/payload/server/public/assets/channel-CYBkRz7E.js +0 -1
  270. package/payload/server/public/assets/chat-D0GDSWM-.js +0 -1
  271. package/payload/server/public/assets/chevron-left-A0HYKwGY.js +0 -1
  272. package/payload/server/public/assets/chunk-426QAEUC-CPhOHriU.js +0 -1
  273. package/payload/server/public/assets/chunk-QZHKN3VN-CDnAAZVJ.js +0 -1
  274. package/payload/server/public/assets/classDiagram-6PBFFD2Q-BdXUKVrS.js +0 -1
  275. package/payload/server/public/assets/classDiagram-v2-HSJHXN6E-DAq-uJr_.js +0 -1
  276. package/payload/server/public/assets/clone-DQl28-jK.js +0 -1
  277. package/payload/server/public/assets/data-CV38dClT.js +0 -1
  278. package/payload/server/public/assets/gitGraph-7Q5UKJZL-BM-KaDZy.js +0 -1
  279. package/payload/server/public/assets/graph-BK0MjKRy.js +0 -51
  280. package/payload/server/public/assets/info-OMHHGYJF-CtZajyAB.js +0 -1
  281. package/payload/server/public/assets/infoDiagram-42DDH7IO-C-_WYlmI.js +0 -2
  282. package/payload/server/public/assets/operator-CnpNyIJ8.js +0 -1
  283. package/payload/server/public/assets/packet-4T2RLAQJ-T-SYedp7.js +0 -1
  284. package/payload/server/public/assets/page-DC_L-IS1.js +0 -32
  285. package/payload/server/public/assets/page-DKHLflh7.js +0 -1
  286. package/payload/server/public/assets/pie-ZZUOXDRM-BWECFVVd.js +0 -1
  287. package/payload/server/public/assets/public-ByUJr48E.js +0 -1
  288. package/payload/server/public/assets/radar-PYXPWWZC-Dx0YUklX.js +0 -1
  289. package/payload/server/public/assets/rotate-ccw-D45TbeAI.js +0 -1
  290. package/payload/server/public/assets/stateDiagram-v2-QKLJ7IA2-DceWO1u6.js +0 -1
  291. package/payload/server/public/assets/treeView-SZITEDCU-C3197Rac.js +0 -1
  292. package/payload/server/public/assets/treemap-W4RFUUIX-BPrpx29h.js +0 -1
  293. package/payload/server/public/assets/useSubAccountSwitcher-CCn22f98.css +0 -1
  294. package/payload/server/public/assets/useSubAccountSwitcher-CprHkBnZ.js +0 -9
  295. package/payload/server/public/assets/wardley-RL74JXVD-DW4Jlbhw.js +0 -1
  296. /package/payload/server/public/assets/{_baseFor-BVuIxZJh.js → _baseFor-Bjj9It3Q.js} +0 -0
  297. /package/payload/server/public/assets/{admin-types-hioowVct.js → admin-types-ClHBm0ni.js} +0 -0
  298. /package/payload/server/public/assets/{array-B9UHiPd-.js → array-BrrxEo12.js} +0 -0
  299. /package/payload/server/public/assets/{chunk-CAM3fms7.js → chunk-Ck5AOu5v.js} +0 -0
  300. /package/payload/server/public/assets/{cytoscape.esm-D5_TRwB-.js → cytoscape.esm-CTWJxUxo.js} +0 -0
  301. /package/payload/server/public/assets/{defaultLocale-5eAKkKJC.js → defaultLocale-CFDbRV4k.js} +0 -0
  302. /package/payload/server/public/assets/{init-DlZdxViB.js → init-dXCzGgLP.js} +0 -0
  303. /package/payload/server/public/assets/{katex-Xo0SyWvP.js → katex-CHA1JFYJ.js} +0 -0
  304. /package/payload/server/public/assets/{path-6uRLdFF7.js → path-CCRpdXhK.js} +0 -0
  305. /package/payload/server/public/assets/{preload-helper-CvXuAEud.js → preload-helper-CH6UZRzu.js} +0 -0
  306. /package/payload/server/public/assets/{rough.esm-Djo4Abte.js → rough.esm-Bud4g4fh.js} +0 -0
@@ -26,7 +26,7 @@ import { resolve, join } from "node:path";
26
26
  import { homedir } from "node:os";
27
27
  import cronParser from "cron-parser";
28
28
  const { parseExpression } = cronParser;
29
- import { chooseDispatchMode, dispatchAgentTurn, runStandingAudit } from "./agent-turn-dispatch.js";
29
+ import { chooseDispatchMode, dispatchAgentTurn, runStandingAudit, auditSelfCancels } from "./agent-turn-dispatch.js";
30
30
  // ---------------------------------------------------------------------------
31
31
  // Brand-aware config directory — reads configDir from brand.json stamped at install time.
32
32
  // No fallback: if brand.json is missing or incomplete, the platform wasn't properly installed.
@@ -255,11 +255,12 @@ async function dispatchAction(eventId, actionPlugin, actionTool, actionArgs, eve
255
255
  * the caller's `dispatched` counter increments in exactly the same cases as
256
256
  * before.
257
257
  */
258
- async function dispatchDue(eventId, mode, accountId, nextRun, driver) {
258
+ async function dispatchDue(eventId, mode, accountId, nextRun, createdByTool, driver) {
259
259
  if (!accountId)
260
260
  return false;
261
261
  if (mode.kind === "agent") {
262
- await dispatchAgentTurn(eventId, mode.channel, mode.destination, mode.prompt, accountId, nextRun, driver);
262
+ const accountsDir = resolve(process.env.PLATFORM_ROOT, "..", "data/accounts");
263
+ await dispatchAgentTurn(eventId, mode.channel, mode.destination, mode.prompt, accountId, nextRun, createdByTool, accountsDir, driver);
263
264
  return true;
264
265
  }
265
266
  if (mode.kind === "action") {
@@ -483,7 +484,8 @@ async function main() {
483
484
  e.actionArgs AS actionArgs,
484
485
  e.agentChannel AS agentChannel,
485
486
  e.agentDestination AS agentDestination,
486
- e.agentPrompt AS agentPrompt`, {
487
+ e.agentPrompt AS agentPrompt,
488
+ e.createdByTool AS createdByTool`, {
487
489
  now,
488
490
  localAccountIds,
489
491
  noteEntry: `\n[${now}] Marked due by cron`,
@@ -492,6 +494,7 @@ async function main() {
492
494
  const eventId = record.get("eventId");
493
495
  const name = record.get("name");
494
496
  const accountId = record.get("accountId");
497
+ const createdByTool = record.get("createdByTool");
495
498
  const mode = chooseDispatchMode({
496
499
  agentChannel: record.get("agentChannel"),
497
500
  agentDestination: record.get("agentDestination"),
@@ -502,7 +505,7 @@ async function main() {
502
505
  });
503
506
  console.error(`[check-due] one-time due: ${name} (${eventId})`);
504
507
  processed++;
505
- if (await dispatchDue(eventId, mode, accountId, null, driver))
508
+ if (await dispatchDue(eventId, mode, accountId, null, createdByTool, driver))
506
509
  dispatched++;
507
510
  }
508
511
  }
@@ -527,7 +530,8 @@ async function main() {
527
530
  e.actionArgs AS actionArgs,
528
531
  e.agentChannel AS agentChannel,
529
532
  e.agentDestination AS agentDestination,
530
- e.agentPrompt AS agentPrompt`, { now, localAccountIds });
533
+ e.agentPrompt AS agentPrompt,
534
+ e.createdByTool AS createdByTool`, { now, localAccountIds });
531
535
  for (const record of recurringResult.records) {
532
536
  const eventId = record.get("eventId");
533
537
  const name = record.get("name");
@@ -535,6 +539,7 @@ async function main() {
535
539
  const currentNextRun = record.get("nextRun");
536
540
  const timezone = record.get("timezone");
537
541
  const accountId = record.get("accountId");
542
+ const createdByTool = record.get("createdByTool");
538
543
  const mode = chooseDispatchMode({
539
544
  agentChannel: record.get("agentChannel"),
540
545
  agentDestination: record.get("agentDestination"),
@@ -572,7 +577,7 @@ async function main() {
572
577
  // Dispatch AFTER the nextRun update (advance-before-dispatch ordering,
573
578
  // unchanged) — an agent turn goes to the inject route, a tool-only
574
579
  // action to the MCP dispatcher.
575
- if (await dispatchDue(eventId, mode, accountId, newNextRun, driver))
580
+ if (await dispatchDue(eventId, mode, accountId, newNextRun, createdByTool, driver))
576
581
  dispatched++;
577
582
  }
578
583
  catch (err) {
@@ -595,6 +600,17 @@ async function main() {
595
600
  console.error(`[schedule-audit] ERROR: ${err instanceof Error ? err.message : String(err)}`);
596
601
  errors++;
597
602
  }
603
+ // --- Self-cancel alarm (Task 1516) ---
604
+ // Independent standing reconcile: count agent-dispatch events a scheduler-
605
+ // dispatched seat cancelled in the trailing window, so the self-cancel loop
606
+ // is surfaced without waiting for an operator complaint.
607
+ try {
608
+ await auditSelfCancels(driver, localAccountIds, Date.parse(now));
609
+ }
610
+ catch (err) {
611
+ console.error(`[sched-guard] op=audit-error detail=${err instanceof Error ? err.message : String(err)}`);
612
+ errors++;
613
+ }
598
614
  // --- Plugin lifecycle reconciliation ---
599
615
  try {
600
616
  await reconcilePluginLifecycles(driver);
@@ -1 +1 @@
1
- {"version":3,"file":"check-due-events.js","sourceRoot":"","sources":["../../src/scripts/check-due-events.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"check-due-events.js","sourceRoot":"","sources":["../../src/scripts/check-due-events.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=schedule-cancel.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schedule-cancel.test.d.ts","sourceRoot":"","sources":["../../../src/tools/__tests__/schedule-cancel.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,30 @@
1
+ import { describe, it, expect } from "vitest";
2
+ import { classifySelfCancel } from "../schedule-cancel.js";
3
+ // Task 1526 — with per-firing seats, byOwnDispatch is the caller session id vs
4
+ // the event's stamped lastDispatchSessionId (the most recent firing's seat).
5
+ // This is the autonomous self-cancel loop; an operator cancelling via the same
6
+ // channel now runs the UNSALTED adminSessionIdFor seat and correctly reads false.
7
+ describe("classifySelfCancel — byOwnDispatch vs lastDispatchSessionId (Task 1526)", () => {
8
+ it("not an agent-dispatch event when agentChannel is null", () => {
9
+ const r = classifySelfCancel({ callerSessionId: "x", agentChannel: null, agentDestination: null, lastDispatchSessionId: null });
10
+ expect(r.isAgentDispatch).toBe(false);
11
+ expect(r.byOwnDispatch).toBe(false);
12
+ });
13
+ it("byOwnDispatch=true when the caller session equals the stamped firing seat", () => {
14
+ const r = classifySelfCancel({ callerSessionId: "seat-firing-1", agentChannel: "whatsapp", agentDestination: "447504472444", lastDispatchSessionId: "seat-firing-1" });
15
+ expect(r).toEqual({ isAgentDispatch: true, byOwnDispatch: true });
16
+ });
17
+ it("byOwnDispatch=false for a different (operator / unsalted) session", () => {
18
+ const r = classifySelfCancel({ callerSessionId: "operator-webchat-id", agentChannel: "telegram", agentDestination: "12345678", lastDispatchSessionId: "seat-firing-1" });
19
+ expect(r.byOwnDispatch).toBe(false);
20
+ });
21
+ it("byOwnDispatch=false when SESSION_ID is absent (fail-safe)", () => {
22
+ const r = classifySelfCancel({ callerSessionId: undefined, agentChannel: "whatsapp", agentDestination: "447504472444", lastDispatchSessionId: "seat-firing-1" });
23
+ expect(r.byOwnDispatch).toBe(false);
24
+ });
25
+ it("byOwnDispatch=false when the event has no stamp yet", () => {
26
+ const r = classifySelfCancel({ callerSessionId: "seat-firing-1", agentChannel: "whatsapp", agentDestination: "447504472444", lastDispatchSessionId: null });
27
+ expect(r.byOwnDispatch).toBe(false);
28
+ });
29
+ });
30
+ //# sourceMappingURL=schedule-cancel.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schedule-cancel.test.js","sourceRoot":"","sources":["../../../src/tools/__tests__/schedule-cancel.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAE3D,+EAA+E;AAC/E,6EAA6E;AAC7E,+EAA+E;AAC/E,kFAAkF;AAClF,QAAQ,CAAC,yEAAyE,EAAE,GAAG,EAAE;IACvF,EAAE,CAAC,uDAAuD,EAAE,GAAG,EAAE;QAC/D,MAAM,CAAC,GAAG,kBAAkB,CAAC,EAAE,eAAe,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,CAAC,CAAC;QAChI,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACtC,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2EAA2E,EAAE,GAAG,EAAE;QACnF,MAAM,CAAC,GAAG,kBAAkB,CAAC,EAAE,eAAe,EAAE,eAAe,EAAE,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,cAAc,EAAE,qBAAqB,EAAE,eAAe,EAAE,CAAC,CAAC;QACvK,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,eAAe,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IACpE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mEAAmE,EAAE,GAAG,EAAE;QAC3E,MAAM,CAAC,GAAG,kBAAkB,CAAC,EAAE,eAAe,EAAE,qBAAqB,EAAE,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,UAAU,EAAE,qBAAqB,EAAE,eAAe,EAAE,CAAC,CAAC;QACzK,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2DAA2D,EAAE,GAAG,EAAE;QACnE,MAAM,CAAC,GAAG,kBAAkB,CAAC,EAAE,eAAe,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,cAAc,EAAE,qBAAqB,EAAE,eAAe,EAAE,CAAC,CAAC;QACjK,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;QAC7D,MAAM,CAAC,GAAG,kBAAkB,CAAC,EAAE,eAAe,EAAE,eAAe,EAAE,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,cAAc,EAAE,qBAAqB,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5J,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -2,6 +2,35 @@ export interface ScheduleCancelParams {
2
2
  accountId: string;
3
3
  eventId: string;
4
4
  note?: string;
5
+ /** Task 1516 — the cancelling seat's real, platform-injected session id
6
+ * (`process.env.SESSION_ID`), NOT an agent-supplied value. Used to decide
7
+ * whether the cancellation came from the event's own scheduler-dispatched seat
8
+ * (the self-cancel loop). Absent on a manual/operator cancel path. */
9
+ callerSessionId?: string;
5
10
  }
11
+ /**
12
+ * Task 1516 / 1526 — the pure core of the self-cancel alarm. With per-firing
13
+ * scheduled seats (Task 1526) the event's own firing seat is recorded on the node
14
+ * as `lastDispatchSessionId` at dispatch time. `byOwnDispatch` is an exact match
15
+ * of the cancelling seat's real (platform-injected) SESSION_ID to that stamp: the
16
+ * autonomous self-cancel loop this alarm exists to catch.
17
+ *
18
+ * Before 1526 the guard recomputed the deterministic `adminSessionIdFor` seat, so
19
+ * `byOwnDispatch=true` conflated the loop with an operator cancelling via that
20
+ * same *shared* channel seat. Per-firing seats separate them: a scheduled firing
21
+ * runs the salted seat, an operator's channel session runs the UNSALTED
22
+ * `adminSessionIdFor` seat, so an operator cancel now correctly reads `false`.
23
+ * `isAgentDispatch` still keys on the event carrying an agent dispatch. Never
24
+ * throws.
25
+ */
26
+ export declare function classifySelfCancel(params: {
27
+ callerSessionId: string | undefined;
28
+ agentChannel: string | null;
29
+ agentDestination: string | null;
30
+ lastDispatchSessionId: string | null;
31
+ }): {
32
+ isAgentDispatch: boolean;
33
+ byOwnDispatch: boolean;
34
+ };
6
35
  export declare function scheduleCancel(params: ScheduleCancelParams): Promise<void>;
7
36
  //# sourceMappingURL=schedule-cancel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schedule-cancel.d.ts","sourceRoot":"","sources":["../../src/tools/schedule-cancel.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAyBhF"}
1
+ {"version":3,"file":"schedule-cancel.d.ts","sourceRoot":"","sources":["../../src/tools/schedule-cancel.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;2EAGuE;IACvE,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE;IACzC,eAAe,EAAE,MAAM,GAAG,SAAS,CAAC;IACpC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAC;CACtC,GAAG;IAAE,eAAe,EAAE,OAAO,CAAC;IAAC,aAAa,EAAE,OAAO,CAAA;CAAE,CAYvD;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAiDhF"}
@@ -1,6 +1,33 @@
1
1
  import { getSession } from "../lib/neo4j.js";
2
+ /**
3
+ * Task 1516 / 1526 — the pure core of the self-cancel alarm. With per-firing
4
+ * scheduled seats (Task 1526) the event's own firing seat is recorded on the node
5
+ * as `lastDispatchSessionId` at dispatch time. `byOwnDispatch` is an exact match
6
+ * of the cancelling seat's real (platform-injected) SESSION_ID to that stamp: the
7
+ * autonomous self-cancel loop this alarm exists to catch.
8
+ *
9
+ * Before 1526 the guard recomputed the deterministic `adminSessionIdFor` seat, so
10
+ * `byOwnDispatch=true` conflated the loop with an operator cancelling via that
11
+ * same *shared* channel seat. Per-firing seats separate them: a scheduled firing
12
+ * runs the salted seat, an operator's channel session runs the UNSALTED
13
+ * `adminSessionIdFor` seat, so an operator cancel now correctly reads `false`.
14
+ * `isAgentDispatch` still keys on the event carrying an agent dispatch. Never
15
+ * throws.
16
+ */
17
+ export function classifySelfCancel(params) {
18
+ const { callerSessionId, agentChannel, agentDestination, lastDispatchSessionId } = params;
19
+ if (!agentChannel || !agentDestination) {
20
+ return { isAgentDispatch: false, byOwnDispatch: false };
21
+ }
22
+ const byOwnDispatch = typeof callerSessionId === "string" &&
23
+ callerSessionId.length > 0 &&
24
+ typeof lastDispatchSessionId === "string" &&
25
+ lastDispatchSessionId.length > 0 &&
26
+ callerSessionId === lastDispatchSessionId;
27
+ return { isAgentDispatch: true, byOwnDispatch };
28
+ }
2
29
  export async function scheduleCancel(params) {
3
- const { accountId, eventId, note } = params;
30
+ const { accountId, eventId, note, callerSessionId } = params;
4
31
  const now = new Date().toISOString();
5
32
  const noteEntry = note
6
33
  ? `\n[${now}] Cancelled: ${note}`
@@ -11,10 +38,28 @@ export async function scheduleCancel(params) {
11
38
  SET e.eventStatus = 'cancelled',
12
39
  e.updatedAt = $now,
13
40
  e.notes = COALESCE(e.notes, '') + $noteEntry
14
- RETURN e`, { eventId, accountId, now, noteEntry });
41
+ RETURN e.agentChannel AS agentChannel, e.agentDestination AS agentDestination,
42
+ e.lastDispatchSessionId AS lastDispatchSessionId`, { eventId, accountId, now, noteEntry });
15
43
  if (result.records.length === 0) {
16
44
  throw new Error(`Event not found: ${eventId}`);
17
45
  }
46
+ // Task 1516 — the self-cancel alarm. Only agent-dispatch automations can
47
+ // self-cancel; a plain reminder cancel emits nothing. `byOwnDispatch=true`
48
+ // means the cancelling seat IS this event's own scheduled seat (the loop).
49
+ const agentChannel = result.records[0].get("agentChannel");
50
+ const agentDestination = result.records[0].get("agentDestination");
51
+ const lastDispatchSessionId = result.records[0].get("lastDispatchSessionId");
52
+ const cls = classifySelfCancel({ callerSessionId, agentChannel, agentDestination, lastDispatchSessionId });
53
+ if (cls.isAgentDispatch) {
54
+ console.error(`[sched-guard] op=self-cancel event=${eventId.slice(0, 8)} byOwnDispatch=${cls.byOwnDispatch}`);
55
+ // Stamp the fact on the node so the standing audit (which runs in the cron,
56
+ // with no seat SESSION_ID) can count self-cancels deterministically without
57
+ // a timing heuristic — it reads this stamp, not the note prose.
58
+ if (cls.byOwnDispatch) {
59
+ await neo4jSession.run(`MATCH (e:Event {eventId: $eventId, accountId: $accountId})
60
+ SET e.cancelledByOwnDispatchAt = $now`, { eventId, accountId, now });
61
+ }
62
+ }
18
63
  }
19
64
  finally {
20
65
  await neo4jSession.close();
@@ -1 +1 @@
1
- {"version":3,"file":"schedule-cancel.js","sourceRoot":"","sources":["../../src/tools/schedule-cancel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAQ7C,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,MAA4B;IAC/D,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;IAC5C,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAErC,MAAM,SAAS,GAAG,IAAI;QACpB,CAAC,CAAC,MAAM,GAAG,gBAAgB,IAAI,EAAE;QACjC,CAAC,CAAC,MAAM,GAAG,aAAa,CAAC;IAE3B,MAAM,YAAY,GAAG,UAAU,EAAE,CAAC;IAClC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,GAAG,CACnC;;;;gBAIU,EACV,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,CACvC,CAAC;QAEF,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,oBAAoB,OAAO,EAAE,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;YAAS,CAAC;QACT,MAAM,YAAY,CAAC,KAAK,EAAE,CAAC;IAC7B,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"schedule-cancel.js","sourceRoot":"","sources":["../../src/tools/schedule-cancel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAa7C;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAKlC;IACC,MAAM,EAAE,eAAe,EAAE,YAAY,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,GAAG,MAAM,CAAC;IAC1F,IAAI,CAAC,YAAY,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACvC,OAAO,EAAE,eAAe,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;IAC1D,CAAC;IACD,MAAM,aAAa,GACjB,OAAO,eAAe,KAAK,QAAQ;QACnC,eAAe,CAAC,MAAM,GAAG,CAAC;QAC1B,OAAO,qBAAqB,KAAK,QAAQ;QACzC,qBAAqB,CAAC,MAAM,GAAG,CAAC;QAChC,eAAe,KAAK,qBAAqB,CAAC;IAC5C,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;AAClD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,MAA4B;IAC/D,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,GAAG,MAAM,CAAC;IAC7D,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAErC,MAAM,SAAS,GAAG,IAAI;QACpB,CAAC,CAAC,MAAM,GAAG,gBAAgB,IAAI,EAAE;QACjC,CAAC,CAAC,MAAM,GAAG,aAAa,CAAC;IAE3B,MAAM,YAAY,GAAG,UAAU,EAAE,CAAC;IAClC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,GAAG,CACnC;;;;;+DAKyD,EACzD,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,CACvC,CAAC;QAEF,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,oBAAoB,OAAO,EAAE,CAAC,CAAC;QACjD,CAAC;QAED,yEAAyE;QACzE,2EAA2E;QAC3E,2EAA2E;QAC3E,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,cAAc,CAAkB,CAAC;QAC5E,MAAM,gBAAgB,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,kBAAkB,CAAkB,CAAC;QACpF,MAAM,qBAAqB,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,uBAAuB,CAAkB,CAAC;QAC9F,MAAM,GAAG,GAAG,kBAAkB,CAAC,EAAE,eAAe,EAAE,YAAY,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,CAAC,CAAC;QAC3G,IAAI,GAAG,CAAC,eAAe,EAAE,CAAC;YACxB,OAAO,CAAC,KAAK,CACX,sCAAsC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,kBAAkB,GAAG,CAAC,aAAa,EAAE,CAC/F,CAAC;YACF,4EAA4E;YAC5E,4EAA4E;YAC5E,gEAAgE;YAChE,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;gBACtB,MAAM,YAAY,CAAC,GAAG,CACpB;iDACuC,EACvC,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,CAC5B,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;YAAS,CAAC;QACT,MAAM,YAAY,CAAC,KAAK,EAAE,CAAC;IAC7B,CAAC;AACH,CAAC"}
@@ -113,6 +113,8 @@ Every `messages.upsert` event (both `notify` and `append`, both `fromMe` directi
113
113
 
114
114
  **Sub-account recall.** Recall is account-scoped as a read-time projection: a sub-account session sees only the house-store threads whose counterparty is one of its bound account-manager phones (the same filter the operator dashboard uses, shared via `counterpartyBoundToSubAccount`). The write path and the store key are unchanged — messages stay house-keyed; "sub-account scope" is a projection, not a move. `whatsapp-conversation-graph-state` defaults its `accountId` to the calling session's own `ACCOUNT_ID`, so a sub-account recalls its own history with no argument while the house admin may still pass any account id explicitly. Body search is not restored by this projection (it has been absent since the on-disk store cutover).
115
115
 
116
+ **Caller-scope enforcement.** The three read tools — `whatsapp-conversation-graph-state`, `whatsapp-conversations`, `whatsapp-messages` — forward the caller's own account (`ACCOUNT_ID`) and its house-admin scope (`HOUSE_ADMIN_SCOPE`) to the route as headers, distinct from the caller-controlled `accountId` argument. The route enforces caller-scope: a house admin reads any account; any other session (a sub-account, or a specialist under any account) may read only its own account and gets a 403 if it passes a different `accountId`. This closes the override where a sub-account could pass an explicit house or sibling id and read that store. It defends only the loopback route against the agent-controlled argument; the route still trusts localhost, so forging these headers on a direct loopback call remains possible — closing that is a separate, tracked follow-up.
117
+
116
118
  ## Skills
117
119
 
118
120
  | Skill | Purpose |
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=caller-scope-headers.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"caller-scope-headers.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/caller-scope-headers.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,20 @@
1
+ import { describe, it, expect } from 'vitest';
2
+ import { callerScopeHeaders } from '../caller-scope-headers.js';
3
+ describe('callerScopeHeaders (Task 1498)', () => {
4
+ it('emits the caller account and house-admin scope when both are set', () => {
5
+ const h = callerScopeHeaders({ ACCOUNT_ID: 'sub-1', HOUSE_ADMIN_SCOPE: 'house-1' });
6
+ expect(h).toEqual({ 'x-maxy-caller-account': 'sub-1', 'x-maxy-house-admin-scope': 'house-1' });
7
+ });
8
+ it('omits the house-admin header for a non-house caller (no scope)', () => {
9
+ const h = callerScopeHeaders({ ACCOUNT_ID: 'sub-1' });
10
+ expect(h).toEqual({ 'x-maxy-caller-account': 'sub-1' });
11
+ });
12
+ it('omits the caller-account header when ACCOUNT_ID is empty', () => {
13
+ const h = callerScopeHeaders({ ACCOUNT_ID: '', HOUSE_ADMIN_SCOPE: 'house-1' });
14
+ expect(h).toEqual({ 'x-maxy-house-admin-scope': 'house-1' });
15
+ });
16
+ it('emits an empty object when neither is present', () => {
17
+ expect(callerScopeHeaders({})).toEqual({});
18
+ });
19
+ });
20
+ //# sourceMappingURL=caller-scope-headers.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"caller-scope-headers.test.js","sourceRoot":"","sources":["../../src/__tests__/caller-scope-headers.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AAE/D,QAAQ,CAAC,gCAAgC,EAAE,GAAG,EAAE;IAC9C,EAAE,CAAC,kEAAkE,EAAE,GAAG,EAAE;QAC1E,MAAM,CAAC,GAAG,kBAAkB,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,CAAC,CAAA;QACnF,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,uBAAuB,EAAE,OAAO,EAAE,0BAA0B,EAAE,SAAS,EAAE,CAAC,CAAA;IAChG,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,gEAAgE,EAAE,GAAG,EAAE;QACxE,MAAM,CAAC,GAAG,kBAAkB,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,CAAA;QACrD,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,uBAAuB,EAAE,OAAO,EAAE,CAAC,CAAA;IACzD,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE;QAClE,MAAM,CAAC,GAAG,kBAAkB,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,iBAAiB,EAAE,SAAS,EAAE,CAAC,CAAA;QAC9E,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,0BAA0B,EAAE,SAAS,EAAE,CAAC,CAAA;IAC9D,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;QACvD,MAAM,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAC5C,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -10,5 +10,5 @@
10
10
  * 400 looks identical and the agent retries blindly until max-turns
11
11
  * (root cause).
12
12
  */
13
- export declare function callApi(baseUrl: string, path: string, method?: "GET" | "POST", body?: unknown): Promise<unknown>;
13
+ export declare function callApi(baseUrl: string, path: string, method?: "GET" | "POST", body?: unknown, extraHeaders?: Record<string, string>): Promise<unknown>;
14
14
  //# sourceMappingURL=call-api.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"call-api.d.ts","sourceRoot":"","sources":["../src/call-api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,wBAAsB,OAAO,CAC3B,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EACZ,MAAM,GAAE,KAAK,GAAG,MAAe,EAC/B,IAAI,CAAC,EAAE,OAAO,GACb,OAAO,CAAC,OAAO,CAAC,CA2BlB"}
1
+ {"version":3,"file":"call-api.d.ts","sourceRoot":"","sources":["../src/call-api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,wBAAsB,OAAO,CAC3B,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EACZ,MAAM,GAAE,KAAK,GAAG,MAAe,EAC/B,IAAI,CAAC,EAAE,OAAO,EACd,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACpC,OAAO,CAAC,OAAO,CAAC,CA6BlB"}
@@ -10,10 +10,13 @@
10
10
  * 400 looks identical and the agent retries blindly until max-turns
11
11
  * (root cause).
12
12
  */
13
- export async function callApi(baseUrl, path, method = "POST", body) {
13
+ export async function callApi(baseUrl, path, method = "POST", body, extraHeaders) {
14
+ const headers = { ...(extraHeaders ?? {}) };
15
+ if (body)
16
+ headers["Content-Type"] = "application/json";
14
17
  const res = await fetch(`${baseUrl}${path}`, {
15
18
  method,
16
- headers: body ? { "Content-Type": "application/json" } : undefined,
19
+ headers: Object.keys(headers).length > 0 ? headers : undefined,
17
20
  body: body ? JSON.stringify(body) : undefined,
18
21
  });
19
22
  if (res.ok)
@@ -1 +1 @@
1
- {"version":3,"file":"call-api.js","sourceRoot":"","sources":["../src/call-api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,OAAe,EACf,IAAY,EACZ,SAAyB,MAAM,EAC/B,IAAc;IAEd,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,GAAG,IAAI,EAAE,EAAE;QAC3C,MAAM;QACN,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,SAAS;QAClE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;KAC9C,CAAC,CAAC;IAEH,IAAI,GAAG,CAAC,EAAE;QAAE,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC;IAE9B,MAAM,QAAQ,GAAG,QAAQ,GAAG,CAAC,MAAM,KAAK,GAAG,CAAC,UAAU,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC;IAC7E,IAAI,IAAY,CAAC;IACjB,IAAI,CAAC;QACH,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;IAC1B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IACxC,CAAC;IACD,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IAEjD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAA4B,CAAC;QAC3D,IAAI,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;YAC5D,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;QAC5C,CAAC;QACD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IACxC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IACxC,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"call-api.js","sourceRoot":"","sources":["../src/call-api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,OAAe,EACf,IAAY,EACZ,SAAyB,MAAM,EAC/B,IAAc,EACd,YAAqC;IAErC,MAAM,OAAO,GAA2B,EAAE,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC,EAAE,CAAC;IACpE,IAAI,IAAI;QAAE,OAAO,CAAC,cAAc,CAAC,GAAG,kBAAkB,CAAC;IACvD,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,GAAG,IAAI,EAAE,EAAE;QAC3C,MAAM;QACN,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS;QAC9D,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;KAC9C,CAAC,CAAC;IAEH,IAAI,GAAG,CAAC,EAAE;QAAE,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC;IAE9B,MAAM,QAAQ,GAAG,QAAQ,GAAG,CAAC,MAAM,KAAK,GAAG,CAAC,UAAU,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC;IAC7E,IAAI,IAAY,CAAC;IACjB,IAAI,CAAC;QACH,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;IAC1B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IACxC,CAAC;IACD,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IAEjD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAA4B,CAAC;QAC3D,IAAI,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;YAC5D,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;QAC5C,CAAC;QACD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IACxC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IACxC,CAAC;AACH,CAAC"}
@@ -0,0 +1,9 @@
1
+ /** Task 1498 — the trustworthy caller signals a WhatsApp read tool forwards to
2
+ * the loopback route as HTTP headers, distinct from the caller-controlled
3
+ * `accountId` param. Both values are stamped into the spawn env by the platform
4
+ * (`ACCOUNT_ID`, `HOUSE_ADMIN_SCOPE` — the latter non-empty only for a
5
+ * non-specialist house admin) and inherited by the installed-plugin MCP child;
6
+ * the agent cannot set them. An empty value is omitted so the route reads it as
7
+ * absent (fail closed for a non-house caller). */
8
+ export declare function callerScopeHeaders(env: NodeJS.ProcessEnv): Record<string, string>;
9
+ //# sourceMappingURL=caller-scope-headers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"caller-scope-headers.d.ts","sourceRoot":"","sources":["../src/caller-scope-headers.ts"],"names":[],"mappings":"AAAA;;;;;;mDAMmD;AACnD,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAOjF"}
@@ -0,0 +1,18 @@
1
+ /** Task 1498 — the trustworthy caller signals a WhatsApp read tool forwards to
2
+ * the loopback route as HTTP headers, distinct from the caller-controlled
3
+ * `accountId` param. Both values are stamped into the spawn env by the platform
4
+ * (`ACCOUNT_ID`, `HOUSE_ADMIN_SCOPE` — the latter non-empty only for a
5
+ * non-specialist house admin) and inherited by the installed-plugin MCP child;
6
+ * the agent cannot set them. An empty value is omitted so the route reads it as
7
+ * absent (fail closed for a non-house caller). */
8
+ export function callerScopeHeaders(env) {
9
+ const headers = {};
10
+ const callerAccount = env.ACCOUNT_ID;
11
+ const houseAdminScope = env.HOUSE_ADMIN_SCOPE;
12
+ if (callerAccount && callerAccount.length > 0)
13
+ headers['x-maxy-caller-account'] = callerAccount;
14
+ if (houseAdminScope && houseAdminScope.length > 0)
15
+ headers['x-maxy-house-admin-scope'] = houseAdminScope;
16
+ return headers;
17
+ }
18
+ //# sourceMappingURL=caller-scope-headers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"caller-scope-headers.js","sourceRoot":"","sources":["../src/caller-scope-headers.ts"],"names":[],"mappings":"AAAA;;;;;;mDAMmD;AACnD,MAAM,UAAU,kBAAkB,CAAC,GAAsB;IACvD,MAAM,OAAO,GAA2B,EAAE,CAAA;IAC1C,MAAM,aAAa,GAAG,GAAG,CAAC,UAAU,CAAA;IACpC,MAAM,eAAe,GAAG,GAAG,CAAC,iBAAiB,CAAA;IAC7C,IAAI,aAAa,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,CAAC,uBAAuB,CAAC,GAAG,aAAa,CAAA;IAC/F,IAAI,eAAe,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,CAAC,0BAA0B,CAAC,GAAG,eAAe,CAAA;IACxG,OAAO,OAAO,CAAA;AAChB,CAAC"}
@@ -12,6 +12,7 @@ import { z } from "zod";
12
12
  import { callApi as rawCallApi } from "./call-api.js";
13
13
  import { buildLoginStartText } from "./format.js";
14
14
  import { resolveReadAccountId } from "./resolve-read-account.js";
15
+ import { callerScopeHeaders } from "./caller-scope-headers.js";
15
16
  import { requirePortEnv } from "../../../../lib/require-port-env/dist/index.js";
16
17
  import { lifelineTool } from "../../../../lib/mcp-lifeline/dist/index.js";
17
18
  // Task 142 — PLATFORM_PORT is the internal loopback port, stamped on
@@ -40,8 +41,8 @@ const server = new McpServer({
40
41
  name: "maxy-whatsapp",
41
42
  version: "0.1.0",
42
43
  });
43
- function callApi(toolName, path, method = "POST", body) {
44
- return rawCallApi(getBaseUrl(toolName), path, method, body);
44
+ function callApi(toolName, path, method = "POST", body, extraHeaders) {
45
+ return rawCallApi(getBaseUrl(toolName), path, method, body, extraHeaders);
45
46
  }
46
47
  function textResult(text, isError = false) {
47
48
  return {
@@ -294,12 +295,12 @@ lifelineTool(server, "whatsapp-send-admin", "Send a WhatsApp text message to a p
294
295
  });
295
296
  // ─── whatsapp-conversations ──────────────────────────────────────────
296
297
  lifelineTool(server, "whatsapp-conversations", "List WhatsApp conversations with recent message activity. Returns each conversation's JID, type (group or DM), last message timestamp, and message count. Messages are from the in-memory store (clears on server restart). Use this to see which conversations have recent activity before retrieving specific messages with whatsapp-messages.", {
297
- accountId: z.string().optional().describe('Account ID (default: "default")'),
298
+ accountId: z.string().optional().describe('Account ID. Defaults to the calling session’s own account; the house admin may pass another account id explicitly.'),
298
299
  }, async ({ accountId }) => {
299
300
  try {
300
- const id = accountId ?? "default";
301
+ const id = resolveReadAccountId(accountId, process.env.ACCOUNT_ID);
301
302
  console.error(`[whatsapp-mcp] whatsapp-conversations called for account ${id}`);
302
- const result = await callApi("whatsapp-conversations", `/api/whatsapp/conversations?accountId=${encodeURIComponent(id)}`, "GET");
303
+ const result = await callApi("whatsapp-conversations", `/api/whatsapp/conversations?accountId=${encodeURIComponent(id)}`, "GET", undefined, callerScopeHeaders(process.env));
303
304
  if (result.error)
304
305
  return textResult(`Failed to list conversations: ${result.error}`, true);
305
306
  const conversations = result.conversations ?? [];
@@ -323,16 +324,16 @@ lifelineTool(server, "whatsapp-conversations", "List WhatsApp conversations with
323
324
  // ─── whatsapp-messages ───────────────────────────────────────────────
324
325
  lifelineTool(server, "whatsapp-messages", "Retrieve stored WhatsApp messages for a specific conversation. Returns messages in chronological order (oldest first) with sender, body, timestamp, and reply context. Messages are from the in-memory store (clears on server restart). Use whatsapp-conversations first to see available JIDs.", {
325
326
  jid: z.string().describe("Conversation JID (phone@s.whatsapp.net for DMs, id@g.us for groups)"),
326
- accountId: z.string().optional().describe('Account ID (default: "default")'),
327
+ accountId: z.string().optional().describe('Account ID. Defaults to the calling session’s own account; the house admin may pass another account id explicitly.'),
327
328
  limit: z.number().optional().describe("Max number of most recent messages to return (default: all)"),
328
329
  }, async ({ jid, accountId, limit }) => {
329
330
  try {
330
- const id = accountId ?? "default";
331
+ const id = resolveReadAccountId(accountId, process.env.ACCOUNT_ID);
331
332
  console.error(`[whatsapp-mcp] whatsapp-messages called for account ${id} jid=${jid} limit=${limit ?? "all"}`);
332
333
  const params = new URLSearchParams({ accountId: id, jid });
333
334
  if (limit !== undefined)
334
335
  params.set("limit", String(limit));
335
- const result = await callApi("whatsapp-messages", `/api/whatsapp/messages?${params}`, "GET");
336
+ const result = await callApi("whatsapp-messages", `/api/whatsapp/messages?${params}`, "GET", undefined, callerScopeHeaders(process.env));
336
337
  if (result.error)
337
338
  return textResult(`Failed to get messages: ${result.error}`, true);
338
339
  const messages = result.messages ?? [];
@@ -379,10 +380,11 @@ lifelineTool(server, "whatsapp-conversation-graph-state", [
379
380
  }, async ({ jid, sessionKey, accountId }) => {
380
381
  try {
381
382
  const id = resolveReadAccountId(accountId, process.env.ACCOUNT_ID);
383
+ const callerHeaders = callerScopeHeaders(process.env);
382
384
  if (!jid && !sessionKey) {
383
385
  // All-senders mode.
384
386
  const params = new URLSearchParams({ accountId: id });
385
- const result = await callApi("whatsapp-conversation-graph-state", `/api/whatsapp/conversation-graph-state?${params}`, "GET");
387
+ const result = await callApi("whatsapp-conversation-graph-state", `/api/whatsapp/conversation-graph-state?${params}`, "GET", undefined, callerHeaders);
386
388
  if (result.error)
387
389
  return textResult(`Graph state failed: ${result.error}`, true);
388
390
  console.error(`[whatsapp-read-tool] op=query scope=${id} managerPhonesBound=${result.managerPhonesBound ?? 0} resultCount=${result.rows.length} unresolvedSenders=${result.unresolvedSenders}`);
@@ -406,13 +408,13 @@ lifelineTool(server, "whatsapp-conversation-graph-state", [
406
408
  paramsSingle.set("jid", jid);
407
409
  paramsSingle.set("accountId", id);
408
410
  }
409
- const result = await callApi("whatsapp-conversation-graph-state", `/api/whatsapp/conversation-graph-state?${paramsSingle}`, "GET");
411
+ const result = await callApi("whatsapp-conversation-graph-state", `/api/whatsapp/conversation-graph-state?${paramsSingle}`, "GET", undefined, callerHeaders);
410
412
  if (result.error)
411
413
  return textResult(`Graph state failed: ${result.error}`, true);
412
414
  let memoryCount = null;
413
415
  if (jid) {
414
416
  try {
415
- const mem = await callApi("whatsapp-conversation-graph-state", `/api/whatsapp/messages?accountId=${encodeURIComponent(id)}&jid=${encodeURIComponent(jid)}`, "GET");
417
+ const mem = await callApi("whatsapp-conversation-graph-state", `/api/whatsapp/messages?accountId=${encodeURIComponent(id)}&jid=${encodeURIComponent(jid)}`, "GET", undefined, callerHeaders);
416
418
  if (Array.isArray(mem.messages))
417
419
  memoryCount = mem.messages.length;
418
420
  }