@rubytech/create-sitedesk-code 0.1.529 → 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.
- package/dist/index.js +13 -0
- package/package.json +1 -1
- package/payload/platform/lib/routine-templates/dist/index.d.ts +19 -3
- package/payload/platform/lib/routine-templates/dist/index.d.ts.map +1 -1
- package/payload/platform/lib/routine-templates/dist/index.js +22 -4
- package/payload/platform/lib/routine-templates/dist/index.js.map +1 -1
- package/payload/platform/lib/routine-templates/dist/roster.d.ts +19 -6
- package/payload/platform/lib/routine-templates/dist/roster.d.ts.map +1 -1
- package/payload/platform/lib/routine-templates/dist/roster.js +127 -17
- package/payload/platform/lib/routine-templates/dist/roster.js.map +1 -1
- package/payload/platform/lib/routine-templates/src/__tests__/roster.test.ts +46 -3
- package/payload/platform/lib/routine-templates/src/__tests__/seed.test.ts +52 -10
- package/payload/platform/lib/routine-templates/src/index.ts +30 -4
- package/payload/platform/lib/routine-templates/src/roster.ts +147 -17
- package/payload/platform/plugins/admin/skills/platform-architecture/SKILL.md +7 -3
- package/payload/platform/plugins/admin/skills/whats-new/SKILL.md +6 -0
- package/payload/platform/plugins/docs/references/admin-ui.md +6 -2
- package/payload/platform/plugins/scheduling/PLUGIN.md +2 -0
- package/payload/platform/plugins/scheduling/mcp/dist/index.js +5 -0
- package/payload/platform/plugins/scheduling/mcp/dist/index.js.map +1 -1
- package/payload/platform/plugins/scheduling/mcp/dist/lib/__tests__/normalise-start-date.test.d.ts +2 -0
- package/payload/platform/plugins/scheduling/mcp/dist/lib/__tests__/normalise-start-date.test.d.ts.map +1 -0
- package/payload/platform/plugins/scheduling/mcp/dist/lib/__tests__/normalise-start-date.test.js +100 -0
- package/payload/platform/plugins/scheduling/mcp/dist/lib/__tests__/normalise-start-date.test.js.map +1 -0
- package/payload/platform/plugins/scheduling/mcp/dist/lib/dispatcher-env.d.ts +36 -0
- package/payload/platform/plugins/scheduling/mcp/dist/lib/dispatcher-env.d.ts.map +1 -0
- package/payload/platform/plugins/scheduling/mcp/dist/lib/dispatcher-env.js +82 -0
- package/payload/platform/plugins/scheduling/mcp/dist/lib/dispatcher-env.js.map +1 -0
- package/payload/platform/plugins/scheduling/mcp/dist/lib/time-format.d.ts +31 -0
- package/payload/platform/plugins/scheduling/mcp/dist/lib/time-format.d.ts.map +1 -1
- package/payload/platform/plugins/scheduling/mcp/dist/lib/time-format.js +99 -0
- package/payload/platform/plugins/scheduling/mcp/dist/lib/time-format.js.map +1 -1
- package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/agent-turn-dispatch.test.js +12 -12
- package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/agent-turn-dispatch.test.js.map +1 -1
- package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/converge-startdate-utc.test.d.ts +2 -0
- package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/converge-startdate-utc.test.d.ts.map +1 -0
- package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/converge-startdate-utc.test.js +79 -0
- package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/converge-startdate-utc.test.js.map +1 -0
- package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/dispatch-lateness.test.d.ts +2 -0
- package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/dispatch-lateness.test.d.ts.map +1 -0
- package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/dispatch-lateness.test.js +23 -0
- package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/dispatch-lateness.test.js.map +1 -0
- package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/routine-roster-audit.test.js +61 -1
- package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/routine-roster-audit.test.js.map +1 -1
- package/payload/platform/plugins/scheduling/mcp/dist/scripts/agent-turn-dispatch.d.ts +33 -1
- package/payload/platform/plugins/scheduling/mcp/dist/scripts/agent-turn-dispatch.d.ts.map +1 -1
- package/payload/platform/plugins/scheduling/mcp/dist/scripts/agent-turn-dispatch.js +96 -7
- package/payload/platform/plugins/scheduling/mcp/dist/scripts/agent-turn-dispatch.js.map +1 -1
- package/payload/platform/plugins/scheduling/mcp/dist/scripts/check-due-events.js +21 -69
- package/payload/platform/plugins/scheduling/mcp/dist/scripts/check-due-events.js.map +1 -1
- package/payload/platform/plugins/scheduling/mcp/dist/scripts/converge-startdate-utc.d.ts +24 -0
- package/payload/platform/plugins/scheduling/mcp/dist/scripts/converge-startdate-utc.d.ts.map +1 -0
- package/payload/platform/plugins/scheduling/mcp/dist/scripts/converge-startdate-utc.js +87 -0
- package/payload/platform/plugins/scheduling/mcp/dist/scripts/converge-startdate-utc.js.map +1 -0
- package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-event-startdate.test.d.ts +2 -0
- package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-event-startdate.test.d.ts.map +1 -0
- package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-event-startdate.test.js +123 -0
- package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-event-startdate.test.js.map +1 -0
- package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-update-startdate.test.d.ts +2 -0
- package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-update-startdate.test.d.ts.map +1 -0
- package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-update-startdate.test.js +71 -0
- package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-update-startdate.test.js.map +1 -0
- package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-update-status.test.js +14 -3
- package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-update-status.test.js.map +1 -1
- package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-event.d.ts +9 -0
- package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-event.d.ts.map +1 -1
- package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-event.js +19 -3
- package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-event.js.map +1 -1
- package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-update.d.ts.map +1 -1
- package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-update.js +24 -9
- package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-update.js.map +1 -1
- package/payload/server/{chunk-UTIHI6KV.js → chunk-2YMGNYA3.js} +12 -12
- package/payload/server/{manager-B4LRDZKC.js → manager-XPRN5UF5.js} +1 -1
- package/payload/server/package.json +1 -1
- package/payload/server/public/activity.html +5 -5
- package/payload/server/public/agents.html +4 -4
- package/payload/server/public/assets/{AdminLoginScreens-zfexKfbT.js → AdminLoginScreens-7Czw3MAC.js} +1 -1
- package/payload/server/public/assets/AdminLoginScreens-7Czw3MAC.js.br +0 -0
- package/payload/server/public/assets/AdminLoginScreens-7Czw3MAC.js.gz +0 -0
- package/payload/server/public/assets/{AdminShell-Cbk0TL1B.js → AdminShell-D5GApZ_n.js} +1 -1
- package/payload/server/public/assets/AdminShell-D5GApZ_n.js.br +0 -0
- package/payload/server/public/assets/AdminShell-D5GApZ_n.js.gz +0 -0
- package/payload/server/public/assets/{CdpScreencastSurface-CLSQHh4e.js → CdpScreencastSurface-BbekDUFw.js} +1 -1
- package/payload/server/public/assets/CdpScreencastSurface-BbekDUFw.js.br +0 -0
- package/payload/server/public/assets/CdpScreencastSurface-BbekDUFw.js.gz +0 -0
- package/payload/server/public/assets/{activity-u275Oc-u.js → activity-ClI-RgJu.js} +1 -1
- package/payload/server/public/assets/activity-ClI-RgJu.js.br +0 -0
- package/payload/server/public/assets/activity-ClI-RgJu.js.gz +0 -0
- package/payload/server/public/assets/{admin-Du1nR_hP.js → admin-svtCmBPk.js} +1 -1
- package/payload/server/public/assets/admin-svtCmBPk.js.br +0 -0
- package/payload/server/public/assets/admin-svtCmBPk.js.gz +0 -0
- package/payload/server/public/assets/{agents-DJTxRLLU.js → agents-BO8YBj8d.js} +1 -1
- package/payload/server/public/assets/agents-BO8YBj8d.js.br +0 -0
- package/payload/server/public/assets/agents-BO8YBj8d.js.gz +0 -0
- package/payload/server/public/assets/{browser-Bft6zVkX.js → browser-Bj8oTG5R.js} +1 -1
- package/payload/server/public/assets/browser-Bj8oTG5R.js.br +0 -0
- package/payload/server/public/assets/browser-Bj8oTG5R.js.gz +0 -0
- package/payload/server/public/assets/{calendar-Ct-DCCqY.js → calendar-CrkSY8U7.js} +1 -1
- package/payload/server/public/assets/calendar-CrkSY8U7.js.br +0 -0
- package/payload/server/public/assets/calendar-CrkSY8U7.js.gz +0 -0
- package/payload/server/public/assets/chat-Bvxoni2e.js +1 -0
- package/payload/server/public/assets/chat-Bvxoni2e.js.br +0 -0
- package/payload/server/public/assets/chat-Bvxoni2e.js.gz +0 -0
- package/payload/server/public/assets/chevron-left-CdUzxzeB.js +1 -0
- package/payload/server/public/assets/chevron-left-CdUzxzeB.js.br +0 -0
- package/payload/server/public/assets/chevron-right-CKGwd-M0.js +1 -0
- package/payload/server/public/assets/chevron-right-CKGwd-M0.js.br +0 -0
- package/payload/server/public/assets/clock-Cf8Oe9qi.js +1 -0
- package/payload/server/public/assets/clock-Cf8Oe9qi.js.br +0 -0
- package/payload/server/public/assets/clock-Cf8Oe9qi.js.gz +0 -0
- package/payload/server/public/assets/data-DF0Pstdp.js +1 -0
- package/payload/server/public/assets/data-DF0Pstdp.js.br +1 -0
- package/payload/server/public/assets/data-DF0Pstdp.js.gz +0 -0
- package/payload/server/public/assets/{file-download-C_fSe4dm.js → file-download-Di_s0_4w.js} +1 -1
- package/payload/server/public/assets/file-download-Di_s0_4w.js.br +0 -0
- package/payload/server/public/assets/file-download-Di_s0_4w.js.gz +0 -0
- package/payload/server/public/assets/{file-text-D7GbEcqj.js → file-text-CP1KIrJV.js} +1 -1
- package/payload/server/public/assets/file-text-CP1KIrJV.js.br +1 -0
- package/payload/server/public/assets/file-text-CP1KIrJV.js.gz +0 -0
- package/payload/server/public/assets/{graph-yl5qU1kO.js → graph-BCMscnCV.js} +1 -1
- package/payload/server/public/assets/graph-BCMscnCV.js.br +0 -0
- package/payload/server/public/assets/graph-BCMscnCV.js.gz +0 -0
- package/payload/server/public/assets/{graph-labels-Dlcb6cW7.js → graph-labels-CgP17xHK.js} +1 -1
- package/payload/server/public/assets/graph-labels-CgP17xHK.js.br +0 -0
- package/payload/server/public/assets/graph-labels-CgP17xHK.js.gz +0 -0
- package/payload/server/public/assets/{maximize-2-BS689r4W.js → maximize-2-DkQzDv-g.js} +1 -1
- package/payload/server/public/assets/maximize-2-DkQzDv-g.js.br +0 -0
- package/payload/server/public/assets/maximize-2-DkQzDv-g.js.gz +0 -0
- package/payload/server/public/assets/{operator-CvapnpIW.js → operator-CLbCar9e.js} +1 -1
- package/payload/server/public/assets/operator-CLbCar9e.js.br +0 -0
- package/payload/server/public/assets/operator-CLbCar9e.js.gz +0 -0
- package/payload/server/public/assets/{page-DWkUH4Z_.js → page-CNJl3tWT.js} +1 -1
- package/payload/server/public/assets/page-CNJl3tWT.js.br +0 -0
- package/payload/server/public/assets/page-CNJl3tWT.js.gz +0 -0
- package/payload/server/public/assets/{page-987y4JbQ.js → page-CPVUAwb8.js} +1 -1
- package/payload/server/public/assets/page-CPVUAwb8.js.br +0 -0
- package/payload/server/public/assets/page-CPVUAwb8.js.gz +0 -0
- package/payload/server/public/assets/{public-D5pi-VFn.js → public-DQea3Ybz.js} +1 -1
- package/payload/server/public/assets/public-DQea3Ybz.js.br +0 -0
- package/payload/server/public/assets/public-DQea3Ybz.js.gz +0 -0
- package/payload/server/public/assets/{rotate-ccw-zNxnK36R.js → rotate-ccw-DPw0vXC0.js} +1 -1
- package/payload/server/public/assets/rotate-ccw-DPw0vXC0.js.br +0 -0
- package/payload/server/public/assets/rotate-ccw-DPw0vXC0.js.gz +0 -0
- package/payload/server/public/assets/{routines-mZzrGA5y.js → routines-CwiiYpfK.js} +2 -2
- package/payload/server/public/assets/routines-CwiiYpfK.js.br +0 -0
- package/payload/server/public/assets/routines-CwiiYpfK.js.gz +0 -0
- package/payload/server/public/assets/{skills-5A8PockT.js → skills-0FOjKUM-.js} +1 -1
- package/payload/server/public/assets/skills-0FOjKUM-.js.br +0 -0
- package/payload/server/public/assets/skills-0FOjKUM-.js.gz +0 -0
- package/payload/server/public/assets/{tasks-B1_2wc6L.js → tasks-BUVsPEGm.js} +1 -1
- package/payload/server/public/assets/tasks-BUVsPEGm.js.br +0 -0
- package/payload/server/public/assets/tasks-BUVsPEGm.js.gz +0 -0
- package/payload/server/public/assets/{time-entry-format-CJ2FSSQt.js → time-entry-format-B6fX_19a.js} +1 -1
- package/payload/server/public/assets/time-entry-format-B6fX_19a.js.br +0 -0
- package/payload/server/public/assets/time-entry-format-B6fX_19a.js.gz +0 -0
- package/payload/server/public/assets/{triangle-alert-CedsrgME.js → triangle-alert-vAaSDhVq.js} +1 -1
- package/payload/server/public/assets/triangle-alert-vAaSDhVq.js.br +0 -0
- package/payload/server/public/assets/triangle-alert-vAaSDhVq.js.gz +0 -0
- package/payload/server/public/assets/{useCopyFeedback-zjZZUC2-.js → useCopyFeedback-BvIRgs7W.js} +1 -1
- package/payload/server/public/assets/useCopyFeedback-BvIRgs7W.js.br +0 -0
- package/payload/server/public/assets/useCopyFeedback-BvIRgs7W.js.gz +0 -0
- package/payload/server/public/assets/{useSubAccountSwitcher-72THldvm.css → useSubAccountSwitcher-DM5Y9eio.css} +1 -1
- package/payload/server/public/assets/useSubAccountSwitcher-DM5Y9eio.css.br +0 -0
- package/payload/server/public/assets/{useSubAccountSwitcher-72THldvm.css.gz → useSubAccountSwitcher-DM5Y9eio.css.gz} +0 -0
- package/payload/server/public/assets/{useVoiceRecorder-CJecnefX.js → useVoiceRecorder-CiDOh8PG.js} +1 -1
- package/payload/server/public/assets/useVoiceRecorder-CiDOh8PG.js.br +0 -0
- package/payload/server/public/assets/useVoiceRecorder-CiDOh8PG.js.gz +0 -0
- package/payload/server/public/assets/{wrench-D8BH20W8.js → wrench-BNBtwT2p.js} +1 -1
- package/payload/server/public/assets/wrench-BNBtwT2p.js.br +0 -0
- package/payload/server/public/assets/wrench-BNBtwT2p.js.gz +0 -0
- package/payload/server/public/browser.html +5 -5
- package/payload/server/public/calendar.html +7 -7
- package/payload/server/public/chat.html +13 -13
- package/payload/server/public/data.html +12 -12
- package/payload/server/public/graph.html +9 -9
- package/payload/server/public/index.html +16 -16
- package/payload/server/public/operator.html +15 -15
- package/payload/server/public/public.html +13 -13
- package/payload/server/public/routines.html +7 -7
- package/payload/server/public/skills.html +5 -5
- package/payload/server/public/tasks.html +6 -6
- package/payload/server/server.js +10 -4
- package/payload/server/public/assets/AdminLoginScreens-zfexKfbT.js.br +0 -0
- package/payload/server/public/assets/AdminLoginScreens-zfexKfbT.js.gz +0 -0
- package/payload/server/public/assets/AdminShell-Cbk0TL1B.js.br +0 -0
- package/payload/server/public/assets/AdminShell-Cbk0TL1B.js.gz +0 -0
- package/payload/server/public/assets/CdpScreencastSurface-CLSQHh4e.js.br +0 -0
- package/payload/server/public/assets/CdpScreencastSurface-CLSQHh4e.js.gz +0 -0
- package/payload/server/public/assets/activity-u275Oc-u.js.br +0 -0
- package/payload/server/public/assets/activity-u275Oc-u.js.gz +0 -0
- package/payload/server/public/assets/admin-Du1nR_hP.js.br +0 -0
- package/payload/server/public/assets/admin-Du1nR_hP.js.gz +0 -0
- package/payload/server/public/assets/agents-DJTxRLLU.js.br +0 -0
- package/payload/server/public/assets/agents-DJTxRLLU.js.gz +0 -0
- package/payload/server/public/assets/browser-Bft6zVkX.js.br +0 -0
- package/payload/server/public/assets/browser-Bft6zVkX.js.gz +0 -0
- package/payload/server/public/assets/calendar-Ct-DCCqY.js.br +0 -0
- package/payload/server/public/assets/calendar-Ct-DCCqY.js.gz +0 -0
- package/payload/server/public/assets/chat-pqasbAg8.js +0 -1
- package/payload/server/public/assets/chat-pqasbAg8.js.br +0 -0
- package/payload/server/public/assets/chat-pqasbAg8.js.gz +0 -0
- package/payload/server/public/assets/chevron-left-C8LTc7lb.js +0 -1
- package/payload/server/public/assets/chevron-right-Lz9t7Hed.js +0 -1
- package/payload/server/public/assets/chevron-right-Lz9t7Hed.js.br +0 -0
- package/payload/server/public/assets/clock-D6QQFHwJ.js +0 -1
- package/payload/server/public/assets/clock-D6QQFHwJ.js.br +0 -0
- package/payload/server/public/assets/clock-D6QQFHwJ.js.gz +0 -0
- package/payload/server/public/assets/data-B1JJ3Y1T.js +0 -1
- package/payload/server/public/assets/data-B1JJ3Y1T.js.br +0 -0
- package/payload/server/public/assets/data-B1JJ3Y1T.js.gz +0 -0
- package/payload/server/public/assets/file-download-C_fSe4dm.js.br +0 -0
- package/payload/server/public/assets/file-download-C_fSe4dm.js.gz +0 -0
- package/payload/server/public/assets/file-text-D7GbEcqj.js.br +0 -0
- package/payload/server/public/assets/file-text-D7GbEcqj.js.gz +0 -0
- package/payload/server/public/assets/graph-labels-Dlcb6cW7.js.br +0 -0
- package/payload/server/public/assets/graph-labels-Dlcb6cW7.js.gz +0 -0
- package/payload/server/public/assets/graph-yl5qU1kO.js.br +0 -0
- package/payload/server/public/assets/graph-yl5qU1kO.js.gz +0 -0
- package/payload/server/public/assets/maximize-2-BS689r4W.js.br +0 -0
- package/payload/server/public/assets/maximize-2-BS689r4W.js.gz +0 -0
- package/payload/server/public/assets/operator-CvapnpIW.js.br +0 -0
- package/payload/server/public/assets/operator-CvapnpIW.js.gz +0 -0
- package/payload/server/public/assets/page-987y4JbQ.js.br +0 -0
- package/payload/server/public/assets/page-987y4JbQ.js.gz +0 -0
- package/payload/server/public/assets/page-DWkUH4Z_.js.br +0 -0
- package/payload/server/public/assets/page-DWkUH4Z_.js.gz +0 -0
- package/payload/server/public/assets/public-D5pi-VFn.js.br +0 -0
- package/payload/server/public/assets/public-D5pi-VFn.js.gz +0 -0
- package/payload/server/public/assets/rotate-ccw-zNxnK36R.js.br +0 -0
- package/payload/server/public/assets/rotate-ccw-zNxnK36R.js.gz +0 -0
- package/payload/server/public/assets/routines-mZzrGA5y.js.br +0 -0
- package/payload/server/public/assets/routines-mZzrGA5y.js.gz +0 -0
- package/payload/server/public/assets/skills-5A8PockT.js.br +0 -0
- package/payload/server/public/assets/skills-5A8PockT.js.gz +0 -0
- package/payload/server/public/assets/tasks-B1_2wc6L.js.br +0 -0
- package/payload/server/public/assets/tasks-B1_2wc6L.js.gz +0 -0
- package/payload/server/public/assets/time-entry-format-CJ2FSSQt.js.br +0 -0
- package/payload/server/public/assets/time-entry-format-CJ2FSSQt.js.gz +0 -0
- package/payload/server/public/assets/triangle-alert-CedsrgME.js.br +0 -0
- package/payload/server/public/assets/triangle-alert-CedsrgME.js.gz +0 -0
- package/payload/server/public/assets/useCopyFeedback-zjZZUC2-.js.br +0 -0
- package/payload/server/public/assets/useCopyFeedback-zjZZUC2-.js.gz +0 -0
- package/payload/server/public/assets/useSubAccountSwitcher-72THldvm.css.br +0 -0
- package/payload/server/public/assets/useVoiceRecorder-CJecnefX.js.br +0 -0
- package/payload/server/public/assets/useVoiceRecorder-CJecnefX.js.gz +0 -0
- package/payload/server/public/assets/wrench-D8BH20W8.js.br +0 -0
- package/payload/server/public/assets/wrench-D8BH20W8.js.gz +0 -0
- /package/payload/server/public/assets/{useSubAccountSwitcher-HjQZjJBr.js → useSubAccountSwitcher-BEwQMRMo.js} +0 -0
- /package/payload/server/public/assets/{useSubAccountSwitcher-HjQZjJBr.js.br → useSubAccountSwitcher-BEwQMRMo.js.br} +0 -0
- /package/payload/server/public/assets/{useSubAccountSwitcher-HjQZjJBr.js.gz → useSubAccountSwitcher-BEwQMRMo.js.gz} +0 -0
package/payload/platform/plugins/scheduling/mcp/dist/lib/__tests__/normalise-start-date.test.js
ADDED
|
@@ -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
|
package/payload/platform/plugins/scheduling/mcp/dist/lib/__tests__/normalise-start-date.test.js.map
ADDED
|
@@ -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":"AAAA;;;;;;;;;;;;;GAaG;AAEH,8EAA8E;AAC9E,sBAAsB;AACtB,8EAA8E;AAE9E;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,EAAU;IACzC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;IACxD,CAAC;IACD,IAAI,CAAC;QACH,8EAA8E;QAC9E,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;IACrD,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CACb,sBAAsB,EAAE,qEAAqE,CAC9F,CAAC;IACJ,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,oBAAoB;AACpB,8EAA8E;AAE9E;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,SAAiB,EAAE,QAAgB;IAClE,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAE3B,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC;IACjC,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,6BAA6B,SAAS,GAAG,CAAC,CAAC;IAC7D,CAAC;IAED,2DAA2D;IAC3D,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE;QACjD,OAAO,EAAE,MAAM;QACf,GAAG,EAAE,SAAS;QACd,KAAK,EAAE,MAAM;QACb,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,SAAS;QACf,MAAM,EAAE,SAAS;QACjB,QAAQ,EAAE,QAAQ;QAClB,YAAY,EAAE,OAAO;KACtB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAEhB,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,8EAA8E;AAC9E,iBAAiB;AACjB,8EAA8E;AAE9E,qCAAqC;AACrC,qDAAqD;AACrD,iDAAiD;AACjD,6CAA6C;AAC7C,2CAA2C;AAC3C,qEAAqE;AAErE,MAAM,SAAS,GAAG,MAAM,CAAC;AACzB,MAAM,OAAO,GAAG,SAAS,CAAC;AAC1B,MAAM,MAAM,GAAG,UAAU,CAAC;AAE1B;;;;;;;;GAQG;AACH,MAAM,UAAU,mBAAmB,CACjC,SAAiB,EACjB,MAAY,IAAI,IAAI,EAAE;IAEtB,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC;IACnC,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,6BAA6B,SAAS,GAAG,CAAC,CAAC;IAC7D,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,EAAE,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC;IAChD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACnC,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,CAAC;IAE5B,8BAA8B;IAC9B,IAAI,SAAS,IAAI,CAAC,GAAG,MAAM,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,aAAa;IACb,IAAI,SAAS,GAAG,SAAS,EAAE,CAAC;QAC1B,OAAO,QAAQ,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,UAAU,CAAC;IACzD,CAAC;IAED,iBAAiB;IACjB,IAAI,SAAS,GAAG,OAAO,EAAE,CAAC;QACxB,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC;QAClD,MAAM,IAAI,GAAG,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;QAClD,OAAO,QAAQ,CAAC,CAAC,CAAC,MAAM,OAAO,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,OAAO,IAAI,IAAI,MAAM,CAAC;IACvE,CAAC;IAED,eAAe;IACf,IAAI,SAAS,GAAG,MAAM,EAAE,CAAC;QACvB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,OAAO,CAAC,CAAC;QAC9C,MAAM,IAAI,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;QAC5C,OAAO,QAAQ,CAAC,CAAC,CAAC,MAAM,KAAK,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,IAAI,IAAI,MAAM,CAAC;IACnE,CAAC;IAED,aAAa;IACb,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,CAAC;IAC5C,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;QACf,OAAO,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC;IAC7C,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,CAAC;IACpB,OAAO,QAAQ,CAAC,CAAC,CAAC,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,IAAI,MAAM,CAAC;AACjE,CAAC;AAED,8EAA8E;AAC9E,kBAAkB;AAClB,8EAA8E;AAE9E;;;;;;;;;;GAUG;AACH,MAAM,UAAU,cAAc,CAC5B,SAAiB,EACjB,QAAgB,EAChB,MAAY,IAAI,IAAI,EAAE;IAEtB,MAAM,MAAM,GAAG,gBAAgB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IACrD,MAAM,QAAQ,GAAG,mBAAmB,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IAErD,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,GAAG,MAAM,KAAK,QAAQ,GAAG,CAAC;IACnC,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,8EAA8E;AAC9E,0CAA0C;AAC1C,8EAA8E;AAE9E,qEAAqE;AACrE,MAAM,QAAQ,GAAG,yBAAyB,CAAC;AAE3C,sDAAsD;AACtD,SAAS,OAAO,CAAC,EAAU,EAAE,IAAY;IACvC,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE;QAC3C,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,SAAS;QAChB,GAAG,EAAE,SAAS;QACd,IAAI,EAAE,SAAS;QACf,MAAM,EAAE,SAAS;QACjB,MAAM,EAAE,SAAS;KAClB,CAAC,CAAC;IACH,OAAO,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAC3F,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,UAAU,CAAC,EAAU,EAAE,IAAY;IAC1C,MAAM,CAAC,GAAG,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IAC5B,yEAAyE;IACzE,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAC5F,OAAO,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;AAChD,CAAC;AAED,4EAA4E;AAC5E,SAAS,MAAM,CAAC,EAAU,EAAE,IAAY;IACtC,MAAM,CAAC,GAAG,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IAC5B,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACjD,OAAO,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,IAAI,EAAE,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;AACvE,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,UAAU,kBAAkB,CAAC,GAAW,EAAE,IAAmB;IACjE,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IAE3B,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC/B,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,2BAA2B,GAAG,oCAAoC,CAAC,CAAC;QACtF,CAAC;QACD,OAAO,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IACpC,CAAC;IAED,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CACb,cAAc,GAAG,4EAA4E;YAC3F,2DAA2D,CAC9D,CAAC;IACJ,CAAC;IACD,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAEvB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,OAAO,GAAG,CAAC,CAAC;IACxC,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,2BAA2B,GAAG,oCAAoC,CAAC,CAAC;IACtF,CAAC;IAED,MAAM,MAAM,GAAG,UAAU,CAAC;IAC1B,MAAM,MAAM,GAAG,KAAK,GAAG,UAAU,CAAC,KAAK,GAAG,MAAM,EAAE,IAAI,CAAC,CAAC;IACxD,MAAM,KAAK,GAAG,KAAK,GAAG,UAAU,CAAC,KAAK,GAAG,MAAM,EAAE,IAAI,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,OAAO,CAAC,CAAC;IAC3E,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAC/E,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;AACxC,CAAC;AAED,gEAAgE;AAChE,MAAM,UAAU,oBAAoB,CAAC,KAAa;IAChD,OAAO,+CAA+C,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACrE,CAAC"}
|
package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/agent-turn-dispatch.test.js
CHANGED
|
@@ -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 @@
|
|
|
1
|
+
{"version":3,"file":"converge-startdate-utc.test.d.ts","sourceRoot":"","sources":["../../../src/scripts/__tests__/converge-startdate-utc.test.ts"],"names":[],"mappings":""}
|