@minicor/mcp-server 4.18.1 → 4.19.1

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 (100) hide show
  1. package/README.md +32 -12
  2. package/dist/__tests__/appmap-tools.test.d.ts +2 -0
  3. package/dist/__tests__/appmap-tools.test.d.ts.map +1 -0
  4. package/dist/__tests__/appmap-tools.test.js +254 -0
  5. package/dist/__tests__/appmap-tools.test.js.map +1 -0
  6. package/dist/__tests__/config-stores.test.js +5 -2
  7. package/dist/__tests__/config-stores.test.js.map +1 -1
  8. package/dist/__tests__/jobs-tools.test.js +2 -0
  9. package/dist/__tests__/jobs-tools.test.js.map +1 -1
  10. package/dist/__tests__/laminar-client.test.js +33 -0
  11. package/dist/__tests__/laminar-client.test.js.map +1 -1
  12. package/dist/__tests__/middleware-service-client.test.js +15 -0
  13. package/dist/__tests__/middleware-service-client.test.js.map +1 -1
  14. package/dist/__tests__/resource-id.test.d.ts +2 -0
  15. package/dist/__tests__/resource-id.test.d.ts.map +1 -0
  16. package/dist/__tests__/resource-id.test.js +15 -0
  17. package/dist/__tests__/resource-id.test.js.map +1 -0
  18. package/dist/__tests__/server-surface.test.js +131 -2
  19. package/dist/__tests__/server-surface.test.js.map +1 -1
  20. package/dist/__tests__/skills.test.d.ts +2 -0
  21. package/dist/__tests__/skills.test.d.ts.map +1 -0
  22. package/dist/__tests__/skills.test.js +18 -0
  23. package/dist/__tests__/skills.test.js.map +1 -0
  24. package/dist/bootstrap-perms.d.ts.map +1 -1
  25. package/dist/bootstrap-perms.js +19 -0
  26. package/dist/bootstrap-perms.js.map +1 -1
  27. package/dist/helpers.js +1 -1
  28. package/dist/helpers.js.map +1 -1
  29. package/dist/index.d.ts.map +1 -1
  30. package/dist/index.js +2 -2
  31. package/dist/index.js.map +1 -1
  32. package/dist/laminar-client.d.ts +62 -46
  33. package/dist/laminar-client.d.ts.map +1 -1
  34. package/dist/laminar-client.js +47 -46
  35. package/dist/laminar-client.js.map +1 -1
  36. package/dist/lib.d.ts.map +1 -1
  37. package/dist/lib.js +2 -2
  38. package/dist/lib.js.map +1 -1
  39. package/dist/middleware/tool-error.d.ts +9 -0
  40. package/dist/middleware/tool-error.d.ts.map +1 -0
  41. package/dist/middleware/tool-error.js +17 -0
  42. package/dist/middleware/tool-error.js.map +1 -0
  43. package/dist/middleware-service-client.d.ts +72 -7
  44. package/dist/middleware-service-client.d.ts.map +1 -1
  45. package/dist/middleware-service-client.js +26 -8
  46. package/dist/middleware-service-client.js.map +1 -1
  47. package/dist/resource-id.d.ts +5 -0
  48. package/dist/resource-id.d.ts.map +1 -0
  49. package/dist/resource-id.js +13 -0
  50. package/dist/resource-id.js.map +1 -0
  51. package/dist/server-surface.d.ts +1 -10
  52. package/dist/server-surface.d.ts.map +1 -1
  53. package/dist/server-surface.js +41 -10
  54. package/dist/server-surface.js.map +1 -1
  55. package/dist/sync.d.ts +11 -9
  56. package/dist/sync.d.ts.map +1 -1
  57. package/dist/sync.js +12 -4
  58. package/dist/sync.js.map +1 -1
  59. package/dist/tools/appmap.d.ts +256 -0
  60. package/dist/tools/appmap.d.ts.map +1 -0
  61. package/dist/tools/appmap.js +326 -0
  62. package/dist/tools/appmap.js.map +1 -0
  63. package/dist/tools/config-stores.js +11 -11
  64. package/dist/tools/config-stores.js.map +1 -1
  65. package/dist/tools/configuration-references.d.ts +3 -0
  66. package/dist/tools/configuration-references.d.ts.map +1 -0
  67. package/dist/tools/configuration-references.js +30 -0
  68. package/dist/tools/configuration-references.js.map +1 -0
  69. package/dist/tools/core.d.ts.map +1 -1
  70. package/dist/tools/core.js +56 -55
  71. package/dist/tools/core.js.map +1 -1
  72. package/dist/tools/discovery.d.ts.map +1 -1
  73. package/dist/tools/discovery.js +2 -1
  74. package/dist/tools/discovery.js.map +1 -1
  75. package/dist/tools/drafts.d.ts +3 -0
  76. package/dist/tools/drafts.d.ts.map +1 -0
  77. package/dist/tools/drafts.js +35 -0
  78. package/dist/tools/drafts.js.map +1 -0
  79. package/dist/tools/job-webhook-defaults.d.ts +3 -0
  80. package/dist/tools/job-webhook-defaults.d.ts.map +1 -0
  81. package/dist/tools/job-webhook-defaults.js +25 -0
  82. package/dist/tools/job-webhook-defaults.js.map +1 -0
  83. package/dist/tools/jobs.d.ts.map +1 -1
  84. package/dist/tools/jobs.js +109 -70
  85. package/dist/tools/jobs.js.map +1 -1
  86. package/dist/tools/recording-common.d.ts +3 -2
  87. package/dist/tools/recording-common.d.ts.map +1 -1
  88. package/dist/tools/recording-common.js.map +1 -1
  89. package/dist/tools/recording.d.ts.map +1 -1
  90. package/dist/tools/recording.js +10 -12
  91. package/dist/tools/recording.js.map +1 -1
  92. package/dist/tools/sync-tools.d.ts.map +1 -1
  93. package/dist/tools/sync-tools.js +6 -7
  94. package/dist/tools/sync-tools.js.map +1 -1
  95. package/dist/tools/workflow-ops.d.ts.map +1 -1
  96. package/dist/tools/workflow-ops.js +9 -8
  97. package/dist/tools/workflow-ops.js.map +1 -1
  98. package/package.json +1 -1
  99. package/skills/general/job-webhooks.md +2 -2
  100. package/skills/general/rpa-build-framework.md +87 -0
@@ -0,0 +1,326 @@
1
+ /**
2
+ * MCP tools for the App Map — the harness's shared memory of an application
3
+ * (minicor-agent-service-harness §4.1): one arctic-vault document per
4
+ * blueprint (kind `appmap`) holding named screen states, how to detect each,
5
+ * how to reach it, the elements steps reference, and the blockers in the
6
+ * way. The Mapper and Fixer write it; the Author and Verifier read it. Reuse
7
+ * across builds is the point: the second build of the same app maps nothing.
8
+ *
9
+ * VERSIONING: the map's `version` is the vault revision. Writes are CAS on
10
+ * `baseVersion`; a concurrent writer surfaces as a structured `rev_conflict`
11
+ * block — re-read and re-apply, never retry blindly. Customer edits arrive as
12
+ * proposals on the middleware side (v3-build-card), not through these tools.
13
+ *
14
+ * TRANSPORT: middleware-service's blueprint sub-resource
15
+ * (`/api/workspaces/:ws/blueprints/:id/appmap…`) with the caller's bearer —
16
+ * the same client and auth realm as every other blueprint tool. Middleware
17
+ * owns the vault credential and the schema; this file only validates the
18
+ * tool parameters client-side and maps the service's structured errors to
19
+ * the blocks agents already know.
20
+ */
21
+ import { z } from "zod";
22
+ import { ok, text } from "../helpers.js";
23
+ import { middlewareToolError } from "../middleware/tool-error.js";
24
+ import { MiddlewareServiceClient, MiddlewareServiceError } from "../middleware-service-client.js";
25
+ // SCHEMA PARITY: every field below mirrors middleware-service
26
+ // src/authoring/blueprints/appmap/appmap.schema.ts (THE contract) — a field the
27
+ // tool schema lacks is a field zod strips before the PUT, so a valid map would
28
+ // be silently changed on save. Field semantics: agent-service harness/appmap.ts.
29
+ export const STATE_ID_RE = /^[A-Z][A-Z0-9_]{0,63}$/;
30
+ const stateIdSchema = z.string().regex(STATE_ID_RE, "state ids are UPPER_SNAKE, e.g. HCHB_READY");
31
+ const refSchema = z.string().min(1).max(128);
32
+ const int = (min, max) => z.number().int().min(min).max(max);
33
+ const uiaLocatorSchema = z
34
+ .object({
35
+ AutomationId: z.string().optional(),
36
+ Name: z.string().optional(),
37
+ ControlType: z.string().optional(),
38
+ ClassName: z.string().optional(),
39
+ })
40
+ .refine((u) => Object.values(u).some(Boolean), "uia locator needs a property");
41
+ /** Verified pixel geometry for canvas-drawn cells/tiles/labels (Tk, Swing, Citrix) that expose no dom/uia text. */
42
+ const regionSchema = z.object({
43
+ x: z.number().int().nonnegative(),
44
+ y: z.number().int().nonnegative(),
45
+ w: z.number().int().positive(),
46
+ h: z.number().int().positive(),
47
+ relativeTo: z.enum(["window", "screen"]).default("window").describe("Origin of x/y: the detect window's rect (default) or the screen"),
48
+ });
49
+ /** OCR detect: `pattern` (case-insensitive regex) must match the OCR of `region`, or of this state's verified region element `ref`. */
50
+ const ocrDetectSchema = z
51
+ .object({
52
+ ref: refSchema.optional().describe("A verified region element of this state whose OCR the pattern must match"),
53
+ region: regionSchema.optional(),
54
+ pattern: z.string().min(1).max(200),
55
+ scale: int(1, 4).optional(),
56
+ pad: int(0, 32).optional(),
57
+ })
58
+ .refine((o) => Boolean(o.ref || o.region), "ocr needs ref (a verified region element of this state) or region")
59
+ .refine((o) => { try {
60
+ new RegExp(o.pattern, "i");
61
+ return true;
62
+ }
63
+ catch {
64
+ return false;
65
+ } }, "ocr.pattern must be a valid regex");
66
+ /** Exactly the predicates s1-observation's read_state evaluates: dom | window | uia | anchor | ocr. */
67
+ export const appMapDetectSchema = z
68
+ .object({
69
+ dom: z.string().min(1).optional(),
70
+ uia: uiaLocatorSchema.optional(),
71
+ window: z.object({ titlePrefix: z.string().min(1), zoomed: z.boolean().optional() }).optional(),
72
+ anchor: z.string().min(1).optional(),
73
+ ocr: ocrDetectSchema.optional(),
74
+ })
75
+ .refine((d) => Boolean(d.dom || d.uia || d.window?.titlePrefix || d.anchor || d.ocr), "detect needs at least one predicate (dom | window.titlePrefix | uia | anchor | ocr)");
76
+ /** How the prelude's read_element OCRs a region element: kind + the scale/pad that read back right. */
77
+ const readSchema = z.object({ kind: z.enum(["number", "line", "block"]), scale: int(1, 4).optional(), pad: int(0, 32).optional() });
78
+ /** The Mapper's read_region proof on a saved region: when, how many characters read back (never the value), at which scale/pad. */
79
+ const verifiedSchema = z.object({
80
+ at: z.string().datetime(),
81
+ text: z.number().int().nonnegative(),
82
+ scale: z.number().int().optional(),
83
+ pad: z.number().int().optional(),
84
+ });
85
+ export const appMapElementSchema = z
86
+ .object({
87
+ dom: z.string().optional(),
88
+ uia: uiaLocatorSchema.optional(),
89
+ anchor: z.string().optional(),
90
+ region: regionSchema.optional(),
91
+ read: readSchema.optional(),
92
+ verified: verifiedSchema.optional(),
93
+ description: z.string().optional(),
94
+ })
95
+ .refine((e) => Boolean(e.dom || e.uia || e.anchor || e.region), "element needs a locator (dom | uia | anchor | region)");
96
+ export const appMapBlockerSchema = z.object({
97
+ kind: z.enum(["modal", "dialog", "toast", "popup", "2fa", "other"]),
98
+ text: z.string().optional(),
99
+ detect: appMapDetectSchema.optional(),
100
+ dismiss: z.string().optional(),
101
+ });
102
+ const appMapStateShape = z.object({
103
+ detect: appMapDetectSchema,
104
+ screenshot: z
105
+ .string()
106
+ .regex(/^vault:\/\/blob\//, "screenshot is a vault://blob/<sha256> ref")
107
+ .optional(),
108
+ reachedBy: z.array(z.object({ from: stateIdSchema, via: z.string().min(1) })).default([]),
109
+ elements: z.record(refSchema, appMapElementSchema).default({}),
110
+ blockers: z.array(appMapBlockerSchema).default([]),
111
+ screens: z.array(z.string().min(1)).default([]).describe("Blueprint screen names this state IS (the explicit screen↔state link)"),
112
+ });
113
+ /** A whole state: detect.ocr.ref must name one of ITS elements with a verified region (middleware re-checks after merge). */
114
+ export const appMapStateSchema = appMapStateShape.refine((s) => { const r = s.detect.ocr?.ref; return !r || Boolean(s.elements[r]?.region && s.elements[r]?.verified); }, { path: ["detect", "ocr", "ref"], message: "detect.ocr.ref must name a verified region element of this state" });
115
+ const appMapStatePatchSchema = appMapStateShape.partial();
116
+ export const gotchaSchema = z.object({
117
+ symptom: z.string().min(1),
118
+ fix: z.string().min(1),
119
+ since: z.string().optional(),
120
+ });
121
+ const loginSchema = z.object({
122
+ workflowId: z.number().int().positive(),
123
+ outputState: stateIdSchema,
124
+ });
125
+ const teardownSchema = z.object({
126
+ workflowId: z.number().int().positive(),
127
+ keepList: z.array(z.string()).default([]),
128
+ });
129
+ const regionParam = z
130
+ .enum(["us", "ca"])
131
+ .optional()
132
+ .describe("Region (us or ca). Auto-detected from workspace if omitted.");
133
+ const blueprintIdParam = z
134
+ .string()
135
+ .uuid("blueprintId must be a uuid; call blueprint_list to get real ids")
136
+ .describe("Blueprint ID (uuid)");
137
+ const stateIdParam = stateIdSchema.describe("Named screen state, UPPER_SNAKE (e.g. HCHB_READY, PATIENT_SEARCH)");
138
+ /** Structured error body middleware sends on the appmap routes ({ error, currentVersion?, issues?, ... }). */
139
+ const payloadOf = (e) => e instanceof MiddlewareServiceError ? (e.payload ?? {}) : {};
140
+ const errorCode = (e) => {
141
+ const code = payloadOf(e).error;
142
+ return typeof code === "string" ? code : undefined;
143
+ };
144
+ export function register(deps) {
145
+ const { server } = deps;
146
+ function resolveRegion(workspaceId, explicit) {
147
+ if (explicit)
148
+ return explicit;
149
+ return deps.state.getWorkspaceRegion(workspaceId) ?? undefined;
150
+ }
151
+ function getClient(region) {
152
+ return new MiddlewareServiceClient(deps.getApiBase(region), deps.getAuthToken?.(region) || "", {
153
+ sessionRefreshToken: deps.getSessionRefreshToken?.(region),
154
+ });
155
+ }
156
+ const appMapPath = (workspaceId, blueprintId) => `/api/workspaces/${workspaceId}/blueprints/${blueprintId}/appmap`;
157
+ /** Deletion appends a `tombstoned` revision, so `currentVersion` IS the tombstone — the last content lives one live revision earlier. */
158
+ function tombstoneNextActions(blueprintId, currentVersion) {
159
+ return [
160
+ `Recover the prior content: appmap_history blueprintId=${blueprintId} (lastLiveVersion = the newest non-tombstoned version), then appmap_get version=<lastLiveVersion>. Do NOT read version=${currentVersion ?? "<currentVersion>"}: that is the tombstone itself.`,
161
+ `Revive deliberately: appmap_upsert_state blueprintId=${blueprintId} baseVersion=${currentVersion ?? "<currentVersion>"} app=<app name> (required: the map is rebuilt from empty) with the state to write; re-write the states you need from the recovered snapshot.`,
162
+ ];
163
+ }
164
+ function tombstonedBlock(blueprintId, currentVersion) {
165
+ return ok({
166
+ status: "blocked",
167
+ blocked: {
168
+ reason: "tombstoned",
169
+ retryable: true,
170
+ currentVersion,
171
+ message: `This blueprint's App Map was tombstoned (deleted) at version ${currentVersion ?? "?"}; a write at that base revives it.`,
172
+ },
173
+ nextActions: tombstoneNextActions(blueprintId, currentVersion),
174
+ });
175
+ }
176
+ function revConflictBlock(blueprintId, currentVersion, message) {
177
+ return ok({
178
+ status: "blocked",
179
+ blocked: { reason: "rev_conflict", retryable: true, currentVersion, message },
180
+ nextActions: [
181
+ `appmap_get blueprintId=${blueprintId} for the current head, re-apply your change, then upsert with baseVersion=${currentVersion ?? "<currentVersion>"}.`,
182
+ ],
183
+ });
184
+ }
185
+ // ── appmap_get ─────────────────────────────────────────────
186
+ server.tool("appmap_get", "Read a blueprint's App Map: the app's named screen states (detect predicates, reachedBy routes, elements, blockers, screenshot refs), login/teardown workflow refs, and the gotchas ledger. Pass `states` to slice the map to the states a section touches (the map's stateIds always come back). `version` is the vault revision — the baseline for appmap_upsert_state's CAS. status=absent means nobody has mapped this app yet: run the Mapper (or appmap_upsert_state with `app`) before authoring; status=tombstoned means it was deleted — currentVersion is the tombstone revision, so recover content via appmap_history → appmap_get version=<lastLiveVersion>, and revive via appmap_upsert_state baseVersion=currentVersion app=...", {
187
+ workspaceId: z.number().describe("Workspace ID"),
188
+ blueprintId: blueprintIdParam,
189
+ states: z.array(stateIdSchema).optional().describe("Only return these states (default: all)"),
190
+ summary: z
191
+ .boolean()
192
+ .optional()
193
+ .describe("Return the map's shape without its bulk: per state only detect + reachedBy + element/blocker counts; no elements, blockers, gotchas or screenshots. Use first, then appmap_get states=[...] or appmap_find_element for detail."),
194
+ version: z
195
+ .number()
196
+ .int()
197
+ .positive()
198
+ .optional()
199
+ .describe("Read this historical version instead of the head (see appmap_history)"),
200
+ region: regionParam,
201
+ }, async ({ workspaceId, blueprintId, states, summary, version, region }) => {
202
+ try {
203
+ const query = new URLSearchParams();
204
+ if (version)
205
+ query.set("version", String(version));
206
+ if (states)
207
+ query.set("states", states.join(","));
208
+ if (summary)
209
+ query.set("summary", "true");
210
+ const qs = query.toString();
211
+ const map = await getClient(resolveRegion(workspaceId, region)).request("GET", `${appMapPath(workspaceId, blueprintId)}${qs ? `?${qs}` : ""}`);
212
+ if (map.status === "tombstoned") {
213
+ const currentVersion = typeof map.currentVersion === "number" ? map.currentVersion : null;
214
+ return ok({ ...map, nextActions: tombstoneNextActions(blueprintId, currentVersion) });
215
+ }
216
+ if (map.status === "absent") {
217
+ return ok({
218
+ ...map,
219
+ nextActions: [
220
+ `appmap_upsert_state blueprintId=${blueprintId} app=<app name> stateId=<FIRST_STATE> state={detect:{...}} creates the map (version 1).`,
221
+ ],
222
+ });
223
+ }
224
+ return ok(map);
225
+ }
226
+ catch (e) {
227
+ return middlewareToolError(e, `Error reading app map: ${e.message}`);
228
+ }
229
+ });
230
+ // ── appmap_upsert_state ────────────────────────────────────
231
+ server.tool("appmap_upsert_state", "Write one named screen state into a blueprint's App Map (creates the map on first write — `app` is required then). mode=merge (default) keeps what you omit: elements merge by ref, reachedBy/blockers append de-duplicated, detect/screenshot replace when given; mode=replace swaps the whole state. A NEW state needs `detect`. Optional `gotchas` append to the ledger (de-duplicated by symptom); `login`/`teardown` set the map-level workflow refs. Compare-and-swap on `baseVersion` (from appmap_get): a rev_conflict block means another writer moved the map — appmap_get again, re-apply, retry; never retry blindly. A tombstoned block means the map was deleted: revive it deliberately by upserting with baseVersion=currentVersion (the prior content is at the last live version — appmap_history, then appmap_get version=<lastLiveVersion>).", {
232
+ workspaceId: z.number().describe("Workspace ID"),
233
+ blueprintId: blueprintIdParam,
234
+ stateId: stateIdParam,
235
+ state: appMapStatePatchSchema.describe("State fields: detect {dom|window{titlePrefix,zoomed?}|uia|anchor|ocr{ref|region, pattern, scale?, pad?}}, screenshot (vault://blob/...), reachedBy [{from, via}], elements {ref: {dom|uia|anchor|region{x,y,w,h,relativeTo?}, read{kind,scale?,pad?}?, verified{at,text,scale?,pad?}?, description?}}, blockers [{kind, text?, detect?, dismiss?}], screens [blueprint screen names]"),
236
+ mode: z.enum(["merge", "replace"]).default("merge"),
237
+ baseVersion: z
238
+ .number()
239
+ .int()
240
+ .min(0)
241
+ .optional()
242
+ .describe("The version you read (CAS). Omit to write against the current head."),
243
+ app: z
244
+ .string()
245
+ .min(1)
246
+ .optional()
247
+ .describe("Application name, e.g. 'HCHB (Citrix)'. Required when creating the map."),
248
+ login: loginSchema
249
+ .optional()
250
+ .describe("{workflowId, outputState}: the login workflow and the state it leaves the app in"),
251
+ teardown: teardownSchema
252
+ .optional()
253
+ .describe("{workflowId, keepList}: the reset workflow and the windows it keeps"),
254
+ gotchas: z.array(gotchaSchema).optional().describe("SYMPTOM→FIX entries to append to the ledger"),
255
+ region: regionParam,
256
+ }, async ({ workspaceId, blueprintId, stateId, state, mode, baseVersion, app, login, teardown, gotchas, region }) => {
257
+ try {
258
+ const saved = await getClient(resolveRegion(workspaceId, region)).request("PUT", `${appMapPath(workspaceId, blueprintId)}/states/${stateId}`, { baseVersion, mode, app, state, login, teardown, gotchas });
259
+ return ok(saved);
260
+ }
261
+ catch (e) {
262
+ const code = errorCode(e);
263
+ const payload = payloadOf(e);
264
+ const currentVersion = typeof payload.currentVersion === "number" ? payload.currentVersion : null;
265
+ if (code === "tombstoned")
266
+ return tombstonedBlock(blueprintId, currentVersion);
267
+ if (code === "rev_conflict")
268
+ return revConflictBlock(blueprintId, currentVersion, baseVersion !== undefined
269
+ ? `You read version ${baseVersion}; the map is at ${currentVersion ?? "?"}.`
270
+ : e.message);
271
+ // Real failures (400 here, 401/403/5xx below) are MCP errors: a caller must not read them as a save.
272
+ if (code === "app_required")
273
+ return { ...text("No App Map exists for this blueprint yet; pass `app` (the application name) to create it."), isError: true };
274
+ if (code === "invalid_state" || code === "invalid_body")
275
+ return { ...text(`Invalid state: ${payload.issues?.join("; ") ?? e.message}`), isError: true };
276
+ return middlewareToolError(e, `Error writing app map: ${e.message}`);
277
+ }
278
+ });
279
+ // ── appmap_find_element ────────────────────────────────────
280
+ server.tool("appmap_find_element", "Resolve an element ref inside a named state: returns its locator (dom selector, UIA properties, or anchor id) for the section you are authoring. Misses are actionable: state_not_found lists the map's states; element_not_found lists the refs that state DOES have and the other states that carry the same ref. Never invent a selector when this misses — map the element (appmap_upsert_state) or ask.", {
281
+ workspaceId: z.number().describe("Workspace ID"),
282
+ blueprintId: blueprintIdParam,
283
+ stateId: stateIdParam,
284
+ ref: z.string().min(1).max(128).describe("Element ref within the state, e.g. searchBox"),
285
+ region: regionParam,
286
+ }, async ({ workspaceId, blueprintId, stateId, ref, region }) => {
287
+ try {
288
+ const found = await getClient(resolveRegion(workspaceId, region)).request("GET", `${appMapPath(workspaceId, blueprintId)}/elements/${stateId}/${encodeURIComponent(ref)}`);
289
+ return ok(found);
290
+ }
291
+ catch (e) {
292
+ const code = errorCode(e);
293
+ if (code === "appmap_absent")
294
+ return ok({ found: false, reason: "appmap_absent", blueprintId });
295
+ if (code === "state_not_found" || code === "element_not_found") {
296
+ const { error: _error, ...miss } = payloadOf(e);
297
+ return ok({ found: false, reason: code, ...miss });
298
+ }
299
+ return middlewareToolError(e, `Error reading app map: ${e.message}`);
300
+ }
301
+ });
302
+ // ── appmap_history ─────────────────────────────────────────
303
+ server.tool("appmap_history", "List a blueprint's App Map versions (the vault revision ledger, newest first): version, reason, who, when, and `tombstoned` (a deletion is itself a revision, so reading it returns the tombstone). Pass a live version to appmap_get version=N to read that snapshot — recover after a rev_conflict, diff what the Mapper/Fixer changed, or read `lastLiveVersion` (the newest non-tombstoned version) to recover a deleted map's content.", {
304
+ workspaceId: z.number().describe("Workspace ID"),
305
+ blueprintId: blueprintIdParam,
306
+ region: regionParam,
307
+ }, async ({ workspaceId, blueprintId, region }) => {
308
+ try {
309
+ const ledger = await getClient(resolveRegion(workspaceId, region)).request("GET", `${appMapPath(workspaceId, blueprintId)}/versions`);
310
+ const versions = ledger.versions.map((v) => ({ ...v, tombstoned: v.reason === "tombstoned" }));
311
+ const live = versions.filter((v) => !v.tombstoned).map((v) => v.version);
312
+ const headTombstoned = versions.some((v) => v.version === ledger.head && v.tombstoned);
313
+ return ok({
314
+ status: ledger.head > 0 ? (headTombstoned ? "tombstoned" : "ok") : "absent",
315
+ blueprintId,
316
+ head: ledger.head,
317
+ lastLiveVersion: live.length ? Math.max(...live) : null,
318
+ versions,
319
+ });
320
+ }
321
+ catch (e) {
322
+ return middlewareToolError(e, `Error reading app map history: ${e.message}`);
323
+ }
324
+ });
325
+ }
326
+ //# sourceMappingURL=appmap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"appmap.js","sourceRoot":"","sources":["../../src/tools/appmap.ts"],"names":[],"mappings":"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"}
@@ -18,24 +18,24 @@ export function register(deps) {
18
18
  const r = resolveRegion(deps, workspaceId, region);
19
19
  return safe(() => deps.client(r).listConfigStores(workspaceId));
20
20
  });
21
- server.tool("get_config_store", "Get a configuration store by its external ID", {
22
- externalId: z.string().describe("Configuration store external ID"),
21
+ server.tool("get_config_store", "Get a configuration by its externalId alias or native UUID id", {
22
+ externalId: z.string().describe("Configuration externalId alias (native configurations also accept UUID id)"),
23
23
  workspaceId: z.number().describe("Workspace ID"),
24
24
  region: regionParam,
25
25
  }, async ({ externalId, workspaceId, region }) => {
26
26
  const r = resolveRegion(deps, workspaceId, region);
27
27
  return safe(() => deps.client(r).getConfigStore(externalId, workspaceId));
28
28
  });
29
- server.tool("get_config_properties", "Get all properties (key-value pairs) from a configuration store", {
30
- externalId: z.string().describe("Configuration store external ID"),
29
+ server.tool("get_config_properties", "Get configuration property values, including native secret values", {
30
+ externalId: z.string().describe("Configuration externalId alias (native configurations also accept UUID id)"),
31
31
  workspaceId: z.number().describe("Workspace ID"),
32
32
  region: regionParam,
33
33
  }, async ({ externalId, workspaceId, region }) => {
34
34
  const r = resolveRegion(deps, workspaceId, region);
35
35
  return safe(() => deps.client(r).getConfigProperties(externalId, workspaceId));
36
36
  });
37
- server.tool("get_config_property", "Get a specific property value from a configuration store", {
38
- externalId: z.string().describe("Configuration store external ID"),
37
+ server.tool("get_config_property", "Get a configuration property value, including a native secret value", {
38
+ externalId: z.string().describe("Configuration externalId alias (native configurations also accept UUID id)"),
39
39
  key: z.string().describe("Property key"),
40
40
  workspaceId: z.number().describe("Workspace ID"),
41
41
  region: regionParam,
@@ -44,7 +44,7 @@ export function register(deps) {
44
44
  return safe(() => deps.client(r).getConfigProperty(externalId, key, workspaceId));
45
45
  });
46
46
  server.tool("update_config_property", "Create or update a property in a configuration store", {
47
- externalId: z.string().describe("Configuration store external ID"),
47
+ externalId: z.string().describe("Configuration externalId alias (native configurations also accept UUID id)"),
48
48
  workspaceId: z.number().describe("Workspace ID"),
49
49
  key: z.string().describe("Property key"),
50
50
  value: z.string().describe("Property value"),
@@ -56,7 +56,7 @@ export function register(deps) {
56
56
  .updateConfigProperty(externalId, workspaceId, { key, value }));
57
57
  });
58
58
  server.tool("remove_config_property", "Remove a property from a configuration store", {
59
- externalId: z.string().describe("Configuration store external ID"),
59
+ externalId: z.string().describe("Configuration externalId alias (native configurations also accept UUID id)"),
60
60
  key: z.string().describe("Property key"),
61
61
  workspaceId: z.number().describe("Workspace ID"),
62
62
  region: regionParam,
@@ -69,7 +69,7 @@ export function register(deps) {
69
69
  name: z.string().describe("Config store name"),
70
70
  externalId: z
71
71
  .string()
72
- .describe("Unique external ID (used in {{config.xxx}} references)"),
72
+ .describe("Stable configuration alias. Use externalId with configuration tools; native configurations also return a UUID id for execution."),
73
73
  properties: z
74
74
  .array(z.object({
75
75
  key: z.string().describe("Property key"),
@@ -82,7 +82,7 @@ export function register(deps) {
82
82
  return safe(() => deps.client(r).createConfigStore(args));
83
83
  });
84
84
  server.tool("delete_config_store", "Delete (archive) a configuration store", {
85
- externalId: z.string().describe("Configuration store external ID"),
85
+ externalId: z.string().describe("Configuration externalId alias (native configurations also accept UUID id)"),
86
86
  workspaceId: z.number().describe("Workspace ID"),
87
87
  region: regionParam,
88
88
  }, async ({ externalId, workspaceId, region }) => {
@@ -90,7 +90,7 @@ export function register(deps) {
90
90
  return safe(() => deps.client(r).deleteConfigStore(externalId, workspaceId));
91
91
  });
92
92
  server.tool("restore_config_store", "Restore a previously archived configuration store", {
93
- externalId: z.string().describe("Configuration store external ID"),
93
+ externalId: z.string().describe("Configuration externalId alias (native configurations also accept UUID id)"),
94
94
  workspaceId: z.number().describe("Workspace ID"),
95
95
  region: regionParam,
96
96
  }, async ({ externalId, workspaceId, region }) => {
@@ -1 +1 @@
1
- {"version":3,"file":"config-stores.js","sourceRoot":"","sources":["../../src/tools/config-stores.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config-stores.js","sourceRoot":"","sources":["../../src/tools/config-stores.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { ToolDeps } from "../types.js";
2
+ export declare function register(deps: ToolDeps): void;
3
+ //# sourceMappingURL=configuration-references.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configuration-references.d.ts","sourceRoot":"","sources":["../../src/tools/configuration-references.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,wBAAgB,QAAQ,CAAC,IAAI,EAAE,QAAQ,QAkCtC"}
@@ -0,0 +1,30 @@
1
+ import { z } from "zod";
2
+ import { ok } from "../helpers.js";
3
+ import { MiddlewareServiceClient } from "../middleware-service-client.js";
4
+ import { middlewareToolError } from "../middleware/tool-error.js";
5
+ export function register(deps) {
6
+ deps.server.tool("list_configuration_references", "List safe configuration-reference metadata for a workspace. Returns native configurationId, exact case-sensitive externalId aliases, names, and property names. It never returns property values, credentials, citation IDs, or synthesized alias fallbacks.", {
7
+ workspaceId: z.number().describe("Workspace ID"),
8
+ region: z.enum(["us", "ca"]).optional(),
9
+ }, async ({ workspaceId, region }) => {
10
+ const resolved = (region ??
11
+ deps.state.getWorkspaceRegion(workspaceId) ??
12
+ undefined);
13
+ const client = new MiddlewareServiceClient(deps.getApiBase(resolved), deps.getAuthToken?.(resolved) || "", { sessionRefreshToken: deps.getSessionRefreshToken?.(resolved) });
14
+ try {
15
+ const catalog = await client.listConfigurationReferences(workspaceId);
16
+ return ok({
17
+ references: catalog.references.map(({ configurationId, externalId, name, propertyNames }) => ({
18
+ configurationId,
19
+ externalId,
20
+ name,
21
+ propertyNames,
22
+ })),
23
+ });
24
+ }
25
+ catch (error) {
26
+ return middlewareToolError(error, "Unable to list configuration references");
27
+ }
28
+ });
29
+ }
30
+ //# sourceMappingURL=configuration-references.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configuration-references.js","sourceRoot":"","sources":["../../src/tools/configuration-references.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AACnC,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAIlE,MAAM,UAAU,QAAQ,CAAC,IAAc;IACrC,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,+BAA+B,EAC/B,8PAA8P,EAC9P;QACE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;QAChD,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE;KACxC,EACD,KAAK,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE;QAChC,MAAM,QAAQ,GAAG,CAAC,MAAM;YACtB,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,WAAW,CAAC;YAC1C,SAAS,CAAuB,CAAC;QACnC,MAAM,MAAM,GAAG,IAAI,uBAAuB,CACxC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EACzB,IAAI,CAAC,YAAY,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,EACnC,EAAE,mBAAmB,EAAE,IAAI,CAAC,sBAAsB,EAAE,CAAC,QAAQ,CAAC,EAAE,CACjE,CAAC;QACF,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,WAAW,CAAC,CAAC;YACtE,OAAO,EAAE,CAAC;gBACR,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,CAChC,CAAC,EAAE,eAAe,EAAE,UAAU,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,CAAC;oBACzD,eAAe;oBACf,UAAU;oBACV,IAAI;oBACJ,aAAa;iBACd,CAAC,CACH;aACF,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,mBAAmB,CAAC,KAAK,EAAE,yCAAyC,CAAC,CAAC;QAC/E,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../src/tools/core.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAqC5C,wBAAgB,QAAQ,CAAC,IAAI,EAAE,QAAQ,QAi2BtC"}
1
+ {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../src/tools/core.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAqC5C,wBAAgB,QAAQ,CAAC,IAAI,EAAE,QAAQ,QAi2BtC"}