@rubytech/create-sitedesk-code 0.1.527 → 0.1.528
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/package.json +1 -1
- package/payload/platform/plugins/admin/hooks/__tests__/fs-schema-guard.test.sh +82 -1
- package/payload/platform/plugins/admin/hooks/fs-schema-guard.sh +45 -13
- package/payload/platform/plugins/admin/mcp/dist/index.js +18 -4
- package/payload/platform/plugins/admin/mcp/dist/index.js.map +1 -1
- package/payload/platform/plugins/admin/mcp/dist/tools/logs-read-mcp.d.ts +16 -0
- package/payload/platform/plugins/admin/mcp/dist/tools/logs-read-mcp.d.ts.map +1 -0
- package/payload/platform/plugins/admin/mcp/dist/tools/logs-read-mcp.js +69 -0
- package/payload/platform/plugins/admin/mcp/dist/tools/logs-read-mcp.js.map +1 -0
- package/payload/platform/plugins/admin/skills/platform-architecture/SKILL.md +62 -4
- package/payload/platform/plugins/admin/skills/whats-new/SKILL.md +7 -0
- package/payload/platform/plugins/docs/references/admin-ui.md +58 -1
- package/payload/platform/plugins/docs/references/deployment.md +1 -1
- package/payload/platform/plugins/docs/references/plugins-guide.md +2 -1
- package/payload/platform/plugins/email/.claude-plugin/plugin.json +1 -1
- package/payload/platform/plugins/email/PLUGIN.md +8 -3
- package/payload/platform/plugins/email/mcp/dist/__tests__/compose-signature.test.js +61 -4
- package/payload/platform/plugins/email/mcp/dist/__tests__/compose-signature.test.js.map +1 -1
- package/payload/platform/plugins/email/mcp/dist/__tests__/email-draft-edit.test.js +41 -0
- package/payload/platform/plugins/email/mcp/dist/__tests__/email-draft-edit.test.js.map +1 -1
- package/payload/platform/plugins/email/mcp/dist/__tests__/email-draft.test.js +47 -1
- package/payload/platform/plugins/email/mcp/dist/__tests__/email-draft.test.js.map +1 -1
- package/payload/platform/plugins/email/mcp/dist/__tests__/email-sending-identity-set.test.d.ts +2 -0
- package/payload/platform/plugins/email/mcp/dist/__tests__/email-sending-identity-set.test.d.ts.map +1 -0
- package/payload/platform/plugins/email/mcp/dist/__tests__/email-sending-identity-set.test.js +184 -0
- package/payload/platform/plugins/email/mcp/dist/__tests__/email-sending-identity-set.test.js.map +1 -0
- package/payload/platform/plugins/email/mcp/dist/__tests__/email-signature-set.test.js +8 -5
- package/payload/platform/plugins/email/mcp/dist/__tests__/email-signature-set.test.js.map +1 -1
- package/payload/platform/plugins/email/mcp/dist/__tests__/email-status.test.js +64 -0
- package/payload/platform/plugins/email/mcp/dist/__tests__/email-status.test.js.map +1 -1
- package/payload/platform/plugins/email/mcp/dist/__tests__/mailbox-resolve.test.js +132 -0
- package/payload/platform/plugins/email/mcp/dist/__tests__/mailbox-resolve.test.js.map +1 -1
- package/payload/platform/plugins/email/mcp/dist/__tests__/signature.test.js +93 -11
- package/payload/platform/plugins/email/mcp/dist/__tests__/signature.test.js.map +1 -1
- package/payload/platform/plugins/email/mcp/dist/index.js +34 -3
- package/payload/platform/plugins/email/mcp/dist/index.js.map +1 -1
- package/payload/platform/plugins/email/mcp/dist/lib/compose.d.ts +2 -1
- package/payload/platform/plugins/email/mcp/dist/lib/compose.d.ts.map +1 -1
- package/payload/platform/plugins/email/mcp/dist/lib/compose.js +13 -2
- package/payload/platform/plugins/email/mcp/dist/lib/compose.js.map +1 -1
- package/payload/platform/plugins/email/mcp/dist/lib/credentials.d.ts +47 -2
- package/payload/platform/plugins/email/mcp/dist/lib/credentials.d.ts.map +1 -1
- package/payload/platform/plugins/email/mcp/dist/lib/credentials.js +92 -5
- package/payload/platform/plugins/email/mcp/dist/lib/credentials.js.map +1 -1
- package/payload/platform/plugins/email/mcp/dist/lib/signature.d.ts +55 -7
- package/payload/platform/plugins/email/mcp/dist/lib/signature.d.ts.map +1 -1
- package/payload/platform/plugins/email/mcp/dist/lib/signature.js +72 -9
- package/payload/platform/plugins/email/mcp/dist/lib/signature.js.map +1 -1
- package/payload/platform/plugins/email/mcp/dist/tools/email-draft-edit.d.ts.map +1 -1
- package/payload/platform/plugins/email/mcp/dist/tools/email-draft-edit.js +5 -2
- package/payload/platform/plugins/email/mcp/dist/tools/email-draft-edit.js.map +1 -1
- package/payload/platform/plugins/email/mcp/dist/tools/email-draft.d.ts.map +1 -1
- package/payload/platform/plugins/email/mcp/dist/tools/email-draft.js +6 -3
- package/payload/platform/plugins/email/mcp/dist/tools/email-draft.js.map +1 -1
- package/payload/platform/plugins/email/mcp/dist/tools/email-sending-identity-set.d.ts +20 -0
- package/payload/platform/plugins/email/mcp/dist/tools/email-sending-identity-set.d.ts.map +1 -0
- package/payload/platform/plugins/email/mcp/dist/tools/email-sending-identity-set.js +32 -0
- package/payload/platform/plugins/email/mcp/dist/tools/email-sending-identity-set.js.map +1 -0
- package/payload/platform/plugins/email/mcp/dist/tools/email-status.d.ts.map +1 -1
- package/payload/platform/plugins/email/mcp/dist/tools/email-status.js +22 -2
- package/payload/platform/plugins/email/mcp/dist/tools/email-status.js.map +1 -1
- package/payload/platform/plugins/email/references/email-reference.md +11 -3
- package/payload/platform/plugins/email/skills/email-composition/SKILL.md +3 -0
- package/payload/platform/plugins/email/skills/email-signature/SKILL.md +27 -9
- package/payload/platform/scripts/__tests__/vnc-cdp-liveness.test.sh +25 -2
- package/payload/platform/scripts/vnc.sh +34 -26
- package/payload/platform/services/claude-session-manager/dist/account-dir-schema-reconcile.d.ts +24 -1
- package/payload/platform/services/claude-session-manager/dist/account-dir-schema-reconcile.d.ts.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/account-dir-schema-reconcile.js +84 -3
- package/payload/platform/services/claude-session-manager/dist/account-dir-schema-reconcile.js.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/canonical-tool-names.generated.d.ts.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/canonical-tool-names.generated.js +1 -0
- package/payload/platform/services/claude-session-manager/dist/canonical-tool-names.generated.js.map +1 -1
- package/payload/platform/templates/specialists/agents/personal-assistant.md +1 -1
- package/payload/server/{chunk-XCR5D2G3.js → chunk-BP7LH7MC.js} +0 -1
- package/payload/server/{chunk-KY3BBT67.js → chunk-DLG7XSLA.js} +1 -1
- package/payload/server/{chunk-7MGR5M6G.js → chunk-UTIHI6KV.js} +1 -1
- package/payload/server/{manager-6XOWHREK.js → manager-B4LRDZKC.js} +2 -2
- package/payload/server/maxy-edge.js +2 -2
- package/payload/server/public/activity.html +5 -5
- package/payload/server/public/agents.html +4 -4
- package/payload/server/public/assets/AdminLoginScreens-Bx9vPuUg.js +1 -0
- package/payload/server/public/assets/AdminLoginScreens-Bx9vPuUg.js.br +0 -0
- package/payload/server/public/assets/AdminLoginScreens-Bx9vPuUg.js.gz +0 -0
- package/payload/server/public/assets/AdminShell-BxJPbC3p.js +2 -0
- package/payload/server/public/assets/AdminShell-BxJPbC3p.js.br +0 -0
- package/payload/server/public/assets/AdminShell-BxJPbC3p.js.gz +0 -0
- package/payload/server/public/assets/CdpScreencastSurface-5HLhTQTV.js +1 -0
- package/payload/server/public/assets/CdpScreencastSurface-5HLhTQTV.js.br +0 -0
- package/payload/server/public/assets/CdpScreencastSurface-5HLhTQTV.js.gz +0 -0
- package/payload/server/public/assets/{activity-aVvbaVd4.js → activity-BaSYn62l.js} +1 -1
- package/payload/server/public/assets/activity-BaSYn62l.js.br +0 -0
- package/payload/server/public/assets/activity-BaSYn62l.js.gz +0 -0
- package/payload/server/public/assets/admin-CYCKrV_x.js +1 -0
- package/payload/server/public/assets/admin-CYCKrV_x.js.br +0 -0
- package/payload/server/public/assets/admin-CYCKrV_x.js.gz +0 -0
- package/payload/server/public/assets/{agents-CrpVTPRG.js → agents-D8EJG-ta.js} +1 -1
- package/payload/server/public/assets/agents-D8EJG-ta.js.br +0 -0
- package/payload/server/public/assets/agents-D8EJG-ta.js.gz +0 -0
- package/payload/server/public/assets/{arc-DaudCnXg.js → arc-CHoXZR2f.js} +1 -1
- package/payload/server/public/assets/arc-CHoXZR2f.js.br +0 -0
- package/payload/server/public/assets/arc-CHoXZR2f.js.gz +0 -0
- package/payload/server/public/assets/architecture-YZFGNWBL-CQyo9W6E.js +1 -0
- package/payload/server/public/assets/architecture-YZFGNWBL-CQyo9W6E.js.br +0 -0
- package/payload/server/public/assets/{architectureDiagram-Q4EWVU46-BEEC3s7i.js → architectureDiagram-Q4EWVU46-B8SCI0AR.js} +1 -1
- package/payload/server/public/assets/architectureDiagram-Q4EWVU46-B8SCI0AR.js.br +0 -0
- package/payload/server/public/assets/architectureDiagram-Q4EWVU46-B8SCI0AR.js.gz +0 -0
- package/payload/server/public/assets/{blockDiagram-DXYQGD6D-BIWyfb18.js → blockDiagram-DXYQGD6D-CsJmhz5D.js} +1 -1
- package/payload/server/public/assets/blockDiagram-DXYQGD6D-CsJmhz5D.js.br +0 -0
- package/payload/server/public/assets/blockDiagram-DXYQGD6D-CsJmhz5D.js.gz +0 -0
- package/payload/server/public/assets/browser-D6Y_Zu8C.js +1 -0
- package/payload/server/public/assets/browser-D6Y_Zu8C.js.br +0 -0
- package/payload/server/public/assets/browser-D6Y_Zu8C.js.gz +0 -0
- package/payload/server/public/assets/{c4Diagram-AHTNJAMY--h6oE2cv.js → c4Diagram-AHTNJAMY-CzaSNqcs.js} +1 -1
- package/payload/server/public/assets/c4Diagram-AHTNJAMY-CzaSNqcs.js.br +0 -0
- package/payload/server/public/assets/c4Diagram-AHTNJAMY-CzaSNqcs.js.gz +0 -0
- package/payload/server/public/assets/{calendar-4IWQpwYv.js → calendar-DD4oVa-r.js} +1 -1
- package/payload/server/public/assets/calendar-DD4oVa-r.js.br +0 -0
- package/payload/server/public/assets/calendar-DD4oVa-r.js.gz +0 -0
- package/payload/server/public/assets/channel-Dg_Rah6O.js +1 -0
- package/payload/server/public/assets/channel-Dg_Rah6O.js.br +0 -0
- package/payload/server/public/assets/chat-CwWs69PO.js +1 -0
- package/payload/server/public/assets/chat-CwWs69PO.js.br +0 -0
- package/payload/server/public/assets/chat-CwWs69PO.js.gz +0 -0
- package/payload/server/public/assets/chevron-left-ClfIy5Fx.js +1 -0
- package/payload/server/public/assets/chevron-right-B0QvXpxl.js +1 -0
- package/payload/server/public/assets/chevron-right-B0QvXpxl.js.br +0 -0
- package/payload/server/public/assets/{chunk-2KRD3SAO-BwEVlnxo.js → chunk-2KRD3SAO-DAN3KCZc.js} +1 -1
- package/payload/server/public/assets/chunk-2KRD3SAO-DAN3KCZc.js.br +0 -0
- package/payload/server/public/assets/chunk-2KRD3SAO-DAN3KCZc.js.gz +0 -0
- package/payload/server/public/assets/{chunk-336JU56O-DQddTATH.js → chunk-336JU56O-Dm-0_lIT.js} +2 -2
- package/payload/server/public/assets/chunk-336JU56O-Dm-0_lIT.js.br +0 -0
- package/payload/server/public/assets/chunk-336JU56O-Dm-0_lIT.js.gz +0 -0
- package/payload/server/public/assets/chunk-426QAEUC-Rh8qTRZB.js +1 -0
- package/payload/server/public/assets/chunk-426QAEUC-Rh8qTRZB.js.br +0 -0
- package/payload/server/public/assets/chunk-426QAEUC-Rh8qTRZB.js.gz +0 -0
- package/payload/server/public/assets/{chunk-4BX2VUAB-C5p3xTC6.js → chunk-4BX2VUAB-C2l9bAlo.js} +1 -1
- package/payload/server/public/assets/chunk-4BX2VUAB-C2l9bAlo.js.br +0 -0
- package/payload/server/public/assets/chunk-4BX2VUAB-C2l9bAlo.js.gz +0 -0
- package/payload/server/public/assets/{chunk-4TB4RGXK-gClfNc1w.js → chunk-4TB4RGXK-BMXDzU09.js} +1 -1
- package/payload/server/public/assets/chunk-4TB4RGXK-BMXDzU09.js.br +0 -0
- package/payload/server/public/assets/chunk-4TB4RGXK-BMXDzU09.js.gz +0 -0
- package/payload/server/public/assets/{chunk-55IACEB6-DDU_m1ra.js → chunk-55IACEB6-CbMYAZon.js} +1 -1
- package/payload/server/public/assets/chunk-55IACEB6-CbMYAZon.js.br +0 -0
- package/payload/server/public/assets/chunk-55IACEB6-CbMYAZon.js.gz +0 -0
- package/payload/server/public/assets/{chunk-5FUZZQ4R-CZ2jQWNR.js → chunk-5FUZZQ4R-DjdsuxLA.js} +1 -1
- package/payload/server/public/assets/chunk-5FUZZQ4R-DjdsuxLA.js.br +0 -0
- package/payload/server/public/assets/chunk-5FUZZQ4R-DjdsuxLA.js.gz +0 -0
- package/payload/server/public/assets/{chunk-5PVQY5BW-kcZ5kfTg.js → chunk-5PVQY5BW-CGSBzsF6.js} +1 -1
- package/payload/server/public/assets/chunk-5PVQY5BW-CGSBzsF6.js.br +0 -0
- package/payload/server/public/assets/chunk-5PVQY5BW-CGSBzsF6.js.gz +0 -0
- package/payload/server/public/assets/{chunk-67CJDMHE-9W0Qv0jm.js → chunk-67CJDMHE-ClOLWser.js} +1 -1
- package/payload/server/public/assets/chunk-67CJDMHE-ClOLWser.js.br +0 -0
- package/payload/server/public/assets/chunk-67CJDMHE-ClOLWser.js.gz +0 -0
- package/payload/server/public/assets/{chunk-7N4EOEYR-B3gqydR3.js → chunk-7N4EOEYR-BzC1dzY0.js} +1 -1
- package/payload/server/public/assets/chunk-7N4EOEYR-BzC1dzY0.js.br +0 -0
- package/payload/server/public/assets/chunk-7N4EOEYR-BzC1dzY0.js.gz +0 -0
- package/payload/server/public/assets/{chunk-AA7GKIK3-DW8a-2NK.js → chunk-AA7GKIK3-R_pjI1kw.js} +1 -1
- package/payload/server/public/assets/chunk-AA7GKIK3-R_pjI1kw.js.br +0 -0
- package/payload/server/public/assets/chunk-AA7GKIK3-R_pjI1kw.js.gz +0 -0
- package/payload/server/public/assets/{chunk-BSJP7CBP-DqXIO_5R.js → chunk-BSJP7CBP-D2KRAq3U.js} +1 -1
- package/payload/server/public/assets/chunk-BSJP7CBP-D2KRAq3U.js.br +0 -0
- package/payload/server/public/assets/chunk-BSJP7CBP-D2KRAq3U.js.gz +0 -0
- package/payload/server/public/assets/{chunk-CIAEETIT-BMJfgj2u.js → chunk-CIAEETIT-BPGWtrKR.js} +1 -1
- package/payload/server/public/assets/chunk-CIAEETIT-BPGWtrKR.js.br +0 -0
- package/payload/server/public/assets/chunk-CIAEETIT-BPGWtrKR.js.gz +0 -0
- package/payload/server/public/assets/{chunk-EDXVE4YY-BxdLPk0b.js → chunk-EDXVE4YY-tqt7wueu.js} +1 -1
- package/payload/server/public/assets/chunk-EDXVE4YY-tqt7wueu.js.br +3 -0
- package/payload/server/public/assets/chunk-EDXVE4YY-tqt7wueu.js.gz +0 -0
- package/payload/server/public/assets/{chunk-ENJZ2VHE-Cfe2DCjQ.js → chunk-ENJZ2VHE-DJG3cA6E.js} +1 -1
- package/payload/server/public/assets/chunk-ENJZ2VHE-DJG3cA6E.js.br +0 -0
- package/payload/server/public/assets/chunk-ENJZ2VHE-DJG3cA6E.js.gz +0 -0
- package/payload/server/public/assets/{chunk-FMBD7UC4-CdPjwbtf.js → chunk-FMBD7UC4-DO1xgCDf.js} +1 -1
- package/payload/server/public/assets/chunk-FMBD7UC4-DO1xgCDf.js.br +2 -0
- package/payload/server/public/assets/chunk-FMBD7UC4-DO1xgCDf.js.gz +0 -0
- package/payload/server/public/assets/{chunk-FOC6F5B3-Dl6l1KAh.js → chunk-FOC6F5B3-BhWAbCUG.js} +1 -1
- package/payload/server/public/assets/chunk-FOC6F5B3-BhWAbCUG.js.br +0 -0
- package/payload/server/public/assets/chunk-FOC6F5B3-BhWAbCUG.js.gz +0 -0
- package/payload/server/public/assets/{chunk-ICPOFSXX-PnsGrqtx.js → chunk-ICPOFSXX-BhUzt35c.js} +2 -2
- package/payload/server/public/assets/chunk-ICPOFSXX-BhUzt35c.js.br +0 -0
- package/payload/server/public/assets/chunk-ICPOFSXX-BhUzt35c.js.gz +0 -0
- package/payload/server/public/assets/{chunk-K5T4RW27--g29_wjW.js → chunk-K5T4RW27-Boj-qHrX.js} +1 -1
- package/payload/server/public/assets/chunk-K5T4RW27-Boj-qHrX.js.br +0 -0
- package/payload/server/public/assets/chunk-K5T4RW27-Boj-qHrX.js.gz +0 -0
- package/payload/server/public/assets/{chunk-KGLVRYIC-CI77ENeO.js → chunk-KGLVRYIC-3cBRDk1b.js} +1 -1
- package/payload/server/public/assets/chunk-KGLVRYIC-3cBRDk1b.js.br +2 -0
- package/payload/server/public/assets/chunk-KGLVRYIC-3cBRDk1b.js.gz +0 -0
- package/payload/server/public/assets/{chunk-LIHQZDEY-CE-XByg6.js → chunk-LIHQZDEY-CgkLKaII.js} +1 -1
- package/payload/server/public/assets/chunk-LIHQZDEY-CgkLKaII.js.br +0 -0
- package/payload/server/public/assets/chunk-LIHQZDEY-CgkLKaII.js.gz +0 -0
- package/payload/server/public/assets/{chunk-ORNJ4GCN-DkjJQQSm.js → chunk-ORNJ4GCN-Dl449r_k.js} +1 -1
- package/payload/server/public/assets/chunk-ORNJ4GCN-Dl449r_k.js.br +0 -0
- package/payload/server/public/assets/chunk-ORNJ4GCN-Dl449r_k.js.gz +0 -0
- package/payload/server/public/assets/{chunk-OYMX7WX6-DhogFeD7.js → chunk-OYMX7WX6-Dzkj67n6.js} +1 -1
- package/payload/server/public/assets/chunk-OYMX7WX6-Dzkj67n6.js.br +0 -0
- package/payload/server/public/assets/chunk-OYMX7WX6-Dzkj67n6.js.gz +0 -0
- package/payload/server/public/assets/chunk-QZHKN3VN-BDoCtU0N.js +1 -0
- package/payload/server/public/assets/chunk-QZHKN3VN-BDoCtU0N.js.br +0 -0
- package/payload/server/public/assets/chunk-QZHKN3VN-BDoCtU0N.js.gz +0 -0
- package/payload/server/public/assets/{chunk-U2HBQHQK-CeaRXuiO.js → chunk-U2HBQHQK-Dyz9Kbir.js} +1 -1
- package/payload/server/public/assets/chunk-U2HBQHQK-Dyz9Kbir.js.br +0 -0
- package/payload/server/public/assets/chunk-U2HBQHQK-Dyz9Kbir.js.gz +0 -0
- package/payload/server/public/assets/{chunk-X2U36JSP-BqxXeOqf.js → chunk-X2U36JSP-ag0VVCw6.js} +1 -1
- package/payload/server/public/assets/chunk-X2U36JSP-ag0VVCw6.js.br +0 -0
- package/payload/server/public/assets/chunk-X2U36JSP-ag0VVCw6.js.gz +0 -0
- package/payload/server/public/assets/{chunk-XPW4576I-DtqJwn2x.js → chunk-XPW4576I-B-vhDYPE.js} +1 -1
- package/payload/server/public/assets/chunk-XPW4576I-B-vhDYPE.js.br +0 -0
- package/payload/server/public/assets/chunk-XPW4576I-B-vhDYPE.js.gz +0 -0
- package/payload/server/public/assets/{chunk-YZCP3GAM-COBlEwQw.js → chunk-YZCP3GAM-C4COviPb.js} +1 -1
- package/payload/server/public/assets/chunk-YZCP3GAM-C4COviPb.js.br +0 -0
- package/payload/server/public/assets/chunk-YZCP3GAM-C4COviPb.js.gz +0 -0
- package/payload/server/public/assets/{chunk-ZZ45TVLE-CcL088y6.js → chunk-ZZ45TVLE-8dGsCp5b.js} +1 -1
- package/payload/server/public/assets/chunk-ZZ45TVLE-8dGsCp5b.js.br +0 -0
- package/payload/server/public/assets/chunk-ZZ45TVLE-8dGsCp5b.js.gz +0 -0
- package/payload/server/public/assets/classDiagram-6PBFFD2Q-qevfwy5C.js +1 -0
- package/payload/server/public/assets/classDiagram-6PBFFD2Q-qevfwy5C.js.br +0 -0
- package/payload/server/public/assets/classDiagram-6PBFFD2Q-qevfwy5C.js.gz +0 -0
- package/payload/server/public/assets/classDiagram-v2-HSJHXN6E-CxOR3aao.js +1 -0
- package/payload/server/public/assets/classDiagram-v2-HSJHXN6E-CxOR3aao.js.br +0 -0
- package/payload/server/public/assets/classDiagram-v2-HSJHXN6E-CxOR3aao.js.gz +0 -0
- package/payload/server/public/assets/clock-BIaRnIP_.js +1 -0
- package/payload/server/public/assets/clock-BIaRnIP_.js.br +0 -0
- package/payload/server/public/assets/clock-BIaRnIP_.js.gz +0 -0
- package/payload/server/public/assets/clone-CJmzeWWZ.js +1 -0
- package/payload/server/public/assets/clone-CJmzeWWZ.js.br +0 -0
- package/payload/server/public/assets/{cose-bilkent-S5V4N54A-kEHVkDNn.js → cose-bilkent-S5V4N54A-qM4Q4TuE.js} +1 -1
- package/payload/server/public/assets/cose-bilkent-S5V4N54A-qM4Q4TuE.js.br +0 -0
- package/payload/server/public/assets/cose-bilkent-S5V4N54A-qM4Q4TuE.js.gz +0 -0
- package/payload/server/public/assets/{dagre-D2wUw1zC.js → dagre-DRvHdusQ.js} +1 -1
- package/payload/server/public/assets/dagre-DRvHdusQ.js.br +0 -0
- package/payload/server/public/assets/dagre-DRvHdusQ.js.gz +0 -0
- package/payload/server/public/assets/{dagre-KV5264BT-BWfTDwEs.js → dagre-KV5264BT-CGqSVVTn.js} +1 -1
- package/payload/server/public/assets/dagre-KV5264BT-CGqSVVTn.js.br +0 -0
- package/payload/server/public/assets/dagre-KV5264BT-CGqSVVTn.js.gz +0 -0
- package/payload/server/public/assets/data-O_9Kiicl.js +1 -0
- package/payload/server/public/assets/data-O_9Kiicl.js.br +2 -0
- package/payload/server/public/assets/data-O_9Kiicl.js.gz +0 -0
- package/payload/server/public/assets/{diagram-5BDNPKRD-Tl9dS8w0.js → diagram-5BDNPKRD-DfFgeApz.js} +1 -1
- package/payload/server/public/assets/diagram-5BDNPKRD-DfFgeApz.js.br +0 -0
- package/payload/server/public/assets/diagram-5BDNPKRD-DfFgeApz.js.gz +0 -0
- package/payload/server/public/assets/{diagram-G4DWMVQ6-CeSe6TMu.js → diagram-G4DWMVQ6-DPXc3Q8e.js} +1 -1
- package/payload/server/public/assets/diagram-G4DWMVQ6-DPXc3Q8e.js.br +0 -0
- package/payload/server/public/assets/diagram-G4DWMVQ6-DPXc3Q8e.js.gz +0 -0
- package/payload/server/public/assets/{diagram-MMDJMWI5-DYBNJCmk.js → diagram-MMDJMWI5-V8RCddvy.js} +1 -1
- package/payload/server/public/assets/diagram-MMDJMWI5-V8RCddvy.js.br +0 -0
- package/payload/server/public/assets/diagram-MMDJMWI5-V8RCddvy.js.gz +0 -0
- package/payload/server/public/assets/{diagram-TYMM5635-BmpUGltx.js → diagram-TYMM5635-CrvfIf-m.js} +1 -1
- package/payload/server/public/assets/diagram-TYMM5635-CrvfIf-m.js.br +0 -0
- package/payload/server/public/assets/diagram-TYMM5635-CrvfIf-m.js.gz +0 -0
- package/payload/server/public/assets/{erDiagram-SMLLAGMA-DuwuNGqx.js → erDiagram-SMLLAGMA-DClMgmBB.js} +1 -1
- package/payload/server/public/assets/erDiagram-SMLLAGMA-DClMgmBB.js.br +0 -0
- package/payload/server/public/assets/erDiagram-SMLLAGMA-DClMgmBB.js.gz +0 -0
- package/payload/server/public/assets/{file-download-DayBHhKS.js → file-download-sXU3_umF.js} +1 -1
- package/payload/server/public/assets/file-download-sXU3_umF.js.br +0 -0
- package/payload/server/public/assets/file-download-sXU3_umF.js.gz +0 -0
- package/payload/server/public/assets/{file-text-BSyhVH0m.js → file-text-CeXBviDH.js} +1 -1
- package/payload/server/public/assets/file-text-CeXBviDH.js.br +0 -0
- package/payload/server/public/assets/file-text-CeXBviDH.js.gz +0 -0
- package/payload/server/public/assets/{flatten-Bu-b1uTY.js → flatten-UdUTbm8v.js} +1 -1
- package/payload/server/public/assets/flatten-UdUTbm8v.js.br +0 -0
- package/payload/server/public/assets/flatten-UdUTbm8v.js.gz +0 -0
- package/payload/server/public/assets/{flowDiagram-DWJPFMVM-Bpp8P6Ba.js → flowDiagram-DWJPFMVM-D29Ou09P.js} +1 -1
- package/payload/server/public/assets/flowDiagram-DWJPFMVM-D29Ou09P.js.br +0 -0
- package/payload/server/public/assets/flowDiagram-DWJPFMVM-D29Ou09P.js.gz +0 -0
- package/payload/server/public/assets/{ganttDiagram-T4ZO3ILL-CE6ppjB4.js → ganttDiagram-T4ZO3ILL-CoAK7W_V.js} +1 -1
- package/payload/server/public/assets/ganttDiagram-T4ZO3ILL-CoAK7W_V.js.br +0 -0
- package/payload/server/public/assets/ganttDiagram-T4ZO3ILL-CoAK7W_V.js.gz +0 -0
- package/payload/server/public/assets/gitGraph-7Q5UKJZL--JSoLMoH.js +1 -0
- package/payload/server/public/assets/gitGraph-7Q5UKJZL--JSoLMoH.js.br +0 -0
- package/payload/server/public/assets/{gitGraphDiagram-UUTBAWPF-BdK1GjPr.js → gitGraphDiagram-UUTBAWPF-DMEc_1aX.js} +1 -1
- package/payload/server/public/assets/gitGraphDiagram-UUTBAWPF-DMEc_1aX.js.br +0 -0
- package/payload/server/public/assets/gitGraphDiagram-UUTBAWPF-DMEc_1aX.js.gz +0 -0
- package/payload/server/public/assets/{graph-Bjv3Tc3B.js → graph-BSuDP6k7.js} +3 -3
- package/payload/server/public/assets/graph-BSuDP6k7.js.br +0 -0
- package/payload/server/public/assets/graph-BSuDP6k7.js.gz +0 -0
- package/payload/server/public/assets/{graph-labels-DegLKGdx.js → graph-labels-D2pQkgYW.js} +1 -1
- package/payload/server/public/assets/graph-labels-D2pQkgYW.js.br +0 -0
- package/payload/server/public/assets/graph-labels-D2pQkgYW.js.gz +0 -0
- package/payload/server/public/assets/{graphlib-CHEXylyU.js → graphlib-ihSLgqUG.js} +1 -1
- package/payload/server/public/assets/graphlib-ihSLgqUG.js.br +0 -0
- package/payload/server/public/assets/graphlib-ihSLgqUG.js.gz +0 -0
- package/payload/server/public/assets/info-OMHHGYJF-CY4gsXn4.js +1 -0
- package/payload/server/public/assets/info-OMHHGYJF-CY4gsXn4.js.br +0 -0
- package/payload/server/public/assets/infoDiagram-42DDH7IO-CpWSNS3C.js +2 -0
- package/payload/server/public/assets/infoDiagram-42DDH7IO-CpWSNS3C.js.br +0 -0
- package/payload/server/public/assets/infoDiagram-42DDH7IO-CpWSNS3C.js.gz +0 -0
- package/payload/server/public/assets/{isEmpty-CjH0UASp.js → isEmpty-DY_Xp9Na.js} +1 -1
- package/payload/server/public/assets/isEmpty-DY_Xp9Na.js.br +0 -0
- package/payload/server/public/assets/isEmpty-DY_Xp9Na.js.gz +0 -0
- package/payload/server/public/assets/{ishikawaDiagram-UXIWVN3A-CgkVZ4-3.js → ishikawaDiagram-UXIWVN3A-w8fVIbxy.js} +1 -1
- package/payload/server/public/assets/ishikawaDiagram-UXIWVN3A-w8fVIbxy.js.br +0 -0
- package/payload/server/public/assets/ishikawaDiagram-UXIWVN3A-w8fVIbxy.js.gz +0 -0
- package/payload/server/public/assets/{journeyDiagram-VCZTEJTY-ByUPv8q6.js → journeyDiagram-VCZTEJTY-BRTPKDT5.js} +1 -1
- package/payload/server/public/assets/journeyDiagram-VCZTEJTY-BRTPKDT5.js.br +0 -0
- package/payload/server/public/assets/journeyDiagram-VCZTEJTY-BRTPKDT5.js.gz +0 -0
- package/payload/server/public/assets/{kanban-definition-6JOO6SKY-CFinqhpu.js → kanban-definition-6JOO6SKY-Ls3VaFZ_.js} +1 -1
- package/payload/server/public/assets/kanban-definition-6JOO6SKY-Ls3VaFZ_.js.br +0 -0
- package/payload/server/public/assets/kanban-definition-6JOO6SKY-Ls3VaFZ_.js.gz +0 -0
- package/payload/server/public/assets/{line-Y4ns5Ghi.js → line-BwhAIh8u.js} +1 -1
- package/payload/server/public/assets/line-BwhAIh8u.js.br +0 -0
- package/payload/server/public/assets/line-BwhAIh8u.js.gz +0 -0
- package/payload/server/public/assets/{linear-l39GooQ5.js → linear-USiZPFN4.js} +1 -1
- package/payload/server/public/assets/linear-USiZPFN4.js.br +0 -0
- package/payload/server/public/assets/linear-USiZPFN4.js.gz +0 -0
- package/payload/server/public/assets/{maximize-2-DJFG2EXJ.js → maximize-2-DlzSNygU.js} +1 -1
- package/payload/server/public/assets/maximize-2-DlzSNygU.js.br +0 -0
- package/payload/server/public/assets/maximize-2-DlzSNygU.js.gz +0 -0
- package/payload/server/public/assets/{mermaid-parser.core-5w0T1dRj.js → mermaid-parser.core-Bq--iC2w.js} +2 -2
- package/payload/server/public/assets/mermaid-parser.core-Bq--iC2w.js.br +0 -0
- package/payload/server/public/assets/mermaid-parser.core-Bq--iC2w.js.gz +0 -0
- package/payload/server/public/assets/{mermaid.core-DBADY5VW.js → mermaid.core-oYX-FxVa.js} +3 -3
- package/payload/server/public/assets/mermaid.core-oYX-FxVa.js.br +0 -0
- package/payload/server/public/assets/mermaid.core-oYX-FxVa.js.gz +0 -0
- package/payload/server/public/assets/{mindmap-definition-QFDTVHPH-rHz37loq.js → mindmap-definition-QFDTVHPH-ByZjL4Bs.js} +1 -1
- package/payload/server/public/assets/mindmap-definition-QFDTVHPH-ByZjL4Bs.js.br +0 -0
- package/payload/server/public/assets/mindmap-definition-QFDTVHPH-ByZjL4Bs.js.gz +0 -0
- package/payload/server/public/assets/operator-BP61-xjz.js +1 -0
- package/payload/server/public/assets/operator-BP61-xjz.js.br +0 -0
- package/payload/server/public/assets/operator-BP61-xjz.js.gz +0 -0
- package/payload/server/public/assets/{ordinal-D6D6WcTC.js → ordinal-gnpqfIHn.js} +1 -1
- package/payload/server/public/assets/ordinal-gnpqfIHn.js.br +0 -0
- package/payload/server/public/assets/ordinal-gnpqfIHn.js.gz +0 -0
- package/payload/server/public/assets/packet-4T2RLAQJ-DczCn3uj.js +1 -0
- package/payload/server/public/assets/packet-4T2RLAQJ-DczCn3uj.js.br +0 -0
- package/payload/server/public/assets/page-DX7ArY_s.js +1 -0
- package/payload/server/public/assets/page-DX7ArY_s.js.br +0 -0
- package/payload/server/public/assets/page-DX7ArY_s.js.gz +0 -0
- package/payload/server/public/assets/page-eQ4OVros.js +32 -0
- package/payload/server/public/assets/page-eQ4OVros.js.br +0 -0
- package/payload/server/public/assets/page-eQ4OVros.js.gz +0 -0
- package/payload/server/public/assets/{pdf-render-BSgBp8Fr.js → pdf-render-gEryZmeC.js} +1 -1
- package/payload/server/public/assets/pdf-render-gEryZmeC.js.br +0 -0
- package/payload/server/public/assets/pdf-render-gEryZmeC.js.gz +0 -0
- package/payload/server/public/assets/pie-ZZUOXDRM-CbvZUaof.js +1 -0
- package/payload/server/public/assets/pie-ZZUOXDRM-CbvZUaof.js.br +0 -0
- package/payload/server/public/assets/{pieDiagram-DEJITSTG-as0e_DSH.js → pieDiagram-DEJITSTG-BGFms5bU.js} +1 -1
- package/payload/server/public/assets/pieDiagram-DEJITSTG-BGFms5bU.js.br +0 -0
- package/payload/server/public/assets/pieDiagram-DEJITSTG-BGFms5bU.js.gz +0 -0
- package/payload/server/public/assets/{public-CNVEM-Bx.js → public-DPDKFKM2.js} +1 -1
- package/payload/server/public/assets/public-DPDKFKM2.js.br +0 -0
- package/payload/server/public/assets/public-DPDKFKM2.js.gz +0 -0
- package/payload/server/public/assets/{quadrantDiagram-34T5L4WZ-B4t8HO9J.js → quadrantDiagram-34T5L4WZ-_ymoz8bQ.js} +1 -1
- package/payload/server/public/assets/quadrantDiagram-34T5L4WZ-_ymoz8bQ.js.br +0 -0
- package/payload/server/public/assets/quadrantDiagram-34T5L4WZ-_ymoz8bQ.js.gz +0 -0
- package/payload/server/public/assets/radar-PYXPWWZC-XmuabQlO.js +1 -0
- package/payload/server/public/assets/radar-PYXPWWZC-XmuabQlO.js.br +0 -0
- package/payload/server/public/assets/{reduce-BtXXK8Ma.js → reduce-BvezuHIe.js} +1 -1
- package/payload/server/public/assets/reduce-BvezuHIe.js.br +0 -0
- package/payload/server/public/assets/reduce-BvezuHIe.js.gz +0 -0
- package/payload/server/public/assets/{requirementDiagram-MS252O5E-yxh30zHX.js → requirementDiagram-MS252O5E-lrOmOxIA.js} +1 -1
- package/payload/server/public/assets/requirementDiagram-MS252O5E-lrOmOxIA.js.br +0 -0
- package/payload/server/public/assets/requirementDiagram-MS252O5E-lrOmOxIA.js.gz +0 -0
- package/payload/server/public/assets/{rotate-ccw-DQCaky8_.js → rotate-ccw-BR0JbPFV.js} +1 -1
- package/payload/server/public/assets/rotate-ccw-BR0JbPFV.js.br +0 -0
- package/payload/server/public/assets/rotate-ccw-BR0JbPFV.js.gz +0 -0
- package/payload/server/public/assets/{routines-DwK5FeLm.js → routines-y413YZa-.js} +1 -1
- package/payload/server/public/assets/routines-y413YZa-.js.br +0 -0
- package/payload/server/public/assets/routines-y413YZa-.js.gz +0 -0
- package/payload/server/public/assets/{sankeyDiagram-XADWPNL6-j-k9Wfty.js → sankeyDiagram-XADWPNL6-CdUQThXU.js} +1 -1
- package/payload/server/public/assets/sankeyDiagram-XADWPNL6-CdUQThXU.js.br +0 -0
- package/payload/server/public/assets/sankeyDiagram-XADWPNL6-CdUQThXU.js.gz +0 -0
- package/payload/server/public/assets/{sequenceDiagram-FGHM5R23-DGLgcLhC.js → sequenceDiagram-FGHM5R23-DqnEEldq.js} +1 -1
- package/payload/server/public/assets/sequenceDiagram-FGHM5R23-DqnEEldq.js.br +0 -0
- package/payload/server/public/assets/sequenceDiagram-FGHM5R23-DqnEEldq.js.gz +0 -0
- package/payload/server/public/assets/{skills-CosN3uA4.js → skills-fH0uA7cj.js} +1 -1
- package/payload/server/public/assets/skills-fH0uA7cj.js.br +0 -0
- package/payload/server/public/assets/skills-fH0uA7cj.js.gz +0 -0
- package/payload/server/public/assets/{stateDiagram-FHFEXIEX-C9p1OUMI.js → stateDiagram-FHFEXIEX-KEdtxqdq.js} +1 -1
- package/payload/server/public/assets/stateDiagram-FHFEXIEX-KEdtxqdq.js.br +0 -0
- package/payload/server/public/assets/stateDiagram-FHFEXIEX-KEdtxqdq.js.gz +0 -0
- package/payload/server/public/assets/stateDiagram-v2-QKLJ7IA2-Cs85Ewtt.js +1 -0
- package/payload/server/public/assets/stateDiagram-v2-QKLJ7IA2-Cs85Ewtt.js.br +0 -0
- package/payload/server/public/assets/stateDiagram-v2-QKLJ7IA2-Cs85Ewtt.js.gz +0 -0
- package/payload/server/public/assets/{tasks-f0QikHmw.js → tasks-CrVzFrTR.js} +2 -2
- package/payload/server/public/assets/tasks-CrVzFrTR.js.br +0 -0
- package/payload/server/public/assets/tasks-CrVzFrTR.js.gz +0 -0
- package/payload/server/public/assets/{time-entry-format-DLTdS35_.js → time-entry-format-C_0jiMpQ.js} +1 -1
- package/payload/server/public/assets/time-entry-format-C_0jiMpQ.js.br +1 -0
- package/payload/server/public/assets/time-entry-format-C_0jiMpQ.js.gz +0 -0
- package/payload/server/public/assets/{timeline-definition-GMOUNBTQ-B1g7pgkH.js → timeline-definition-GMOUNBTQ-BRXdCMau.js} +1 -1
- package/payload/server/public/assets/timeline-definition-GMOUNBTQ-BRXdCMau.js.br +0 -0
- package/payload/server/public/assets/timeline-definition-GMOUNBTQ-BRXdCMau.js.gz +0 -0
- package/payload/server/public/assets/treeView-SZITEDCU-B-SYhqwK.js +1 -0
- package/payload/server/public/assets/treeView-SZITEDCU-B-SYhqwK.js.br +0 -0
- package/payload/server/public/assets/treemap-W4RFUUIX-DpZmFNM9.js +1 -0
- package/payload/server/public/assets/treemap-W4RFUUIX-DpZmFNM9.js.br +0 -0
- package/payload/server/public/assets/{triangle-alert-CpwrbdYq.js → triangle-alert-eLJHC_QJ.js} +1 -1
- package/payload/server/public/assets/triangle-alert-eLJHC_QJ.js.br +1 -0
- package/payload/server/public/assets/triangle-alert-eLJHC_QJ.js.gz +0 -0
- package/payload/server/public/assets/{useCopyFeedback-D01gSp36.js → useCopyFeedback-vPCmdOmY.js} +1 -1
- package/payload/server/public/assets/useCopyFeedback-vPCmdOmY.js.br +0 -0
- package/payload/server/public/assets/useCopyFeedback-vPCmdOmY.js.gz +0 -0
- package/payload/server/public/assets/useSubAccountSwitcher-DMr3DR5N.js +14 -0
- package/payload/server/public/assets/useSubAccountSwitcher-DMr3DR5N.js.br +0 -0
- package/payload/server/public/assets/useSubAccountSwitcher-DMr3DR5N.js.gz +0 -0
- package/payload/server/public/assets/useSubAccountSwitcher-DxuUS_C7.css +1 -0
- package/payload/server/public/assets/useSubAccountSwitcher-DxuUS_C7.css.br +0 -0
- package/payload/server/public/assets/useSubAccountSwitcher-DxuUS_C7.css.gz +0 -0
- package/payload/server/public/assets/{useVoiceRecorder-DiPgyDUy.js → useVoiceRecorder-D5bFDRqL.js} +2 -2
- package/payload/server/public/assets/useVoiceRecorder-D5bFDRqL.js.br +0 -0
- package/payload/server/public/assets/useVoiceRecorder-D5bFDRqL.js.gz +0 -0
- package/payload/server/public/assets/{vennDiagram-DHZGUBPP-D2ZjFfh4.js → vennDiagram-DHZGUBPP-8nc7NUVQ.js} +1 -1
- package/payload/server/public/assets/vennDiagram-DHZGUBPP-8nc7NUVQ.js.br +0 -0
- package/payload/server/public/assets/vennDiagram-DHZGUBPP-8nc7NUVQ.js.gz +0 -0
- package/payload/server/public/assets/wardley-RL74JXVD-D2FCCV4-.js +1 -0
- package/payload/server/public/assets/wardley-RL74JXVD-D2FCCV4-.js.br +0 -0
- package/payload/server/public/assets/{wardleyDiagram-NUSXRM2D-BFAhfkD8.js → wardleyDiagram-NUSXRM2D-Cjjiap8M.js} +1 -1
- package/payload/server/public/assets/wardleyDiagram-NUSXRM2D-Cjjiap8M.js.br +0 -0
- package/payload/server/public/assets/wardleyDiagram-NUSXRM2D-Cjjiap8M.js.gz +0 -0
- package/payload/server/public/assets/{wrench-C5SJreEu.js → wrench-sXisQXkf.js} +1 -1
- package/payload/server/public/assets/wrench-sXisQXkf.js.br +0 -0
- package/payload/server/public/assets/wrench-sXisQXkf.js.gz +0 -0
- package/payload/server/public/assets/{xychartDiagram-5P7HB3ND-Dt94h2RQ.js → xychartDiagram-5P7HB3ND-DEzDNw_i.js} +1 -1
- package/payload/server/public/assets/xychartDiagram-5P7HB3ND-DEzDNw_i.js.br +0 -0
- package/payload/server/public/assets/xychartDiagram-5P7HB3ND-DEzDNw_i.js.gz +0 -0
- package/payload/server/public/browser.html +5 -4
- package/payload/server/public/calendar.html +7 -7
- package/payload/server/public/chat.html +14 -14
- package/payload/server/public/data.html +13 -13
- package/payload/server/public/graph.html +9 -9
- package/payload/server/public/index.html +17 -16
- package/payload/server/public/operator.html +16 -15
- package/payload/server/public/public.html +14 -14
- 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 +61 -73
- package/payload/server/public/assets/AdminLoginScreens-DSt9DYZZ.js +0 -1
- package/payload/server/public/assets/AdminLoginScreens-DSt9DYZZ.js.br +0 -0
- package/payload/server/public/assets/AdminLoginScreens-DSt9DYZZ.js.gz +0 -0
- package/payload/server/public/assets/AdminShell-MM3_yp3N.js +0 -2
- package/payload/server/public/assets/AdminShell-MM3_yp3N.js.br +0 -0
- package/payload/server/public/assets/AdminShell-MM3_yp3N.js.gz +0 -0
- package/payload/server/public/assets/activity-aVvbaVd4.js.br +0 -0
- package/payload/server/public/assets/activity-aVvbaVd4.js.gz +0 -0
- package/payload/server/public/assets/admin-B0lQnkH-.js +0 -1
- package/payload/server/public/assets/admin-B0lQnkH-.js.br +0 -0
- package/payload/server/public/assets/admin-B0lQnkH-.js.gz +0 -0
- package/payload/server/public/assets/agents-CrpVTPRG.js.br +0 -0
- package/payload/server/public/assets/agents-CrpVTPRG.js.gz +0 -0
- package/payload/server/public/assets/arc-DaudCnXg.js.br +0 -0
- package/payload/server/public/assets/arc-DaudCnXg.js.gz +0 -0
- package/payload/server/public/assets/architecture-YZFGNWBL-DPFsm5jD.js +0 -1
- package/payload/server/public/assets/architecture-YZFGNWBL-DPFsm5jD.js.br +0 -0
- package/payload/server/public/assets/architectureDiagram-Q4EWVU46-BEEC3s7i.js.br +0 -0
- package/payload/server/public/assets/architectureDiagram-Q4EWVU46-BEEC3s7i.js.gz +0 -0
- package/payload/server/public/assets/blockDiagram-DXYQGD6D-BIWyfb18.js.br +0 -0
- package/payload/server/public/assets/blockDiagram-DXYQGD6D-BIWyfb18.js.gz +0 -0
- package/payload/server/public/assets/browser-CYHUzTop.js +0 -1
- package/payload/server/public/assets/browser-CYHUzTop.js.br +0 -0
- package/payload/server/public/assets/browser-CYHUzTop.js.gz +0 -0
- package/payload/server/public/assets/c4Diagram-AHTNJAMY--h6oE2cv.js.br +0 -0
- package/payload/server/public/assets/c4Diagram-AHTNJAMY--h6oE2cv.js.gz +0 -0
- package/payload/server/public/assets/calendar-4IWQpwYv.js.br +0 -0
- package/payload/server/public/assets/calendar-4IWQpwYv.js.gz +0 -0
- package/payload/server/public/assets/channel-TwxCDSpK.js +0 -1
- package/payload/server/public/assets/channel-TwxCDSpK.js.br +0 -0
- package/payload/server/public/assets/chat-DmjZTqnV.js +0 -1
- package/payload/server/public/assets/chat-DmjZTqnV.js.br +0 -0
- package/payload/server/public/assets/chat-DmjZTqnV.js.gz +0 -0
- package/payload/server/public/assets/chevron-left-CIl-s3LZ.js +0 -1
- package/payload/server/public/assets/chevron-left-CIl-s3LZ.js.br +0 -0
- package/payload/server/public/assets/chevron-right-DpAi2BsF.js +0 -1
- package/payload/server/public/assets/chevron-right-DpAi2BsF.js.br +0 -0
- package/payload/server/public/assets/chunk-2KRD3SAO-BwEVlnxo.js.br +0 -0
- package/payload/server/public/assets/chunk-2KRD3SAO-BwEVlnxo.js.gz +0 -0
- package/payload/server/public/assets/chunk-336JU56O-DQddTATH.js.br +0 -0
- package/payload/server/public/assets/chunk-336JU56O-DQddTATH.js.gz +0 -0
- package/payload/server/public/assets/chunk-426QAEUC-BDC8wptW.js +0 -1
- package/payload/server/public/assets/chunk-426QAEUC-BDC8wptW.js.br +0 -0
- package/payload/server/public/assets/chunk-426QAEUC-BDC8wptW.js.gz +0 -0
- package/payload/server/public/assets/chunk-4BX2VUAB-C5p3xTC6.js.br +0 -0
- package/payload/server/public/assets/chunk-4BX2VUAB-C5p3xTC6.js.gz +0 -0
- package/payload/server/public/assets/chunk-4TB4RGXK-gClfNc1w.js.br +0 -0
- package/payload/server/public/assets/chunk-4TB4RGXK-gClfNc1w.js.gz +0 -0
- package/payload/server/public/assets/chunk-55IACEB6-DDU_m1ra.js.br +0 -0
- package/payload/server/public/assets/chunk-55IACEB6-DDU_m1ra.js.gz +0 -0
- package/payload/server/public/assets/chunk-5FUZZQ4R-CZ2jQWNR.js.br +0 -0
- package/payload/server/public/assets/chunk-5FUZZQ4R-CZ2jQWNR.js.gz +0 -0
- package/payload/server/public/assets/chunk-5PVQY5BW-kcZ5kfTg.js.br +0 -0
- package/payload/server/public/assets/chunk-5PVQY5BW-kcZ5kfTg.js.gz +0 -0
- package/payload/server/public/assets/chunk-67CJDMHE-9W0Qv0jm.js.br +0 -0
- package/payload/server/public/assets/chunk-67CJDMHE-9W0Qv0jm.js.gz +0 -0
- package/payload/server/public/assets/chunk-7N4EOEYR-B3gqydR3.js.br +0 -0
- package/payload/server/public/assets/chunk-7N4EOEYR-B3gqydR3.js.gz +0 -0
- package/payload/server/public/assets/chunk-AA7GKIK3-DW8a-2NK.js.br +0 -4
- package/payload/server/public/assets/chunk-AA7GKIK3-DW8a-2NK.js.gz +0 -0
- package/payload/server/public/assets/chunk-BSJP7CBP-DqXIO_5R.js.br +0 -0
- package/payload/server/public/assets/chunk-BSJP7CBP-DqXIO_5R.js.gz +0 -0
- package/payload/server/public/assets/chunk-CIAEETIT-BMJfgj2u.js.br +0 -0
- package/payload/server/public/assets/chunk-CIAEETIT-BMJfgj2u.js.gz +0 -0
- package/payload/server/public/assets/chunk-EDXVE4YY-BxdLPk0b.js.br +0 -0
- package/payload/server/public/assets/chunk-EDXVE4YY-BxdLPk0b.js.gz +0 -0
- package/payload/server/public/assets/chunk-ENJZ2VHE-Cfe2DCjQ.js.br +0 -0
- package/payload/server/public/assets/chunk-ENJZ2VHE-Cfe2DCjQ.js.gz +0 -0
- package/payload/server/public/assets/chunk-FMBD7UC4-CdPjwbtf.js.br +0 -0
- package/payload/server/public/assets/chunk-FMBD7UC4-CdPjwbtf.js.gz +0 -0
- package/payload/server/public/assets/chunk-FOC6F5B3-Dl6l1KAh.js.br +0 -0
- package/payload/server/public/assets/chunk-FOC6F5B3-Dl6l1KAh.js.gz +0 -0
- package/payload/server/public/assets/chunk-ICPOFSXX-PnsGrqtx.js.br +0 -0
- package/payload/server/public/assets/chunk-ICPOFSXX-PnsGrqtx.js.gz +0 -0
- package/payload/server/public/assets/chunk-K5T4RW27--g29_wjW.js.br +0 -0
- package/payload/server/public/assets/chunk-K5T4RW27--g29_wjW.js.gz +0 -0
- package/payload/server/public/assets/chunk-KGLVRYIC-CI77ENeO.js.br +0 -3
- package/payload/server/public/assets/chunk-KGLVRYIC-CI77ENeO.js.gz +0 -0
- package/payload/server/public/assets/chunk-LIHQZDEY-CE-XByg6.js.br +0 -0
- package/payload/server/public/assets/chunk-LIHQZDEY-CE-XByg6.js.gz +0 -0
- package/payload/server/public/assets/chunk-ORNJ4GCN-DkjJQQSm.js.br +0 -0
- package/payload/server/public/assets/chunk-ORNJ4GCN-DkjJQQSm.js.gz +0 -0
- package/payload/server/public/assets/chunk-OYMX7WX6-DhogFeD7.js.br +0 -0
- package/payload/server/public/assets/chunk-OYMX7WX6-DhogFeD7.js.gz +0 -0
- package/payload/server/public/assets/chunk-QZHKN3VN-DnqqL1de.js +0 -1
- package/payload/server/public/assets/chunk-QZHKN3VN-DnqqL1de.js.br +0 -0
- package/payload/server/public/assets/chunk-QZHKN3VN-DnqqL1de.js.gz +0 -0
- package/payload/server/public/assets/chunk-U2HBQHQK-CeaRXuiO.js.br +0 -0
- package/payload/server/public/assets/chunk-U2HBQHQK-CeaRXuiO.js.gz +0 -0
- package/payload/server/public/assets/chunk-X2U36JSP-BqxXeOqf.js.br +0 -0
- package/payload/server/public/assets/chunk-X2U36JSP-BqxXeOqf.js.gz +0 -0
- package/payload/server/public/assets/chunk-XPW4576I-DtqJwn2x.js.br +0 -0
- package/payload/server/public/assets/chunk-XPW4576I-DtqJwn2x.js.gz +0 -0
- package/payload/server/public/assets/chunk-YZCP3GAM-COBlEwQw.js.br +0 -0
- package/payload/server/public/assets/chunk-YZCP3GAM-COBlEwQw.js.gz +0 -0
- package/payload/server/public/assets/chunk-ZZ45TVLE-CcL088y6.js.br +0 -0
- package/payload/server/public/assets/chunk-ZZ45TVLE-CcL088y6.js.gz +0 -0
- package/payload/server/public/assets/classDiagram-6PBFFD2Q-Bc3P4dpc.js +0 -1
- package/payload/server/public/assets/classDiagram-6PBFFD2Q-Bc3P4dpc.js.br +0 -0
- package/payload/server/public/assets/classDiagram-6PBFFD2Q-Bc3P4dpc.js.gz +0 -0
- package/payload/server/public/assets/classDiagram-v2-HSJHXN6E-DgEF_rR_.js +0 -1
- package/payload/server/public/assets/classDiagram-v2-HSJHXN6E-DgEF_rR_.js.br +0 -0
- package/payload/server/public/assets/classDiagram-v2-HSJHXN6E-DgEF_rR_.js.gz +0 -0
- package/payload/server/public/assets/clock-CGuM9VRx.js +0 -1
- package/payload/server/public/assets/clock-CGuM9VRx.js.br +0 -0
- package/payload/server/public/assets/clone-B3vq32j7.js +0 -1
- package/payload/server/public/assets/cose-bilkent-S5V4N54A-kEHVkDNn.js.br +0 -0
- package/payload/server/public/assets/cose-bilkent-S5V4N54A-kEHVkDNn.js.gz +0 -0
- package/payload/server/public/assets/dagre-D2wUw1zC.js.br +0 -0
- package/payload/server/public/assets/dagre-D2wUw1zC.js.gz +0 -0
- package/payload/server/public/assets/dagre-KV5264BT-BWfTDwEs.js.br +0 -0
- package/payload/server/public/assets/dagre-KV5264BT-BWfTDwEs.js.gz +0 -0
- package/payload/server/public/assets/data-BpdFiZKH.js +0 -1
- package/payload/server/public/assets/data-BpdFiZKH.js.br +0 -2
- package/payload/server/public/assets/data-BpdFiZKH.js.gz +0 -0
- package/payload/server/public/assets/diagram-5BDNPKRD-Tl9dS8w0.js.br +0 -0
- package/payload/server/public/assets/diagram-5BDNPKRD-Tl9dS8w0.js.gz +0 -0
- package/payload/server/public/assets/diagram-G4DWMVQ6-CeSe6TMu.js.br +0 -0
- package/payload/server/public/assets/diagram-G4DWMVQ6-CeSe6TMu.js.gz +0 -0
- package/payload/server/public/assets/diagram-MMDJMWI5-DYBNJCmk.js.br +0 -0
- package/payload/server/public/assets/diagram-MMDJMWI5-DYBNJCmk.js.gz +0 -0
- package/payload/server/public/assets/diagram-TYMM5635-BmpUGltx.js.br +0 -0
- package/payload/server/public/assets/diagram-TYMM5635-BmpUGltx.js.gz +0 -0
- package/payload/server/public/assets/erDiagram-SMLLAGMA-DuwuNGqx.js.br +0 -0
- package/payload/server/public/assets/erDiagram-SMLLAGMA-DuwuNGqx.js.gz +0 -0
- package/payload/server/public/assets/file-download-DayBHhKS.js.br +0 -0
- package/payload/server/public/assets/file-download-DayBHhKS.js.gz +0 -0
- package/payload/server/public/assets/file-text-BSyhVH0m.js.br +0 -0
- package/payload/server/public/assets/file-text-BSyhVH0m.js.gz +0 -0
- package/payload/server/public/assets/flatten-Bu-b1uTY.js.br +0 -0
- package/payload/server/public/assets/flatten-Bu-b1uTY.js.gz +0 -0
- package/payload/server/public/assets/flowDiagram-DWJPFMVM-Bpp8P6Ba.js.br +0 -0
- package/payload/server/public/assets/flowDiagram-DWJPFMVM-Bpp8P6Ba.js.gz +0 -0
- package/payload/server/public/assets/ganttDiagram-T4ZO3ILL-CE6ppjB4.js.br +0 -0
- package/payload/server/public/assets/ganttDiagram-T4ZO3ILL-CE6ppjB4.js.gz +0 -0
- package/payload/server/public/assets/gitGraph-7Q5UKJZL-B0OUwOUx.js +0 -1
- package/payload/server/public/assets/gitGraph-7Q5UKJZL-B0OUwOUx.js.br +0 -0
- package/payload/server/public/assets/gitGraphDiagram-UUTBAWPF-BdK1GjPr.js.br +0 -0
- package/payload/server/public/assets/gitGraphDiagram-UUTBAWPF-BdK1GjPr.js.gz +0 -0
- package/payload/server/public/assets/graph-Bjv3Tc3B.js.br +0 -0
- package/payload/server/public/assets/graph-Bjv3Tc3B.js.gz +0 -0
- package/payload/server/public/assets/graph-labels-DegLKGdx.js.br +0 -0
- package/payload/server/public/assets/graph-labels-DegLKGdx.js.gz +0 -0
- package/payload/server/public/assets/graphlib-CHEXylyU.js.br +0 -0
- package/payload/server/public/assets/graphlib-CHEXylyU.js.gz +0 -0
- package/payload/server/public/assets/info-OMHHGYJF-C_8TwPDe.js +0 -1
- package/payload/server/public/assets/info-OMHHGYJF-C_8TwPDe.js.br +0 -0
- package/payload/server/public/assets/infoDiagram-42DDH7IO-msfwyvbV.js +0 -2
- package/payload/server/public/assets/infoDiagram-42DDH7IO-msfwyvbV.js.br +0 -0
- package/payload/server/public/assets/infoDiagram-42DDH7IO-msfwyvbV.js.gz +0 -0
- package/payload/server/public/assets/isEmpty-CjH0UASp.js.br +0 -0
- package/payload/server/public/assets/isEmpty-CjH0UASp.js.gz +0 -0
- package/payload/server/public/assets/ishikawaDiagram-UXIWVN3A-CgkVZ4-3.js.br +0 -0
- package/payload/server/public/assets/ishikawaDiagram-UXIWVN3A-CgkVZ4-3.js.gz +0 -0
- package/payload/server/public/assets/journeyDiagram-VCZTEJTY-ByUPv8q6.js.br +0 -0
- package/payload/server/public/assets/journeyDiagram-VCZTEJTY-ByUPv8q6.js.gz +0 -0
- package/payload/server/public/assets/kanban-definition-6JOO6SKY-CFinqhpu.js.br +0 -0
- package/payload/server/public/assets/kanban-definition-6JOO6SKY-CFinqhpu.js.gz +0 -0
- package/payload/server/public/assets/line-Y4ns5Ghi.js.br +0 -0
- package/payload/server/public/assets/line-Y4ns5Ghi.js.gz +0 -0
- package/payload/server/public/assets/linear-l39GooQ5.js.br +0 -0
- package/payload/server/public/assets/linear-l39GooQ5.js.gz +0 -0
- package/payload/server/public/assets/maximize-2-DJFG2EXJ.js.br +0 -0
- package/payload/server/public/assets/maximize-2-DJFG2EXJ.js.gz +0 -0
- package/payload/server/public/assets/mermaid-parser.core-5w0T1dRj.js.br +0 -0
- package/payload/server/public/assets/mermaid-parser.core-5w0T1dRj.js.gz +0 -0
- package/payload/server/public/assets/mermaid.core-DBADY5VW.js.br +0 -0
- package/payload/server/public/assets/mermaid.core-DBADY5VW.js.gz +0 -0
- package/payload/server/public/assets/mindmap-definition-QFDTVHPH-rHz37loq.js.br +0 -0
- package/payload/server/public/assets/mindmap-definition-QFDTVHPH-rHz37loq.js.gz +0 -0
- package/payload/server/public/assets/operator-Du9Ve_PR.js +0 -1
- package/payload/server/public/assets/operator-Du9Ve_PR.js.br +0 -0
- package/payload/server/public/assets/operator-Du9Ve_PR.js.gz +0 -0
- package/payload/server/public/assets/ordinal-D6D6WcTC.js.br +0 -0
- package/payload/server/public/assets/ordinal-D6D6WcTC.js.gz +0 -0
- package/payload/server/public/assets/packet-4T2RLAQJ-CCQdbIqO.js +0 -1
- package/payload/server/public/assets/packet-4T2RLAQJ-CCQdbIqO.js.br +0 -0
- package/payload/server/public/assets/page-DgHYxG3M.js +0 -1
- package/payload/server/public/assets/page-DgHYxG3M.js.br +0 -0
- package/payload/server/public/assets/page-DgHYxG3M.js.gz +0 -0
- package/payload/server/public/assets/page-qV1ypb6i.js +0 -32
- package/payload/server/public/assets/page-qV1ypb6i.js.br +0 -0
- package/payload/server/public/assets/page-qV1ypb6i.js.gz +0 -0
- package/payload/server/public/assets/pdf-render-BSgBp8Fr.js.br +0 -0
- package/payload/server/public/assets/pdf-render-BSgBp8Fr.js.gz +0 -0
- package/payload/server/public/assets/pie-ZZUOXDRM-Bdw3Iqs7.js +0 -1
- package/payload/server/public/assets/pie-ZZUOXDRM-Bdw3Iqs7.js.br +0 -0
- package/payload/server/public/assets/pieDiagram-DEJITSTG-as0e_DSH.js.br +0 -0
- package/payload/server/public/assets/pieDiagram-DEJITSTG-as0e_DSH.js.gz +0 -0
- package/payload/server/public/assets/public-CNVEM-Bx.js.br +0 -0
- package/payload/server/public/assets/public-CNVEM-Bx.js.gz +0 -0
- package/payload/server/public/assets/quadrantDiagram-34T5L4WZ-B4t8HO9J.js.br +0 -0
- package/payload/server/public/assets/quadrantDiagram-34T5L4WZ-B4t8HO9J.js.gz +0 -0
- package/payload/server/public/assets/radar-PYXPWWZC-D3FUdA3r.js +0 -1
- package/payload/server/public/assets/radar-PYXPWWZC-D3FUdA3r.js.br +0 -0
- package/payload/server/public/assets/reduce-BtXXK8Ma.js.br +0 -0
- package/payload/server/public/assets/reduce-BtXXK8Ma.js.gz +0 -0
- package/payload/server/public/assets/requirementDiagram-MS252O5E-yxh30zHX.js.br +0 -0
- package/payload/server/public/assets/requirementDiagram-MS252O5E-yxh30zHX.js.gz +0 -0
- package/payload/server/public/assets/rotate-ccw-DQCaky8_.js.br +0 -0
- package/payload/server/public/assets/rotate-ccw-DQCaky8_.js.gz +0 -0
- package/payload/server/public/assets/routines-DwK5FeLm.js.br +0 -0
- package/payload/server/public/assets/routines-DwK5FeLm.js.gz +0 -0
- package/payload/server/public/assets/sankeyDiagram-XADWPNL6-j-k9Wfty.js.br +0 -0
- package/payload/server/public/assets/sankeyDiagram-XADWPNL6-j-k9Wfty.js.gz +0 -0
- package/payload/server/public/assets/sequenceDiagram-FGHM5R23-DGLgcLhC.js.br +0 -0
- package/payload/server/public/assets/sequenceDiagram-FGHM5R23-DGLgcLhC.js.gz +0 -0
- package/payload/server/public/assets/skills-CosN3uA4.js.br +0 -0
- package/payload/server/public/assets/skills-CosN3uA4.js.gz +0 -0
- package/payload/server/public/assets/stateDiagram-FHFEXIEX-C9p1OUMI.js.br +0 -0
- package/payload/server/public/assets/stateDiagram-FHFEXIEX-C9p1OUMI.js.gz +0 -0
- package/payload/server/public/assets/stateDiagram-v2-QKLJ7IA2-Bf808Apk.js +0 -1
- package/payload/server/public/assets/stateDiagram-v2-QKLJ7IA2-Bf808Apk.js.br +0 -0
- package/payload/server/public/assets/stateDiagram-v2-QKLJ7IA2-Bf808Apk.js.gz +0 -0
- package/payload/server/public/assets/tasks-f0QikHmw.js.br +0 -0
- package/payload/server/public/assets/tasks-f0QikHmw.js.gz +0 -0
- package/payload/server/public/assets/time-entry-format-DLTdS35_.js.br +0 -0
- package/payload/server/public/assets/time-entry-format-DLTdS35_.js.gz +0 -0
- package/payload/server/public/assets/timeline-definition-GMOUNBTQ-B1g7pgkH.js.br +0 -0
- package/payload/server/public/assets/timeline-definition-GMOUNBTQ-B1g7pgkH.js.gz +0 -0
- package/payload/server/public/assets/treeView-SZITEDCU-DetKw0D0.js +0 -1
- package/payload/server/public/assets/treeView-SZITEDCU-DetKw0D0.js.br +0 -0
- package/payload/server/public/assets/treemap-W4RFUUIX-zQkIANxW.js +0 -1
- package/payload/server/public/assets/treemap-W4RFUUIX-zQkIANxW.js.br +0 -0
- package/payload/server/public/assets/triangle-alert-CpwrbdYq.js.br +0 -3
- package/payload/server/public/assets/triangle-alert-CpwrbdYq.js.gz +0 -0
- package/payload/server/public/assets/useCopyFeedback-D01gSp36.js.br +0 -0
- package/payload/server/public/assets/useCopyFeedback-D01gSp36.js.gz +0 -0
- package/payload/server/public/assets/useSubAccountSwitcher-BRHYXwGO.js +0 -14
- package/payload/server/public/assets/useSubAccountSwitcher-BRHYXwGO.js.br +0 -0
- package/payload/server/public/assets/useSubAccountSwitcher-BRHYXwGO.js.gz +0 -0
- package/payload/server/public/assets/useSubAccountSwitcher-CJzJ9xV3.css +0 -1
- package/payload/server/public/assets/useSubAccountSwitcher-CJzJ9xV3.css.br +0 -0
- package/payload/server/public/assets/useSubAccountSwitcher-CJzJ9xV3.css.gz +0 -0
- package/payload/server/public/assets/useVoiceRecorder-DiPgyDUy.js.br +0 -0
- package/payload/server/public/assets/useVoiceRecorder-DiPgyDUy.js.gz +0 -0
- package/payload/server/public/assets/vennDiagram-DHZGUBPP-D2ZjFfh4.js.br +0 -0
- package/payload/server/public/assets/vennDiagram-DHZGUBPP-D2ZjFfh4.js.gz +0 -0
- package/payload/server/public/assets/wardley-RL74JXVD-DkQV3DvB.js +0 -1
- package/payload/server/public/assets/wardley-RL74JXVD-DkQV3DvB.js.br +0 -0
- package/payload/server/public/assets/wardleyDiagram-NUSXRM2D-BFAhfkD8.js.br +0 -0
- package/payload/server/public/assets/wardleyDiagram-NUSXRM2D-BFAhfkD8.js.gz +0 -0
- package/payload/server/public/assets/wrench-C5SJreEu.js.br +0 -1
- package/payload/server/public/assets/wrench-C5SJreEu.js.gz +0 -0
- package/payload/server/public/assets/xychartDiagram-5P7HB3ND-Dt94h2RQ.js.br +0 -0
- package/payload/server/public/assets/xychartDiagram-5P7HB3ND-Dt94h2RQ.js.gz +0 -0
- /package/payload/server/public/assets/{_baseFor-B12He5Rp.js → _baseFor-BApe6Tla.js} +0 -0
- /package/payload/server/public/assets/{_baseFor-B12He5Rp.js.br → _baseFor-BApe6Tla.js.br} +0 -0
- /package/payload/server/public/assets/{_baseFor-B12He5Rp.js.gz → _baseFor-BApe6Tla.js.gz} +0 -0
- /package/payload/server/public/assets/{array-DO1uCttT.js → array-eiH4WfvY.js} +0 -0
- /package/payload/server/public/assets/{array-DO1uCttT.js.br → array-eiH4WfvY.js.br} +0 -0
- /package/payload/server/public/assets/{cytoscape.esm-DFn2foqy.js → cytoscape.esm-BZ6NYo0w.js} +0 -0
- /package/payload/server/public/assets/{cytoscape.esm-DFn2foqy.js.br → cytoscape.esm-BZ6NYo0w.js.br} +0 -0
- /package/payload/server/public/assets/{cytoscape.esm-DFn2foqy.js.gz → cytoscape.esm-BZ6NYo0w.js.gz} +0 -0
- /package/payload/server/public/assets/{defaultLocale-ieI3yFoA.js → defaultLocale-DWHqsa6O.js} +0 -0
- /package/payload/server/public/assets/{defaultLocale-ieI3yFoA.js.br → defaultLocale-DWHqsa6O.js.br} +0 -0
- /package/payload/server/public/assets/{defaultLocale-ieI3yFoA.js.gz → defaultLocale-DWHqsa6O.js.gz} +0 -0
- /package/payload/server/public/assets/{dist-DlU7AEeD.js → dist-IoQuidkp.js} +0 -0
- /package/payload/server/public/assets/{dist-DlU7AEeD.js.br → dist-IoQuidkp.js.br} +0 -0
- /package/payload/server/public/assets/{dist-DlU7AEeD.js.gz → dist-IoQuidkp.js.gz} +0 -0
- /package/payload/server/public/assets/{init-BCRlEgNP.js → init-BdkYWjJJ.js} +0 -0
- /package/payload/server/public/assets/{init-BCRlEgNP.js.br → init-BdkYWjJJ.js.br} +0 -0
- /package/payload/server/public/assets/{init-BCRlEgNP.js.gz → init-BdkYWjJJ.js.gz} +0 -0
- /package/payload/server/public/assets/{katex-gkTaZgi6.js → katex-BCzoGtFh.js} +0 -0
- /package/payload/server/public/assets/{katex-gkTaZgi6.js.br → katex-BCzoGtFh.js.br} +0 -0
- /package/payload/server/public/assets/{katex-gkTaZgi6.js.gz → katex-BCzoGtFh.js.gz} +0 -0
- /package/payload/server/public/assets/{path-DTmzQFjQ.js → path-DY2qBuPM.js} +0 -0
- /package/payload/server/public/assets/{path-DTmzQFjQ.js.br → path-DY2qBuPM.js.br} +0 -0
- /package/payload/server/public/assets/{path-DTmzQFjQ.js.gz → path-DY2qBuPM.js.gz} +0 -0
- /package/payload/server/public/assets/{preload-helper-eAV8hweq.js → preload-helper-3YNEDsJZ.js} +0 -0
- /package/payload/server/public/assets/{preload-helper-eAV8hweq.js.br → preload-helper-3YNEDsJZ.js.br} +0 -0
- /package/payload/server/public/assets/{preload-helper-eAV8hweq.js.gz → preload-helper-3YNEDsJZ.js.gz} +0 -0
- /package/payload/server/public/assets/{rough.esm-BFJ-MgcB.js → rough.esm-ec8xsRC7.js} +0 -0
- /package/payload/server/public/assets/{rough.esm-BFJ-MgcB.js.br → rough.esm-ec8xsRC7.js.br} +0 -0
- /package/payload/server/public/assets/{rough.esm-BFJ-MgcB.js.gz → rough.esm-ec8xsRC7.js.gz} +0 -0
- /package/payload/server/public/assets/{src-9CNk4JU0.js → src-C-STKunZ.js} +0 -0
- /package/payload/server/public/assets/{src-9CNk4JU0.js.br → src-C-STKunZ.js.br} +0 -0
- /package/payload/server/public/assets/{src-9CNk4JU0.js.gz → src-C-STKunZ.js.gz} +0 -0
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { resolveConfig, writeSendingIdentity } from "../lib/credentials.js";
|
|
2
|
+
/**
|
|
3
|
+
* Task 2194 — designate the account's own outbound address.
|
|
4
|
+
*
|
|
5
|
+
* A dedicated writer rather than an `email-setup` parameter, following the
|
|
6
|
+
* `email-signature-set` precedent from Task 2097: designation has to be
|
|
7
|
+
* changeable on an account whose mailboxes already exist, and the account this
|
|
8
|
+
* was filed from holds three.
|
|
9
|
+
*
|
|
10
|
+
* The mailbox is resolved through `resolveConfig` before anything is written,
|
|
11
|
+
* so an address the account does not hold is refused naming the stored
|
|
12
|
+
* identities and nothing is touched. Uniqueness is enforced by the write, not
|
|
13
|
+
* by a check afterwards — see `writeSendingIdentity`.
|
|
14
|
+
*/
|
|
15
|
+
export async function emailSendingIdentitySet(params) {
|
|
16
|
+
const { accountId, mailbox } = params;
|
|
17
|
+
const resolved = await resolveConfig(accountId, mailbox);
|
|
18
|
+
if ("error" in resolved)
|
|
19
|
+
throw new Error(resolved.error);
|
|
20
|
+
const { config } = resolved;
|
|
21
|
+
const cleared = await writeSendingIdentity(accountId, config.email);
|
|
22
|
+
console.error(`[email-sending-identity-set] op=write accountId=${accountId.slice(0, 8)} mailbox=${config.email} cleared=${cleared}`);
|
|
23
|
+
return [
|
|
24
|
+
`${config.email} is now this account's sending identity. `,
|
|
25
|
+
`An email-draft, email-send or email-reply that names no mailbox composes from it, `,
|
|
26
|
+
`so the sending address is read from the account rather than chosen by whoever is drafting.`,
|
|
27
|
+
cleared
|
|
28
|
+
? `\n\nCleared the designation from ${cleared} other mailbox${cleared === 1 ? "" : "es"}. Exactly one mailbox carries it at a time.`
|
|
29
|
+
: `\n\nNo other mailbox carried the designation.`,
|
|
30
|
+
].join("");
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=email-sending-identity-set.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"email-sending-identity-set.js","sourceRoot":"","sources":["../../src/tools/email-sending-identity-set.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAO5E;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,MAAgC;IAEhC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;IAEtC,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACzD,IAAI,OAAO,IAAI,QAAQ;QAAE,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACzD,MAAM,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAC;IAE5B,MAAM,OAAO,GAAG,MAAM,oBAAoB,CAAC,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAEpE,OAAO,CAAC,KAAK,CACX,mDAAmD,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,YAAY,MAAM,CAAC,KAAK,YAAY,OAAO,EAAE,CACtH,CAAC;IAEF,OAAO;QACL,GAAG,MAAM,CAAC,KAAK,2CAA2C;QAC1D,oFAAoF;QACpF,4FAA4F;QAC5F,OAAO;YACL,CAAC,CAAC,oCAAoC,OAAO,iBAAiB,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,6CAA6C;YACpI,CAAC,CAAC,+CAA+C;KACpD,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACb,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"email-status.d.ts","sourceRoot":"","sources":["../../src/tools/email-status.ts"],"names":[],"mappings":"AAQA,UAAU,YAAY;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;
|
|
1
|
+
{"version":3,"file":"email-status.d.ts","sourceRoot":"","sources":["../../src/tools/email-status.ts"],"names":[],"mappings":"AAQA,UAAU,YAAY;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AA0GD,wBAAsB,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAwCvE"}
|
|
@@ -3,9 +3,20 @@ import * as imap from "../lib/imap.js";
|
|
|
3
3
|
import * as smtp from "../lib/smtp.js";
|
|
4
4
|
/** Probe one mailbox's IMAP + SMTP and render its health block. */
|
|
5
5
|
async function probeOne(accountId, config) {
|
|
6
|
+
// Task 2194. The account's own outbound address is a stored fact about this
|
|
7
|
+
// mailbox, so it is reported on a single-mailbox account as well as a
|
|
8
|
+
// multi-mailbox one, and above the credential check rather than below it: a
|
|
9
|
+
// broken credential changes the mailbox's health, not which address the
|
|
10
|
+
// account sends from, and a failing mailbox is exactly when someone is
|
|
11
|
+
// reading this looking for it.
|
|
12
|
+
const identityLine = config.sendingIdentity === true
|
|
13
|
+
? "Sending identity: yes — a draft, send or reply that names no mailbox composes from this address"
|
|
14
|
+
: "";
|
|
6
15
|
const credResult = await loadCredentials(accountId, config.email);
|
|
7
16
|
if ("error" in credResult) {
|
|
8
|
-
return `Email: ${config.email} — ${credResult.error}
|
|
17
|
+
return [`Email: ${config.email} — ${credResult.error}`, identityLine]
|
|
18
|
+
.filter(Boolean)
|
|
19
|
+
.join("\n");
|
|
9
20
|
}
|
|
10
21
|
const { password } = credResult.credentials;
|
|
11
22
|
// Test IMAP
|
|
@@ -56,6 +67,7 @@ async function probeOne(accountId, config) {
|
|
|
56
67
|
`IMAP: ${config.imapHost}:${config.imapPort} (${config.imapSecurity}) — ${imapStatus}`,
|
|
57
68
|
`SMTP: ${config.smtpHost}:${config.smtpPort} (${config.smtpSecurity}) — ${smtpStatus}`,
|
|
58
69
|
lastConnectLine,
|
|
70
|
+
identityLine,
|
|
59
71
|
inboxInfo,
|
|
60
72
|
]
|
|
61
73
|
.filter(Boolean)
|
|
@@ -112,7 +124,15 @@ export async function emailStatus(params) {
|
|
|
112
124
|
blocks.push(multi ? `Mailbox: ${config.email}\n${body}` : body);
|
|
113
125
|
}
|
|
114
126
|
const header = multi ? `${configs.length} mailboxes attached.\n\n` : "";
|
|
127
|
+
// Task 2194. Computed from `configs`, the whole account, and not from
|
|
128
|
+
// `targets` — a mailbox-narrowed report must not hide the account's gap.
|
|
129
|
+
// Only multi-mailbox accounts have a gap: resolveConfig returns the sole
|
|
130
|
+
// mailbox on a single-mailbox account without any designation.
|
|
131
|
+
const noneDesignated = multi && !configs.some((c) => c.sendingIdentity === true);
|
|
132
|
+
const identityGap = noneDesignated
|
|
133
|
+
? `\n\nNo mailbox is designated as this account's sending identity, so a draft, send or reply that names no mailbox is refused rather than resolved. Ask the operator which address this account sends from, then run email-sending-identity-set with it.`
|
|
134
|
+
: "";
|
|
115
135
|
logOutcome("ok");
|
|
116
|
-
return header + blocks.join("\n\n");
|
|
136
|
+
return header + blocks.join("\n\n") + identityGap;
|
|
117
137
|
}
|
|
118
138
|
//# sourceMappingURL=email-status.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"email-status.js","sourceRoot":"","sources":["../../src/tools/email-status.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EAAE,eAAe,EAAE,mBAAmB,EACjD,uBAAuB,EAAE,yBAAyB,GAEnD,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,IAAI,MAAM,gBAAgB,CAAC;AACvC,OAAO,KAAK,IAAI,MAAM,gBAAgB,CAAC;AAOvC,mEAAmE;AACnE,KAAK,UAAU,QAAQ,CAAC,SAAiB,EAAE,MAAmB;IAC5D,MAAM,UAAU,GAAG,MAAM,eAAe,CAAC,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAClE,IAAI,OAAO,IAAI,UAAU,EAAE,CAAC;QAC1B,OAAO,UAAU,MAAM,CAAC,KAAK,MAAM,UAAU,CAAC,KAAK,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"email-status.js","sourceRoot":"","sources":["../../src/tools/email-status.ts"],"names":[],"mappings":"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"}
|
|
@@ -54,12 +54,18 @@ Every operational tool (`email-read`, `email-search`, `email-fetch-body`, `email
|
|
|
54
54
|
- `mailbox` given and configured: act on that mailbox.
|
|
55
55
|
- `mailbox` given but not configured: refused with `No mailbox <addr> is configured. Stored mailbox identities: [...]. Run email-setup for <addr>. This lists IMAP mailboxes only; if <addr> is a Microsoft 365 address, call outlook-mailbox-list.`
|
|
56
56
|
- `mailbox` omitted, exactly one mailbox configured: act on it (single-mailbox installs pass nothing).
|
|
57
|
-
- `mailbox` omitted, two or more configured
|
|
57
|
+
- `mailbox` omitted, two or more configured, one designated as the account's sending identity: act on the designated mailbox.
|
|
58
|
+
- `mailbox` omitted, two or more configured, none designated: refused with `Multiple mailboxes are configured and none is designated as this account's sending identity. Stored mailbox identities: [...]. Pass mailbox to choose one for this call, or run email-sending-identity-set to designate the address this account sends from, so calls that name no mailbox resolve it without guessing.`
|
|
59
|
+
- `mailbox` omitted, two or more designated: refused naming the designated addresses. The setter clears every sibling in one statement, so this state was written outside the plugin; electing one of them would be the silent pick the designation exists to remove.
|
|
58
60
|
|
|
59
61
|
Read the attached mailboxes with `email-status`, which lists every one, before naming a selector. To act on a message in a second inbox, pass that inbox's address as `mailbox` on the operating tool; there is no setup swap. The poll high-water mark (`lastFetchedUid`) and the pending `email-fetch` / `email-ingest` batch are per-mailbox, so triaging two inboxes never crosses their state.
|
|
60
62
|
|
|
61
63
|
`email-graph-query` is account-scoped (it reads stored archives, not a live mailbox) and takes no `mailbox` argument. Every credential load logs `[email] cred-resolve ... email=<addr> source=store`, naming the resolved mailbox, so a per-call selection is visible in the logs.
|
|
62
64
|
|
|
65
|
+
**Designating the sender: `email-sending-identity-set`.** An account holding two or more mailboxes has no default until one is designated. The setter takes one `mailbox`, resolves it through the same `resolveConfig` every operational tool uses (an address the account does not hold is refused naming the stored identities, and nothing is written), then designates it and removes the flag from every sibling in one statement — uniqueness is a property of the write, not of a check afterwards. It logs `[email-sending-identity-set] op=write accountId=<id8> mailbox=<addr> cleared=<n>`; `cleared=` is what makes that uniqueness claim auditable. Re-running `email-setup` on a designated mailbox preserves the designation, because `writeConfig` names the property in neither its `SET` nor its `REMOVE` list. The address must come from the operator: a routing rule, a signature or an inbound reconcile trigger each name an address for a different purpose, and reading one of those as the sending address is exactly the inference this tool exists to remove.
|
|
66
|
+
|
|
67
|
+
Every resolution that picks a mailbox logs `[email] op=identity-resolve accountId=<id8> mailbox=<addr> source=<explicit|sendingIdentity|sole>`, so a wrong-mailbox send is diagnosed from one line naming both the address and the route that chose it. Refusals log nothing here — they pick no mailbox, and each returns a typed error naming the stored identities. `email-status` is the standing check for the account that has never drafted: it marks the designated mailbox and states plainly when a multi-mailbox account has none.
|
|
68
|
+
|
|
63
69
|
## Reading and Searching
|
|
64
70
|
|
|
65
71
|
`email-read` and `email-search` return message metadata plus a short body preview (capped at 500 characters): UID, sender, subject, date, and the opening of the body. They are screening tools — use them to find a message, not to read it in full.
|
|
@@ -191,9 +197,11 @@ If neither the UID nor the Message-ID resolves a live draft, the prior draft is
|
|
|
191
197
|
- `email-signature.html` is the HTML signature block, appended to the message html.
|
|
192
198
|
- `email-signature.font` is an optional single-line CSS font-family; when present the html part is wrapped in one `font-family` div.
|
|
193
199
|
|
|
194
|
-
The plain-text signature is appended whenever it exists. The html signature
|
|
200
|
+
The plain-text signature is appended whenever it exists. The html signature is appended whenever it exists too: when the caller passed no html body, one is derived from the plain body — escaped, blank line to paragraph, single newline to line break — so the stored html signature has somewhere to land and the draft becomes `multipart/alternative`. The derivation reads the caller's body, not the text-signed one, so each MIME alternative carries exactly one sign-off. An account with no stored `.html` derives nothing and its drafts stay `text/plain`. The font wrap applies to whichever html body exists, derived or supplied, and has no plain-text analogue.
|
|
201
|
+
|
|
202
|
+
Each draft compose logs `[email-draft] op=signature accountId=<id8> text=<bool> html=<bool> derivedHtml=<bool> asset=<path>`, and each draft tool's own result names the parts that landed and the part the account has not stored. The result sentence is the proof: the log is unreachable from the tools a drafting agent holds. A part reported false means no file of that kind is stored, not that the append failed.
|
|
195
203
|
|
|
196
|
-
**Writing the files: `email-signature-set`.** Those three files are installed only by `email-signature-set`, which writes to the same directory the draft path reads, so a signature stored through it cannot land somewhere a draft would miss. Text and html are stored byte-for-byte; font is stored trimmed. **Omitting a parameter removes its file**, so a text-only call clears a stale `.html` rather than leaving it to keep being appended — pass every part that should survive on each call. Omitting is the only way to remove: an empty string is a value, so `text: ""` stores an empty signature and makes the draft
|
|
204
|
+
**Writing the files: `email-signature-set`.** Those three files are installed only by `email-signature-set`, which writes to the same directory the draft path reads, so a signature stored through it cannot land somewhere a draft would miss. Text and html are stored byte-for-byte; font is stored trimmed. **Omitting a parameter removes its file**, so a text-only call clears a stale `.html` rather than leaving it to keep being appended — pass every part that should survive on each call. Omitting is the only way to remove: an empty string is a value, so `text: ""` stores an empty signature and makes the draft report `plain text applied` while the recipient sees nothing. A call with no parameters at all is refused rather than treated as "erase everything", and an unresolvable account directory is refused before anything is touched. The write logs `[email-signature-set] op=write accountId=<id8> files=<written> removed=<removed>`. Until this tool shipped the loader had no writer at all, which is why accounts had no signature at all and agents hand-built them into draft bodies; see `skills/email-signature/SKILL.md` for the standing rules.
|
|
197
205
|
|
|
198
206
|
### Transient connection drops
|
|
199
207
|
|
|
@@ -131,6 +131,8 @@ Same as the reply flow with two differences:
|
|
|
131
131
|
|
|
132
132
|
Multi-recipient drafting: if the operator names a single person, use that address. If the operator names a group ("email the team", "everyone from yesterday's viewings"), ask which addresses to include — list candidates if you can resolve them from the graph, otherwise ask the operator to enumerate. Do not invent recipients.
|
|
133
133
|
|
|
134
|
+
**The sending mailbox is the account's, not yours to choose.** When the operator has not named a mailbox to send from, pass no `mailbox` and let the tool resolve the account's sending identity. Do not pick one, and do not write one into a brief for another agent. If the call is refused because the account has no designated sending identity, that refusal is the correct outcome: ask the operator which address they send from, then run `email-sending-identity-set` with their answer. An address that appears in a routing rule, a signature, a domain or an inbound trigger is named there for a different purpose and is not evidence of what the account sends from.
|
|
135
|
+
|
|
134
136
|
## Flow — save to Drafts instead of sending
|
|
135
137
|
|
|
136
138
|
When the operator's stated outcome is a reviewable, unsent email — signalled by intent like "draft it", "leave it in drafts", "don't send yet", "the same as last time but leave it in the draft box", "let me review before sending" — the approval step changes target: the approved draft goes to `email-draft`, not `email-send`/`email-reply`. Everything upstream (thread identification, voice conditioning, the present-and-edit loop) is identical.
|
|
@@ -183,6 +185,7 @@ Delete is move-to-Trash only. There is no permanent/hard delete, no delete-by-cr
|
|
|
183
185
|
| Situation | Behaviour |
|
|
184
186
|
|-----------|-----------|
|
|
185
187
|
| Multiple threads match the operator's description | Surface 3-5 candidates and ask. Never guess. |
|
|
188
|
+
| Account has two or more mailboxes and the operator named none | Pass no `mailbox`; the account's designated sending identity resolves it. If the call is refused because none is designated, ask the operator which address they send from and run `email-sending-identity-set`. Never infer the address. |
|
|
186
189
|
| CC / BCC in the original thread | Reply to sender only by default. Ask explicitly before copying others. |
|
|
187
190
|
| Recipient's contact record carries an always-CC or alternate address | Apply it to To/Cc in the draft and show it for approval. Explicit operator instruction on this send overrides it. |
|
|
188
191
|
| `replyAll` requested | Pass `replyAll: true` to `email-reply`. Otherwise omit (defaults false). |
|
|
@@ -10,9 +10,20 @@ Invoked from `specialists:personal-assistant`, or by the admin session directly.
|
|
|
10
10
|
## What success looks like
|
|
11
11
|
|
|
12
12
|
The operator's real signature is stored in the account, and every draft from then on carries it
|
|
13
|
-
byte-for-byte with no signature text the model wrote.
|
|
14
|
-
|
|
15
|
-
|
|
13
|
+
byte-for-byte with no signature text the model wrote.
|
|
14
|
+
|
|
15
|
+
**The proof is the draft tool's own result.** `email-draft` and `email-draft-edit` each end with one
|
|
16
|
+
of four sentences, naming what that draft actually carried:
|
|
17
|
+
|
|
18
|
+
- `Signature: plain text and HTML (body derived from the plain text) applied.`
|
|
19
|
+
- `Signature: plain text and HTML applied.`
|
|
20
|
+
- `Signature: plain text applied. No HTML signature is stored.`
|
|
21
|
+
- `Signature: none stored for this account.`
|
|
22
|
+
|
|
23
|
+
`email-draft` also logs `[email-draft] op=signature text=<bool> html=<bool> derivedHtml=<bool>
|
|
24
|
+
asset=<path>`, which says the same thing from the other side. It is corroboration, not the proof: that
|
|
25
|
+
log is unreachable from the tools a drafting agent holds. A claim that the signature is set, without
|
|
26
|
+
the result sentence, is not evidence.
|
|
16
27
|
|
|
17
28
|
## The convention
|
|
18
29
|
|
|
@@ -22,7 +33,7 @@ judgement in the path. It reads three files at the account root:
|
|
|
22
33
|
| File | Content | How it is applied |
|
|
23
34
|
|---|---|---|
|
|
24
35
|
| `email-signature.txt` | Plain-text signature | Appended to the plain-text body after a blank line, byte-for-byte |
|
|
25
|
-
| `email-signature.html` | HTML signature | Appended to the HTML body, byte-for-byte |
|
|
36
|
+
| `email-signature.html` | HTML signature | Appended to the HTML body, byte-for-byte. A draft composed with no HTML body gets one derived from its plain text, so a stored HTML signature always lands |
|
|
26
37
|
| `email-signature.font` | One CSS font-family value, e.g. `Georgia, serif` | Wraps the whole HTML body in a `font-family` div. HTML-only, no plain-text effect |
|
|
27
38
|
|
|
28
39
|
`email-signature-set` is the only sanctioned way to write them. It writes to the exact directory the
|
|
@@ -46,9 +57,9 @@ that should survive; a part left out has its file deleted, which is how a stale
|
|
|
46
57
|
cleared. A call with no parts at all is refused rather than treated as "erase everything".
|
|
47
58
|
|
|
48
59
|
**Omitting a key is the only way to remove a part.** An empty string is a value, so `text: ""` stores an
|
|
49
|
-
empty signature rather than clearing it: the file exists, the draft
|
|
60
|
+
empty signature rather than clearing it: the file exists, the draft reports `plain text applied`, and the
|
|
50
61
|
recipient sees a blank line where the sign-off should be. That is the one way to manufacture a false
|
|
51
|
-
`applied
|
|
62
|
+
`applied`, so never pass `""` to clear something — leave the key out.
|
|
52
63
|
|
|
53
64
|
**One signature per account.** There is no per-mailbox signature: the loader reads one account root.
|
|
54
65
|
An account whose mailboxes need different sign-offs is a gap to report, not something to work around
|
|
@@ -56,6 +67,13 @@ by putting the difference in a draft body.
|
|
|
56
67
|
|
|
57
68
|
## When a draft came out wrong
|
|
58
69
|
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
70
|
+
Read the draft's own result sentence. Each half names a stored file, not a failure:
|
|
71
|
+
|
|
72
|
+
- **`No plain text signature is stored`** — the account has no `email-signature.txt`.
|
|
73
|
+
- **`No HTML signature is stored`** — the account has no `email-signature.html`. This is why a draft
|
|
74
|
+
arrives without the logo or letterhead while still carrying the sign-off.
|
|
75
|
+
- **`Signature: none stored for this account`** — neither file is there.
|
|
76
|
+
|
|
77
|
+
In every case the fix is to install the missing part with `email-signature-set`, never to compensate
|
|
78
|
+
in the draft body. If a part is reported applied but its content is wrong, the stored file is wrong:
|
|
79
|
+
re-read the source of truth and set it again.
|
|
@@ -96,10 +96,13 @@ SS
|
|
|
96
96
|
exec /bin/sleep 0.02
|
|
97
97
|
SLEEP
|
|
98
98
|
|
|
99
|
-
# Stub Chromium: record the launch
|
|
99
|
+
# Stub Chromium: record the launch — its argv and the DISPLAY it inherited,
|
|
100
|
+
# so a test can assert HOW Chromium was launched, not just that it was
|
|
101
|
+
# (Task 1562 turned the virtual-mode launch headless). In "ready" mode open
|
|
102
|
+
# the CDP port.
|
|
100
103
|
cat > "$FAKE_BIN/chromium-stub" <<'STUB'
|
|
101
104
|
#!/usr/bin/env bash
|
|
102
|
-
echo "launch" >> "$STATE_DIR/chromium-calls"
|
|
105
|
+
echo "launch DISPLAY=${DISPLAY:-unset} $*" >> "$STATE_DIR/chromium-calls"
|
|
103
106
|
if [ "$(cat "$STATE_DIR/chromium-mode")" = "ready" ]; then
|
|
104
107
|
cat "$STATE_DIR/cdp-port" >> "$STATE_DIR/ports"
|
|
105
108
|
fi
|
|
@@ -209,11 +212,31 @@ case_native_noop() {
|
|
|
209
212
|
teardown
|
|
210
213
|
}
|
|
211
214
|
|
|
215
|
+
# --- Case 6: virtual-mode respawn launches Chromium HEADLESS -------------
|
|
216
|
+
# Task 1562. The respawned browser must not need an X display: `--headless=new`
|
|
217
|
+
# is present, the X11 ozone backend is not requested, and no DISPLAY is
|
|
218
|
+
# exported into the launch. Without this the respawn silently depends on
|
|
219
|
+
# Xtigervnc and the display stack can never be retired.
|
|
220
|
+
case_respawn_is_headless() {
|
|
221
|
+
echo "=== CASE 6: virtual-mode respawn launches Chromium headless ==="
|
|
222
|
+
setup; write_env virtual
|
|
223
|
+
set_ports "$RFB_PORT" # display up, CDP down → respawn
|
|
224
|
+
set_mode ready
|
|
225
|
+
run_liveness >/dev/null
|
|
226
|
+
local call; call="$(cat "$STATE_DIR/chromium-calls")"
|
|
227
|
+
assert "launch requests --headless=new" "$(echo "$call" | grep -q -- '--headless=new' && echo 1 || echo 0)"
|
|
228
|
+
assert "launch does not request x11 ozone" "$(echo "$call" | grep -q -- '--ozone-platform=x11' && echo 0 || echo 1)"
|
|
229
|
+
assert "launch inherits no DISPLAY" "$(echo "$call" | grep -q 'DISPLAY=unset' && echo 1 || echo 0)"
|
|
230
|
+
assert "launch keeps the brand CDP port" "$(echo "$call" | grep -q -- "--remote-debugging-port=$CDP_PORT" && echo 1 || echo 0)"
|
|
231
|
+
teardown
|
|
232
|
+
}
|
|
233
|
+
|
|
212
234
|
case_reachable_noop
|
|
213
235
|
case_down_respawns_ready
|
|
214
236
|
case_backoff_no_hotloop
|
|
215
237
|
case_cooldown_retries
|
|
216
238
|
case_native_noop
|
|
239
|
+
case_respawn_is_headless
|
|
217
240
|
|
|
218
241
|
echo ""
|
|
219
242
|
echo "==================================="
|
|
@@ -8,9 +8,15 @@
|
|
|
8
8
|
# Xtigervnc :${VNC_DISPLAY} — virtual X11 display per brand
|
|
9
9
|
# Xtigervnc -rfbport ${RFB_PORT} — RFB port per brand
|
|
10
10
|
# websockify :${WEBSOCKIFY_PORT} — WebSocket bridge per brand
|
|
11
|
-
# Chromium —
|
|
11
|
+
# Chromium — headless browser with --user-data-dir per brand
|
|
12
12
|
# CDP :${CDP_PORT} — browser plugin (browser-render) CDP endpoint per brand
|
|
13
13
|
#
|
|
14
|
+
# Task 1562: virtual-mode Chromium is HEADLESS. The X display, RFB port and
|
|
15
|
+
# websockify still boot, but no browser renders onto them and no surface reads
|
|
16
|
+
# them — every consumer (agent browser-* tools, the operator screencast viewer,
|
|
17
|
+
# the Claude sign-in browser) is a CDP client on ${CDP_PORT}. Retiring the three
|
|
18
|
+
# now-unread components, their ports and their apt deps is Task 2198.
|
|
19
|
+
#
|
|
14
20
|
# Brand isolation (Tasks 553 + 924): the X display number, Chromium profile,
|
|
15
21
|
# rfbport, websockify port, and CDP port are all brand-scoped so any number
|
|
16
22
|
# of brands on the same device run their full VNC stacks concurrently
|
|
@@ -27,7 +33,7 @@
|
|
|
27
33
|
# (/api/admin/actions/*) rather than an in-browser terminal.
|
|
28
34
|
#
|
|
29
35
|
# Display modes (DISPLAY_MODE env var, set by installer --display flag):
|
|
30
|
-
# virtual (default) — Chromium runs
|
|
36
|
+
# virtual (default) — Chromium runs headless; no display at all (Task 1562)
|
|
31
37
|
# native — Chromium runs on the login session's real display
|
|
32
38
|
# (discovered via loginctl, NOT from $DISPLAY which
|
|
33
39
|
# is poisoned by the systemd Environment=DISPLAY line)
|
|
@@ -263,7 +269,9 @@ wait_for_port() {
|
|
|
263
269
|
|
|
264
270
|
# Return 0 if a visible Chromium window is mapped on the given X display.
|
|
265
271
|
# Used as a log-only observability invariant after CDP comes up (callers do
|
|
266
|
-
# NOT gate on the result).
|
|
272
|
+
# NOT gate on the result). Native mode is its only caller since Task 1562 —
|
|
273
|
+
# virtual mode is headless and maps no window anywhere. Matches the WM_CLASS
|
|
274
|
+
# of both Chromium (Pi .deb,
|
|
267
275
|
# class "chromium") and Google Chrome (Noble, class "google-chrome") via the
|
|
268
276
|
# [Cc]hrom regex. Degrades to non-zero when xdotool is absent or the display
|
|
269
277
|
# is non-X11, so the caller logs the existing non-gating "no window visible"
|
|
@@ -322,19 +330,32 @@ discover_native_session() {
|
|
|
322
330
|
fi
|
|
323
331
|
}
|
|
324
332
|
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
333
|
+
# Virtual-mode Chromium: headless, driven entirely over CDP (Task 1562).
|
|
334
|
+
#
|
|
335
|
+
# Nothing reads pixels off an X display any more — the agent's browser-* tools
|
|
336
|
+
# and the operator's screencast viewer (Task 1561) are both CDP clients, and the
|
|
337
|
+
# Claude sign-in browser now reaches this same instance through the wrapper's
|
|
338
|
+
# CDP handover (writeChromiumWrapper, app/lib/vnc.ts) rather than by launching a
|
|
339
|
+
# second Chromium against the profile.
|
|
340
|
+
#
|
|
341
|
+
# DISPLAY and WAYLAND_DISPLAY are actively unset rather than merely omitted: the
|
|
342
|
+
# brand's edge.service stamps `Environment=DISPLAY=:${VNC_DISPLAY}`, so an
|
|
343
|
+
# inherited DISPLAY would otherwise reach Chromium and re-couple the headless
|
|
344
|
+
# browser to the X stack this task exists to decouple it from.
|
|
345
|
+
#
|
|
346
|
+
# `--window-size` still matters headless: it fixes the screencast frame
|
|
347
|
+
# dimensions the viewer renders.
|
|
348
|
+
start_chrome() {
|
|
328
349
|
# Brand-scoped Chromium kill: only this brand's profile-bound chromium.
|
|
329
350
|
pkill -f "chromium.*--user-data-dir=${CHROMIUM_PROFILE_DIR}" 2>/dev/null || true
|
|
330
351
|
sleep 0.3
|
|
331
352
|
|
|
332
353
|
mkdir -p "${CHROMIUM_PROFILE_DIR}"
|
|
333
|
-
log "Starting Chromium
|
|
354
|
+
log "Starting Chromium headless profile=${CHROMIUM_PROFILE_DIR} CDP=:${CDP_PORT}"
|
|
334
355
|
|
|
335
|
-
DISPLAY
|
|
356
|
+
env -u DISPLAY -u WAYLAND_DISPLAY "$CHROMIUM_BIN" \
|
|
357
|
+
--headless=new \
|
|
336
358
|
--user-data-dir="${CHROMIUM_PROFILE_DIR}" \
|
|
337
|
-
--ozone-platform=x11 \
|
|
338
359
|
--no-sandbox \
|
|
339
360
|
--test-type \
|
|
340
361
|
--disable-dev-shm-usage \
|
|
@@ -353,32 +374,19 @@ start_chrome_on() {
|
|
|
353
374
|
--noerrdialogs \
|
|
354
375
|
--metrics-recording-only \
|
|
355
376
|
--window-size=1280,800 \
|
|
356
|
-
--window-position=0,0 \
|
|
357
377
|
--remote-debugging-port="${CDP_PORT}" \
|
|
358
378
|
about:blank \
|
|
359
379
|
>> "$LOG_FILE" 2>&1 &
|
|
360
380
|
|
|
361
381
|
if wait_for_port "${CDP_PORT}"; then
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
# its window creation, so the failure mode is not currently reachable — but
|
|
365
|
-
# making the invariant visible now means future backend swaps (e.g.
|
|
366
|
-
# snap-installed Chromium on Ubuntu with different IPC) surface the drift
|
|
367
|
-
# in vnc-boot.log rather than as a silent-black iframe.
|
|
368
|
-
if check_window_on_display "${target_display}"; then
|
|
369
|
-
log "Chromium ready (${label}) with CDP on :${CDP_PORT} windowPresent=true"
|
|
370
|
-
else
|
|
371
|
-
log "WARNING: Chromium CDP up on :${CDP_PORT} but no window visible on ${target_display} (${label}) — observability-only, not gating"
|
|
372
|
-
fi
|
|
382
|
+
log "Chromium ready (headless) with CDP on :${CDP_PORT}"
|
|
383
|
+
echo "[vnc] op=chromium-headless-start cdp=:${CDP_PORT} outcome=ready"
|
|
373
384
|
else
|
|
374
|
-
log "ERROR: Chromium failed to start
|
|
385
|
+
log "ERROR: Chromium failed to start headless — CDP port ${CDP_PORT} not listening (browser-specialist degraded)"
|
|
386
|
+
echo "[vnc] op=chromium-headless-start cdp=:${CDP_PORT} outcome=failed"
|
|
375
387
|
fi
|
|
376
388
|
}
|
|
377
389
|
|
|
378
|
-
start_chrome() {
|
|
379
|
-
start_chrome_on "${VNC_DISPLAY}" "vnc"
|
|
380
|
-
}
|
|
381
|
-
|
|
382
390
|
# ---------------------------------------------------------------------------
|
|
383
391
|
# Retired in Task 287: the admin-UI terminal and browser-overlay surfaces
|
|
384
392
|
# are gone. This script still launches Chromium for legacy installs where
|
package/payload/platform/services/claude-session-manager/dist/account-dir-schema-reconcile.d.ts
CHANGED
|
@@ -15,7 +15,7 @@ export interface ReconcileResult extends ReconcileCounts {
|
|
|
15
15
|
/** The single per-run summary line body. A non-zero count is the standing signal
|
|
16
16
|
* that an agent authored folders the hard guards could not prevent. Pure
|
|
17
17
|
* formatter so the emitter and its test share one wording. */
|
|
18
|
-
export declare function formatReconcileLine(c: ReconcileCounts, homeMissing?: number, homeUnaudited?: number, agentDrift?: number): string;
|
|
18
|
+
export declare function formatReconcileLine(c: ReconcileCounts, homeMissing?: number, homeUnaudited?: number, agentDrift?: number, hooksMissing?: number, hooksUnaudited?: number): string;
|
|
19
19
|
/** Parse the fenced ```allowed-top-level block from an account's SCHEMA.md —
|
|
20
20
|
* the same structured set fs-schema-guard.sh parses with awk. Returns the
|
|
21
21
|
* entry names (blank lines dropped). An absent block yields an empty set. */
|
|
@@ -29,6 +29,29 @@ export interface ReconcileDeps {
|
|
|
29
29
|
accountsRoot: string;
|
|
30
30
|
logger: (line: string) => void;
|
|
31
31
|
}
|
|
32
|
+
/**
|
|
33
|
+
* Task 2196 — which of the required file-write fences this account's settings do
|
|
34
|
+
* not register, as `<matcher>:<hook filename>`.
|
|
35
|
+
*
|
|
36
|
+
* The cross-account refusal and the account-layout fences live in those hooks,
|
|
37
|
+
* so an account that does not register them is unfenced while every other signal
|
|
38
|
+
* reads clean: a hook that never runs emits nothing, which is precisely the
|
|
39
|
+
* state that cannot be seen by watching for its output.
|
|
40
|
+
*
|
|
41
|
+
* Returns null when settings.json is absent or unparseable, which the caller
|
|
42
|
+
* counts as "not audited" rather than "clean". Without that, an install where no
|
|
43
|
+
* account has settings reports hooks-missing=0 and reads as fenced.
|
|
44
|
+
*
|
|
45
|
+
* The matcher is compared for equality, which is the shape
|
|
46
|
+
* provision-account-dir.sh writes for all five. A settings file that reaches the
|
|
47
|
+
* same effect another way — a matcher-less catch-all entry, or a regex
|
|
48
|
+
* alternation — reads as missing here. That is intended: what this audits is
|
|
49
|
+
* whether the account carries the provisioned fence, and drift from the template
|
|
50
|
+
* is worth a line even when it happens to be equivalent.
|
|
51
|
+
*/
|
|
52
|
+
export declare function hookRegistration(accountDir: string): {
|
|
53
|
+
missing: string[];
|
|
54
|
+
} | null;
|
|
32
55
|
/** One reconcile pass over every account under the accounts root: one op=strays
|
|
33
56
|
* line naming the unaccounted-for entries of each account that has any, then the
|
|
34
57
|
* single summary line. An account is any child dir with an account.json (the
|
package/payload/platform/services/claude-session-manager/dist/account-dir-schema-reconcile.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"account-dir-schema-reconcile.d.ts","sourceRoot":"","sources":["../src/account-dir-schema-reconcile.ts"],"names":[],"mappings":"AA8EA,MAAM,WAAW,eAAe;IAC9B,aAAa,EAAE,MAAM,CAAA;IACrB,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,eAAgB,SAAQ,eAAe;IACtD;;;;;0CAKsC;IACtC,UAAU,EAAE,MAAM,EAAE,CAAA;CACrB;AAED;;+DAE+D;AAC/D,wBAAgB,mBAAmB,CACjC,CAAC,EAAE,eAAe,EAClB,WAAW,SAAI,EACf,aAAa,SAAI,EACjB,UAAU,SAAI,
|
|
1
|
+
{"version":3,"file":"account-dir-schema-reconcile.d.ts","sourceRoot":"","sources":["../src/account-dir-schema-reconcile.ts"],"names":[],"mappings":"AA8EA,MAAM,WAAW,eAAe;IAC9B,aAAa,EAAE,MAAM,CAAA;IACrB,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,eAAgB,SAAQ,eAAe;IACtD;;;;;0CAKsC;IACtC,UAAU,EAAE,MAAM,EAAE,CAAA;CACrB;AAED;;+DAE+D;AAC/D,wBAAgB,mBAAmB,CACjC,CAAC,EAAE,eAAe,EAClB,WAAW,SAAI,EACf,aAAa,SAAI,EACjB,UAAU,SAAI,EACd,YAAY,SAAI,EAChB,cAAc,SAAI,GACjB,MAAM,CAIR;AAED;;8EAE8E;AAC9E,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAcpE;AA+ED;;;8EAG8E;AAC9E,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,eAAe,CAoCpE;AAED,MAAM,WAAW,aAAa;IAC5B,YAAY,EAAE,MAAM,CAAA;IACpB,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;CAC/B;AAqED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,GAAG,IAAI,CA6BjF;AAED;;;;;;;;;;;;;iCAaiC;AACjC,wBAAgB,YAAY,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI,CA6EtD;AAED,MAAM,WAAW,yBAAyB;IACxC,KAAK,IAAI,IAAI,CAAA;IACb,IAAI,IAAI,IAAI,CAAA;CACb;AAED;oDACoD;AACpD,wBAAgB,+BAA+B,CAC7C,IAAI,EAAE,aAAa,GAAG;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,GAC3C,yBAAyB,CAiB3B"}
|
package/payload/platform/services/claude-session-manager/dist/account-dir-schema-reconcile.js
CHANGED
|
@@ -73,9 +73,10 @@ const FILE_NAME_RE = /^[a-z0-9-]+(\.[a-z0-9-]+)*$/;
|
|
|
73
73
|
/** The single per-run summary line body. A non-zero count is the standing signal
|
|
74
74
|
* that an agent authored folders the hard guards could not prevent. Pure
|
|
75
75
|
* formatter so the emitter and its test share one wording. */
|
|
76
|
-
export function formatReconcileLine(c, homeMissing = 0, homeUnaudited = 0, agentDrift = 0) {
|
|
76
|
+
export function formatReconcileLine(c, homeMissing = 0, homeUnaudited = 0, agentDrift = 0, hooksMissing = 0, hooksUnaudited = 0) {
|
|
77
77
|
return `${TAG} stray-top-level=${c.strayTopLevel} over-deep=${c.overDeep} bad-name=${c.badName}`
|
|
78
|
-
+ ` home-missing=${homeMissing} home-unaudited=${homeUnaudited} agent-drift=${agentDrift}
|
|
78
|
+
+ ` home-missing=${homeMissing} home-unaudited=${homeUnaudited} agent-drift=${agentDrift}`
|
|
79
|
+
+ ` hooks-missing=${hooksMissing} hooks-unaudited=${hooksUnaudited}`;
|
|
79
80
|
}
|
|
80
81
|
/** Parse the fenced ```allowed-top-level block from an account's SCHEMA.md —
|
|
81
82
|
* the same structured set fs-schema-guard.sh parses with awk. Returns the
|
|
@@ -283,6 +284,70 @@ function agentParity(accountDir) {
|
|
|
283
284
|
const stillOnDisk = disabled.filter((n) => existsSync(join(accountDir, 'specialists', 'agents', n)));
|
|
284
285
|
return { disabled: disabled.length, stillOnDisk };
|
|
285
286
|
}
|
|
287
|
+
/** The hook entries that fence an account's file writes: the path guard on each
|
|
288
|
+
* path-bearing tool, and the Bash snapshot pair. Each row is
|
|
289
|
+
* [settings event, matcher, hook filename]. */
|
|
290
|
+
const REQUIRED_HOOKS = [
|
|
291
|
+
['PreToolUse', 'Write', 'fs-schema-guard.sh'],
|
|
292
|
+
['PreToolUse', 'Edit', 'fs-schema-guard.sh'],
|
|
293
|
+
['PreToolUse', 'NotebookEdit', 'fs-schema-guard.sh'],
|
|
294
|
+
['PreToolUse', 'Bash', 'fs-schema-guard-bash-pre.sh'],
|
|
295
|
+
['PostToolUse', 'Bash', 'fs-schema-guard-bash-post.sh'],
|
|
296
|
+
];
|
|
297
|
+
/**
|
|
298
|
+
* Task 2196 — which of the required file-write fences this account's settings do
|
|
299
|
+
* not register, as `<matcher>:<hook filename>`.
|
|
300
|
+
*
|
|
301
|
+
* The cross-account refusal and the account-layout fences live in those hooks,
|
|
302
|
+
* so an account that does not register them is unfenced while every other signal
|
|
303
|
+
* reads clean: a hook that never runs emits nothing, which is precisely the
|
|
304
|
+
* state that cannot be seen by watching for its output.
|
|
305
|
+
*
|
|
306
|
+
* Returns null when settings.json is absent or unparseable, which the caller
|
|
307
|
+
* counts as "not audited" rather than "clean". Without that, an install where no
|
|
308
|
+
* account has settings reports hooks-missing=0 and reads as fenced.
|
|
309
|
+
*
|
|
310
|
+
* The matcher is compared for equality, which is the shape
|
|
311
|
+
* provision-account-dir.sh writes for all five. A settings file that reaches the
|
|
312
|
+
* same effect another way — a matcher-less catch-all entry, or a regex
|
|
313
|
+
* alternation — reads as missing here. That is intended: what this audits is
|
|
314
|
+
* whether the account carries the provisioned fence, and drift from the template
|
|
315
|
+
* is worth a line even when it happens to be equivalent.
|
|
316
|
+
*/
|
|
317
|
+
export function hookRegistration(accountDir) {
|
|
318
|
+
let raw;
|
|
319
|
+
try {
|
|
320
|
+
raw = readFileSync(join(accountDir, '.claude', 'settings.json'), 'utf8');
|
|
321
|
+
}
|
|
322
|
+
catch {
|
|
323
|
+
return null;
|
|
324
|
+
}
|
|
325
|
+
let hooks;
|
|
326
|
+
try {
|
|
327
|
+
hooks = JSON.parse(raw).hooks;
|
|
328
|
+
}
|
|
329
|
+
catch {
|
|
330
|
+
return null;
|
|
331
|
+
}
|
|
332
|
+
const missing = [];
|
|
333
|
+
for (const [event, matcher, hookFile] of REQUIRED_HOOKS) {
|
|
334
|
+
const entries = hooks && typeof hooks === 'object'
|
|
335
|
+
? hooks[event]
|
|
336
|
+
: undefined;
|
|
337
|
+
const found = Array.isArray(entries) && entries.some((e) => {
|
|
338
|
+
const entry = e;
|
|
339
|
+
if (entry.matcher !== matcher)
|
|
340
|
+
return false;
|
|
341
|
+
return Array.isArray(entry.hooks) && entry.hooks.some((h) => {
|
|
342
|
+
const cmd = h.command;
|
|
343
|
+
return typeof cmd === 'string' && cmd.includes(hookFile);
|
|
344
|
+
});
|
|
345
|
+
});
|
|
346
|
+
if (!found)
|
|
347
|
+
missing.push(`${matcher}:${hookFile}`);
|
|
348
|
+
}
|
|
349
|
+
return { missing };
|
|
350
|
+
}
|
|
286
351
|
/** One reconcile pass over every account under the accounts root: one op=strays
|
|
287
352
|
* line naming the unaccounted-for entries of each account that has any, then the
|
|
288
353
|
* single summary line. An account is any child dir with an account.json (the
|
|
@@ -312,6 +377,13 @@ export function runReconcile(deps) {
|
|
|
312
377
|
// that the check ran and found nothing, which is what makes the absence of an
|
|
313
378
|
// op=agent-parity line readable as "clean" rather than "never audited".
|
|
314
379
|
let agentDrift = 0;
|
|
380
|
+
// Task 2196 — per-run total of required file-write fences no account
|
|
381
|
+
// registers, and the count of accounts whose settings could not be read at
|
|
382
|
+
// all. hooks-missing=0 with hooks-unaudited=0 on the summary line is the
|
|
383
|
+
// per-cycle proof the fence is wired everywhere; either being non-zero means
|
|
384
|
+
// some account is unfenced or unchecked.
|
|
385
|
+
let hooksMissing = 0;
|
|
386
|
+
let hooksUnaudited = 0;
|
|
315
387
|
let entries;
|
|
316
388
|
try {
|
|
317
389
|
entries = readdirSync(deps.accountsRoot);
|
|
@@ -350,6 +422,15 @@ export function runReconcile(deps) {
|
|
|
350
422
|
`stillOnDisk=${agents.stillOnDisk.join(',')}`);
|
|
351
423
|
agentDrift += agents.stillOnDisk.length;
|
|
352
424
|
}
|
|
425
|
+
// Task 2196 — named only when a fence is unregistered, mirroring the lines
|
|
426
|
+
// above. The per-cycle heartbeat is hooks-missing= on the summary line.
|
|
427
|
+
const reg = hookRegistration(accountDir);
|
|
428
|
+
if (!reg)
|
|
429
|
+
hooksUnaudited++;
|
|
430
|
+
if (reg && reg.missing.length > 0) {
|
|
431
|
+
deps.logger(`${TAG} op=hook-registration account=${entry} missing=${reg.missing.join(',')}`);
|
|
432
|
+
hooksMissing += reg.missing.length;
|
|
433
|
+
}
|
|
353
434
|
total.strayTopLevel += c.strayTopLevel;
|
|
354
435
|
total.overDeep += c.overDeep;
|
|
355
436
|
total.badName += c.badName;
|
|
@@ -358,7 +439,7 @@ export function runReconcile(deps) {
|
|
|
358
439
|
// best-effort: skip an account that throws unexpectedly
|
|
359
440
|
}
|
|
360
441
|
}
|
|
361
|
-
deps.logger(formatReconcileLine(total, homeMissing, homeUnaudited, agentDrift));
|
|
442
|
+
deps.logger(formatReconcileLine(total, homeMissing, homeUnaudited, agentDrift, hooksMissing, hooksUnaudited));
|
|
362
443
|
}
|
|
363
444
|
/** Standing periodic reconcile. Unref'd interval so it never holds the process
|
|
364
445
|
* open; each tick re-runs the pass best-effort. */
|
package/payload/platform/services/claude-session-manager/dist/account-dir-schema-reconcile.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"account-dir-schema-reconcile.js","sourceRoot":"","sources":["../src/account-dir-schema-reconcile.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"account-dir-schema-reconcile.js","sourceRoot":"","sources":["../src/account-dir-schema-reconcile.ts"],"names":[],"mappings":"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"}
|