@rubytech/create-sitedesk-code 0.1.528 → 0.1.530

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 (282) hide show
  1. package/dist/index.js +13 -0
  2. package/package.json +1 -1
  3. package/payload/platform/lib/account-ingest-token/dist/index.d.ts +21 -0
  4. package/payload/platform/lib/account-ingest-token/dist/index.d.ts.map +1 -0
  5. package/payload/platform/lib/account-ingest-token/dist/index.js +128 -0
  6. package/payload/platform/lib/account-ingest-token/dist/index.js.map +1 -0
  7. package/payload/platform/lib/account-ingest-token/src/index.ts +137 -0
  8. package/payload/platform/lib/account-ingest-token/tsconfig.json +8 -0
  9. package/payload/platform/lib/agent-dispatch-rule/dist/index.d.ts +5 -0
  10. package/payload/platform/lib/agent-dispatch-rule/dist/index.d.ts.map +1 -1
  11. package/payload/platform/lib/agent-dispatch-rule/dist/index.js.map +1 -1
  12. package/payload/platform/lib/agent-dispatch-rule/src/index.ts +5 -0
  13. package/payload/platform/lib/routine-templates/dist/index.d.ts +19 -3
  14. package/payload/platform/lib/routine-templates/dist/index.d.ts.map +1 -1
  15. package/payload/platform/lib/routine-templates/dist/index.js +22 -4
  16. package/payload/platform/lib/routine-templates/dist/index.js.map +1 -1
  17. package/payload/platform/lib/routine-templates/dist/roster.d.ts +19 -6
  18. package/payload/platform/lib/routine-templates/dist/roster.d.ts.map +1 -1
  19. package/payload/platform/lib/routine-templates/dist/roster.js +127 -17
  20. package/payload/platform/lib/routine-templates/dist/roster.js.map +1 -1
  21. package/payload/platform/lib/routine-templates/src/__tests__/roster.test.ts +46 -3
  22. package/payload/platform/lib/routine-templates/src/__tests__/seed.test.ts +52 -10
  23. package/payload/platform/lib/routine-templates/src/index.ts +30 -4
  24. package/payload/platform/lib/routine-templates/src/roster.ts +147 -17
  25. package/payload/platform/package.json +2 -2
  26. package/payload/platform/plugins/admin/.claude-plugin/plugin.json +1 -1
  27. package/payload/platform/plugins/admin/PLUGIN.md +5 -1
  28. package/payload/platform/plugins/admin/mcp/dist/index.js +37 -0
  29. package/payload/platform/plugins/admin/mcp/dist/index.js.map +1 -1
  30. package/payload/platform/plugins/admin/mcp/dist/tools/linkedin-ingest-token.d.ts +10 -0
  31. package/payload/platform/plugins/admin/mcp/dist/tools/linkedin-ingest-token.d.ts.map +1 -0
  32. package/payload/platform/plugins/admin/mcp/dist/tools/linkedin-ingest-token.js +22 -0
  33. package/payload/platform/plugins/admin/mcp/dist/tools/linkedin-ingest-token.js.map +1 -0
  34. package/payload/platform/plugins/admin/skills/platform-architecture/SKILL.md +31 -6
  35. package/payload/platform/plugins/admin/skills/whats-new/SKILL.md +12 -0
  36. package/payload/platform/plugins/docs/references/admin-ui.md +28 -3
  37. package/payload/platform/plugins/docs/references/linkedin-extension.md +2 -2
  38. package/payload/platform/plugins/linkedin-extension/extension/README.md +3 -3
  39. package/payload/platform/plugins/linkedin-extension/extension/background/sw.js +12 -7
  40. package/payload/platform/plugins/linkedin-extension/extension/content/profile.js +4 -1
  41. package/payload/platform/plugins/linkedin-extension/extension/content/thread.js +4 -1
  42. package/payload/platform/plugins/linkedin-extension/extension/options/options.html +3 -3
  43. package/payload/platform/plugins/linkedin-extension/extension/options/options.js +24 -16
  44. package/payload/platform/plugins/scheduling/PLUGIN.md +2 -0
  45. package/payload/platform/plugins/scheduling/mcp/dist/index.js +5 -0
  46. package/payload/platform/plugins/scheduling/mcp/dist/index.js.map +1 -1
  47. package/payload/platform/plugins/scheduling/mcp/dist/lib/__tests__/normalise-start-date.test.d.ts +2 -0
  48. package/payload/platform/plugins/scheduling/mcp/dist/lib/__tests__/normalise-start-date.test.d.ts.map +1 -0
  49. package/payload/platform/plugins/scheduling/mcp/dist/lib/__tests__/normalise-start-date.test.js +100 -0
  50. package/payload/platform/plugins/scheduling/mcp/dist/lib/__tests__/normalise-start-date.test.js.map +1 -0
  51. package/payload/platform/plugins/scheduling/mcp/dist/lib/dispatcher-env.d.ts +36 -0
  52. package/payload/platform/plugins/scheduling/mcp/dist/lib/dispatcher-env.d.ts.map +1 -0
  53. package/payload/platform/plugins/scheduling/mcp/dist/lib/dispatcher-env.js +82 -0
  54. package/payload/platform/plugins/scheduling/mcp/dist/lib/dispatcher-env.js.map +1 -0
  55. package/payload/platform/plugins/scheduling/mcp/dist/lib/time-format.d.ts +31 -0
  56. package/payload/platform/plugins/scheduling/mcp/dist/lib/time-format.d.ts.map +1 -1
  57. package/payload/platform/plugins/scheduling/mcp/dist/lib/time-format.js +99 -0
  58. package/payload/platform/plugins/scheduling/mcp/dist/lib/time-format.js.map +1 -1
  59. package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/agent-turn-dispatch.test.js +12 -12
  60. package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/agent-turn-dispatch.test.js.map +1 -1
  61. package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/converge-startdate-utc.test.d.ts +2 -0
  62. package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/converge-startdate-utc.test.d.ts.map +1 -0
  63. package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/converge-startdate-utc.test.js +79 -0
  64. package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/converge-startdate-utc.test.js.map +1 -0
  65. package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/dispatch-lateness.test.d.ts +2 -0
  66. package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/dispatch-lateness.test.d.ts.map +1 -0
  67. package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/dispatch-lateness.test.js +23 -0
  68. package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/dispatch-lateness.test.js.map +1 -0
  69. package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/routine-roster-audit.test.js +61 -1
  70. package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/routine-roster-audit.test.js.map +1 -1
  71. package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/suspension-census.test.js +45 -2
  72. package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/suspension-census.test.js.map +1 -1
  73. package/payload/platform/plugins/scheduling/mcp/dist/scripts/agent-turn-dispatch.d.ts +33 -1
  74. package/payload/platform/plugins/scheduling/mcp/dist/scripts/agent-turn-dispatch.d.ts.map +1 -1
  75. package/payload/platform/plugins/scheduling/mcp/dist/scripts/agent-turn-dispatch.js +111 -9
  76. package/payload/platform/plugins/scheduling/mcp/dist/scripts/agent-turn-dispatch.js.map +1 -1
  77. package/payload/platform/plugins/scheduling/mcp/dist/scripts/check-due-events.js +21 -69
  78. package/payload/platform/plugins/scheduling/mcp/dist/scripts/check-due-events.js.map +1 -1
  79. package/payload/platform/plugins/scheduling/mcp/dist/scripts/converge-startdate-utc.d.ts +24 -0
  80. package/payload/platform/plugins/scheduling/mcp/dist/scripts/converge-startdate-utc.d.ts.map +1 -0
  81. package/payload/platform/plugins/scheduling/mcp/dist/scripts/converge-startdate-utc.js +87 -0
  82. package/payload/platform/plugins/scheduling/mcp/dist/scripts/converge-startdate-utc.js.map +1 -0
  83. package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-event-startdate.test.d.ts +2 -0
  84. package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-event-startdate.test.d.ts.map +1 -0
  85. package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-event-startdate.test.js +123 -0
  86. package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-event-startdate.test.js.map +1 -0
  87. package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-update-startdate.test.d.ts +2 -0
  88. package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-update-startdate.test.d.ts.map +1 -0
  89. package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-update-startdate.test.js +71 -0
  90. package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-update-startdate.test.js.map +1 -0
  91. package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-update-status.test.js +14 -3
  92. package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-update-status.test.js.map +1 -1
  93. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-event.d.ts +9 -0
  94. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-event.d.ts.map +1 -1
  95. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-event.js +19 -3
  96. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-event.js.map +1 -1
  97. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-update.d.ts.map +1 -1
  98. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-update.js +24 -9
  99. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-update.js.map +1 -1
  100. package/payload/platform/services/claude-session-manager/dist/canonical-tool-names.generated.d.ts.map +1 -1
  101. package/payload/platform/services/claude-session-manager/dist/canonical-tool-names.generated.js +1 -0
  102. package/payload/platform/services/claude-session-manager/dist/canonical-tool-names.generated.js.map +1 -1
  103. package/payload/server/{chunk-UTIHI6KV.js → chunk-2YMGNYA3.js} +12 -12
  104. package/payload/server/{manager-B4LRDZKC.js → manager-XPRN5UF5.js} +1 -1
  105. package/payload/server/package.json +1 -1
  106. package/payload/server/public/activity.html +5 -5
  107. package/payload/server/public/agents.html +4 -4
  108. package/payload/server/public/assets/{AdminLoginScreens-Bx9vPuUg.js → AdminLoginScreens-7Czw3MAC.js} +1 -1
  109. package/payload/server/public/assets/AdminLoginScreens-7Czw3MAC.js.br +0 -0
  110. package/payload/server/public/assets/AdminLoginScreens-7Czw3MAC.js.gz +0 -0
  111. package/payload/server/public/assets/{AdminShell-BxJPbC3p.js → AdminShell-D5GApZ_n.js} +1 -1
  112. package/payload/server/public/assets/AdminShell-D5GApZ_n.js.br +0 -0
  113. package/payload/server/public/assets/AdminShell-D5GApZ_n.js.gz +0 -0
  114. package/payload/server/public/assets/{CdpScreencastSurface-5HLhTQTV.js → CdpScreencastSurface-BbekDUFw.js} +1 -1
  115. package/payload/server/public/assets/CdpScreencastSurface-BbekDUFw.js.br +0 -0
  116. package/payload/server/public/assets/CdpScreencastSurface-BbekDUFw.js.gz +0 -0
  117. package/payload/server/public/assets/{activity-BaSYn62l.js → activity-ClI-RgJu.js} +1 -1
  118. package/payload/server/public/assets/activity-ClI-RgJu.js.br +0 -0
  119. package/payload/server/public/assets/activity-ClI-RgJu.js.gz +0 -0
  120. package/payload/server/public/assets/{admin-CYCKrV_x.js → admin-svtCmBPk.js} +1 -1
  121. package/payload/server/public/assets/admin-svtCmBPk.js.br +0 -0
  122. package/payload/server/public/assets/admin-svtCmBPk.js.gz +0 -0
  123. package/payload/server/public/assets/{agents-D8EJG-ta.js → agents-BO8YBj8d.js} +1 -1
  124. package/payload/server/public/assets/agents-BO8YBj8d.js.br +0 -0
  125. package/payload/server/public/assets/agents-BO8YBj8d.js.gz +0 -0
  126. package/payload/server/public/assets/{browser-D6Y_Zu8C.js → browser-Bj8oTG5R.js} +1 -1
  127. package/payload/server/public/assets/browser-Bj8oTG5R.js.br +0 -0
  128. package/payload/server/public/assets/browser-Bj8oTG5R.js.gz +0 -0
  129. package/payload/server/public/assets/{calendar-DD4oVa-r.js → calendar-CrkSY8U7.js} +1 -1
  130. package/payload/server/public/assets/calendar-CrkSY8U7.js.br +0 -0
  131. package/payload/server/public/assets/calendar-CrkSY8U7.js.gz +0 -0
  132. package/payload/server/public/assets/chat-Bvxoni2e.js +1 -0
  133. package/payload/server/public/assets/chat-Bvxoni2e.js.br +0 -0
  134. package/payload/server/public/assets/chat-Bvxoni2e.js.gz +0 -0
  135. package/payload/server/public/assets/chevron-left-CdUzxzeB.js +1 -0
  136. package/payload/server/public/assets/chevron-left-CdUzxzeB.js.br +0 -0
  137. package/payload/server/public/assets/chevron-right-CKGwd-M0.js +1 -0
  138. package/payload/server/public/assets/chevron-right-CKGwd-M0.js.br +0 -0
  139. package/payload/server/public/assets/clock-Cf8Oe9qi.js +1 -0
  140. package/payload/server/public/assets/clock-Cf8Oe9qi.js.br +0 -0
  141. package/payload/server/public/assets/clock-Cf8Oe9qi.js.gz +0 -0
  142. package/payload/server/public/assets/data-DF0Pstdp.js +1 -0
  143. package/payload/server/public/assets/data-DF0Pstdp.js.br +1 -0
  144. package/payload/server/public/assets/data-DF0Pstdp.js.gz +0 -0
  145. package/payload/server/public/assets/{file-download-sXU3_umF.js → file-download-Di_s0_4w.js} +1 -1
  146. package/payload/server/public/assets/file-download-Di_s0_4w.js.br +0 -0
  147. package/payload/server/public/assets/file-download-Di_s0_4w.js.gz +0 -0
  148. package/payload/server/public/assets/{file-text-CeXBviDH.js → file-text-CP1KIrJV.js} +1 -1
  149. package/payload/server/public/assets/file-text-CP1KIrJV.js.br +1 -0
  150. package/payload/server/public/assets/file-text-CP1KIrJV.js.gz +0 -0
  151. package/payload/server/public/assets/{graph-BSuDP6k7.js → graph-BCMscnCV.js} +1 -1
  152. package/payload/server/public/assets/graph-BCMscnCV.js.br +0 -0
  153. package/payload/server/public/assets/graph-BCMscnCV.js.gz +0 -0
  154. package/payload/server/public/assets/{graph-labels-D2pQkgYW.js → graph-labels-CgP17xHK.js} +1 -1
  155. package/payload/server/public/assets/graph-labels-CgP17xHK.js.br +0 -0
  156. package/payload/server/public/assets/graph-labels-CgP17xHK.js.gz +0 -0
  157. package/payload/server/public/assets/{maximize-2-DlzSNygU.js → maximize-2-DkQzDv-g.js} +1 -1
  158. package/payload/server/public/assets/maximize-2-DkQzDv-g.js.br +0 -0
  159. package/payload/server/public/assets/maximize-2-DkQzDv-g.js.gz +0 -0
  160. package/payload/server/public/assets/{operator-BP61-xjz.js → operator-CLbCar9e.js} +1 -1
  161. package/payload/server/public/assets/operator-CLbCar9e.js.br +0 -0
  162. package/payload/server/public/assets/operator-CLbCar9e.js.gz +0 -0
  163. package/payload/server/public/assets/{page-DX7ArY_s.js → page-CNJl3tWT.js} +1 -1
  164. package/payload/server/public/assets/page-CNJl3tWT.js.br +0 -0
  165. package/payload/server/public/assets/page-CNJl3tWT.js.gz +0 -0
  166. package/payload/server/public/assets/{page-eQ4OVros.js → page-CPVUAwb8.js} +1 -1
  167. package/payload/server/public/assets/page-CPVUAwb8.js.br +0 -0
  168. package/payload/server/public/assets/page-CPVUAwb8.js.gz +0 -0
  169. package/payload/server/public/assets/{public-DPDKFKM2.js → public-DQea3Ybz.js} +1 -1
  170. package/payload/server/public/assets/public-DQea3Ybz.js.br +0 -0
  171. package/payload/server/public/assets/public-DQea3Ybz.js.gz +0 -0
  172. package/payload/server/public/assets/{rotate-ccw-BR0JbPFV.js → rotate-ccw-DPw0vXC0.js} +1 -1
  173. package/payload/server/public/assets/rotate-ccw-DPw0vXC0.js.br +0 -0
  174. package/payload/server/public/assets/rotate-ccw-DPw0vXC0.js.gz +0 -0
  175. package/payload/server/public/assets/routines-CwiiYpfK.js +2 -0
  176. package/payload/server/public/assets/routines-CwiiYpfK.js.br +0 -0
  177. package/payload/server/public/assets/routines-CwiiYpfK.js.gz +0 -0
  178. package/payload/server/public/assets/{skills-fH0uA7cj.js → skills-0FOjKUM-.js} +1 -1
  179. package/payload/server/public/assets/skills-0FOjKUM-.js.br +0 -0
  180. package/payload/server/public/assets/skills-0FOjKUM-.js.gz +0 -0
  181. package/payload/server/public/assets/{tasks-CrVzFrTR.js → tasks-BUVsPEGm.js} +1 -1
  182. package/payload/server/public/assets/tasks-BUVsPEGm.js.br +0 -0
  183. package/payload/server/public/assets/tasks-BUVsPEGm.js.gz +0 -0
  184. package/payload/server/public/assets/{time-entry-format-C_0jiMpQ.js → time-entry-format-B6fX_19a.js} +1 -1
  185. package/payload/server/public/assets/time-entry-format-B6fX_19a.js.br +0 -0
  186. package/payload/server/public/assets/time-entry-format-B6fX_19a.js.gz +0 -0
  187. package/payload/server/public/assets/{triangle-alert-eLJHC_QJ.js → triangle-alert-vAaSDhVq.js} +1 -1
  188. package/payload/server/public/assets/triangle-alert-vAaSDhVq.js.br +0 -0
  189. package/payload/server/public/assets/triangle-alert-vAaSDhVq.js.gz +0 -0
  190. package/payload/server/public/assets/{useCopyFeedback-vPCmdOmY.js → useCopyFeedback-BvIRgs7W.js} +1 -1
  191. package/payload/server/public/assets/useCopyFeedback-BvIRgs7W.js.br +0 -0
  192. package/payload/server/public/assets/useCopyFeedback-BvIRgs7W.js.gz +0 -0
  193. package/payload/server/public/assets/{useSubAccountSwitcher-DxuUS_C7.css → useSubAccountSwitcher-DM5Y9eio.css} +1 -1
  194. package/payload/server/public/assets/useSubAccountSwitcher-DM5Y9eio.css.br +0 -0
  195. package/payload/server/public/assets/{useSubAccountSwitcher-DxuUS_C7.css.gz → useSubAccountSwitcher-DM5Y9eio.css.gz} +0 -0
  196. package/payload/server/public/assets/{useVoiceRecorder-D5bFDRqL.js → useVoiceRecorder-CiDOh8PG.js} +1 -1
  197. package/payload/server/public/assets/useVoiceRecorder-CiDOh8PG.js.br +0 -0
  198. package/payload/server/public/assets/useVoiceRecorder-CiDOh8PG.js.gz +0 -0
  199. package/payload/server/public/assets/{wrench-sXisQXkf.js → wrench-BNBtwT2p.js} +1 -1
  200. package/payload/server/public/assets/wrench-BNBtwT2p.js.br +0 -0
  201. package/payload/server/public/assets/wrench-BNBtwT2p.js.gz +0 -0
  202. package/payload/server/public/browser.html +5 -5
  203. package/payload/server/public/calendar.html +7 -7
  204. package/payload/server/public/chat.html +13 -13
  205. package/payload/server/public/data.html +12 -12
  206. package/payload/server/public/graph.html +9 -9
  207. package/payload/server/public/index.html +16 -16
  208. package/payload/server/public/operator.html +15 -15
  209. package/payload/server/public/public.html +13 -13
  210. package/payload/server/public/routines.html +7 -7
  211. package/payload/server/public/skills.html +5 -5
  212. package/payload/server/public/tasks.html +6 -6
  213. package/payload/server/server.js +353 -209
  214. package/payload/server/public/assets/AdminLoginScreens-Bx9vPuUg.js.br +0 -0
  215. package/payload/server/public/assets/AdminLoginScreens-Bx9vPuUg.js.gz +0 -0
  216. package/payload/server/public/assets/AdminShell-BxJPbC3p.js.br +0 -0
  217. package/payload/server/public/assets/AdminShell-BxJPbC3p.js.gz +0 -0
  218. package/payload/server/public/assets/CdpScreencastSurface-5HLhTQTV.js.br +0 -0
  219. package/payload/server/public/assets/CdpScreencastSurface-5HLhTQTV.js.gz +0 -0
  220. package/payload/server/public/assets/activity-BaSYn62l.js.br +0 -0
  221. package/payload/server/public/assets/activity-BaSYn62l.js.gz +0 -0
  222. package/payload/server/public/assets/admin-CYCKrV_x.js.br +0 -0
  223. package/payload/server/public/assets/admin-CYCKrV_x.js.gz +0 -0
  224. package/payload/server/public/assets/agents-D8EJG-ta.js.br +0 -0
  225. package/payload/server/public/assets/agents-D8EJG-ta.js.gz +0 -0
  226. package/payload/server/public/assets/browser-D6Y_Zu8C.js.br +0 -0
  227. package/payload/server/public/assets/browser-D6Y_Zu8C.js.gz +0 -0
  228. package/payload/server/public/assets/calendar-DD4oVa-r.js.br +0 -0
  229. package/payload/server/public/assets/calendar-DD4oVa-r.js.gz +0 -0
  230. package/payload/server/public/assets/chat-CwWs69PO.js +0 -1
  231. package/payload/server/public/assets/chat-CwWs69PO.js.br +0 -0
  232. package/payload/server/public/assets/chat-CwWs69PO.js.gz +0 -0
  233. package/payload/server/public/assets/chevron-left-ClfIy5Fx.js +0 -1
  234. package/payload/server/public/assets/chevron-right-B0QvXpxl.js +0 -1
  235. package/payload/server/public/assets/chevron-right-B0QvXpxl.js.br +0 -0
  236. package/payload/server/public/assets/clock-BIaRnIP_.js +0 -1
  237. package/payload/server/public/assets/clock-BIaRnIP_.js.br +0 -0
  238. package/payload/server/public/assets/clock-BIaRnIP_.js.gz +0 -0
  239. package/payload/server/public/assets/data-O_9Kiicl.js +0 -1
  240. package/payload/server/public/assets/data-O_9Kiicl.js.br +0 -2
  241. package/payload/server/public/assets/data-O_9Kiicl.js.gz +0 -0
  242. package/payload/server/public/assets/file-download-sXU3_umF.js.br +0 -0
  243. package/payload/server/public/assets/file-download-sXU3_umF.js.gz +0 -0
  244. package/payload/server/public/assets/file-text-CeXBviDH.js.br +0 -0
  245. package/payload/server/public/assets/file-text-CeXBviDH.js.gz +0 -0
  246. package/payload/server/public/assets/graph-BSuDP6k7.js.br +0 -0
  247. package/payload/server/public/assets/graph-BSuDP6k7.js.gz +0 -0
  248. package/payload/server/public/assets/graph-labels-D2pQkgYW.js.br +0 -0
  249. package/payload/server/public/assets/graph-labels-D2pQkgYW.js.gz +0 -0
  250. package/payload/server/public/assets/maximize-2-DlzSNygU.js.br +0 -0
  251. package/payload/server/public/assets/maximize-2-DlzSNygU.js.gz +0 -0
  252. package/payload/server/public/assets/operator-BP61-xjz.js.br +0 -0
  253. package/payload/server/public/assets/operator-BP61-xjz.js.gz +0 -0
  254. package/payload/server/public/assets/page-DX7ArY_s.js.br +0 -0
  255. package/payload/server/public/assets/page-DX7ArY_s.js.gz +0 -0
  256. package/payload/server/public/assets/page-eQ4OVros.js.br +0 -0
  257. package/payload/server/public/assets/page-eQ4OVros.js.gz +0 -0
  258. package/payload/server/public/assets/public-DPDKFKM2.js.br +0 -0
  259. package/payload/server/public/assets/public-DPDKFKM2.js.gz +0 -0
  260. package/payload/server/public/assets/rotate-ccw-BR0JbPFV.js.br +0 -0
  261. package/payload/server/public/assets/rotate-ccw-BR0JbPFV.js.gz +0 -0
  262. package/payload/server/public/assets/routines-y413YZa-.js +0 -1
  263. package/payload/server/public/assets/routines-y413YZa-.js.br +0 -0
  264. package/payload/server/public/assets/routines-y413YZa-.js.gz +0 -0
  265. package/payload/server/public/assets/skills-fH0uA7cj.js.br +0 -0
  266. package/payload/server/public/assets/skills-fH0uA7cj.js.gz +0 -0
  267. package/payload/server/public/assets/tasks-CrVzFrTR.js.br +0 -0
  268. package/payload/server/public/assets/tasks-CrVzFrTR.js.gz +0 -0
  269. package/payload/server/public/assets/time-entry-format-C_0jiMpQ.js.br +0 -1
  270. package/payload/server/public/assets/time-entry-format-C_0jiMpQ.js.gz +0 -0
  271. package/payload/server/public/assets/triangle-alert-eLJHC_QJ.js.br +0 -1
  272. package/payload/server/public/assets/triangle-alert-eLJHC_QJ.js.gz +0 -0
  273. package/payload/server/public/assets/useCopyFeedback-vPCmdOmY.js.br +0 -0
  274. package/payload/server/public/assets/useCopyFeedback-vPCmdOmY.js.gz +0 -0
  275. package/payload/server/public/assets/useSubAccountSwitcher-DxuUS_C7.css.br +0 -0
  276. package/payload/server/public/assets/useVoiceRecorder-D5bFDRqL.js.br +0 -0
  277. package/payload/server/public/assets/useVoiceRecorder-D5bFDRqL.js.gz +0 -0
  278. package/payload/server/public/assets/wrench-sXisQXkf.js.br +0 -0
  279. package/payload/server/public/assets/wrench-sXisQXkf.js.gz +0 -0
  280. /package/payload/server/public/assets/{useSubAccountSwitcher-DMr3DR5N.js → useSubAccountSwitcher-BEwQMRMo.js} +0 -0
  281. /package/payload/server/public/assets/{useSubAccountSwitcher-DMr3DR5N.js.br → useSubAccountSwitcher-BEwQMRMo.js.br} +0 -0
  282. /package/payload/server/public/assets/{useSubAccountSwitcher-DMr3DR5N.js.gz → useSubAccountSwitcher-BEwQMRMo.js.gz} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"normalise-start-date.test.d.ts","sourceRoot":"","sources":["../../../src/lib/__tests__/normalise-start-date.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,100 @@
1
+ // Task 2213. The due predicate compares startDate lexically against
2
+ // new Date().toISOString(), so every stored value must share that exact shape.
3
+ import { describe, it, expect } from "vitest";
4
+ import { normaliseStartDate, isCanonicalStartDate } from "../time-format.js";
5
+ describe("normaliseStartDate — offset-bearing input", () => {
6
+ it("converts a BST offset to the equivalent UTC instant", () => {
7
+ expect(normaliseStartDate("2026-07-30T11:45:00+01:00", "Europe/London")).toBe("2026-07-30T10:45:00.000Z");
8
+ });
9
+ it("leaves an already-canonical value byte-identical", () => {
10
+ expect(normaliseStartDate("2026-06-28T05:00:00.000Z", "UTC")).toBe("2026-06-28T05:00:00.000Z");
11
+ });
12
+ it("adds the missing .000 to a Z value that lacks it", () => {
13
+ expect(normaliseStartDate("2026-07-28T10:00:00Z", "UTC")).toBe("2026-07-28T10:00:00.000Z");
14
+ });
15
+ it("handles the milliseconds-plus-offset shape", () => {
16
+ expect(normaliseStartDate("2026-08-02T19:00:00.000+01:00", "Europe/London")).toBe("2026-08-02T18:00:00.000Z");
17
+ });
18
+ it("ignores the zone argument entirely when the value carries one", () => {
19
+ expect(normaliseStartDate("2026-07-30T11:45:00+01:00", "America/New_York")).toBe("2026-07-30T10:45:00.000Z");
20
+ });
21
+ });
22
+ describe("normaliseStartDate — zoneless wall clock", () => {
23
+ it("reads a summer wall clock in the given zone", () => {
24
+ expect(normaliseStartDate("2026-07-20T09:00:00", "Europe/London")).toBe("2026-07-20T08:00:00.000Z");
25
+ });
26
+ it("reads a winter wall clock in the given zone", () => {
27
+ expect(normaliseStartDate("2026-01-15T09:00:00", "Europe/London")).toBe("2026-01-15T09:00:00.000Z");
28
+ });
29
+ it("reads a non-UK zone", () => {
30
+ expect(normaliseStartDate("2026-07-20T09:00:00", "America/New_York")).toBe("2026-07-20T13:00:00.000Z");
31
+ });
32
+ it("shifts a spring-forward gap wall clock past the gap", () => {
33
+ // 01:30 on 29 Mar 2026 does not exist in Europe/London; 01:00 GMT -> 02:00 BST.
34
+ expect(normaliseStartDate("2026-03-29T01:30:00", "Europe/London")).toBe("2026-03-29T01:30:00.000Z");
35
+ });
36
+ it("takes the earlier occurrence of an ambiguous autumn wall clock", () => {
37
+ // 01:30 on 25 Oct 2026 happens twice; the earlier one is BST at 00:30Z.
38
+ expect(normaliseStartDate("2026-10-25T01:30:00", "Europe/London")).toBe("2026-10-25T00:30:00.000Z");
39
+ });
40
+ it("takes the earlier occurrence of an ambiguous US wall clock", () => {
41
+ expect(normaliseStartDate("2026-11-01T01:30:00", "America/New_York")).toBe("2026-11-01T05:30:00.000Z");
42
+ });
43
+ });
44
+ describe("normaliseStartDate — partial and sub-second precision", () => {
45
+ it("keeps the fractional second on a zoneless value", () => {
46
+ // Intl resolves only to seconds. Differencing its reconstruction against a
47
+ // millisecond-bearing instant used to fold the fraction into the offset and
48
+ // land a full second out (09:00:00.5 BST came back as 08:00:01.000Z).
49
+ expect(normaliseStartDate("2026-07-20T09:00:00.5", "Europe/London")).toBe("2026-07-20T08:00:00.500Z");
50
+ expect(normaliseStartDate("2026-01-15T09:00:00.123", "Europe/London")).toBe("2026-01-15T09:00:00.123Z");
51
+ });
52
+ it("reads a minute-precision value in the zone", () => {
53
+ expect(normaliseStartDate("2026-07-20T09:00", "Europe/London")).toBe("2026-07-20T08:00:00.000Z");
54
+ });
55
+ it("reads a date-only value as midnight in the zone", () => {
56
+ // Midnight on 20 July in London is 23:00Z on the 19th.
57
+ expect(normaliseStartDate("2026-07-20", "Europe/London")).toBe("2026-07-19T23:00:00.000Z");
58
+ expect(normaliseStartDate("2026-01-15", "Europe/London")).toBe("2026-01-15T00:00:00.000Z");
59
+ });
60
+ it("accepts an offset written without a colon", () => {
61
+ expect(normaliseStartDate("2026-07-20T09:00:00+0100", "Europe/London")).toBe("2026-07-20T08:00:00.000Z");
62
+ });
63
+ });
64
+ describe("normaliseStartDate — refusals", () => {
65
+ it("throws on a zoneless value with a null zone, naming the value", () => {
66
+ expect(() => normaliseStartDate("2026-07-20T09:00:00", null)).toThrow(/2026-07-20T09:00:00/);
67
+ });
68
+ it("throws on a zoneless value with an invalid zone", () => {
69
+ expect(() => normaliseStartDate("2026-07-20T09:00:00", "Not/AZone")).toThrow(/Not\/AZone/);
70
+ });
71
+ it("throws on an unparseable value, naming it", () => {
72
+ expect(() => normaliseStartDate("next tuesday", "Europe/London")).toThrow(/next tuesday/);
73
+ });
74
+ });
75
+ describe("normaliseStartDate — server timezone independence", () => {
76
+ it("gives the same answer whatever the process TZ is", () => {
77
+ // A server-local reading (new Date("2026-07-20T09:00:00")) would differ here.
78
+ const before = process.env.TZ;
79
+ try {
80
+ process.env.TZ = "Asia/Tokyo";
81
+ expect(normaliseStartDate("2026-07-20T09:00:00", "Europe/London")).toBe("2026-07-20T08:00:00.000Z");
82
+ process.env.TZ = "America/Los_Angeles";
83
+ expect(normaliseStartDate("2026-07-20T09:00:00", "Europe/London")).toBe("2026-07-20T08:00:00.000Z");
84
+ }
85
+ finally {
86
+ process.env.TZ = before;
87
+ }
88
+ });
89
+ });
90
+ describe("isCanonicalStartDate", () => {
91
+ it("accepts only the full 24-character shape", () => {
92
+ expect(isCanonicalStartDate("2026-07-30T10:45:00.000Z")).toBe(true);
93
+ // Right instant, wrong shape: "…00.000Z" sorts BEFORE "…00Z", so a mixed
94
+ // corpus breaks the ordering the whole fix restores.
95
+ expect(isCanonicalStartDate("2026-07-30T10:45:00Z")).toBe(false);
96
+ expect(isCanonicalStartDate("2026-07-30T11:45:00+01:00")).toBe(false);
97
+ expect(isCanonicalStartDate("2026-07-20T09:00:00")).toBe(false);
98
+ });
99
+ });
100
+ //# sourceMappingURL=normalise-start-date.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"normalise-start-date.test.js","sourceRoot":"","sources":["../../../src/lib/__tests__/normalise-start-date.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Task 2213 — the dispatcher's Neo4j connection and local-account scoping,
3
+ * extracted so more than one script can share them.
4
+ *
5
+ * Both functions were module-private in `check-due-events.ts`. That module calls
6
+ * `main()` at import time, so importing it to reach them would run the whole
7
+ * heartbeat as a side effect. They are moved verbatim rather than rewritten:
8
+ * this is a relocation, not a behaviour change, and the 452-test suite covers
9
+ * the dispatcher that still calls them.
10
+ */
11
+ import neo4j from "neo4j-driver";
12
+ /**
13
+ * Standalone driver — deliberately not the MCP server's shared one.
14
+ *
15
+ * `NEO4J_URI` must be explicit. The crontab installer prefixes
16
+ * `NEO4J_URI=bolt://localhost:${NEO4J_PORT}` so the cron path is safe, and the
17
+ * throw-on-unset catches manual runs that forget to source `.env`. Silently
18
+ * defaulting to 7687 was the vector that put one install's rows in another
19
+ * install's database.
20
+ *
21
+ * `tag` names the calling script in the two lines this emits. Left as the
22
+ * dispatcher's own name by default so its log output is unchanged; the
23
+ * convergence script passes its own, because a `resolved neo4j_uri` line
24
+ * attributed to a script that is not running sends the next reader to the
25
+ * wrong log.
26
+ */
27
+ export declare function connectNeo4j(tag?: string): neo4j.Driver;
28
+ /**
29
+ * The accounts this install owns, by directory under `data/accounts`.
30
+ *
31
+ * Every graph statement that dispatches or rewrites is scoped to these, so a
32
+ * scheduler sharing a Neo4j instance with another install never touches a
33
+ * foreign install's rows.
34
+ */
35
+ export declare function listLocalAccountIds(platformRoot: string): string[];
36
+ //# sourceMappingURL=dispatcher-env.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dispatcher-env.d.ts","sourceRoot":"","sources":["../../src/lib/dispatcher-env.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,MAAM,cAAc,CAAC;AAIjC;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,YAAY,CAAC,GAAG,SAAqB,gBA2BpD;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE,CAelE"}
@@ -0,0 +1,82 @@
1
+ /**
2
+ * Task 2213 — the dispatcher's Neo4j connection and local-account scoping,
3
+ * extracted so more than one script can share them.
4
+ *
5
+ * Both functions were module-private in `check-due-events.ts`. That module calls
6
+ * `main()` at import time, so importing it to reach them would run the whole
7
+ * heartbeat as a side effect. They are moved verbatim rather than rewritten:
8
+ * this is a relocation, not a behaviour change, and the 452-test suite covers
9
+ * the dispatcher that still calls them.
10
+ */
11
+ import neo4j from "neo4j-driver";
12
+ import { readFileSync, existsSync, readdirSync } from "node:fs";
13
+ import { resolve, join } from "node:path";
14
+ /**
15
+ * Standalone driver — deliberately not the MCP server's shared one.
16
+ *
17
+ * `NEO4J_URI` must be explicit. The crontab installer prefixes
18
+ * `NEO4J_URI=bolt://localhost:${NEO4J_PORT}` so the cron path is safe, and the
19
+ * throw-on-unset catches manual runs that forget to source `.env`. Silently
20
+ * defaulting to 7687 was the vector that put one install's rows in another
21
+ * install's database.
22
+ *
23
+ * `tag` names the calling script in the two lines this emits. Left as the
24
+ * dispatcher's own name by default so its log output is unchanged; the
25
+ * convergence script passes its own, because a `resolved neo4j_uri` line
26
+ * attributed to a script that is not running sends the next reader to the
27
+ * wrong log.
28
+ */
29
+ export function connectNeo4j(tag = "check-due-events") {
30
+ const platformRoot = process.env.PLATFORM_ROOT;
31
+ if (!platformRoot) {
32
+ throw new Error("PLATFORM_ROOT environment variable is required");
33
+ }
34
+ let password;
35
+ if (process.env.NEO4J_PASSWORD) {
36
+ password = process.env.NEO4J_PASSWORD;
37
+ }
38
+ else {
39
+ const passwordFile = resolve(platformRoot, "config/.neo4j-password");
40
+ try {
41
+ password = readFileSync(passwordFile, "utf-8").trim();
42
+ }
43
+ catch {
44
+ throw new Error(`Neo4j password not found at ${passwordFile}`);
45
+ }
46
+ }
47
+ const uri = process.env.NEO4J_URI;
48
+ if (!uri) {
49
+ throw new Error(`[scheduling/${tag}] NEO4J_URI unset — refusing to default to bolt://localhost:7687`);
50
+ }
51
+ const user = process.env.NEO4J_USER ?? "neo4j";
52
+ console.error(`[scheduling/${tag}] resolved neo4j_uri=${uri}`);
53
+ return neo4j.driver(uri, neo4j.auth.basic(user, password));
54
+ }
55
+ /**
56
+ * The accounts this install owns, by directory under `data/accounts`.
57
+ *
58
+ * Every graph statement that dispatches or rewrites is scoped to these, so a
59
+ * scheduler sharing a Neo4j instance with another install never touches a
60
+ * foreign install's rows.
61
+ */
62
+ export function listLocalAccountIds(platformRoot) {
63
+ const accountsDir = resolve(platformRoot, "..", "data/accounts");
64
+ if (!existsSync(accountsDir))
65
+ return [];
66
+ try {
67
+ return readdirSync(accountsDir).filter((d) => {
68
+ if (d.startsWith("."))
69
+ return false;
70
+ try {
71
+ return existsSync(join(accountsDir, d, "account.json"));
72
+ }
73
+ catch {
74
+ return false;
75
+ }
76
+ });
77
+ }
78
+ catch {
79
+ return [];
80
+ }
81
+ }
82
+ //# sourceMappingURL=dispatcher-env.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dispatcher-env.js","sourceRoot":"","sources":["../../src/lib/dispatcher-env.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,MAAM,cAAc,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAChE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAE1C;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,YAAY,CAAC,GAAG,GAAG,kBAAkB;IACnD,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;IAC/C,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACpE,CAAC;IAED,IAAI,QAAgB,CAAC;IACrB,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;QAC/B,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;IACxC,CAAC;SAAM,CAAC;QACN,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,EAAE,wBAAwB,CAAC,CAAC;QACrE,IAAI,CAAC;YACH,QAAQ,GAAG,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;QACxD,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,KAAK,CAAC,+BAA+B,YAAY,EAAE,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IAED,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC;IAClC,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CACb,eAAe,GAAG,kEAAkE,CACrF,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,OAAO,CAAC;IAC/C,OAAO,CAAC,KAAK,CAAC,eAAe,GAAG,wBAAwB,GAAG,EAAE,CAAC,CAAC;IAC/D,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;AAC7D,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CAAC,YAAoB;IACtD,MAAM,WAAW,GAAG,OAAO,CAAC,YAAY,EAAE,IAAI,EAAE,eAAe,CAAC,CAAC;IACjE,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC;QAAE,OAAO,EAAE,CAAC;IACxC,IAAI,CAAC;QACH,OAAO,WAAW,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;YAC3C,IAAI,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,OAAO,KAAK,CAAC;YACpC,IAAI,CAAC;gBACH,OAAO,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC;YAC1D,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC"}
@@ -45,4 +45,35 @@ export declare function formatRelativeDelta(isoString: string, now?: Date): stri
45
45
  * @param now - Current time (injectable for testing)
46
46
  */
47
47
  export declare function formatCombined(isoString: string, timezone: string, now?: Date): string;
48
+ /**
49
+ * Task 2213 — the single definition of a canonical `:Event.startDate`.
50
+ *
51
+ * The dispatcher selects one-time events on `e.startDate <= $now` where `$now`
52
+ * is `new Date().toISOString()` (`check-due-events.ts:686`). Cypher compares the
53
+ * two as STRINGS, lexically, so an offset suffix is never parsed and a `+01:00`
54
+ * value goes due when the UTC clock reaches its wall-clock digits — 60 minutes
55
+ * late under BST, and on time under GMT, which is why the defect self-heals
56
+ * every October and returns every March.
57
+ *
58
+ * The output is therefore always the exact 24-character shape `toISOString()`
59
+ * produces. The fixed width is the point: lexical order equals instant order
60
+ * only when every stored value shares one shape. That is also why this is not
61
+ * done in Cypher — `toString(datetime(...))` omits `.000` at a zero-millisecond
62
+ * instant, and `"…00.000Z"` sorts BEFORE `"…00Z"`.
63
+ *
64
+ * A zoneless wall clock is read in `zone`, never in the server's zone: a
65
+ * server-local reading makes the stored instant depend on which machine wrote
66
+ * it, which is the same fault class one layer down. With no usable zone this
67
+ * throws rather than guessing.
68
+ *
69
+ * DST is resolved the way `Temporal`'s `disambiguation: 'compatible'` resolves
70
+ * it. Take the offsets in force a day either side, giving two candidate
71
+ * instants; keep those that render back to exactly the input wall clock. If any
72
+ * survive, take the earliest (the earlier occurrence of an ambiguous autumn
73
+ * time). If none survive, the wall clock is inside a spring-forward gap and does
74
+ * not exist, so take the later candidate, which shifts it past the gap.
75
+ */
76
+ export declare function normaliseStartDate(raw: string, zone: string | null): string;
77
+ /** True when `value` is already in the canonical form above. */
78
+ export declare function isCanonicalStartDate(value: string): boolean;
48
79
  //# sourceMappingURL=time-format.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"time-format.d.ts","sourceRoot":"","sources":["../../src/lib/time-format.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAMH;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAYjD;AAMD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAqB5E;AAiBD;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,MAAM,EACjB,GAAG,GAAE,IAAiB,GACrB,MAAM,GAAG,IAAI,CAyCf;AAMD;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,CAC5B,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,GAAG,GAAE,IAAiB,GACrB,MAAM,CAQR"}
1
+ {"version":3,"file":"time-format.d.ts","sourceRoot":"","sources":["../../src/lib/time-format.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAMH;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAYjD;AAMD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAqB5E;AAiBD;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,MAAM,EACjB,GAAG,GAAE,IAAiB,GACrB,MAAM,GAAG,IAAI,CAyCf;AAMD;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,CAC5B,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,GAAG,GAAE,IAAiB,GACrB,MAAM,CAQR;AAiDD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CA8B3E;AAED,gEAAgE;AAChE,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAE3D"}
@@ -137,4 +137,103 @@ export function formatCombined(isoString, timezone, now = new Date()) {
137
137
  }
138
138
  return locale;
139
139
  }
140
+ // ---------------------------------------------------------------------------
141
+ // Canonical UTC normalisation (Task 2213)
142
+ // ---------------------------------------------------------------------------
143
+ /** Ends with `Z` or a numeric UTC offset, e.g. `+01:00`, `-0500`. */
144
+ const HAS_ZONE = /(?:Z|[+-]\d{2}:?\d{2})$/;
145
+ /** The zone's wall-clock parts at a given instant. */
146
+ function partsAt(ms, zone) {
147
+ const dtf = new Intl.DateTimeFormat("en-GB", {
148
+ timeZone: zone,
149
+ hour12: false,
150
+ year: "numeric",
151
+ month: "2-digit",
152
+ day: "2-digit",
153
+ hour: "2-digit",
154
+ minute: "2-digit",
155
+ second: "2-digit",
156
+ });
157
+ return Object.fromEntries(dtf.formatToParts(new Date(ms)).map((p) => [p.type, p.value]));
158
+ }
159
+ /**
160
+ * Milliseconds the zone is ahead of UTC at `ms`.
161
+ *
162
+ * Subtracted against the SECOND-truncated instant, never `ms` itself.
163
+ * `Intl.DateTimeFormat` resolves only to seconds, so differencing its
164
+ * reconstruction against a millisecond-bearing instant folds the fractional part
165
+ * into the offset: at `09:00:00.500` the offset came back as 3_599_500 rather
166
+ * than 3_600_000, and the caller's `naive - offset` then landed a full second
167
+ * out. A real zone offset is always a whole number of minutes, so truncating is
168
+ * lossless here and keeps the caller's sub-second precision intact.
169
+ */
170
+ function offsetMsAt(ms, zone) {
171
+ const p = partsAt(ms, zone);
172
+ // `hour` renders as "24" for midnight in en-GB; % 24 folds it back to 0.
173
+ const wallUtc = Date.UTC(+p.year, +p.month - 1, +p.day, +p.hour % 24, +p.minute, +p.second);
174
+ return wallUtc - Math.floor(ms / 1000) * 1000;
175
+ }
176
+ /** The zone's wall clock at `ms`, in the same shape as a zoneless input. */
177
+ function wallAt(ms, zone) {
178
+ const p = partsAt(ms, zone);
179
+ const hh = String(+p.hour % 24).padStart(2, "0");
180
+ return `${p.year}-${p.month}-${p.day}T${hh}:${p.minute}:${p.second}`;
181
+ }
182
+ /**
183
+ * Task 2213 — the single definition of a canonical `:Event.startDate`.
184
+ *
185
+ * The dispatcher selects one-time events on `e.startDate <= $now` where `$now`
186
+ * is `new Date().toISOString()` (`check-due-events.ts:686`). Cypher compares the
187
+ * two as STRINGS, lexically, so an offset suffix is never parsed and a `+01:00`
188
+ * value goes due when the UTC clock reaches its wall-clock digits — 60 minutes
189
+ * late under BST, and on time under GMT, which is why the defect self-heals
190
+ * every October and returns every March.
191
+ *
192
+ * The output is therefore always the exact 24-character shape `toISOString()`
193
+ * produces. The fixed width is the point: lexical order equals instant order
194
+ * only when every stored value shares one shape. That is also why this is not
195
+ * done in Cypher — `toString(datetime(...))` omits `.000` at a zero-millisecond
196
+ * instant, and `"…00.000Z"` sorts BEFORE `"…00Z"`.
197
+ *
198
+ * A zoneless wall clock is read in `zone`, never in the server's zone: a
199
+ * server-local reading makes the stored instant depend on which machine wrote
200
+ * it, which is the same fault class one layer down. With no usable zone this
201
+ * throws rather than guessing.
202
+ *
203
+ * DST is resolved the way `Temporal`'s `disambiguation: 'compatible'` resolves
204
+ * it. Take the offsets in force a day either side, giving two candidate
205
+ * instants; keep those that render back to exactly the input wall clock. If any
206
+ * survive, take the earliest (the earlier occurrence of an ambiguous autumn
207
+ * time). If none survive, the wall clock is inside a spring-forward gap and does
208
+ * not exist, so take the later candidate, which shifts it past the gap.
209
+ */
210
+ export function normaliseStartDate(raw, zone) {
211
+ const trimmed = raw.trim();
212
+ if (HAS_ZONE.test(trimmed)) {
213
+ const ms = Date.parse(trimmed);
214
+ if (Number.isNaN(ms)) {
215
+ throw new Error(`Unparseable startDate: "${raw}" — expected an ISO 8601 date-time`);
216
+ }
217
+ return new Date(ms).toISOString();
218
+ }
219
+ if (!zone) {
220
+ throw new Error(`startDate "${raw}" carries no timezone offset and no timezone is available to read it in — ` +
221
+ `pass an IANA timezone, or write the offset into the value`);
222
+ }
223
+ validateTimezone(zone);
224
+ const naive = Date.parse(`${trimmed}Z`);
225
+ if (Number.isNaN(naive)) {
226
+ throw new Error(`Unparseable startDate: "${raw}" — expected an ISO 8601 date-time`);
227
+ }
228
+ const DAY_MS = 86_400_000;
229
+ const before = naive - offsetMsAt(naive - DAY_MS, zone);
230
+ const after = naive - offsetMsAt(naive + DAY_MS, zone);
231
+ const valid = [before, after].filter((ms) => wallAt(ms, zone) === trimmed);
232
+ const chosen = valid.length > 0 ? Math.min(...valid) : Math.max(before, after);
233
+ return new Date(chosen).toISOString();
234
+ }
235
+ /** True when `value` is already in the canonical form above. */
236
+ export function isCanonicalStartDate(value) {
237
+ return /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\.\d{3}Z$/.test(value);
238
+ }
140
239
  //# sourceMappingURL=time-format.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"time-format.js","sourceRoot":"","sources":["../../src/lib/time-format.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"time-format.js","sourceRoot":"","sources":["../../src/lib/time-format.ts"],"names":[],"mappings":"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"}
@@ -67,7 +67,7 @@ describe("dispatchAgentTurn", () => {
67
67
  return { ok: true, status: 200, json: async () => ({ ok: true }) };
68
68
  });
69
69
  const driver = fakeDriver();
70
- await dispatchAgentTurn("evt-1", "whatsapp", "+447504472444", "reply OK", "acct-house", null, "schedule-event", "/tmp/no-accounts", driver, null);
70
+ await dispatchAgentTurn("evt-1", "whatsapp", "+447504472444", "reply OK", "acct-house", null, null /* Task 2213 dueAt — not under test here */, "schedule-event", "/tmp/no-accounts", driver, null);
71
71
  expect(calls).toHaveLength(1);
72
72
  expect(calls[0].url).toBe("http://127.0.0.1:19200/api/channel/schedule-inject");
73
73
  expect(calls[0].body).toMatchObject({
@@ -83,7 +83,7 @@ describe("dispatchAgentTurn", () => {
83
83
  it("records lastDispatchResult=error:404 on a non-ok response", async () => {
84
84
  globalThis.fetch = vi.fn(async () => ({ ok: false, status: 404, json: async () => ({}) }));
85
85
  const driver = fakeDriver();
86
- await dispatchAgentTurn("evt-2", "telegram", "12345678", "hello", "acct-house", null, "schedule-event", "/tmp/no-accounts", driver, null);
86
+ await dispatchAgentTurn("evt-2", "telegram", "12345678", "hello", "acct-house", null, null /* Task 2213 dueAt — not under test here */, "schedule-event", "/tmp/no-accounts", driver, null);
87
87
  const write = driver.runs.find((r) => r.query.includes("lastDispatchResult"));
88
88
  expect(write?.params.lastDispatchResult).toBe("error:404");
89
89
  });
@@ -103,7 +103,7 @@ describe("dispatchAgentTurn", () => {
103
103
  close: vi.fn(async () => { }),
104
104
  }),
105
105
  };
106
- await dispatchAgentTurn("evt-1", "whatsapp", "+447504472444", "reply OK", "acct-house", null, "schedule-event", "/tmp/no-accounts", driver, null);
106
+ await dispatchAgentTurn("evt-1", "whatsapp", "+447504472444", "reply OK", "acct-house", null, null /* Task 2213 dueAt — not under test here */, "schedule-event", "/tmp/no-accounts", driver, null);
107
107
  // Task 1526's per-firing seat is gone: no sessionId on the POST, and no
108
108
  // lastDispatchSessionId stamp (the self-cancel guard reads the turn's own
109
109
  // schedule provenance instead).
@@ -125,7 +125,7 @@ describe("dispatchAgentTurn", () => {
125
125
  errs.push(String(m));
126
126
  });
127
127
  const driver = fakeDriver();
128
- await dispatchAgentTurn("evt-9", "whatsapp", "+447504472444", "Auto-email the customers", "acct-house", null, "schedule-event", accountsDir, driver, null);
128
+ await dispatchAgentTurn("evt-9", "whatsapp", "+447504472444", "Auto-email the customers", "acct-house", null, null /* Task 2213 dueAt — not under test here */, "schedule-event", accountsDir, driver, null);
129
129
  errSpy.mockRestore();
130
130
  const prov = calls[0].body.scheduleProvenance;
131
131
  expect(prov).toMatchObject({
@@ -153,7 +153,7 @@ describe("dispatchAgentTurn — routine run record (Task 2136)", () => {
153
153
  it("closes the record accepted on 200 and appends no note line", async () => {
154
154
  globalThis.fetch = vi.fn(async () => ({ ok: true, status: 200, json: async () => ({ ok: true }) }));
155
155
  const driver = fakeDriver();
156
- await dispatchAgentTurn("evt-1", "whatsapp", "+15550000000", "reply OK", "acct-house", null, "schedule-event", "/tmp/no-accounts", driver, "run-1");
156
+ await dispatchAgentTurn("evt-1", "whatsapp", "+15550000000", "reply OK", "acct-house", null, null /* Task 2213 dueAt — not under test here */, "schedule-event", "/tmp/no-accounts", driver, "run-1");
157
157
  // `r.status = $outcome` rather than the bare RoutineRun MATCH: the session
158
158
  // pointer write matches that MATCH too, and it runs first.
159
159
  const close = driver.runs.find((r) => r.query.includes("r.status = $outcome"));
@@ -163,7 +163,7 @@ describe("dispatchAgentTurn — routine run record (Task 2136)", () => {
163
163
  it("closes the record failed on a non-ok response and keeps the verbatim dispatchResult", async () => {
164
164
  globalThis.fetch = vi.fn(async () => ({ ok: false, status: 404, json: async () => ({}) }));
165
165
  const driver = fakeDriver();
166
- await dispatchAgentTurn("evt-2", "telegram", "12345678", "hello", "acct-house", null, "schedule-event", "/tmp/no-accounts", driver, "run-2");
166
+ await dispatchAgentTurn("evt-2", "telegram", "12345678", "hello", "acct-house", null, null /* Task 2213 dueAt — not under test here */, "schedule-event", "/tmp/no-accounts", driver, "run-2");
167
167
  const close = driver.runs.find((r) => r.query.includes("r.status = $outcome"));
168
168
  expect(close?.params).toMatchObject({
169
169
  runId: "run-2",
@@ -175,14 +175,14 @@ describe("dispatchAgentTurn — routine run record (Task 2136)", () => {
175
175
  it("still stamps lastDispatchResult on the Event for the fleet's current readers", async () => {
176
176
  globalThis.fetch = vi.fn(async () => ({ ok: true, status: 200, json: async () => ({ ok: true }) }));
177
177
  const driver = fakeDriver();
178
- await dispatchAgentTurn("evt-3", "whatsapp", "+15550000000", "reply OK", "acct-house", null, "schedule-event", "/tmp/no-accounts", driver, "run-3");
178
+ await dispatchAgentTurn("evt-3", "whatsapp", "+15550000000", "reply OK", "acct-house", null, null /* Task 2213 dueAt — not under test here */, "schedule-event", "/tmp/no-accounts", driver, "run-3");
179
179
  const stamp = driver.runs.find((r) => r.query.includes("lastDispatchResult"));
180
180
  expect(stamp?.params.lastDispatchResult).toBe("accepted");
181
181
  });
182
182
  it("runs with a null runId — a failed open must never abort a dispatch", async () => {
183
183
  globalThis.fetch = vi.fn(async () => ({ ok: true, status: 200, json: async () => ({ ok: true }) }));
184
184
  const driver = fakeDriver();
185
- await expect(dispatchAgentTurn("evt-4", "whatsapp", "+15550000000", "reply OK", "acct-house", null, "schedule-event", "/tmp/no-accounts", driver, null)).resolves.toBeUndefined();
185
+ await expect(dispatchAgentTurn("evt-4", "whatsapp", "+15550000000", "reply OK", "acct-house", null, null /* Task 2213 dueAt — not under test here */, "schedule-event", "/tmp/no-accounts", driver, null)).resolves.toBeUndefined();
186
186
  expect(driver.runs.some((r) => r.query.includes("RoutineRun"))).toBe(false);
187
187
  });
188
188
  });
@@ -202,7 +202,7 @@ describe("dispatchAgentTurn — session pointer (Task 2136)", () => {
202
202
  json: async () => ({ ok: true, sessionKey: "sess-1", transcriptOffset: 1234, bounded: true }),
203
203
  }));
204
204
  const driver = fakeDriver();
205
- await dispatchAgentTurn("evt-1", "whatsapp", "+15550000000", "go", "acct-house", null, "schedule-event", "/tmp/no-accounts", driver, "run-1");
205
+ await dispatchAgentTurn("evt-1", "whatsapp", "+15550000000", "go", "acct-house", null, null /* Task 2213 dueAt — not under test here */, "schedule-event", "/tmp/no-accounts", driver, "run-1");
206
206
  const write = driver.runs.find((r) => r.query.includes("r.sessionKey = $sessionKey"));
207
207
  expect(write?.params).toMatchObject({
208
208
  runId: "run-1",
@@ -214,14 +214,14 @@ describe("dispatchAgentTurn — session pointer (Task 2136)", () => {
214
214
  it("records bounded=false when the response carries no pointer", async () => {
215
215
  globalThis.fetch = vi.fn(async () => ({ ok: true, status: 200, json: async () => ({ ok: true }) }));
216
216
  const driver = fakeDriver();
217
- await dispatchAgentTurn("evt-2", "whatsapp", "+15550000000", "go", "acct-house", null, "schedule-event", "/tmp/no-accounts", driver, "run-2");
217
+ await dispatchAgentTurn("evt-2", "whatsapp", "+15550000000", "go", "acct-house", null, null /* Task 2213 dueAt — not under test here */, "schedule-event", "/tmp/no-accounts", driver, "run-2");
218
218
  const write = driver.runs.find((r) => r.query.includes("r.sessionKey = $sessionKey"));
219
219
  expect(write?.params).toMatchObject({ bounded: false, transcriptOffset: null, sessionKey: null });
220
220
  });
221
221
  it("records nothing when the POST failed", async () => {
222
222
  globalThis.fetch = vi.fn(async () => ({ ok: false, status: 502, json: async () => ({}) }));
223
223
  const driver = fakeDriver();
224
- await dispatchAgentTurn("evt-3", "whatsapp", "+15550000000", "go", "acct-house", null, "schedule-event", "/tmp/no-accounts", driver, "run-3");
224
+ await dispatchAgentTurn("evt-3", "whatsapp", "+15550000000", "go", "acct-house", null, null /* Task 2213 dueAt — not under test here */, "schedule-event", "/tmp/no-accounts", driver, "run-3");
225
225
  expect(driver.runs.some((r) => r.query.includes("r.sessionKey = $sessionKey"))).toBe(false);
226
226
  });
227
227
  it("survives an unreadable response body as bounded=false", async () => {
@@ -233,7 +233,7 @@ describe("dispatchAgentTurn — session pointer (Task 2136)", () => {
233
233
  },
234
234
  }));
235
235
  const driver = fakeDriver();
236
- await dispatchAgentTurn("evt-4", "whatsapp", "+15550000000", "go", "acct-house", null, "schedule-event", "/tmp/no-accounts", driver, "run-4");
236
+ await dispatchAgentTurn("evt-4", "whatsapp", "+15550000000", "go", "acct-house", null, null /* Task 2213 dueAt — not under test here */, "schedule-event", "/tmp/no-accounts", driver, "run-4");
237
237
  const write = driver.runs.find((r) => r.query.includes("r.sessionKey = $sessionKey"));
238
238
  expect(write?.params).toMatchObject({ bounded: false, transcriptOffset: null, sessionKey: null });
239
239
  const close = driver.runs.find((r) => r.query.includes("r.status = $outcome"));
@@ -1 +1 @@
1
- {"version":3,"file":"agent-turn-dispatch.test.js","sourceRoot":"","sources":["../../../src/scripts/__tests__/agent-turn-dispatch.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-turn-dispatch.test.js","sourceRoot":"","sources":["../../../src/scripts/__tests__/agent-turn-dispatch.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=converge-startdate-utc.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"converge-startdate-utc.test.d.ts","sourceRoot":"","sources":["../../../src/scripts/__tests__/converge-startdate-utc.test.ts"],"names":[],"mappings":""}