@rubytech/create-realagent-code 0.1.590 → 0.1.591
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/skills/whats-new/SKILL.md +9 -0
- package/payload/platform/plugins/outlook/.claude-plugin/plugin.json +1 -1
- package/payload/platform/plugins/outlook/PLUGIN.md +6 -1
- package/payload/platform/plugins/outlook/mcp/dist/__tests__/mail-gate-probe.test.d.ts +2 -0
- package/payload/platform/plugins/outlook/mcp/dist/__tests__/mail-gate-probe.test.d.ts.map +1 -0
- package/payload/platform/plugins/outlook/mcp/dist/__tests__/mail-gate-probe.test.js +75 -0
- package/payload/platform/plugins/outlook/mcp/dist/__tests__/mail-gate-probe.test.js.map +1 -0
- package/payload/platform/plugins/outlook/mcp/dist/index.js +14 -0
- package/payload/platform/plugins/outlook/mcp/dist/index.js.map +1 -1
- package/payload/platform/plugins/outlook/mcp/dist/tools/mail-gate-probe.d.ts +33 -0
- package/payload/platform/plugins/outlook/mcp/dist/tools/mail-gate-probe.d.ts.map +1 -0
- package/payload/platform/plugins/outlook/mcp/dist/tools/mail-gate-probe.js +32 -0
- package/payload/platform/plugins/outlook/mcp/dist/tools/mail-gate-probe.js.map +1 -0
- package/payload/platform/plugins/scheduling/PLUGIN.md +8 -2
- package/payload/platform/plugins/scheduling/mcp/dist/index.js +2 -2
- package/payload/platform/plugins/scheduling/mcp/dist/index.js.map +1 -1
- package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-gate-write.test.js +318 -1
- package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-gate-write.test.js.map +1 -1
- package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/scheduling-gate.test.js +452 -21
- package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/scheduling-gate.test.js.map +1 -1
- package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-event.d.ts +61 -0
- package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-event.d.ts.map +1 -1
- package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-event.js +141 -1
- package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-event.js.map +1 -1
- package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-update.d.ts.map +1 -1
- package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-update.js +4 -1
- package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-update.js.map +1 -1
- package/payload/platform/plugins/scheduling/mcp/dist/tools/scheduling-gate.d.ts +215 -15
- package/payload/platform/plugins/scheduling/mcp/dist/tools/scheduling-gate.d.ts.map +1 -1
- package/payload/platform/plugins/scheduling/mcp/dist/tools/scheduling-gate.js +353 -29
- package/payload/platform/plugins/scheduling/mcp/dist/tools/scheduling-gate.js.map +1 -1
- package/payload/platform/scripts/check-specialist-tool-surface.mjs +15 -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/server/public/activity.html +6 -6
- package/payload/server/public/agents.html +5 -5
- package/payload/server/public/assets/{AdminLoginScreens-CemYu7ho.js → AdminLoginScreens-dBZJlMbp.js} +1 -1
- package/payload/server/public/assets/AdminLoginScreens-dBZJlMbp.js.br +0 -0
- package/payload/server/public/assets/AdminLoginScreens-dBZJlMbp.js.gz +0 -0
- package/payload/server/public/assets/{AdminShell-B5vEeSLw.js → AdminShell-D94sgtsb.js} +1 -1
- package/payload/server/public/assets/AdminShell-D94sgtsb.js.br +0 -0
- package/payload/server/public/assets/AdminShell-D94sgtsb.js.gz +0 -0
- package/payload/server/public/assets/{activity-BHSuZrqG.js → activity-D6NEUvT7.js} +1 -1
- package/payload/server/public/assets/activity-D6NEUvT7.js.br +0 -0
- package/payload/server/public/assets/activity-D6NEUvT7.js.gz +0 -0
- package/payload/server/public/assets/{admin-DnvauP59.js → admin-BluqXSKn.js} +1 -1
- package/payload/server/public/assets/admin-BluqXSKn.js.br +0 -0
- package/payload/server/public/assets/admin-BluqXSKn.js.gz +0 -0
- package/payload/server/public/assets/{agents-CwTJjfyV.js → agents-D_6V66dr.js} +1 -1
- package/payload/server/public/assets/agents-D_6V66dr.js.br +0 -0
- package/payload/server/public/assets/agents-D_6V66dr.js.gz +0 -0
- package/payload/server/public/assets/{browser-D4yjnKEH.js → browser-Bz9s6ztS.js} +1 -1
- package/payload/server/public/assets/browser-Bz9s6ztS.js.br +0 -0
- package/payload/server/public/assets/browser-Bz9s6ztS.js.gz +0 -0
- package/payload/server/public/assets/{calendar-DUi1XFyY.js → calendar-D5OCrmwA.js} +1 -1
- package/payload/server/public/assets/calendar-D5OCrmwA.js.br +0 -0
- package/payload/server/public/assets/calendar-D5OCrmwA.js.gz +0 -0
- package/payload/server/public/assets/chat-CjlbEzZ-.js +1 -0
- package/payload/server/public/assets/chat-CjlbEzZ-.js.br +1 -0
- package/payload/server/public/assets/chat-CjlbEzZ-.js.gz +0 -0
- package/payload/server/public/assets/chevron-left-b_r2jNvg.js +1 -0
- package/payload/server/public/assets/chevron-left-b_r2jNvg.js.br +0 -0
- package/payload/server/public/assets/clock-D8tMbEZD.js +1 -0
- package/payload/server/public/assets/clock-D8tMbEZD.js.br +0 -0
- package/payload/server/public/assets/clock-D8tMbEZD.js.gz +0 -0
- package/payload/server/public/assets/{copy-Bw2h4ofb.js → copy-CXBu2lHL.js} +1 -1
- package/payload/server/public/assets/copy-CXBu2lHL.js.br +0 -0
- package/payload/server/public/assets/copy-CXBu2lHL.js.gz +0 -0
- package/payload/server/public/assets/data-ChHg_Lq9.js +1 -0
- package/payload/server/public/assets/data-ChHg_Lq9.js.br +0 -0
- package/payload/server/public/assets/data-ChHg_Lq9.js.gz +0 -0
- package/payload/server/public/assets/{field-BS-mu5Jx.js → field-D4fXu_SP.js} +1 -1
- package/payload/server/public/assets/field-D4fXu_SP.js.br +0 -0
- package/payload/server/public/assets/field-D4fXu_SP.js.gz +0 -0
- package/payload/server/public/assets/{file-text-xUlDn7ui.js → file-text-BxZ1UMcQ.js} +1 -1
- package/payload/server/public/assets/file-text-BxZ1UMcQ.js.br +0 -0
- package/payload/server/public/assets/file-text-BxZ1UMcQ.js.gz +0 -0
- package/payload/server/public/assets/{graph-DEEXiQLx.js → graph-DMleOCBZ.js} +1 -1
- package/payload/server/public/assets/graph-DMleOCBZ.js.br +0 -0
- package/payload/server/public/assets/graph-DMleOCBZ.js.gz +0 -0
- package/payload/server/public/assets/{graph-labels-F6hQJKCn.js → graph-labels-BHapdrTm.js} +1 -1
- package/payload/server/public/assets/graph-labels-BHapdrTm.js.br +0 -0
- package/payload/server/public/assets/graph-labels-BHapdrTm.js.gz +0 -0
- package/payload/server/public/assets/{jsx-runtime-DDrveXI8.css → jsx-runtime-gqFnq1MC.css} +1 -1
- package/payload/server/public/assets/jsx-runtime-gqFnq1MC.css.br +0 -0
- package/payload/server/public/assets/{jsx-runtime-DDrveXI8.css.gz → jsx-runtime-gqFnq1MC.css.gz} +0 -0
- package/payload/server/public/assets/{operator-CkWK9uRB.js → operator-BpZTRiga.js} +1 -1
- package/payload/server/public/assets/operator-BpZTRiga.js.br +0 -0
- package/payload/server/public/assets/operator-BpZTRiga.js.gz +0 -0
- package/payload/server/public/assets/{page-Dh6fCuUi.js → page-CsHWZZ0U.js} +1 -1
- package/payload/server/public/assets/page-CsHWZZ0U.js.br +0 -0
- package/payload/server/public/assets/page-CsHWZZ0U.js.gz +0 -0
- package/payload/server/public/assets/{page-DbWIOK60.js → page-Dczx6CPP.js} +1 -1
- package/payload/server/public/assets/page-Dczx6CPP.js.br +0 -0
- package/payload/server/public/assets/page-Dczx6CPP.js.gz +0 -0
- package/payload/server/public/assets/play-D_xdb6gy.js +1 -0
- package/payload/server/public/assets/play-D_xdb6gy.js.br +0 -0
- package/payload/server/public/assets/play-D_xdb6gy.js.gz +0 -0
- package/payload/server/public/assets/{public-DmD6vvFM.js → public-BzpELWaZ.js} +1 -1
- package/payload/server/public/assets/public-BzpELWaZ.js.br +0 -0
- package/payload/server/public/assets/public-BzpELWaZ.js.gz +0 -0
- package/payload/server/public/assets/{rotate-ccw-BDdOWTDl.js → rotate-ccw-Bkpst1na.js} +1 -1
- package/payload/server/public/assets/rotate-ccw-Bkpst1na.js.br +0 -0
- package/payload/server/public/assets/rotate-ccw-Bkpst1na.js.gz +0 -0
- package/payload/server/public/assets/{routines-CZoKUK0p.js → routines-Cmuf8pPP.js} +2 -2
- package/payload/server/public/assets/routines-Cmuf8pPP.js.br +0 -0
- package/payload/server/public/assets/routines-Cmuf8pPP.js.gz +0 -0
- package/payload/server/public/assets/{skills-D0yS0qLX.js → skills-Bfq3Pbw-.js} +1 -1
- package/payload/server/public/assets/skills-Bfq3Pbw-.js.br +0 -0
- package/payload/server/public/assets/skills-Bfq3Pbw-.js.gz +0 -0
- package/payload/server/public/assets/{tasks-Dtn1uDRY.js → tasks-nyWLrolq.js} +1 -1
- package/payload/server/public/assets/tasks-nyWLrolq.js.br +0 -0
- package/payload/server/public/assets/tasks-nyWLrolq.js.gz +0 -0
- package/payload/server/public/assets/{triangle-alert-DN-Eswuf.js → triangle-alert-DkENIQJ6.js} +1 -1
- package/payload/server/public/assets/triangle-alert-DkENIQJ6.js.br +0 -0
- package/payload/server/public/assets/triangle-alert-DkENIQJ6.js.gz +0 -0
- package/payload/server/public/assets/{useCopyFeedback-BmOZr_Mw.js → useCopyFeedback-DmNjbXe9.js} +1 -1
- package/payload/server/public/assets/useCopyFeedback-DmNjbXe9.js.br +1 -0
- package/payload/server/public/assets/useCopyFeedback-DmNjbXe9.js.gz +0 -0
- package/payload/server/public/assets/{useMediaQuery-fFM7rxUD.js → useMediaQuery-DL-C1y_F.js} +1 -1
- package/payload/server/public/assets/useMediaQuery-DL-C1y_F.js.br +0 -0
- package/payload/server/public/assets/useMediaQuery-DL-C1y_F.js.gz +0 -0
- package/payload/server/public/assets/{useVoiceRecorder-D0MWFIde.js → useVoiceRecorder-DseLVULD.js} +1 -1
- package/payload/server/public/assets/useVoiceRecorder-DseLVULD.js.br +0 -0
- package/payload/server/public/assets/useVoiceRecorder-DseLVULD.js.gz +0 -0
- package/payload/server/public/assets/{wrench-C-yn7q1Q.js → wrench-C7tdp6z9.js} +1 -1
- package/payload/server/public/assets/wrench-C7tdp6z9.js.br +0 -0
- package/payload/server/public/assets/wrench-C7tdp6z9.js.gz +0 -0
- package/payload/server/public/browser.html +5 -5
- package/payload/server/public/calendar.html +8 -8
- package/payload/server/public/chat.html +14 -14
- package/payload/server/public/data.html +12 -12
- package/payload/server/public/field.html +3 -3
- package/payload/server/public/graph.html +10 -10
- package/payload/server/public/index.html +14 -14
- package/payload/server/public/operator.html +16 -16
- package/payload/server/public/public.html +14 -14
- package/payload/server/public/routines.html +8 -8
- package/payload/server/public/skills.html +6 -6
- package/payload/server/public/tasks.html +7 -7
- package/payload/server/server.js +41 -2
- package/payload/server/public/assets/AdminLoginScreens-CemYu7ho.js.br +0 -0
- package/payload/server/public/assets/AdminLoginScreens-CemYu7ho.js.gz +0 -0
- package/payload/server/public/assets/AdminShell-B5vEeSLw.js.br +0 -0
- package/payload/server/public/assets/AdminShell-B5vEeSLw.js.gz +0 -0
- package/payload/server/public/assets/activity-BHSuZrqG.js.br +0 -0
- package/payload/server/public/assets/activity-BHSuZrqG.js.gz +0 -0
- package/payload/server/public/assets/admin-DnvauP59.js.br +0 -0
- package/payload/server/public/assets/admin-DnvauP59.js.gz +0 -0
- package/payload/server/public/assets/agents-CwTJjfyV.js.br +0 -0
- package/payload/server/public/assets/agents-CwTJjfyV.js.gz +0 -0
- package/payload/server/public/assets/browser-D4yjnKEH.js.br +0 -0
- package/payload/server/public/assets/browser-D4yjnKEH.js.gz +0 -0
- package/payload/server/public/assets/calendar-DUi1XFyY.js.br +0 -0
- package/payload/server/public/assets/calendar-DUi1XFyY.js.gz +0 -0
- package/payload/server/public/assets/chat-BJ1p4kuh.js +0 -1
- package/payload/server/public/assets/chat-BJ1p4kuh.js.br +0 -1
- package/payload/server/public/assets/chat-BJ1p4kuh.js.gz +0 -0
- package/payload/server/public/assets/chevron-left-Ctw-3JsV.js +0 -1
- package/payload/server/public/assets/chevron-left-Ctw-3JsV.js.br +0 -0
- package/payload/server/public/assets/clock-BLOp42yY.js +0 -1
- package/payload/server/public/assets/clock-BLOp42yY.js.br +0 -0
- package/payload/server/public/assets/clock-BLOp42yY.js.gz +0 -0
- package/payload/server/public/assets/copy-Bw2h4ofb.js.br +0 -0
- package/payload/server/public/assets/copy-Bw2h4ofb.js.gz +0 -0
- package/payload/server/public/assets/data-uR7BZKVU.js +0 -1
- package/payload/server/public/assets/data-uR7BZKVU.js.br +0 -0
- package/payload/server/public/assets/data-uR7BZKVU.js.gz +0 -0
- package/payload/server/public/assets/field-BS-mu5Jx.js.br +0 -0
- package/payload/server/public/assets/field-BS-mu5Jx.js.gz +0 -0
- package/payload/server/public/assets/file-text-xUlDn7ui.js.br +0 -0
- package/payload/server/public/assets/file-text-xUlDn7ui.js.gz +0 -0
- package/payload/server/public/assets/graph-DEEXiQLx.js.br +0 -0
- package/payload/server/public/assets/graph-DEEXiQLx.js.gz +0 -0
- package/payload/server/public/assets/graph-labels-F6hQJKCn.js.br +0 -0
- package/payload/server/public/assets/graph-labels-F6hQJKCn.js.gz +0 -0
- package/payload/server/public/assets/jsx-runtime-DDrveXI8.css.br +0 -0
- package/payload/server/public/assets/operator-CkWK9uRB.js.br +0 -0
- package/payload/server/public/assets/operator-CkWK9uRB.js.gz +0 -0
- package/payload/server/public/assets/page-DbWIOK60.js.br +0 -0
- package/payload/server/public/assets/page-DbWIOK60.js.gz +0 -0
- package/payload/server/public/assets/page-Dh6fCuUi.js.br +0 -0
- package/payload/server/public/assets/page-Dh6fCuUi.js.gz +0 -0
- package/payload/server/public/assets/play-fy3tdi7M.js +0 -1
- package/payload/server/public/assets/play-fy3tdi7M.js.br +0 -0
- package/payload/server/public/assets/play-fy3tdi7M.js.gz +0 -0
- package/payload/server/public/assets/public-DmD6vvFM.js.br +0 -0
- package/payload/server/public/assets/public-DmD6vvFM.js.gz +0 -0
- package/payload/server/public/assets/rotate-ccw-BDdOWTDl.js.br +0 -0
- package/payload/server/public/assets/rotate-ccw-BDdOWTDl.js.gz +0 -0
- package/payload/server/public/assets/routines-CZoKUK0p.js.br +0 -0
- package/payload/server/public/assets/routines-CZoKUK0p.js.gz +0 -0
- package/payload/server/public/assets/skills-D0yS0qLX.js.br +0 -0
- package/payload/server/public/assets/skills-D0yS0qLX.js.gz +0 -0
- package/payload/server/public/assets/tasks-Dtn1uDRY.js.br +0 -0
- package/payload/server/public/assets/tasks-Dtn1uDRY.js.gz +0 -0
- package/payload/server/public/assets/triangle-alert-DN-Eswuf.js.br +0 -0
- package/payload/server/public/assets/triangle-alert-DN-Eswuf.js.gz +0 -0
- package/payload/server/public/assets/useCopyFeedback-BmOZr_Mw.js.br +0 -0
- package/payload/server/public/assets/useCopyFeedback-BmOZr_Mw.js.gz +0 -0
- package/payload/server/public/assets/useMediaQuery-fFM7rxUD.js.br +0 -0
- package/payload/server/public/assets/useMediaQuery-fFM7rxUD.js.gz +0 -0
- package/payload/server/public/assets/useVoiceRecorder-D0MWFIde.js.br +0 -0
- package/payload/server/public/assets/useVoiceRecorder-D0MWFIde.js.gz +0 -0
- package/payload/server/public/assets/wrench-C-yn7q1Q.js.br +0 -0
- package/payload/server/public/assets/wrench-C-yn7q1Q.js.gz +0 -0
- /package/payload/server/public/assets/{jsx-runtime-DXWyHqht.js → jsx-runtime-BcrVQeV-.js} +0 -0
- /package/payload/server/public/assets/{jsx-runtime-DXWyHqht.js.br → jsx-runtime-BcrVQeV-.js.br} +0 -0
- /package/payload/server/public/assets/{jsx-runtime-DXWyHqht.js.gz → jsx-runtime-BcrVQeV-.js.gz} +0 -0
|
@@ -21,6 +21,7 @@
|
|
|
21
21
|
import { createHash } from "node:crypto";
|
|
22
22
|
import { mkdirSync, readFileSync, writeFileSync } from "node:fs";
|
|
23
23
|
import { dirname, resolve } from "node:path";
|
|
24
|
+
import { spawnProviderCall } from "../lib/connector-freebusy.js";
|
|
24
25
|
import { getSession } from "../lib/neo4j.js";
|
|
25
26
|
/**
|
|
26
27
|
* Task 2653 — the accepted `type` values, in one place.
|
|
@@ -32,6 +33,39 @@ import { getSession } from "../lib/neo4j.js";
|
|
|
32
33
|
* becomes a type the prober cannot answer.
|
|
33
34
|
*/
|
|
34
35
|
export const ACCEPTED_CHECK_TYPES = ["mail", "d1", "whatsapp", "calendar", "telegram"];
|
|
36
|
+
/**
|
|
37
|
+
* Task 2657 — the accepted `provider` values on a `mail` check, in one place.
|
|
38
|
+
*
|
|
39
|
+
* The same single-sourcing `ACCEPTED_CHECK_TYPES` has: `probe()`'s mail arm
|
|
40
|
+
* selects on it, and `validateGate` (`schedule-event.ts`) refuses anything
|
|
41
|
+
* outside it at write time. A second hand-maintained copy is how a provider the
|
|
42
|
+
* writer accepts becomes a provider the prober cannot answer.
|
|
43
|
+
*/
|
|
44
|
+
export const ACCEPTED_MAIL_PROVIDERS = ["imap", "outlook"];
|
|
45
|
+
/**
|
|
46
|
+
* Task 2662 — every key each check type's prober actually reads.
|
|
47
|
+
*
|
|
48
|
+
* `checks` is `z.array(z.record(z.unknown()))`, so before this any other key was
|
|
49
|
+
* accepted and dropped. An operator passed a `botId` to a telegram check and
|
|
50
|
+
* watched it report work with the field discarded, then passed a bot id that
|
|
51
|
+
* does not exist and watched it report work again. A gate that looks scoped and
|
|
52
|
+
* is not is worse than one that is refused, because nothing anywhere says so.
|
|
53
|
+
*
|
|
54
|
+
* This REVERSES Task 2657's narrower decision, which allowed a stray `provider`
|
|
55
|
+
* on a non-mail check on the grounds that refusing it would reject a valid gate.
|
|
56
|
+
* A gate carrying a field nothing reads is not valid, it is misleading, and
|
|
57
|
+
* `provider` on a `d1` check is the same defect the operator reported.
|
|
58
|
+
*
|
|
59
|
+
* Adding a field to a check means adding it here in the same edit, or the
|
|
60
|
+
* writer refuses what the prober is about to read.
|
|
61
|
+
*/
|
|
62
|
+
export const ACCEPTED_CHECK_FIELDS = {
|
|
63
|
+
mail: ["type", "mailbox", "folder", "subjectPrefixes", "provider"],
|
|
64
|
+
d1: ["type", "database", "sql"],
|
|
65
|
+
whatsapp: ["type", "scope"],
|
|
66
|
+
calendar: ["type", "connector"],
|
|
67
|
+
telegram: ["type", "scope", "botId"],
|
|
68
|
+
};
|
|
35
69
|
/**
|
|
36
70
|
* Rooted at the INSTALL, not at the account.
|
|
37
71
|
*
|
|
@@ -116,6 +150,147 @@ function writeWatermarks(eventId, platformRoot, marks) {
|
|
|
116
150
|
mkdirSync(dirname(path), { recursive: true });
|
|
117
151
|
writeFileSync(path, JSON.stringify(marks, null, 2));
|
|
118
152
|
}
|
|
153
|
+
export function observationPath(eventId, platformRoot) {
|
|
154
|
+
return resolve(platformRoot, "..", "state", "scheduling-gate", `${eventId}.observed.json`);
|
|
155
|
+
}
|
|
156
|
+
/**
|
|
157
|
+
* The positions the last gate call recorded, or an empty set.
|
|
158
|
+
*
|
|
159
|
+
* No file is a first fire, and an unreadable one must not be a hard error: an
|
|
160
|
+
* empty observation advances nothing, which leaves every watermark where it is
|
|
161
|
+
* and makes the next fire report the work again.
|
|
162
|
+
*/
|
|
163
|
+
export function readObservation(eventId, platformRoot) {
|
|
164
|
+
const unreadable = (reason) => {
|
|
165
|
+
// A file that is present but unusable stops EVERY watermark advancing, while
|
|
166
|
+
// the commit still prints an empty `advanced=` — which is exactly what a
|
|
167
|
+
// healthy first commit prints. Without a line of its own the fault reads as
|
|
168
|
+
// a routine that simply has not committed yet.
|
|
169
|
+
console.error(`[scheduling-gate] op=observation-unreadable eventId=${eventId.slice(0, 8)} reason=${reason}`);
|
|
170
|
+
return {};
|
|
171
|
+
};
|
|
172
|
+
try {
|
|
173
|
+
const raw = readFileSync(observationPath(eventId, platformRoot), "utf-8");
|
|
174
|
+
const parsed = JSON.parse(raw);
|
|
175
|
+
const marks = parsed?.marks;
|
|
176
|
+
if (marks && typeof marks === "object")
|
|
177
|
+
return marks;
|
|
178
|
+
return unreadable("no-marks-object");
|
|
179
|
+
}
|
|
180
|
+
catch (err) {
|
|
181
|
+
// A missing file is the first fire of a gate, and of every gate that existed
|
|
182
|
+
// before this file did. It is silent because it is the expected state, not a
|
|
183
|
+
// fault.
|
|
184
|
+
if (err?.code === "ENOENT")
|
|
185
|
+
return {};
|
|
186
|
+
return unreadable(err instanceof Error ? err.message : String(err));
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
function writeObservation(eventId, platformRoot, marks) {
|
|
190
|
+
const path = observationPath(eventId, platformRoot);
|
|
191
|
+
mkdirSync(dirname(path), { recursive: true });
|
|
192
|
+
writeFileSync(path, JSON.stringify({ at: new Date().toISOString(), marks }, null, 2));
|
|
193
|
+
}
|
|
194
|
+
/**
|
|
195
|
+
* The name this slot answers to in `advanced` and in `op=commit … positions=`.
|
|
196
|
+
*
|
|
197
|
+
* Both mail providers answer to the same `<mailbox>|<folder>` key, because that
|
|
198
|
+
* is the binding an operator reads in the log and one mailbox is served by one
|
|
199
|
+
* provider. They occupy different watermark subtrees, so the key is not what
|
|
200
|
+
* keeps them apart.
|
|
201
|
+
*/
|
|
202
|
+
export function slotKey(slot) {
|
|
203
|
+
if (slot.kind === "mail" || slot.kind === "mailOutlook")
|
|
204
|
+
return slot.key;
|
|
205
|
+
// Task 2662 — a scoped telegram check answers to `telegram:<botId>`, so a
|
|
206
|
+
// commit over two bots names two entries rather than one repeated twice.
|
|
207
|
+
if (slot.kind === "telegram" && slot.botId !== undefined)
|
|
208
|
+
return `telegram:${slot.botId}`;
|
|
209
|
+
return slot.kind;
|
|
210
|
+
}
|
|
211
|
+
/**
|
|
212
|
+
* The printable position `marks` holds at `slot`, or null when it holds none.
|
|
213
|
+
*
|
|
214
|
+
* A mail UID and a WhatsApp epoch second print as their numbers and a Telegram
|
|
215
|
+
* `createdAt` verbatim, because each is the value the comparison is made on. A
|
|
216
|
+
* calendar digest is truncated to eight characters: the whole sha256 tells a
|
|
217
|
+
* reader nothing the first eight do not, and the full value is in the file.
|
|
218
|
+
*/
|
|
219
|
+
export function slotPosition(slot, marks) {
|
|
220
|
+
switch (slot.kind) {
|
|
221
|
+
case "mail": {
|
|
222
|
+
const entry = marks.mail?.[slot.key];
|
|
223
|
+
return entry === undefined ? null : String(entry.uid);
|
|
224
|
+
}
|
|
225
|
+
case "mailOutlook":
|
|
226
|
+
// Task 2657's Graph position is an ISO `receivedAt`, printed verbatim for
|
|
227
|
+
// the reason the Telegram one is: it IS the value the comparison is made
|
|
228
|
+
// on.
|
|
229
|
+
return marks.mailOutlook?.[slot.key]?.receivedAt ?? null;
|
|
230
|
+
case "whatsapp":
|
|
231
|
+
return marks.whatsapp?.inbound === undefined ? null : String(marks.whatsapp.inbound);
|
|
232
|
+
case "telegram":
|
|
233
|
+
return ((slot.botId === undefined ? marks.telegram?.inbound : marks.telegram?.byBot?.[slot.botId]) ??
|
|
234
|
+
null);
|
|
235
|
+
case "calendar":
|
|
236
|
+
return marks.calendar?.digest?.slice(0, 8) ?? null;
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
/**
|
|
240
|
+
* Copy one slot's value from `from` into `into`. False when `from` holds none,
|
|
241
|
+
* in which case `into` is untouched — the caller advances nothing rather than
|
|
242
|
+
* writing a position it never observed.
|
|
243
|
+
*/
|
|
244
|
+
export function promoteSlot(slot, from, into) {
|
|
245
|
+
switch (slot.kind) {
|
|
246
|
+
case "mail": {
|
|
247
|
+
const entry = from.mail?.[slot.key];
|
|
248
|
+
if (entry === undefined)
|
|
249
|
+
return false;
|
|
250
|
+
into.mail = { ...(into.mail ?? {}), [slot.key]: entry };
|
|
251
|
+
return true;
|
|
252
|
+
}
|
|
253
|
+
case "mailOutlook": {
|
|
254
|
+
const entry = from.mailOutlook?.[slot.key];
|
|
255
|
+
if (entry === undefined)
|
|
256
|
+
return false;
|
|
257
|
+
into.mailOutlook = { ...(into.mailOutlook ?? {}), [slot.key]: entry };
|
|
258
|
+
return true;
|
|
259
|
+
}
|
|
260
|
+
case "whatsapp": {
|
|
261
|
+
const at = from.whatsapp?.inbound;
|
|
262
|
+
if (at === undefined)
|
|
263
|
+
return false;
|
|
264
|
+
into.whatsapp = { ...(into.whatsapp ?? {}), inbound: at };
|
|
265
|
+
return true;
|
|
266
|
+
}
|
|
267
|
+
case "telegram": {
|
|
268
|
+
// Task 2662 — promoted at the same scope it was observed at.
|
|
269
|
+
if (slot.botId !== undefined) {
|
|
270
|
+
const at = from.telegram?.byBot?.[slot.botId];
|
|
271
|
+
if (at === undefined)
|
|
272
|
+
return false;
|
|
273
|
+
into.telegram = {
|
|
274
|
+
...(into.telegram ?? {}),
|
|
275
|
+
byBot: { ...(into.telegram?.byBot ?? {}), [slot.botId]: at },
|
|
276
|
+
};
|
|
277
|
+
return true;
|
|
278
|
+
}
|
|
279
|
+
const at = from.telegram?.inbound;
|
|
280
|
+
if (at === undefined)
|
|
281
|
+
return false;
|
|
282
|
+
into.telegram = { ...(into.telegram ?? {}), inbound: at };
|
|
283
|
+
return true;
|
|
284
|
+
}
|
|
285
|
+
case "calendar": {
|
|
286
|
+
const digest = from.calendar?.digest;
|
|
287
|
+
if (digest === undefined)
|
|
288
|
+
return false;
|
|
289
|
+
into.calendar = { ...(into.calendar ?? {}), digest };
|
|
290
|
+
return true;
|
|
291
|
+
}
|
|
292
|
+
}
|
|
293
|
+
}
|
|
119
294
|
// ---------------------------------------------------------------------------
|
|
120
295
|
// Real sources
|
|
121
296
|
// ---------------------------------------------------------------------------
|
|
@@ -330,6 +505,30 @@ const realMail = async (check, sinceUid, accountId) => {
|
|
|
330
505
|
};
|
|
331
506
|
export const REAL_SOURCES = {
|
|
332
507
|
mail: realMail,
|
|
508
|
+
// Task 2657 — the provider owns the decryption of its own tokens, so this is
|
|
509
|
+
// a SPAWN of the outlook plugin's own MCP server: not an import (no plugin in
|
|
510
|
+
// this tree imports another plugin's source) and not a loopback route, which
|
|
511
|
+
// would reimplement token decryption and refresh in a second process and race
|
|
512
|
+
// the refresh lock. `spawnProviderCall` is the transport `connector-freebusy`
|
|
513
|
+
// already runs from this same heartbeat — same timeout, same ACCOUNT_ID
|
|
514
|
+
// scoping, same captured child stderr, same PLATFORM_PORT bridge.
|
|
515
|
+
mailOutlook: async (check, accountId) => {
|
|
516
|
+
const call = spawnProviderCall(process.env.PLATFORM_ROOT, accountId, "m365");
|
|
517
|
+
const payload = await call("outlook", "outlook-mail-probe", {
|
|
518
|
+
mailbox: check.mailbox,
|
|
519
|
+
...(check.folder === undefined ? {} : { folder: check.folder }),
|
|
520
|
+
});
|
|
521
|
+
const at = payload?.newestReceivedAt;
|
|
522
|
+
if (at === null)
|
|
523
|
+
return { newestReceivedAt: null };
|
|
524
|
+
// A shape this cannot read throws, and a throw counts as work. Coercing an
|
|
525
|
+
// unexpected value to null would answer "quiet" about a mailbox this never
|
|
526
|
+
// understood, which is the one answer that loses a message.
|
|
527
|
+
if (typeof at !== "string") {
|
|
528
|
+
throw new Error(`outlook-mail-probe returned newestReceivedAt of type ${typeof at}`);
|
|
529
|
+
}
|
|
530
|
+
return { newestReceivedAt: at };
|
|
531
|
+
},
|
|
333
532
|
d1: async (check, accountId) => {
|
|
334
533
|
const body = await postJson("/api/storage/d1/query", accountId, {
|
|
335
534
|
name: check.database,
|
|
@@ -391,8 +590,16 @@ export const REAL_SOURCES = {
|
|
|
391
590
|
// uses. Re-deriving the store path inside this plugin was the alternative and
|
|
392
591
|
// is rejected: Task 2644 is exactly that divergence, and Task 2625 moved the
|
|
393
592
|
// path rule into `platform/lib/telegram-reach` to stop a second copy existing.
|
|
394
|
-
telegramInbound: async (accountId) => {
|
|
395
|
-
|
|
593
|
+
telegramInbound: async (accountId, botId) => {
|
|
594
|
+
// Task 2662 — the bot scope travels as a query param. The route answers 404
|
|
595
|
+
// for an id the account does not hold and 403 for one belonging elsewhere,
|
|
596
|
+
// and `getJson` throws on any non-200, so a wrong id reaches `probe`'s error
|
|
597
|
+
// arm and counts as WORK. That is the only safe direction: answering quiet
|
|
598
|
+
// would mute the routine for ever.
|
|
599
|
+
const path = botId === undefined
|
|
600
|
+
? "/api/telegram-reader/gate-probe"
|
|
601
|
+
: `/api/telegram-reader/gate-probe?botId=${encodeURIComponent(botId)}`;
|
|
602
|
+
const body = await getJson(path, accountId);
|
|
396
603
|
const at = body.newestInboundAt;
|
|
397
604
|
if (at === null)
|
|
398
605
|
return { newestInboundAt: null };
|
|
@@ -419,13 +626,63 @@ export const REAL_SOURCES = {
|
|
|
419
626
|
// ---------------------------------------------------------------------------
|
|
420
627
|
// Evaluation
|
|
421
628
|
// ---------------------------------------------------------------------------
|
|
629
|
+
/**
|
|
630
|
+
* Task 2657 — an ISO instant as epoch milliseconds.
|
|
631
|
+
*
|
|
632
|
+
* Compared numerically rather than lexically because Graph documents
|
|
633
|
+
* `receivedDateTime` only as "ISO 8601" and pins no precision
|
|
634
|
+
* (`plugins/outlook/references/graph-surfaces.md:58`). A fractional-second value
|
|
635
|
+
* sorts BELOW a whole-second one lexically ('.' is 0x2E, 'Z' is 0x5A), so a
|
|
636
|
+
* lexical test would read a newer message as older and mute the routine. A
|
|
637
|
+
* value this cannot parse throws, and a throw counts as work: answering "quiet"
|
|
638
|
+
* about a timestamp it never understood is the one answer that loses mail.
|
|
639
|
+
*/
|
|
640
|
+
export function instantOf(iso) {
|
|
641
|
+
const ms = Date.parse(iso);
|
|
642
|
+
if (Number.isNaN(ms))
|
|
643
|
+
throw new Error(`not an ISO instant: ${iso}`);
|
|
644
|
+
return ms;
|
|
645
|
+
}
|
|
422
646
|
async function probe(check, marks, accountId, sources) {
|
|
423
647
|
switch (check.type) {
|
|
424
648
|
case "mail": {
|
|
425
649
|
// Task 2635 — the folder segment lower-cases, so a binding that writes
|
|
426
650
|
// "inbox" and one that writes "INBOX" address one entry. The mailbox
|
|
427
|
-
// segment is left alone: a local part is case-sensitive.
|
|
651
|
+
// segment is left alone: a local part is case-sensitive. One expression
|
|
652
|
+
// serves both providers: IMAP's default folder is INBOX and Graph's is
|
|
653
|
+
// Inbox, and both lower-case to the same segment.
|
|
428
654
|
const key = `${check.mailbox}|${(check.folder ?? "INBOX").toLowerCase()}`;
|
|
655
|
+
const provider = check.provider ?? "imap";
|
|
656
|
+
// Task 2657 — a provider outside the two, reachable only by a direct tool
|
|
657
|
+
// call now that `validateGate` refuses one at write time. Throwing HERE
|
|
658
|
+
// puts it inside `runSchedulingGate`'s try, where the error arm logs it
|
|
659
|
+
// and counts it as work — the shape the unknown-check-type default has.
|
|
660
|
+
if (!ACCEPTED_MAIL_PROVIDERS.includes(provider)) {
|
|
661
|
+
throw new Error(`unknown mail provider ${JSON.stringify(provider)} — accepted: ${ACCEPTED_MAIL_PROVIDERS.join(", ")}`);
|
|
662
|
+
}
|
|
663
|
+
if (provider === "outlook") {
|
|
664
|
+
const { newestReceivedAt } = await sources.mailOutlook(check, accountId);
|
|
665
|
+
// A folder holding no message has no position to record, so this reports
|
|
666
|
+
// as `skipped` on a commit rather than advancing onto nothing — the same
|
|
667
|
+
// shape the `telegram` arm has, and for the same reason. Writing null
|
|
668
|
+
// would drop a real watermark and replay every stored message next fire.
|
|
669
|
+
if (newestReceivedAt === null)
|
|
670
|
+
return { hasWork: false, mark: null };
|
|
671
|
+
const storedAt = marks.mailOutlook?.[key]?.receivedAt;
|
|
672
|
+
return {
|
|
673
|
+
// `>`, never `>=`. The stored value IS the newest message the model has
|
|
674
|
+
// already seen, so `>=` re-reports it on every fire and the gate could
|
|
675
|
+
// never go quiet (the Task 2471 class). An absent watermark is a first
|
|
676
|
+
// run: everything already waiting counts as work.
|
|
677
|
+
hasWork: storedAt === undefined || instantOf(newestReceivedAt) > instantOf(storedAt),
|
|
678
|
+
mark: {
|
|
679
|
+
slot: { kind: "mailOutlook", key },
|
|
680
|
+
write: (m) => {
|
|
681
|
+
m.mailOutlook = { ...(m.mailOutlook ?? {}), [key]: { receivedAt: newestReceivedAt } };
|
|
682
|
+
},
|
|
683
|
+
},
|
|
684
|
+
};
|
|
685
|
+
}
|
|
429
686
|
const stored = marks.mail?.[key];
|
|
430
687
|
const since = stored?.uid ?? 0;
|
|
431
688
|
const res = await sources.mail(check, since, accountId);
|
|
@@ -436,9 +693,11 @@ async function probe(check, marks, accountId, sources) {
|
|
|
436
693
|
const renumbered = stored != null && stored.uidValidity != null && res.uidValidity !== stored.uidValidity;
|
|
437
694
|
return {
|
|
438
695
|
hasWork: res.matched || renumbered,
|
|
439
|
-
mark:
|
|
440
|
-
|
|
441
|
-
|
|
696
|
+
mark: {
|
|
697
|
+
slot: { kind: "mail", key },
|
|
698
|
+
write: (m) => {
|
|
699
|
+
m.mail = { ...(m.mail ?? {}), [key]: { uid: res.highestUid, uidValidity: res.uidValidity } };
|
|
700
|
+
},
|
|
442
701
|
},
|
|
443
702
|
};
|
|
444
703
|
}
|
|
@@ -455,15 +714,22 @@ async function probe(check, marks, accountId, sources) {
|
|
|
455
714
|
const res = await sources.whatsappInbound(accountId, since);
|
|
456
715
|
return {
|
|
457
716
|
hasWork: res.newer,
|
|
458
|
-
mark:
|
|
459
|
-
|
|
460
|
-
|
|
717
|
+
mark: {
|
|
718
|
+
slot: { kind: "whatsapp" },
|
|
719
|
+
write: (m) => {
|
|
720
|
+
m.whatsapp = { ...(m.whatsapp ?? {}), inbound: res.latest };
|
|
721
|
+
},
|
|
461
722
|
},
|
|
462
723
|
};
|
|
463
724
|
}
|
|
464
725
|
case "telegram": {
|
|
465
|
-
|
|
466
|
-
|
|
726
|
+
// Task 2662 — the position for THIS scope. An account-wide check reads
|
|
727
|
+
// `inbound`; a scoped one reads its own `byBot` entry and never the
|
|
728
|
+
// account-wide mark, which was measured across bots this check ignores.
|
|
729
|
+
const since = check.botId === undefined
|
|
730
|
+
? marks.telegram?.inbound
|
|
731
|
+
: marks.telegram?.byBot?.[check.botId];
|
|
732
|
+
const { newestInboundAt } = await sources.telegramInbound(accountId, check.botId);
|
|
467
733
|
// An account with no inbound row has no position to record, so this
|
|
468
734
|
// reports as `skipped` on a commit rather than advancing onto nothing —
|
|
469
735
|
// the same shape `d1` has, and for the same reason. Writing null here
|
|
@@ -476,9 +742,19 @@ async function probe(check, marks, accountId, sources) {
|
|
|
476
742
|
// could never go quiet (the Task 2471 class). An absent watermark is a
|
|
477
743
|
// first run: everything already waiting counts as work.
|
|
478
744
|
hasWork: since === undefined || newestInboundAt > since,
|
|
479
|
-
mark:
|
|
480
|
-
|
|
481
|
-
|
|
745
|
+
mark: {
|
|
746
|
+
// Task 2662 — the bot rides on the slot, so one event carrying two
|
|
747
|
+
// scoped checks holds two positions and neither overwrites the other.
|
|
748
|
+
slot: { kind: "telegram", botId: check.botId },
|
|
749
|
+
write: (m) => {
|
|
750
|
+
m.telegram =
|
|
751
|
+
check.botId === undefined
|
|
752
|
+
? { ...(m.telegram ?? {}), inbound: newestInboundAt }
|
|
753
|
+
: {
|
|
754
|
+
...(m.telegram ?? {}),
|
|
755
|
+
byBot: { ...(m.telegram?.byBot ?? {}), [check.botId]: newestInboundAt },
|
|
756
|
+
};
|
|
757
|
+
},
|
|
482
758
|
},
|
|
483
759
|
};
|
|
484
760
|
}
|
|
@@ -487,9 +763,11 @@ async function probe(check, marks, accountId, sources) {
|
|
|
487
763
|
const stored = marks.calendar?.digest;
|
|
488
764
|
return {
|
|
489
765
|
hasWork: stored !== digest,
|
|
490
|
-
mark:
|
|
491
|
-
|
|
492
|
-
|
|
766
|
+
mark: {
|
|
767
|
+
slot: { kind: "calendar" },
|
|
768
|
+
write: (m) => {
|
|
769
|
+
m.calendar = { ...(m.calendar ?? {}), digest };
|
|
770
|
+
},
|
|
493
771
|
},
|
|
494
772
|
};
|
|
495
773
|
}
|
|
@@ -517,17 +795,37 @@ async function probe(check, marks, accountId, sources) {
|
|
|
517
795
|
* every binding: a routine names the sources it cares about and the disjunction
|
|
518
796
|
* is the routine's precondition.
|
|
519
797
|
*
|
|
520
|
-
* On a commit, every named check is
|
|
521
|
-
*
|
|
522
|
-
*
|
|
523
|
-
*
|
|
798
|
+
* On a commit, every named check is still probed — that is what measures
|
|
799
|
+
* `hasWork` and what keeps a check that errors out of `advanced` — but the
|
|
800
|
+
* position WRITTEN comes from the observation the gate call recorded, never from
|
|
801
|
+
* the commit's own probe. The commit runs at the END of the agent turn, so its
|
|
802
|
+
* probe already includes anything that arrived while the turn ran; writing that
|
|
803
|
+
* would put the arrival below the watermark and no later fire would report it
|
|
804
|
+
* (Task 2654). A check with no recorded observation advances nothing, which
|
|
805
|
+
* leaves the work above the watermark and is the fail-open direction.
|
|
524
806
|
*/
|
|
525
807
|
export async function runSchedulingGate(params, accountId, platformRoot, sources = REAL_SOURCES) {
|
|
526
808
|
const started = Date.now();
|
|
809
|
+
const id8 = params.eventId.slice(0, 8);
|
|
527
810
|
const marks = readWatermarks(params.eventId, platformRoot);
|
|
811
|
+
// Task 2654 — what the LAST gate call saw. A commit promotes from here rather
|
|
812
|
+
// than from its own probe: its own probe runs at the end of the agent turn and
|
|
813
|
+
// already includes whatever arrived while the turn ran.
|
|
814
|
+
const observed = params.commit ? readObservation(params.eventId, platformRoot) : {};
|
|
815
|
+
// This call's own readings, written to the observation file on a plain call.
|
|
816
|
+
// Fresh rather than the read watermarks, so a check that is not named this
|
|
817
|
+
// fire leaves no stale position behind.
|
|
818
|
+
const fresh = {};
|
|
528
819
|
const reasons = [];
|
|
820
|
+
const errored = [];
|
|
529
821
|
const advanced = [];
|
|
530
822
|
const skipped = [];
|
|
823
|
+
/**
|
|
824
|
+
* Task 2654 — the position actually written per advanced check, so a watermark
|
|
825
|
+
* that jumped past a window the model never saw is legible after the fact
|
|
826
|
+
* without reproducing it. Pairs with `op=gate-read` on the same eventId.
|
|
827
|
+
*/
|
|
828
|
+
const positions = [];
|
|
531
829
|
let hasWork = false;
|
|
532
830
|
for (const check of params.checks) {
|
|
533
831
|
let outcome;
|
|
@@ -540,6 +838,10 @@ export async function runSchedulingGate(params, accountId, platformRoot, sources
|
|
|
540
838
|
hasWork = true;
|
|
541
839
|
if (!reasons.includes(check.type))
|
|
542
840
|
reasons.push(check.type);
|
|
841
|
+
// Task 2658 — one entry per erroring CHECK, not per kind, and never
|
|
842
|
+
// deduplicated: two `d1` checks against two databases can fail for two
|
|
843
|
+
// different reasons, and a single `d1` entry would name one of them.
|
|
844
|
+
errored.push({ kind: check.type, detail });
|
|
543
845
|
continue;
|
|
544
846
|
}
|
|
545
847
|
if (outcome.hasWork) {
|
|
@@ -549,21 +851,43 @@ export async function runSchedulingGate(params, accountId, platformRoot, sources
|
|
|
549
851
|
}
|
|
550
852
|
// A check that threw took the `continue` above, so it reaches neither list:
|
|
551
853
|
// its position is unknown, not absent.
|
|
552
|
-
if (
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
854
|
+
if (outcome.mark) {
|
|
855
|
+
// Every probe records what it saw, commit or not: the position is a fact
|
|
856
|
+
// about the source, not about the verdict.
|
|
857
|
+
outcome.mark.write(fresh);
|
|
858
|
+
console.error(`[scheduling-gate] op=gate-read eventId=${id8} check=${check.type} ` +
|
|
859
|
+
`position=${slotPosition(outcome.mark.slot, fresh)}`);
|
|
860
|
+
if (params.commit) {
|
|
861
|
+
// The OBSERVED position, never this probe's. Absent means no gate call
|
|
862
|
+
// recorded one, so nothing advances and the next fire reports it again.
|
|
863
|
+
if (promoteSlot(outcome.mark.slot, observed, marks)) {
|
|
864
|
+
const key = slotKey(outcome.mark.slot);
|
|
865
|
+
advanced.push(key);
|
|
866
|
+
positions.push(`${key}:${slotPosition(outcome.mark.slot, marks)}`);
|
|
867
|
+
}
|
|
868
|
+
}
|
|
869
|
+
}
|
|
870
|
+
else if (params.commit) {
|
|
871
|
+
skipped.push(check.type);
|
|
557
872
|
}
|
|
558
873
|
}
|
|
874
|
+
if (!params.commit) {
|
|
875
|
+
// A commit never writes this file. Writing its own end-of-turn probe here
|
|
876
|
+
// would put the swallowed position back in the one place the next commit
|
|
877
|
+
// trusts.
|
|
878
|
+
writeObservation(params.eventId, platformRoot, fresh);
|
|
879
|
+
}
|
|
559
880
|
if (params.commit) {
|
|
560
881
|
marks.lastCommitAt = new Date().toISOString();
|
|
561
882
|
writeWatermarks(params.eventId, platformRoot, marks);
|
|
562
|
-
console.error(`[scheduling-gate] op=commit eventId=${
|
|
563
|
-
`advanced=${advanced.join(",")} skipped=${skipped.join(",")}`
|
|
883
|
+
console.error(`[scheduling-gate] op=commit eventId=${id8} ` +
|
|
884
|
+
`advanced=${advanced.join(",")} skipped=${skipped.join(",")} ` +
|
|
885
|
+
`positions=${positions.join(",")}`);
|
|
564
886
|
}
|
|
565
887
|
console.error(`[scheduling-gate] op=checked hasWork=${hasWork} reasons=${reasons.join(",")} ` +
|
|
566
888
|
`checks=${params.checks.length} ms=${Date.now() - started}`);
|
|
567
|
-
return params.commit
|
|
889
|
+
return params.commit
|
|
890
|
+
? { hasWork, reasons, errored, advanced, skipped }
|
|
891
|
+
: { hasWork, reasons, errored };
|
|
568
892
|
}
|
|
569
893
|
//# sourceMappingURL=scheduling-gate.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scheduling-gate.js","sourceRoot":"","sources":["../../src/tools/scheduling-gate.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"scheduling-gate.js","sourceRoot":"","sources":["../../src/tools/scheduling-gate.ts"],"names":[],"mappings":"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"}
|
|
@@ -192,7 +192,21 @@ export function collectGrantedTools(agentDirs) {
|
|
|
192
192
|
// name why the tool is deliberately callable by nobody, and an entry whose
|
|
193
193
|
// tool has since been granted is itself reported, because a suppression that
|
|
194
194
|
// outlives its cause re-creates the blind spot.
|
|
195
|
-
const REACHABILITY_EXCEPTIONS = new Map([
|
|
195
|
+
const REACHABILITY_EXCEPTIONS = new Map([
|
|
196
|
+
[
|
|
197
|
+
"mcp__plugin_outlook_outlook__outlook-mail-probe",
|
|
198
|
+
// Task 2657 — machine-to-machine by construction. The scheduling gate's
|
|
199
|
+
// `mail` check with `provider: outlook` reaches it by SPAWNING the outlook
|
|
200
|
+
// plugin's own MCP server (`spawnProviderCall`, scheduling-gate.ts), because
|
|
201
|
+
// the provider owns the decryption of its own tokens. No agent turn is in
|
|
202
|
+
// that path, so granting it to a specialist or putting it on the admin
|
|
203
|
+
// surface would add a tool no one should call by hand: it returns one
|
|
204
|
+
// folder's newest `receivedDateTime` and nothing else, and a non-null answer
|
|
205
|
+
// is not evidence of work — the arrival test is the caller's comparison
|
|
206
|
+
// against its own stored watermark, which an agent does not hold.
|
|
207
|
+
"called by the scheduling gate through a spawned outlook MCP server, never by an agent turn",
|
|
208
|
+
],
|
|
209
|
+
]);
|
|
196
210
|
|
|
197
211
|
export function findUnreachableTools(specialistOnlyAll, granted) {
|
|
198
212
|
const unreachable = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"canonical-tool-names.generated.d.ts","sourceRoot":"","sources":["../src/canonical-tool-names.generated.ts"],"names":[],"mappings":"AAQA,+EAA+E;AAC/E,eAAO,MAAM,gBAAgB,EAAE,SAAS,MAAM,EA2B7C,CAAA;AAED,gEAAgE;AAChE,eAAO,MAAM,yBAAyB,EAAE,SAAS,MAAM,
|
|
1
|
+
{"version":3,"file":"canonical-tool-names.generated.d.ts","sourceRoot":"","sources":["../src/canonical-tool-names.generated.ts"],"names":[],"mappings":"AAQA,+EAA+E;AAC/E,eAAO,MAAM,gBAAgB,EAAE,SAAS,MAAM,EA2B7C,CAAA;AAED,gEAAgE;AAChE,eAAO,MAAM,yBAAyB,EAAE,SAAS,MAAM,EAqXtD,CAAA"}
|
package/payload/platform/services/claude-session-manager/dist/canonical-tool-names.generated.js
CHANGED
|
@@ -304,6 +304,7 @@ export const CANONICAL_MAXY_TOOL_NAMES = [
|
|
|
304
304
|
"mcp__plugin_outlook_outlook__outlook-mail-ingest",
|
|
305
305
|
"mcp__plugin_outlook_outlook__outlook-mail-list",
|
|
306
306
|
"mcp__plugin_outlook_outlook__outlook-mail-otp-extract",
|
|
307
|
+
"mcp__plugin_outlook_outlook__outlook-mail-probe",
|
|
307
308
|
"mcp__plugin_outlook_outlook__outlook-mail-reply",
|
|
308
309
|
"mcp__plugin_outlook_outlook__outlook-mail-search",
|
|
309
310
|
"mcp__plugin_outlook_outlook__outlook-mail-send",
|