@axonity-ai/mcp 0.6.0 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/README.md +251 -14
  2. package/dist/client.d.ts +15 -2
  3. package/dist/client.js +8 -1
  4. package/dist/client.js.map +1 -1
  5. package/dist/contract.d.ts +109 -0
  6. package/dist/contract.js +272 -0
  7. package/dist/contract.js.map +1 -0
  8. package/dist/errors.d.ts +15 -3
  9. package/dist/errors.js +27 -3
  10. package/dist/errors.js.map +1 -1
  11. package/dist/generated/listFilters.d.ts +19 -0
  12. package/dist/generated/listFilters.js +78 -0
  13. package/dist/generated/listFilters.js.map +1 -0
  14. package/dist/index.js +29 -2
  15. package/dist/index.js.map +1 -1
  16. package/dist/tools/authoringSpec.d.ts +76 -0
  17. package/dist/tools/authoringSpec.js +169 -0
  18. package/dist/tools/authoringSpec.js.map +1 -0
  19. package/dist/tools/company.d.ts +5 -2
  20. package/dist/tools/company.js +79 -2
  21. package/dist/tools/company.js.map +1 -1
  22. package/dist/tools/conventions.d.ts +16 -0
  23. package/dist/tools/conventions.js +299 -19
  24. package/dist/tools/conventions.js.map +1 -1
  25. package/dist/tools/credentials.d.ts +20 -0
  26. package/dist/tools/credentials.js +41 -0
  27. package/dist/tools/credentials.js.map +1 -1
  28. package/dist/tools/extras.d.ts +17 -0
  29. package/dist/tools/extras.js +151 -9
  30. package/dist/tools/extras.js.map +1 -1
  31. package/dist/tools/operations.d.ts +28 -0
  32. package/dist/tools/operations.js +160 -0
  33. package/dist/tools/operations.js.map +1 -0
  34. package/dist/tools/register.d.ts +27 -0
  35. package/dist/tools/register.js +19 -1
  36. package/dist/tools/register.js.map +1 -1
  37. package/dist/tools/runs.d.ts +24 -0
  38. package/dist/tools/runs.js +304 -26
  39. package/dist/tools/runs.js.map +1 -1
  40. package/dist/tools/secrets.d.ts +33 -0
  41. package/dist/tools/secrets.js +69 -0
  42. package/dist/tools/secrets.js.map +1 -0
  43. package/dist/tools/subworkflows.d.ts +20 -0
  44. package/dist/tools/subworkflows.js +42 -0
  45. package/dist/tools/subworkflows.js.map +1 -0
  46. package/dist/tools/toolboxes.d.ts +32 -0
  47. package/dist/tools/toolboxes.js +165 -0
  48. package/dist/tools/toolboxes.js.map +1 -0
  49. package/dist/tools/triggers.d.ts +8 -0
  50. package/dist/tools/triggers.js +65 -7
  51. package/dist/tools/triggers.js.map +1 -1
  52. package/dist/tools/validation.js +74 -4
  53. package/dist/tools/validation.js.map +1 -1
  54. package/dist/tools/versions.d.ts +9 -0
  55. package/dist/tools/versions.js +36 -0
  56. package/dist/tools/versions.js.map +1 -1
  57. package/dist/tools/workflowMutations.js +53 -12
  58. package/dist/tools/workflowMutations.js.map +1 -1
  59. package/package.json +3 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subworkflows.js","sourceRoot":"","sources":["../../src/tools/subworkflows.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEhD,MAAM,UAAU,wBAAwB,CACtC,MAAiB,EACjB,MAAqB;IAErB,MAAM,CAAC,IAAI,CACT,yBAAyB,EACzB,2EAA2E;QACzE,4EAA4E;QAC5E,uEAAuE;QACvE,uEAAuE;QACvE,+DAA+D;QAC/D,wEAAwE;QACxE,mCAAmC;QACnC,yEAAyE;QACzE,2EAA2E;QAC3E,wEAAwE;QACxE,uEAAuE;QACvE,sEAAsE;QACtE,6CAA6C,EAC/C;QACE,OAAO,EAAE,CAAC;aACP,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,sEAAsE;YACpE,qEAAqE;YACrE,oCAAoC,CACvC;KACJ,EACD,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CACpB,KAAK,CAAC,KAAK,IAAI,EAAE,CACf,UAAU,CACR,MAAM,MAAM,CAAC,GAAG,CACd,4BAA4B,EAC5B,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,SAAS,CAClC,CACF,CACF,CACJ,CAAC;AACJ,CAAC"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Toolboxes — the grouping label a tenant's tools live in (axonity-mcp#54,
3
+ * backend axonity-flow#1012 / epic #1006).
4
+ *
5
+ * Until this module the connector could not see a toolbox at all, and that was
6
+ * not a missing convenience: `create_tool` silently produced an ORPHAN. On the
7
+ * dev tenant 76 tools collapse into eight boxes and one loose tool, so a tool
8
+ * outside every box is not "unfiled", it is the one nobody finds.
9
+ *
10
+ * Three things the schema cannot say, and an agent gets wrong without them:
11
+ *
12
+ * 1. **`set_toolbox_tools` DECLARES the membership.** It is a PUT, not an
13
+ * append: a tool in the box and absent from the list is evicted. Adding one
14
+ * tool means reading the box first — or using `assign_tool_toolbox`, which
15
+ * moves exactly one and takes `null` to ungroup.
16
+ * 2. **A toolbox never changes what an agent MAY call.** An agent is linked to
17
+ * individual tools (`agent.toolIds`), never to a box. The box decides how a
18
+ * tool is ADVERTISED: a boxed tool with `surfacing: "inherit"` is found via
19
+ * `discover_tools` instead of riding in every prompt. "Assign the whole
20
+ * toolbox to this agent" is a bulk write of individual links, and there is
21
+ * no route that does it.
22
+ * 3. **Deleting a toolbox does not delete its tools.** They survive, ungrouped.
23
+ *
24
+ * `set_toolbox_auth` is the one write here that touches a credential, and it
25
+ * runs the same guard as `create_connector`: placeholders or a `secretId`, never
26
+ * a value. A shared credential is the reason the box exists for a family like
27
+ * Microsoft Mail — ten tools, one mailbox, said once — which also makes it the
28
+ * one write whose blast radius is wider than the row it edits.
29
+ */
30
+ import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
31
+ import type { AxonityClient } from "../client.js";
32
+ export declare function registerToolboxTools(server: McpServer, client: AxonityClient): void;
@@ -0,0 +1,165 @@
1
+ /**
2
+ * Toolboxes — the grouping label a tenant's tools live in (axonity-mcp#54,
3
+ * backend axonity-flow#1012 / epic #1006).
4
+ *
5
+ * Until this module the connector could not see a toolbox at all, and that was
6
+ * not a missing convenience: `create_tool` silently produced an ORPHAN. On the
7
+ * dev tenant 76 tools collapse into eight boxes and one loose tool, so a tool
8
+ * outside every box is not "unfiled", it is the one nobody finds.
9
+ *
10
+ * Three things the schema cannot say, and an agent gets wrong without them:
11
+ *
12
+ * 1. **`set_toolbox_tools` DECLARES the membership.** It is a PUT, not an
13
+ * append: a tool in the box and absent from the list is evicted. Adding one
14
+ * tool means reading the box first — or using `assign_tool_toolbox`, which
15
+ * moves exactly one and takes `null` to ungroup.
16
+ * 2. **A toolbox never changes what an agent MAY call.** An agent is linked to
17
+ * individual tools (`agent.toolIds`), never to a box. The box decides how a
18
+ * tool is ADVERTISED: a boxed tool with `surfacing: "inherit"` is found via
19
+ * `discover_tools` instead of riding in every prompt. "Assign the whole
20
+ * toolbox to this agent" is a bulk write of individual links, and there is
21
+ * no route that does it.
22
+ * 3. **Deleting a toolbox does not delete its tools.** They survive, ungrouped.
23
+ *
24
+ * `set_toolbox_auth` is the one write here that touches a credential, and it
25
+ * runs the same guard as `create_connector`: placeholders or a `secretId`, never
26
+ * a value. A shared credential is the reason the box exists for a family like
27
+ * Microsoft Mail — ten tools, one mailbox, said once — which also makes it the
28
+ * one write whose blast radius is wider than the row it edits.
29
+ */
30
+ import { z } from "zod";
31
+ import { assertPlaceholderCredentials } from "./credentials.js";
32
+ import { guard, jsonResult } from "./result.js";
33
+ /** A required literal — an agent cannot satisfy it by filling in a default. */
34
+ const CONFIRM = z
35
+ .literal(true)
36
+ .describe("Must be true. Acknowledges you understand this is destructive.");
37
+ export function registerToolboxTools(server, client) {
38
+ server.tool("list_toolboxes", "List the tenant's toolboxes — the groups its tools are filed under (id, " +
39
+ "name, description, toolCount, hasAuthConfig, version). Whole, never " +
40
+ "paged: a tenant holds O(10) boxes and they ARE the structure that tames " +
41
+ "the tool list. " +
42
+ "\n\nRead this BEFORE create_tool: pass the box's id as `toolboxId` in " +
43
+ "the tool's fields and it is filed on creation. A tool created without " +
44
+ "one is ungrouped — valid, but nobody finds it. " +
45
+ "\n\nA box's `authConfig` comes back with secret values masked; " +
46
+ "`hasAuthConfig` says whether it carries a shared credential at all.", {}, async () => guard(async () => jsonResult(await client.get("/api/v1/toolboxes"))));
47
+ server.tool("create_toolbox", "Create a toolbox. Both `name` and `description` are REQUIRED — the " +
48
+ "description is not politeness: it is the line an agent reads in the " +
49
+ "discover_tools advert to decide whether to look inside the box, so it " +
50
+ "must say what the tools DO. An empty one is rejected. " +
51
+ "\n\n`name` is unique per tenant; a duplicate is a 422. Check " +
52
+ "list_toolboxes first — the box you want usually already exists.", {
53
+ name: z.string().describe('Display name, e.g. "Carerix".'),
54
+ description: z
55
+ .string()
56
+ .describe("What this toolbox is for, in one line. Read by a person in the tool " +
57
+ "tab and by an agent deciding whether to look inside."),
58
+ }, async ({ name, description }) => guard(async () => jsonResult(await client.post("/api/v1/toolboxes", { name, description }))));
59
+ server.tool("update_toolbox", "Rename or re-describe a toolbox. Read it first with list_toolboxes for its " +
60
+ "`version`; a stale `expectedVersion` is a 409 — re-read and retry rather " +
61
+ "than force. Pass only what you are changing; an omitted field is left " +
62
+ "alone. Renaming to a name another box holds is a 422.", {
63
+ toolboxId: z.string().describe("The toolbox's id."),
64
+ expectedVersion: z
65
+ .number()
66
+ .int()
67
+ .describe("The version you last read — rejected with 409 if stale."),
68
+ name: z.string().optional().describe("New display name. Omit to leave unchanged."),
69
+ description: z
70
+ .string()
71
+ .optional()
72
+ .describe("New description. Omit to leave unchanged."),
73
+ }, async ({ toolboxId, expectedVersion, name, description }) => guard(async () => jsonResult(await client.put(`/api/v1/toolboxes/${toolboxId}`, {
74
+ expectedVersion,
75
+ ...(name !== undefined ? { name } : {}),
76
+ ...(description !== undefined ? { description } : {}),
77
+ }))));
78
+ server.tool("delete_toolbox", "Delete a toolbox. ITS TOOLS SURVIVE — they become ungrouped, and nothing " +
79
+ "an agent may call changes. The BOX itself does not come back: unlike an " +
80
+ "entity delete there is no restore_toolbox, so re-creating it and " +
81
+ "re-filing its tools is the only undo. " +
82
+ "\n\nIf the box carries a shared credential, call " +
83
+ "list_toolbox_dependent_tools first: the tools it names have no " +
84
+ "credential of their own and will start failing at RUN time with a bare " +
85
+ "401 from the partner API, which says nothing about what changed. " +
86
+ "\n\nRead the box first for its `version`; a stale one is a 409.", {
87
+ toolboxId: z.string().describe("The toolbox's id."),
88
+ expectedVersion: z
89
+ .number()
90
+ .int()
91
+ .describe("The version you last read — rejected with 409 if stale."),
92
+ confirm: CONFIRM,
93
+ }, async ({ toolboxId, expectedVersion }) => guard(async () => jsonResult(
94
+ // Note the spelling: this route takes the lock as `expected_version`,
95
+ // where the tool/agent/workflow deletes take `expectedVersion`. A real
96
+ // backend inconsistency, and not one a caller should have to know.
97
+ await client.del(`/api/v1/toolboxes/${toolboxId}`, {
98
+ expected_version: expectedVersion,
99
+ }))));
100
+ server.tool("set_toolbox_tools", "DECLARE exactly which tools this toolbox holds. This REPLACES the " +
101
+ "membership — a tool currently in the box and absent from `toolIds` is " +
102
+ "evicted and left ungrouped. It does not add. " +
103
+ "\n\nTo ADD one tool, either read the box's current contents and send " +
104
+ "them plus the new one, or use assign_tool_toolbox, which moves a single " +
105
+ "tool and cannot evict anything by accident. " +
106
+ "\n\nA tool belongs to at most one box, so a tool named here leaves " +
107
+ "whichever box it was in. Platform-shipped tools (the Axonity, Checks and " +
108
+ "Branching boxes) are locked: the API refuses and NAMES the tool it " +
109
+ "refused — read that name rather than bisecting your selection by hand.", {
110
+ toolboxId: z.string().describe("The toolbox's id."),
111
+ toolIds: z
112
+ .array(z.string())
113
+ .describe("Ids of EVERY tool that should be in this box afterwards. An empty " +
114
+ "array empties the box (the tools survive, ungrouped)."),
115
+ }, async ({ toolboxId, toolIds }) => guard(async () => jsonResult(await client.put(`/api/v1/toolboxes/${toolboxId}/tools`, { toolIds }))));
116
+ server.tool("assign_tool_toolbox", "Move ONE tool into a toolbox, or out of one by passing `toolboxId: null`. " +
117
+ "Prefer this over set_toolbox_tools whenever you are filing a single " +
118
+ "tool — it cannot evict anything you forgot to list. " +
119
+ "\n\nThis is deliberately not part of update_tool: grouping is not a " +
120
+ "change to the tool's published document. It neither bumps the version " +
121
+ "nor needs a republish to take effect, and there `null` already means " +
122
+ "'leave this field alone', so there would be no way to say 'ungroup'. " +
123
+ "Here `toolboxId` is required and an explicit null MEANS ungroup. " +
124
+ "\n\nA platform-shipped tool cannot be moved; the API names it in the " +
125
+ "refusal.", {
126
+ toolId: z.string().describe("The tool's id."),
127
+ toolboxId: z
128
+ .string()
129
+ .nullable()
130
+ .describe("Id of the toolbox to move it into, or null to take it out of its " +
131
+ "box. There is no 'leave unchanged' — that is why this is its own " +
132
+ "endpoint."),
133
+ }, async ({ toolId, toolboxId }) => guard(async () => jsonResult(await client.put(`/api/v1/tools/${toolId}/toolbox`, { toolboxId }))));
134
+ server.tool("set_toolbox_auth", "Set the credential the tools in this toolbox SHARE, or pass " +
135
+ "`authConfig: null` to clear it. Ten Microsoft Mail tools using one " +
136
+ "mailbox is what this exists for: said once, on the box, instead of ten " +
137
+ "times. A tool that carries its own auth keeps it — only a tool with none " +
138
+ "inherits the box's. " +
139
+ "\n\nSame shape as a connector's auth ({ type, config, secretId }) and the " +
140
+ "same rule: POINT `secretId` AT A STORED SECRET (list_secrets) rather " +
141
+ "than putting a credential here. Real-looking secret material is rejected " +
142
+ "before it leaves this connector; a human fills values in Axonity. " +
143
+ "\n\nThis edits one row but changes how every inheriting tool " +
144
+ "authenticates. list_toolbox_dependent_tools names which ones those are.", {
145
+ toolboxId: z.string().describe("The toolbox's id."),
146
+ authConfig: z
147
+ .record(z.unknown())
148
+ .nullable()
149
+ .describe('The shared auth, e.g. { "type": "bearer", "secretId": "…" }, or null ' +
150
+ "to clear it. Placeholders or a secretId only — never a real value."),
151
+ }, async ({ toolboxId, authConfig }) => guard(async () => {
152
+ // The guard reads `authConfig` off the object it is given, which is how
153
+ // it runs on create_tool/create_connector. Same walk, same message.
154
+ assertPlaceholderCredentials({ authConfig });
155
+ return jsonResult(await client.put(`/api/v1/toolboxes/${toolboxId}/auth`, { authConfig }));
156
+ }));
157
+ server.tool("list_toolbox_dependent_tools", "Which tools would stop working if this toolbox lost its shared " +
158
+ "credential — the ones with no auth of their own. Ask BEFORE " +
159
+ "delete_toolbox, before set_toolbox_auth clears or replaces the " +
160
+ "credential, and before moving a tool out with assign_tool_toolbox, so " +
161
+ "the warning can name them. " +
162
+ "\n\nAn empty list is an answer: either the box has no shared credential, " +
163
+ "or every tool in it carries its own. Read-only.", { toolboxId: z.string().describe("The toolbox's id.") }, async ({ toolboxId }) => guard(async () => jsonResult(await client.get(`/api/v1/toolboxes/${toolboxId}/dependent-tools`))));
164
+ }
165
+ //# sourceMappingURL=toolboxes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toolboxes.js","sourceRoot":"","sources":["../../src/tools/toolboxes.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,14 @@
7
7
  *
8
8
  * Trigger deletes are HARD deletes — the row is removed, not soft-deleted, and
9
9
  * there is no restore. Hence the `confirm` guard on each.
10
+ *
11
+ * A SCHEDULE IS A CLAIM, AND IT IS NOW CHECKABLE (axonity-mcp#57). "Every
12
+ * weekday at 07:00" used to be something an author could only test by coming
13
+ * back tomorrow, and the thing most likely to be wrong is not the timing but
14
+ * whether it starts anything at all. Three routes close that:
15
+ * `run_cron_schedule_now` fires one without moving `nextFireAt`,
16
+ * `set_cron_schedule_enabled` pauses one without throwing its rules away, and
17
+ * `reconcile_cron_schedules` answers "is what I am reading what runs tonight?".
10
18
  */
11
19
  import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
12
20
  import type { AxonityClient } from "../client.js";
@@ -7,6 +7,14 @@
7
7
  *
8
8
  * Trigger deletes are HARD deletes — the row is removed, not soft-deleted, and
9
9
  * there is no restore. Hence the `confirm` guard on each.
10
+ *
11
+ * A SCHEDULE IS A CLAIM, AND IT IS NOW CHECKABLE (axonity-mcp#57). "Every
12
+ * weekday at 07:00" used to be something an author could only test by coming
13
+ * back tomorrow, and the thing most likely to be wrong is not the timing but
14
+ * whether it starts anything at all. Three routes close that:
15
+ * `run_cron_schedule_now` fires one without moving `nextFireAt`,
16
+ * `set_cron_schedule_enabled` pauses one without throwing its rules away, and
17
+ * `reconcile_cron_schedules` answers "is what I am reading what runs tonight?".
10
18
  */
11
19
  import { z } from "zod";
12
20
  import { guard, jsonResult } from "./result.js";
@@ -49,27 +57,77 @@ export function registerTriggerTools(server, client) {
49
57
  }));
50
58
  // ---- Cron schedules ---------------------------------------------------
51
59
  server.tool("list_cron_schedules", "List a workflow's cron schedules, with their next and last fire times.", { workflowId: z.string().describe("The workflow's id.") }, async ({ workflowId }) => guard(async () => jsonResult(await client.get(`/api/v1/workflows/${workflowId}/cron-schedules`))));
52
- server.tool("create_cron_schedule", "Schedule a workflow to run on a cron expression.", {
60
+ server.tool("list_all_cron_schedules", "Every cron schedule in the TENANT, with the workflow each one fires — the " +
61
+ "answer to 'what runs tonight?'. list_cron_schedules answers the same " +
62
+ "question for one workflow; this one needs no id and is what you read " +
63
+ "when you do not already know which workflow to suspect.", {}, async () => guard(async () => jsonResult(await client.get("/api/v1/cron-schedules"))));
64
+ server.tool("create_cron_schedule", "Schedule a published workflow to run on a timetable. " +
65
+ "\n\nThe TRIGGER must exist in the workflow's PUBLISHED document — the " +
66
+ "schedule table stores a copy of the rules and publishing keeps that copy " +
67
+ "true, so a trigger id no canvas has shown is refused rather than stored. " +
68
+ "Read read_workflow_trigger_parameters or the published document for the " +
69
+ "id. " +
70
+ "\n\nGive it EITHER `cronExpr` OR `rules`. `rules` is the richer form and " +
71
+ "the one a person reads back: call get_workflow_authoring_spec for " +
72
+ "`scheduleRuleKinds`, which lists every shape this deploy accepts with a " +
73
+ "working example of each. Do not invent a shape — the list is generated " +
74
+ "from the parser that validates it. A malformed expression or an unknown " +
75
+ "timezone is a 422.", {
53
76
  workflowId: z.string().describe("The workflow's id."),
54
77
  triggerId: z
55
78
  .string()
56
- .describe("The id of the trigger node in the workflow document."),
79
+ .describe("The id of the trigger node in the workflow's PUBLISHED document. An " +
80
+ "id that is not there is refused."),
57
81
  cronExpr: z
58
82
  .string()
59
- .describe('The cron expression, e.g. "0 9 * * 1-5" for weekdays at 09:00.'),
83
+ .optional()
84
+ .describe('A cron expression, e.g. "0 9 * * 1-5" for weekdays at 09:00. Use ' +
85
+ "`rules` instead for anything you want a person to be able to read."),
86
+ rules: z
87
+ .array(z.record(z.unknown()))
88
+ .optional()
89
+ .describe("The schedule as rule objects. Shapes come from " +
90
+ "get_workflow_authoring_spec → `scheduleRuleKinds`, each with an " +
91
+ "example that is round-tripped through the parser on every read."),
60
92
  timezone: z
61
93
  .string()
62
94
  .optional()
63
95
  .describe('IANA timezone, e.g. "Europe/Brussels". Defaults to UTC.'),
64
96
  enabled: z.boolean().optional().describe("Defaults to true."),
65
- }, async ({ workflowId, triggerId, cronExpr, timezone, enabled }) => guard(async () => jsonResult(await client.post(`/api/v1/workflows/${workflowId}/cron-schedules`, {
97
+ }, async ({ workflowId, triggerId, cronExpr, rules, timezone, enabled }) => guard(async () => jsonResult(await client.post(`/api/v1/workflows/${workflowId}/cron-schedules`, {
66
98
  triggerId,
67
- cronExpr,
99
+ ...(cronExpr !== undefined ? { cronExpr } : {}),
100
+ ...(rules !== undefined ? { rules } : {}),
68
101
  ...(timezone ? { timezone } : {}),
69
102
  ...(enabled === undefined ? {} : { enabled }),
70
103
  }))));
71
- server.tool("delete_cron_schedule", "Delete a cron schedule. HARD delete — the row is removed and cannot be " +
72
- "restored. The workflow stops running on this schedule immediately.", {
104
+ server.tool("set_cron_schedule_enabled", "Arm or disarm a cron schedule. THIS IS HOW YOU PAUSE ONE — it keeps the " +
105
+ "rules the author wrote, so 'stop this for a week' stays distinguishable " +
106
+ "from 'we do not do this any more'. Reach for delete_cron_schedule only " +
107
+ "when the schedule is genuinely finished.", {
108
+ scheduleId: z.string().describe("The cron schedule's id."),
109
+ enabled: z
110
+ .boolean()
111
+ .describe("true arms the schedule, false pauses it without losing it."),
112
+ }, async ({ scheduleId, enabled }) => guard(async () => jsonResult(await client.patch(`/api/v1/cron-schedules/${scheduleId}`, { enabled }))));
113
+ server.tool("run_cron_schedule_now", "Fire a cron schedule once, right now — the way to TEST one without waiting " +
114
+ "for its next time. This EXECUTES the workflow against live " +
115
+ "infrastructure, with the same cost and side effects as any real run. " +
116
+ "\n\n`nextFireAt` is deliberately NOT moved: testing a schedule must not " +
117
+ "consume the run it was going to make. " +
118
+ "\n\nIt returns as soon as the run is queued, not when it finishes — " +
119
+ "follow it with list_runs or read_run_outline.", { scheduleId: z.string().describe("The cron schedule's id.") }, async ({ scheduleId }) => guard(async () => jsonResult(await client.post(`/api/v1/cron-schedules/${scheduleId}/run-now`))));
120
+ server.tool("reconcile_cron_schedules", "Check the tenant's schedule table against the PUBLISHED workflows and " +
121
+ "repair it — the answer to 'is what I am reading actually what runs " +
122
+ "tonight?'. Schedules follow their workflow's lifecycle now, so this is " +
123
+ "for rows written before that held, and for confirming there are none. " +
124
+ "\n\nIt REPORTS rather than tidying silently, and it never arms a " +
125
+ "schedule someone switched off. Safe to run when you are unsure.", {}, async () => guard(async () => jsonResult(await client.post("/api/v1/cron-schedules/reconcile"))));
126
+ server.tool("delete_cron_schedule", "Delete a cron schedule. HARD delete — the row is removed, the rules go " +
127
+ "with it, and there is no restore. " +
128
+ "\n\nTO PAUSE ONE, USE set_cron_schedule_enabled INSTEAD. Deleting is not " +
129
+ "how you stop a schedule for a while: it destroys the timetable an author " +
130
+ "wrote and leaves nothing saying it ever existed.", {
73
131
  scheduleId: z.string().describe("The cron schedule's id."),
74
132
  confirm: CONFIRM,
75
133
  }, async ({ scheduleId }) => guard(async () => {
@@ -1 +1 @@
1
- {"version":3,"file":"triggers.js","sourceRoot":"","sources":["../../src/tools/triggers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"triggers.js","sourceRoot":"","sources":["../../src/tools/triggers.ts"],"names":[],"mappings":"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"}
@@ -145,10 +145,80 @@ export function registerApprovalTools(server, client) {
145
145
  .max(200)
146
146
  .describe("One entry per entity to propose for publishing."),
147
147
  }, async ({ requests }) => guard(async () => jsonResult(await client.post("/api/v1/publish-approvals/bulk", { requests }))));
148
- // Deliberately absent: bulk approve and bulk reject. Those routes exist on the
149
- // backend for the human review UI. Deciding an approval is a human action in
150
- // Axonity and no tool of this connector may take it — the same boundary
151
- // list_publish_approvals states, and test/exclusions.test.ts enforces.
148
+ server.tool("request_publish_release", "Request that a WORKFLOW AND EVERYTHING IT NEEDS go live as one release — " +
149
+ "the agents it runs, their tools and personas, the flows it pins, and the " +
150
+ "memory scoped to those agents. Prefer this over a request per entity: " +
151
+ "taking a tenant live entity-by-entity means a hundred-odd separate " +
152
+ "approvals, none of which means anything on its own, and a human asked " +
153
+ "that many times is not reviewing. " +
154
+ "\n\nThis does NOT publish and does NOT approve — it creates ONE pending " +
155
+ "approval a human decides in Axonity. Approving it publishes every member " +
156
+ "in dependency order, all-or-nothing: unlike request_publish_bulk, a " +
157
+ "failure on any member leaves NOTHING published, so a workflow can never " +
158
+ "go live calling a tool that did not. " +
159
+ "\n\nThe response is the bundle's verdict: `ready` for the whole release, " +
160
+ "`changedCount` of `totalCount` (only members that actually differ from " +
161
+ "what is live get published — the rest are already live and ride along), " +
162
+ "`members` with what each one's state is and why it is in the release, and " +
163
+ "`blockers` that NAME the member in the way. If it is not ready, fix the " +
164
+ "member the blocker names and request again — nothing was recorded as " +
165
+ "approved. " +
166
+ "\n\nA tenant-wide policy or reference doc is deliberately NOT in a " +
167
+ "release: it applies to every agent regardless of this workflow, so it is " +
168
+ "part of the environment and is published on its own.", {
169
+ workflowId: z
170
+ .string()
171
+ .describe("The workflow to release. Its closure is computed by the server."),
172
+ changeSummary: z
173
+ .string()
174
+ .optional()
175
+ .describe("A short note for the approver on what changed and why."),
176
+ }, async ({ workflowId, changeSummary }) => guard(async () => jsonResult(await client.post("/api/v1/publish-approvals/release", {
177
+ workflowId,
178
+ ...(changeSummary ? { changeSummary } : {}),
179
+ }))));
180
+ server.tool("list_publish_releases", "List this tenant's RELEASE approvals — the read-back for " +
181
+ "request_publish_release, which had none: the connector could propose a " +
182
+ "release and then had no way to see what became of it. Newest first, " +
183
+ "optionally filtered by status. Approving and rejecting a release are " +
184
+ "human-only actions in Axonity; no tool can take them. " +
185
+ "\n\nTHE RESPONSE IS ONE PAGE: { items, nextCursor, pageSize, hasMore }. " +
186
+ "Follow nextCursor until it is null. " +
187
+ "\n\nRows carry COUNTS (\"6 changed of 162\"), not the closure, and the " +
188
+ "verdict each shows is the one recorded when it was requested — see " +
189
+ "`readinessAsOf`. Open one with get_publish_release for its members and a " +
190
+ "verdict recomputed as of now.", {
191
+ status: z
192
+ .enum(["pending", "approved", "rejected"])
193
+ .optional()
194
+ .describe("Filter by status. Omit for all."),
195
+ limit: z.number().int().optional().describe("Page size. Default 20, max 200."),
196
+ cursor: z
197
+ .string()
198
+ .optional()
199
+ .describe("Opaque continuation cursor from the previous response's nextCursor. " +
200
+ "Omit for the first page. Do not parse or construct one."),
201
+ }, async ({ status, limit, cursor }) => guard(async () => jsonResult(await client.get("/api/v1/publish-approvals/release", {
202
+ status,
203
+ limit,
204
+ cursor,
205
+ }))));
206
+ server.tool("get_publish_release", "Read ONE release approval: its members, why each is in the release, and " +
207
+ "its readiness RECOMPUTED as you read — so a blocker you saw when you " +
208
+ "requested it may already be gone. This is how you follow up on a " +
209
+ "request_publish_release rather than re-listing the queue. " +
210
+ "\n\nApproving publishes every member in dependency order, all-or-nothing, " +
211
+ "and only a human can do it in Axonity.", {
212
+ releaseId: z
213
+ .string()
214
+ .describe("The release's id, from request_publish_release or list_publish_releases."),
215
+ }, async ({ releaseId }) => guard(async () => jsonResult(await client.get(`/api/v1/publish-approvals/release/${releaseId}`))));
216
+ // Deliberately absent: bulk approve and bulk reject, and the release
217
+ // approve/reject that came with them (axonity-flow#799). Those routes exist on
218
+ // the backend for the human review UI. Deciding an approval is a human action
219
+ // in Axonity and no tool of this connector may take it — the same boundary
220
+ // list_publish_approvals states, and test/exclusions.test.ts enforces. Reading
221
+ // a release back is not deciding it, which is why the two tools above are here.
152
222
  }
153
223
  export function registerExecutionTools(server, client) {
154
224
  server.tool("execute_tool", "Run tool code directly, WITHOUT saving it — the way to test a tool you are " +
@@ -1 +1 @@
1
- {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/tools/validation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/tools/validation.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEhD,MAAM,UAAU,uBAAuB,CACrC,MAAiB,EACjB,MAAqB;IAErB,MAAM,CAAC,IAAI,CACT,mBAAmB,EACnB,gFAAgF;QAC9E,uEAAuE;QACvE,yEAAyE;QACzE,YAAY;QACZ,uEAAuE;QACvE,2EAA2E;QAC3E,6EAA6E;QAC7E,4EAA4E;QAC5E,mEAAmE;QACnE,wEAAwE;QACxE,2EAA2E;QAC3E,+DAA+D;QAC/D,4EAA4E;QAC5E,6DAA6D;QAC7D,+DAA+D,EACjE;QACE,UAAU,EAAE,CAAC;aACV,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,wEAAwE;YACtE,yBAAyB,CAC5B;QACH,QAAQ,EAAE,CAAC;aACR,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;aACnB,QAAQ,EAAE;aACV,QAAQ,CACP,qEAAqE;YACnE,uCAAuC,CAC1C;KACJ,EACD,KAAK,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,EAAE,CACjC,KAAK,CAAC,KAAK,IAAI,EAAE;QACf,yEAAyE;QACzE,oEAAoE;QACpE,sDAAsD;QACtD,IAAI,CAAC,UAAU,KAAK,SAAS,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,EAAE,CAAC;YAC5D,MAAM,IAAI,KAAK,CACb,uEAAuE;gBACrE,kEAAkE;gBAClE,+DAA+D,CAClE,CAAC;QACJ,CAAC;QAED,OAAO,UAAU,CACf,UAAU,KAAK,SAAS;YACtB,CAAC,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,4BAA4B,EAAE,EAAE,QAAQ,EAAE,CAAC;YAC/D,CAAC,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,qBAAqB,UAAU,WAAW,CAAC,CAClE,CAAC;IACJ,CAAC,CAAC,CACL,CAAC;IAEF,MAAM,CAAC,IAAI,CACT,oCAAoC,EACpC,yEAAyE;QACvE,2EAA2E;QAC3E,oFAAoF,EACtF;QACE,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,wBAAwB,CAAC;QAClE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,2CAA2C,CAAC;KACzE,EACD,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,CAC7B,KAAK,CAAC,KAAK,IAAI,EAAE,CACf,UAAU,CACR,MAAM,MAAM,CAAC,IAAI,CAAC,qCAAqC,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAC/E,CACF,CACJ,CAAC;IAEF,MAAM,CAAC,IAAI,CACT,oBAAoB,EACpB,sEAAsE;QACpE,oEAAoE;QACpE,6EAA6E;QAC7E,SAAS,EACX;QACE,OAAO,EAAE,CAAC;aACP,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,qDAAqD,CAAC;QAClE,SAAS,EAAE,CAAC;aACT,KAAK,CACJ,CAAC,CAAC,MAAM,CAAC;YACP,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;YAC3C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;SACnD,CAAC,CACH;aACA,QAAQ,CAAC,kCAAkC,CAAC;QAC/C,OAAO,EAAE,CAAC;aACP,KAAK,CACJ,CAAC,CAAC,MAAM,CAAC;YACP,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC;YACxC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC;SAChD,CAAC,CACH;aACA,QAAQ,EAAE;aACV,QAAQ,CAAC,qCAAqC,CAAC;KACnD,EACD,KAAK,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE,CACxC,KAAK,CAAC,KAAK,IAAI,EAAE,CACf,UAAU,CACR,MAAM,MAAM,CAAC,IAAI,CAAC,6BAA6B,EAAE;QAC/C,OAAO,EAAE,OAAO,IAAI,EAAE;QACtB,SAAS;QACT,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAChC,CAAC,CACH,CACF,CACJ,CAAC;IAEF,MAAM,CAAC,IAAI,CACT,kBAAkB,EAClB,sEAAsE;QACpE,8EAA8E,EAChF,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC,EAAE,EAC7D,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CACjB,KAAK,CAAC,KAAK,IAAI,EAAE,CACf,UAAU,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CACrE,CACJ,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,MAAiB,EACjB,MAAqB;IAErB,MAAM,CAAC,IAAI,CACT,wBAAwB,EACxB,2EAA2E;QACzE,0EAA0E;QAC1E,yEAAyE;QACzE,0DAA0D;QAC1D,yEAAyE;QACzE,yEAAyE;QACzE,4EAA4E;QAC5E,4EAA4E,EAC9E;QACE,MAAM,EAAE,CAAC;aACN,IAAI,CAAC,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;aACzC,QAAQ,EAAE;aACV,QAAQ,CAAC,iCAAiC,CAAC;QAC9C,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC;QAC1E,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;KAClE,EACD,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,CAClC,KAAK,CAAC,KAAK,IAAI,EAAE,CACf,UAAU,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,2BAA2B,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CACrF,CACJ,CAAC;IAEF,MAAM,CAAC,IAAI,CACT,sBAAsB,EACtB,4EAA4E;QAC1E,yEAAyE;QACzE,yEAAyE;QACzE,0EAA0E;QAC1E,iEAAiE;QACjE,6CAA6C,EAC/C,EAAE,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sEAAsE,CAAC,EAAE,EAC3G,KAAK,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,CACvB,KAAK,CAAC,KAAK,IAAI,EAAE,CACf,UAAU,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,6BAA6B,UAAU,EAAE,CAAC,CAAC,CACxE,CACJ,CAAC;IAEF,MAAM,CAAC,IAAI,CACT,sBAAsB,EACtB,6EAA6E;QAC3E,wEAAwE;QACxE,2EAA2E;QAC3E,4EAA4E;QAC5E,mEAAmE;QACnE,4EAA4E;QAC5E,uDAAuD;QACvD,gEAAgE;QAChE,uEAAuE;QACvE,yEAAyE,EAC3E;QACE,QAAQ,EAAE,CAAC;aACR,KAAK,CACJ,CAAC,CAAC,MAAM,CAAC;YACP,UAAU,EAAE,CAAC;iBACV,IAAI,CAAC;gBACJ,UAAU;gBACV,OAAO;gBACP,MAAM;gBACN,OAAO;gBACP,QAAQ;gBACR,eAAe;gBACf,SAAS;gBACT,eAAe;gBACf,gBAAgB;gBAChB,MAAM;gBACN,SAAS;aACV,CAAC;iBACD,QAAQ,CAAC,2CAA2C,CAAC;YACxD,QAAQ,EAAE,CAAC;iBACR,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CACP,+DAA+D;gBAC7D,uCAAuC,CAC1C;YACH,aAAa,EAAE,CAAC;iBACb,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,wDAAwD,CAAC;SACtE,CAAC,CACH;aACA,GAAG,CAAC,CAAC,CAAC;aACN,GAAG,CAAC,GAAG,CAAC;aACR,QAAQ,CAAC,iDAAiD,CAAC;KAC/D,EACD,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CACrB,KAAK,CAAC,KAAK,IAAI,EAAE,CACf,UAAU,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,gCAAgC,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,CAC9E,CACJ,CAAC;IAEF,MAAM,CAAC,IAAI,CACT,yBAAyB,EACzB,2EAA2E;QACzE,2EAA2E;QAC3E,wEAAwE;QACxE,qEAAqE;QACrE,wEAAwE;QACxE,oCAAoC;QACpC,0EAA0E;QAC1E,2EAA2E;QAC3E,sEAAsE;QACtE,0EAA0E;QAC1E,uCAAuC;QACvC,2EAA2E;QAC3E,yEAAyE;QACzE,0EAA0E;QAC1E,4EAA4E;QAC5E,0EAA0E;QAC1E,uEAAuE;QACvE,YAAY;QACZ,qEAAqE;QACrE,2EAA2E;QAC3E,sDAAsD,EACxD;QACE,UAAU,EAAE,CAAC;aACV,MAAM,EAAE;aACR,QAAQ,CAAC,iEAAiE,CAAC;QAC9E,aAAa,EAAE,CAAC;aACb,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,wDAAwD,CAAC;KACtE,EACD,KAAK,EAAE,EAAE,UAAU,EAAE,aAAa,EAAE,EAAE,EAAE,CACtC,KAAK,CAAC,KAAK,IAAI,EAAE,CACf,UAAU,CACR,MAAM,MAAM,CAAC,IAAI,CAAC,mCAAmC,EAAE;QACrD,UAAU;QACV,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5C,CAAC,CACH,CACF,CACJ,CAAC;IAEF,MAAM,CAAC,IAAI,CACT,uBAAuB,EACvB,2DAA2D;QACzD,yEAAyE;QACzE,sEAAsE;QACtE,uEAAuE;QACvE,wDAAwD;QACxD,0EAA0E;QAC1E,sCAAsC;QACtC,yEAAyE;QACzE,qEAAqE;QACrE,2EAA2E;QAC3E,+BAA+B,EACjC;QACE,MAAM,EAAE,CAAC;aACN,IAAI,CAAC,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;aACzC,QAAQ,EAAE;aACV,QAAQ,CAAC,iCAAiC,CAAC;QAC9C,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;QAC9E,MAAM,EAAE,CAAC;aACN,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,sEAAsE;YACpE,yDAAyD,CAC5D;KACJ,EACD,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,CAClC,KAAK,CAAC,KAAK,IAAI,EAAE,CACf,UAAU,CACR,MAAM,MAAM,CAAC,GAAG,CAAC,mCAAmC,EAAE;QACpD,MAAM;QACN,KAAK;QACL,MAAM;KACP,CAAC,CACH,CACF,CACJ,CAAC;IAEF,MAAM,CAAC,IAAI,CACT,qBAAqB,EACrB,0EAA0E;QACxE,uEAAuE;QACvE,mEAAmE;QACnE,4DAA4D;QAC5D,4EAA4E;QAC5E,wCAAwC,EAC1C;QACE,SAAS,EAAE,CAAC;aACT,MAAM,EAAE;aACR,QAAQ,CAAC,0EAA0E,CAAC;KACxF,EACD,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,CACtB,KAAK,CAAC,KAAK,IAAI,EAAE,CACf,UAAU,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,qCAAqC,SAAS,EAAE,CAAC,CAAC,CAC/E,CACJ,CAAC;IAEF,qEAAqE;IACrE,+EAA+E;IAC/E,8EAA8E;IAC9E,2EAA2E;IAC3E,+EAA+E;IAC/E,gFAAgF;AAClF,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,MAAiB,EACjB,MAAqB;IAErB,MAAM,CAAC,IAAI,CACT,cAAc,EACd,6EAA6E;QAC3E,wEAAwE;QACxE,2EAA2E;QAC3E,0EAA0E;QAC1E,0EAA0E;QAC1E,yEAAyE;QACzE,yEAAyE;QACzE,6EAA6E;QAC7E,0EAA0E;QAC1E,SAAS,EACX;QACE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sCAAsC,CAAC;QAC/E,SAAS,EAAE,CAAC;aACT,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;aACvD,QAAQ,CAAC,gCAAgC,CAAC;QAC7C,OAAO,EAAE,CAAC;aACP,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;aACvD,QAAQ,EAAE;aACV,QAAQ,CAAC,4BAA4B,CAAC;QACzC,WAAW,EAAE,CAAC;aACX,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;aACnB,QAAQ,EAAE;aACV,QAAQ,CAAC,kDAAkD,CAAC;QAC/D,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;QACrF,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2CAA2C,CAAC;KACpF,EACD,KAAK,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,CACtE,KAAK,CAAC,KAAK,IAAI,EAAE,CACf,UAAU,CACR,MAAM,MAAM,CAAC,IAAI,CAAC,uBAAuB,EAAE;QACzC,OAAO,EAAE,OAAO,IAAI,EAAE;QACtB,SAAS;QACT,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/B,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/B,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC9B,CAAC,CACH,CACF,CACJ,CAAC;IAEF,MAAM,CAAC,IAAI,CACT,cAAc,EACd,4EAA4E;QAC1E,0EAA0E;QAC1E,gEAAgE;QAChE,0EAA0E;QAC1E,mEAAmE;QACnE,0BAA0B;QAC1B,2EAA2E;QAC3E,yDAAyD;QACzD,mEAAmE;QACnE,wEAAwE;QACxE,oDAAoD,EACtD;QACE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;QACnD,WAAW,EAAE,CAAC;aACX,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;aACnB,QAAQ,EAAE;aACV,QAAQ,CACP,wEAAwE;YACtE,sEAAsE;YACtE,2BAA2B,CAC9B;KACJ,EACD,KAAK,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,EAAE,CAChC,KAAK,CAAC,KAAK,IAAI,EAAE,CACf,UAAU,CACR,MAAM,MAAM,CAAC,IAAI,CAAC,iBAAiB,MAAM,UAAU,EAAE;QACnD,WAAW,EAAE,WAAW,IAAI,EAAE;KAC/B,CAAC,CACH,CACF,CACJ,CAAC;IAEF,MAAM,CAAC,IAAI,CACT,0BAA0B,EAC1B,6EAA6E;QAC3E,sEAAsE;QACtE,wEAAwE;QACxE,2EAA2E;QAC3E,2EAA2E;QAC3E,4EAA4E;QAC5E,2EAA2E,EAC7E;QACE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kDAAkD,CAAC;QAC/E,WAAW,EAAE,CAAC;aACX,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;aACnB,QAAQ,EAAE;aACV,QAAQ,CAAC,oCAAoC,CAAC;KAClD,EACD,KAAK,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,EAAE,CAChC,KAAK,CAAC,KAAK,IAAI,EAAE,CACf,UAAU,CACR,MAAM,MAAM,CAAC,IAAI,CAAC,iBAAiB,MAAM,oBAAoB,EAAE;QAC7D,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACxC,CAAC,CACH,CACF,CACJ,CAAC;AACJ,CAAC"}
@@ -6,6 +6,15 @@
6
6
  * - `version` — an INTEGER checkpoint number (1, 2, 3 …), used to read one.
7
7
  * - `versionId` — the UUID of the version row, used to restore/delete it.
8
8
  *
9
+ * A MAJOR version is a named release inside that history, and all four verbs
10
+ * exist for it: `create_*_major_version` cuts a new one ("Save As" on the
11
+ * current draft), `ensure_*_major_version` makes sure an unnamed working one
12
+ * exists (idempotent), `name_*_major_version` renames one, and the list/read/
13
+ * restore verbs above reach them like any other version. Creating one used to
14
+ * be the missing verb — the connector could list, read, restore, delete and
15
+ * rename a named major but not cut one, which `ENTITY-LIFECYCLE-CONTRACT.md`
16
+ * treats as a first-class act.
17
+ *
9
18
  * There are also two unrelated things both called "restore" here:
10
19
  * - `restore_<entity>_version` — roll the DRAFT back to an old,
11
20
  * still-live version. Takes `expectedVersion` in the body.
@@ -6,6 +6,15 @@
6
6
  * - `version` — an INTEGER checkpoint number (1, 2, 3 …), used to read one.
7
7
  * - `versionId` — the UUID of the version row, used to restore/delete it.
8
8
  *
9
+ * A MAJOR version is a named release inside that history, and all four verbs
10
+ * exist for it: `create_*_major_version` cuts a new one ("Save As" on the
11
+ * current draft), `ensure_*_major_version` makes sure an unnamed working one
12
+ * exists (idempotent), `name_*_major_version` renames one, and the list/read/
13
+ * restore verbs above reach them like any other version. Creating one used to
14
+ * be the missing verb — the connector could list, read, restore, delete and
15
+ * rename a named major but not cut one, which `ENTITY-LIFECYCLE-CONTRACT.md`
16
+ * treats as a first-class act.
17
+ *
9
18
  * There are also two unrelated things both called "restore" here:
10
19
  * - `restore_<entity>_version` — roll the DRAFT back to an old,
11
20
  * still-live version. Takes `expectedVersion` in the body.
@@ -84,6 +93,33 @@ export function registerVersionTools(server, client, { singular, basePath, publi
84
93
  .string()
85
94
  .describe(`The version row's UUID, from list_deleted_${singular}_versions.`),
86
95
  }, async ({ id, versionId }) => guard(async () => jsonResult(await client.post(`${basePath}/${id}/versions/${versionId}/restore-deleted`))));
96
+ server.tool(`create_${singular}_major_version`, `Cut a new NAMED major version of a ${singular} — "Save As" for the ` +
97
+ `current draft. The draft's state becomes a labelled release in history ` +
98
+ `and work continues from there. Use it to mark a milestone you may want ` +
99
+ `to come back to by name rather than by hunting through checkpoints. ` +
100
+ `\n\nThis does NOT publish: what is live stays live until a human ` +
101
+ `approves a request_publish_${singular}. Renaming an existing major ` +
102
+ `version is name_${singular}_major_version; this creates one.`, {
103
+ id: z.string().describe(`The ${singular}'s id.`),
104
+ name: z
105
+ .string()
106
+ .min(1)
107
+ .max(255)
108
+ .describe('What to call this release, e.g. "Pre-migration baseline".'),
109
+ description: z
110
+ .string()
111
+ .optional()
112
+ .describe("A longer note on what this version represents."),
113
+ }, async ({ id, name, description }) => guard(async () => jsonResult(await client.post(`${basePath}/${id}/versions`, {
114
+ name,
115
+ ...(description ? { description } : {}),
116
+ }))));
117
+ server.tool(`ensure_${singular}_major_version`, `Make sure a ${singular} has a working draft major version, creating an ` +
118
+ `unnamed one ("Version N") if it has none. IDEMPOTENT — calling it when ` +
119
+ `one already exists changes nothing and returns the same answer, so it is ` +
120
+ `safe to call before a run of edits. Returns the draft's major version ` +
121
+ `number and name. Use create_${singular}_major_version when you want a ` +
122
+ `NAMED release instead.`, { id: z.string().describe(`The ${singular}'s id.`) }, async ({ id }) => guard(async () => jsonResult(await client.post(`${basePath}/${id}/versions/ensure`))));
87
123
  server.tool(`name_${singular}_major_version`, `Give a ${singular}'s major version a name — label a release so it is easy to ` +
88
124
  `find in history. Targets a MAJOR version by its integer number (from ` +
89
125
  `list_${singular}_versions), not a checkpoint or a versionId. This only ` +
@@ -1 +1 @@
1
- {"version":3,"file":"versions.js","sourceRoot":"","sources":["../../src/tools/versions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAGH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEhD,+EAA+E;AAC/E,MAAM,OAAO,GAAG,CAAC;KACd,OAAO,CAAC,IAAI,CAAC;KACb,QAAQ,CAAC,gEAAgE,CAAC,CAAC;AAe9E,MAAM,UAAU,oBAAoB,CAClC,MAAiB,EACjB,MAAqB,EACrB,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAmB;IAEtD,MAAM,CAAC,IAAI,CACT,QAAQ,QAAQ,WAAW,EAC3B,UAAU,QAAQ,0DAA0D;QAC1E,yEAAyE;QACzE,WAAW,QAAQ,WAAW,EAChC;QACE,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,QAAQ,QAAQ,CAAC;QAChD,IAAI,EAAE,CAAC;aACJ,IAAI,CAAC,CAAC,YAAY,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;aACpC,QAAQ,EAAE;aACV,QAAQ,CAAC,sCAAsC,CAAC;QACnD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC;QAC1E,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;KAClE,EACD,KAAK,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,CACpC,KAAK,CAAC,KAAK,IAAI,EAAE,CACf,UAAU,CACR,MAAM,MAAM,CAAC,GAAG,CAAC,GAAG,QAAQ,IAAI,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CACxE,CACF,CACJ,CAAC;IAEF,MAAM,CAAC,IAAI,CACT,QAAQ,QAAQ,UAAU,EAC1B,oCAAoC,QAAQ,gCAAgC;QAC1E,sDAAsD,QAAQ,eAAe;QAC7E,wEAAwE,EAC1E;QACE,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,QAAQ,QAAQ,CAAC;QAChD,OAAO,EAAE,CAAC;aACP,MAAM,EAAE;aACR,GAAG,EAAE;aACL,QAAQ,CAAC,wCAAwC,CAAC;KACtD,EACD,KAAK,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CACxB,KAAK,CAAC,KAAK,IAAI,EAAE,CACf,UAAU,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,GAAG,QAAQ,IAAI,EAAE,aAAa,OAAO,EAAE,CAAC,CAAC,CACtE,CACJ,CAAC;IAEF,MAAM,CAAC,IAAI,CACT,WAAW,QAAQ,UAAU,EAC7B,UAAU,QAAQ,2DAA2D;QAC3E,qBAAqB,QAAQ,6CAA6C;QAC1E,qEAAqE;QACrE,4EAA4E;QAC5E,cAAc,EAChB;QACE,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,QAAQ,QAAQ,CAAC;QAChD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;QACzD,eAAe,EAAE,CAAC;aACf,MAAM,EAAE;aACR,GAAG,EAAE;aACL,QAAQ,CAAC,iDAAiD,CAAC;KAC/D,EACD,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,eAAe,EAAE,EAAE,EAAE,CAC3C,KAAK,CAAC,KAAK,IAAI,EAAE,CACf,UAAU,CACR,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,IAAI,EAAE,aAAa,SAAS,UAAU,EAAE;QACnE,eAAe;KAChB,CAAC,CACH,CACF,CACJ,CAAC;IAEF,MAAM,CAAC,IAAI,CACT,UAAU,QAAQ,UAAU,EAC5B,uCAAuC,QAAQ,0BAA0B;QACvE,sEAAsE;QACtE,gDAAgD;QAChD,mBAAmB,QAAQ,uCAAuC,EACpE;QACE,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,QAAQ,QAAQ,CAAC;QAChD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,qDAAqD,CAAC;QACrF,OAAO,EAAE,OAAO;KACjB,EACD,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,CAC1B,KAAK,CAAC,KAAK,IAAI,EAAE;QACf,MAAM,MAAM,CAAC,GAAG,CAAC,GAAG,QAAQ,IAAI,EAAE,aAAa,SAAS,EAAE,CAAC,CAAC;QAC5D,OAAO,UAAU,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;IACtD,CAAC,CAAC,CACL,CAAC;IAEF,MAAM,CAAC,IAAI,CACT,gBAAgB,QAAQ,WAAW,EACnC,UAAU,QAAQ,mDAAmD;QACnE,mBAAmB,QAAQ,yCAAyC;QACpE,+EAA+E,EACjF,EAAE,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,QAAQ,QAAQ,CAAC,EAAE,EACpD,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CACf,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,GAAG,QAAQ,IAAI,EAAE,mBAAmB,CAAC,CAAC,CAAC,CACxF,CAAC;IAEF,MAAM,CAAC,IAAI,CACT,mBAAmB,QAAQ,UAAU,EACrC,eAAe,QAAQ,mDAAmD;QACxE,0DAA0D;QAC1D,WAAW,QAAQ,sDAAsD;QACzE,gCAAgC,EAClC;QACE,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,QAAQ,QAAQ,CAAC;QAChD,SAAS,EAAE,CAAC;aACT,MAAM,EAAE;aACR,QAAQ,CAAC,6CAA6C,QAAQ,YAAY,CAAC;KAC/E,EACD,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,CAC1B,KAAK,CAAC,KAAK,IAAI,EAAE,CACf,UAAU,CACR,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,IAAI,EAAE,aAAa,SAAS,kBAAkB,CAAC,CAC7E,CACF,CACJ,CAAC;IAEF,MAAM,CAAC,IAAI,CACT,QAAQ,QAAQ,gBAAgB,EAChC,UAAU,QAAQ,6DAA6D;QAC7E,uEAAuE;QACvE,QAAQ,QAAQ,yDAAyD;QACzE,8DAA8D,EAChE;QACE,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,QAAQ,QAAQ,CAAC;QAChD,YAAY,EAAE,CAAC;aACZ,MAAM,EAAE;aACR,GAAG,EAAE;aACL,QAAQ,CAAC,6CAA6C,CAAC;QAC1D,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,sCAAsC,CAAC;KAClF,EACD,KAAK,EAAE,EAAE,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,EAAE,CACnC,KAAK,CAAC,KAAK,IAAI,EAAE,CACf,UAAU,CACR,MAAM,MAAM,CAAC,KAAK,CAChB,GAAG,QAAQ,IAAI,EAAE,mBAAmB,YAAY,EAAE,EAClD,EAAE,IAAI,EAAE,CACT,CACF,CACF,CACJ,CAAC;IAEF,MAAM,CAAC,IAAI,CACT,QAAQ,QAAQ,YAAY,EAC5B,wCAAwC,QAAQ,sBAAsB;QACpE,oDAAoD,QAAQ,YAAY;QACxE,0DAA0D,EAC5D,EAAE,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,QAAQ,QAAQ,CAAC,EAAE,EACpD,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CACf,KAAK,CAAC,KAAK,IAAI,EAAE,CACf,UAAU,CACR,MAAM,MAAM,CAAC,GAAG,CACd,aAAa,KAAK,QAAQ;QACxB,CAAC,CAAC,GAAG,QAAQ,IAAI,EAAE,YAAY;QAC/B,CAAC,CAAC,GAAG,QAAQ,IAAI,EAAE,qBAAqB,CAC3C,CACF,CACF,CACJ,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"versions.js","sourceRoot":"","sources":["../../src/tools/versions.ts"],"names":[],"mappings":"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"}