mandala-computer-mcp 0.12.0 → 0.13.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 (57) hide show
  1. package/README.md +77 -19
  2. package/dist/api.d.ts +1 -1
  3. package/dist/api.d.ts.map +1 -1
  4. package/dist/api.js +4 -3
  5. package/dist/api.js.map +1 -1
  6. package/dist/errors.d.ts +61 -25
  7. package/dist/errors.d.ts.map +1 -1
  8. package/dist/errors.js +167 -34
  9. package/dist/errors.js.map +1 -1
  10. package/dist/format.d.ts.map +1 -1
  11. package/dist/format.js +30 -8
  12. package/dist/format.js.map +1 -1
  13. package/dist/paths.d.ts +25 -0
  14. package/dist/paths.d.ts.map +1 -1
  15. package/dist/paths.js +34 -0
  16. package/dist/paths.js.map +1 -1
  17. package/dist/server.d.ts +32 -0
  18. package/dist/server.d.ts.map +1 -1
  19. package/dist/server.js +116 -3
  20. package/dist/server.js.map +1 -1
  21. package/dist/tool-filters.d.ts +2 -1
  22. package/dist/tool-filters.d.ts.map +1 -1
  23. package/dist/tool-filters.js +2 -0
  24. package/dist/tool-filters.js.map +1 -1
  25. package/dist/tools/account.d.ts.map +1 -1
  26. package/dist/tools/account.js +10 -3
  27. package/dist/tools/account.js.map +1 -1
  28. package/dist/tools/activities.d.ts.map +1 -1
  29. package/dist/tools/activities.js +4 -0
  30. package/dist/tools/activities.js.map +1 -1
  31. package/dist/tools/computers.d.ts.map +1 -1
  32. package/dist/tools/computers.js +91 -10
  33. package/dist/tools/computers.js.map +1 -1
  34. package/dist/tools/guest.d.ts.map +1 -1
  35. package/dist/tools/guest.js +4 -5
  36. package/dist/tools/guest.js.map +1 -1
  37. package/dist/tools/input.d.ts.map +1 -1
  38. package/dist/tools/input.js +1 -0
  39. package/dist/tools/input.js.map +1 -1
  40. package/dist/tools/operations.js +2 -2
  41. package/dist/tools/operations.js.map +1 -1
  42. package/dist/tools/publicurls.d.ts +3 -0
  43. package/dist/tools/publicurls.d.ts.map +1 -0
  44. package/dist/tools/publicurls.js +287 -0
  45. package/dist/tools/publicurls.js.map +1 -0
  46. package/dist/tools/snapshots.d.ts.map +1 -1
  47. package/dist/tools/snapshots.js +1 -0
  48. package/dist/tools/snapshots.js.map +1 -1
  49. package/dist/tools/ssh.d.ts.map +1 -1
  50. package/dist/tools/ssh.js +4 -2
  51. package/dist/tools/ssh.js.map +1 -1
  52. package/dist/tools/webhooks.d.ts.map +1 -1
  53. package/dist/tools/webhooks.js +32 -23
  54. package/dist/tools/webhooks.js.map +1 -1
  55. package/dist/version.d.ts +1 -1
  56. package/dist/version.js +1 -1
  57. package/package.json +2 -1
@@ -0,0 +1,287 @@
1
+ import { z } from 'zod';
2
+ import { APIError, NotFoundError } from '../errors.js';
3
+ import { guarded, refused, said } from '../format.js';
4
+ import * as P from '../paths.js';
5
+ /**
6
+ * Public URLs (platform OPL-3753): a port inside a computer served at
7
+ * `https://<label>.<base_domain>` (e.g. `mandala.dev`), on 443 with no port in
8
+ * the address, for a model to show a person the app it just started, or to
9
+ * test that app the way a browser would.
10
+ *
11
+ * Per computer, like the SSH setting: each tool takes a `computer_id` and
12
+ * falls back to the one selected with use_computer.
13
+ *
14
+ * What a model most needs to be told, and is told in the sentence before the
15
+ * JSON rather than left to the schema: a `public` URL is reachable by anyone
16
+ * on the internet who has the link, and the app must listen on 0.0.0.0, not
17
+ * 127.0.0.1, or the URL answers nothing.
18
+ */
19
+ const idArg = {
20
+ computer_id: z
21
+ .string()
22
+ .optional()
23
+ .describe('Which computer. Defaults to the one selected with use_computer.'),
24
+ };
25
+ const urlIdArg = {
26
+ url_id: z.string().describe('The public URL’s id — `pu-` and sixteen hex characters.'),
27
+ };
28
+ const portArg = (on) => z
29
+ .number()
30
+ .int()
31
+ .min(1)
32
+ .max(65535)
33
+ .describe(`${on === 'create' ? 'The port inside the computer to serve' : 'A new port for the URL to serve'}, 1 to 65535 except 22, which is the computer’s own SSH. The app must listen on 0.0.0.0:<port>, not 127.0.0.1.`);
34
+ const accessArg = (on) => z
35
+ .enum(['public', 'private'])
36
+ .describe(on === 'create'
37
+ ? '`public` (the default): ANYONE WITH THE LINK can open it. `private`: only a request carrying an API key of this account as `Authorization: Bearer` can, and the key never reaches the app.'
38
+ : '`public`: anyone with the link can open it. `private`: only a request carrying an API key of this account as `Authorization: Bearer` can.');
39
+ const isRecord = (v) => v !== null && typeof v === 'object' && !Array.isArray(v);
40
+ const shapeOf = (v) => v === undefined ? 'no body at all' : v === null ? 'null' : Array.isArray(v) ? 'a list' : typeof v;
41
+ /**
42
+ * A public URL the platform answered, or undefined if it is not one this
43
+ * server can describe. Strict, because every sentence below is a claim about
44
+ * the internet: "anyone with the link can open https://…" over a body with no
45
+ * `url` or no `access` would be assembled from fallbacks and stated as fact.
46
+ */
47
+ function publicUrlOf(v) {
48
+ if (!isRecord(v))
49
+ return undefined;
50
+ const { id, url, label, port, access, disabled } = v;
51
+ if (typeof id !== 'string' || !id)
52
+ return undefined;
53
+ if (typeof label !== 'string' || !label)
54
+ return undefined;
55
+ if (!linkFor(url, label))
56
+ return undefined;
57
+ if (typeof port !== 'number' || !Number.isSafeInteger(port) || port < 1 || port > 65535)
58
+ return undefined;
59
+ if (access !== 'public' && access !== 'private')
60
+ return undefined;
61
+ // Absent from nothing the platform has ever sent, but a URL with no word on
62
+ // whether it is turned off is not one to call answering.
63
+ if (typeof disabled !== 'boolean')
64
+ return undefined;
65
+ return { id, url, label, port, access, disabled };
66
+ }
67
+ /**
68
+ * Whether `url` is the link the platform promises for `label`: https, on 443
69
+ * (no port), no credentials, and a host that is the label under a domain. A
70
+ * prefix check let `https://` through, and a create answering it was reported
71
+ * as a link anyone could open (Codex, round 2 on #212).
72
+ */
73
+ function linkFor(url, label) {
74
+ if (typeof url !== 'string')
75
+ return false;
76
+ let parsed;
77
+ try {
78
+ parsed = new URL(url);
79
+ }
80
+ catch {
81
+ return false;
82
+ }
83
+ return (parsed.protocol === 'https:' &&
84
+ !parsed.username &&
85
+ !parsed.password &&
86
+ !parsed.port &&
87
+ parsed.hostname.startsWith(`${label}.`) &&
88
+ parsed.hostname.length > label.length + 1);
89
+ }
90
+ /**
91
+ * Who can open it, in the words a model acts on. A URL the platform has turned
92
+ * off opens for nobody, whatever its access says, so that comes first: a
93
+ * create or an update answering `disabled: true` is not a URL anyone can open
94
+ * (Codex, round 1 on #212).
95
+ */
96
+ const reach = (u) => u.disabled
97
+ ? `TURNED OFF BY THE PLATFORM: it answers 404 to everyone until the platform turns it back on (its access is set to ${u.access})`
98
+ : u.access === 'public'
99
+ ? 'PUBLIC: anyone with the link can open it'
100
+ : 'private: only requests with an API key of this account as `Authorization: Bearer` open it, and the key never reaches the app';
101
+ /**
102
+ * One URL in a line, for a listing. `past` is a URL beyond the computer's
103
+ * limit as the plan stands now: the oldest `limit` answer and the rest answer
104
+ * 404, counted over every URL of the computer in the listing's order, oldest
105
+ * first — so a row's place in the listing is what decides it.
106
+ */
107
+ const line = (u, past) => `${u.url} → port ${u.port}, ${u.access}${u.disabled ? ' — TURNED OFF BY THE PLATFORM: it answers 404 until the platform turns it back on' : ''}${past === undefined ? '' : ` — PAST THIS COMPUTER\u2019S LIMIT OF ${past}: it answers 404 until the plan allows it again; only the oldest ${past} answer`} (${u.id})`;
108
+ /**
109
+ * What a browser sees, said once in the create: the platform shows a one-time
110
+ * notice page before a URL whose account is new. Who gets it is decided by the
111
+ * request's headers, not by whether a program sent it: a page navigation by
112
+ * fetch metadata, or, without fetch metadata, `Accept: text/html` from a
113
+ * `Mozilla/` user agent. So a program sending a browser's headers sees it too,
114
+ * and the guest's own browser cannot add the skip header, so there the way
115
+ * past it is the page's own Continue.
116
+ */
117
+ const BROWSERS = 'A browser opening a URL whose account is new may first see a one-time notice page from Mandala Computer, once per URL per browser. It is shown to any request that looks like a browser opening a page — a navigation by its fetch metadata, or, without fetch metadata, `Accept: text/html` from a `Mozilla/` user agent — so a program that sends browser headers gets it too, and one that does not gets the app. A client that sets its own headers skips it by sending `mandala-skip-warning: 1`. open_url cannot send headers: in the computer\u2019s own browser, click Continue on the page to go on to the app.';
118
+ /**
119
+ * A change whose answer could not be read: a create, an update or a delete
120
+ * that failed for any reason other than an HTTP answer from the platform — an
121
+ * empty, `null` or non-JSON 2xx, a connection cut after the request went, a
122
+ * cancellation. The platform may have done it, so the caller is sent to the
123
+ * listing rather than told it failed: a create retried blind makes a second
124
+ * URL open to anyone, and the first goes on answering, untracked (Codex, round
125
+ * 3 on #212). An HTTP refusal is not this, and keeps its own advice.
126
+ */
127
+ async function changed(attempt, unknownOutcome) {
128
+ try {
129
+ return { value: await attempt() };
130
+ }
131
+ catch (err) {
132
+ if (err instanceof APIError)
133
+ throw err;
134
+ return { refusal: unknownOutcome(err instanceof Error ? err.message : String(err)) };
135
+ }
136
+ }
137
+ export const registerPublicUrls = (server, session) => {
138
+ server.registerTool('list_public_urls', {
139
+ title: 'List a computer’s public URLs',
140
+ description: 'The public URLs of one computer, oldest first: each is `https://<label>.<base_domain>` serving a port inside the computer, public (anyone with the link) or private (an API key of this account). Also says whether they can answer here at all — `enabled` is false, with a reason, where public URLs are off or the account’s plan includes none, and the URLs are listed either way so you can delete them — and how many this computer may have. If the plan drops below the number a computer has, the oldest within the limit keep answering and the rest answer 404.',
141
+ inputSchema: z.object(idArg).strict(),
142
+ annotations: { readOnlyHint: true },
143
+ }, ({ computer_id }, extra) => guarded(async () => {
144
+ const id = session.resolve(computer_id);
145
+ const body = await session.api.with(extra.signal).json('GET', P.publicUrls(id));
146
+ if (!isRecord(body) ||
147
+ typeof body.enabled !== 'boolean' ||
148
+ !Array.isArray(body.public_urls) ||
149
+ typeof body.base_domain !== 'string' ||
150
+ typeof body.limit !== 'number' ||
151
+ !Number.isSafeInteger(body.limit) ||
152
+ body.limit < 0) {
153
+ return refused(`GET the public URLs of ${id} answered with ${shapeOf(body)}, not a listing. This is not a computer with no public URLs — do not create one on the strength of it.`, body);
154
+ }
155
+ const limit = body.limit;
156
+ // Strict, like every other decoder here (OPL-5975): one row that is
157
+ // not a public URL fails the listing rather than being dropped. A
158
+ // dropped row is a URL that may be answering, left out of the one
159
+ // answer a caller reads to find out what is exposed — and it would
160
+ // shift every later row's place, which is what decides which of them
161
+ // are past the limit.
162
+ const rows = body.public_urls.map(publicUrlOf);
163
+ const malformed = rows.filter((u) => u === undefined).length;
164
+ if (malformed) {
165
+ return refused(`GET the public URLs of ${id} answered with ${malformed} entr${malformed === 1 ? 'y' : 'ies'} that ${malformed === 1 ? 'is' : 'are'} not a public URL, so this listing cannot be read. It is not evidence about what ${id} exposes: any of its URLs may be answering. Do not create or delete one on the strength of it; try list_public_urls again.`, body);
166
+ }
167
+ const list = rows;
168
+ const off = body.enabled
169
+ ? ''
170
+ : `PUBLIC URLS DO NOT ANSWER HERE: ${typeof body.reason === 'string' && body.reason ? body.reason : 'no reason given'}. `;
171
+ if (!list.length) {
172
+ return said(`${off}No public URLs on ${id}. ${body.enabled ? `create_public_url makes one; this computer may have ${limit}.` : ''}`.trimEnd(), body);
173
+ }
174
+ // Past the limit only matters while URLs can answer at all: with
175
+ // `enabled` false every one of them answers 404, and the line above
176
+ // already says so.
177
+ const past = body.enabled ? list.length - Math.min(list.length, limit) : 0;
178
+ return said(`${off}${list.length} public URL${list.length === 1 ? '' : 's'} on ${id} (this computer may have ${limit}), oldest first:${past ? ` ${past} of them ${past === 1 ? 'is' : 'are'} past that limit and answer${past === 1 ? 's' : ''} 404 until the plan allows ${past === 1 ? 'it' : 'them'} again — delete URLs you no longer need, oldest you do not want first, to bring the rest within it.` : ''}\n${list
179
+ .map((u, i) => line(u, body.enabled && i >= limit ? limit : undefined))
180
+ .join('\n')}`, body);
181
+ }));
182
+ server.registerTool('create_public_url', {
183
+ title: 'Serve a port on a public URL',
184
+ description: 'Serve a port inside the computer at `https://<label>.<base_domain>` (e.g. `https://brave-otter-3f2a.mandala.dev`), on 443 with no port in the address. PUBLIC BY DEFAULT: anyone on the internet with the link can open it — pass access: "private" to require an API key of this account instead. The app must listen on 0.0.0.0:<port>, not 127.0.0.1. Without a label one is picked. A label is 3 to 40 letters, digits and hyphens, and the platform refuses names that read as its own or another company’s (www, login, brand names and their look-alikes) with a 400 that says why. Other refusals: 402 when the plan includes no public URLs; 403 PUBLIC_URLS_BLOCKED when the platform has turned public URLs off for this computer or account (not a role, and not something to retry — tell the user); 404 PUBLIC_URLS_DISABLED when public URLs are not enabled here at all (not a missing computer); 409 LABEL_TAKEN when the label is taken — a label is never given to a second account, so one another account has ever held, or one the platform has blocked, reads as taken — and 409 PUBLIC_URL_LIMIT when the computer has as many as its plan allows (Solo 2, Studio 5, Swarm 10); neither 409 clears by waiting. 429 after too many in a day, with Retry-After. Responses are marked noindex, cookies the app sets stay on its own host name, and a Mandala API key sent to a public URL never reaches the app. Not idempotent: a retry after a lost answer makes a second URL — list_public_urls first.',
185
+ inputSchema: z
186
+ .object({
187
+ ...idArg,
188
+ port: portArg('create'),
189
+ label: z
190
+ .string()
191
+ .optional()
192
+ .describe('The name before the domain, lowercased. Leave it out to have one like `brave-otter-3f2a` picked.'),
193
+ access: accessArg('create').optional(),
194
+ })
195
+ // Strict, above all here: a misspelled `access: "private"` stripped
196
+ // as an unknown key would create a URL anyone can open (Codex, round
197
+ // 1 on #212). Every tool in this file refuses an argument it does not
198
+ // know, rather than acting without it.
199
+ .strict(),
200
+ }, ({ computer_id, port, label, access }, extra) => guarded(async () => {
201
+ const id = session.resolve(computer_id);
202
+ const sent = P.publicUrlBody({ port, label, access });
203
+ const path = P.publicUrls(id);
204
+ const got = await changed(() => session.api.with(extra.signal).send('POST', path, { body: sent }), (why) => refused(`The create on ${id} could not be read back (${why}). THE URL MAY HAVE BEEN CREATED, and if it was, it is ${sent.access === 'private' ? 'private' : 'open to anyone with the link'} — call list_public_urls for ${id} before creating another.`));
205
+ if ('refusal' in got)
206
+ return got.refusal;
207
+ const body = got.value;
208
+ const u = publicUrlOf(body);
209
+ if (!u) {
210
+ return refused(`The create on ${id} answered with ${shapeOf(body)}, not a public URL. THE URL MAY HAVE BEEN CREATED, and if it was, it is ${sent.access === 'private' ? 'private' : 'open to anyone with the link'} — call list_public_urls for ${id} rather than creating a second one.`, body);
211
+ }
212
+ return said(`Created ${u.url}, serving port ${u.port} inside ${id}. ${reach(u)}. The app must listen on 0.0.0.0:${u.port}, not 127.0.0.1. ${BROWSERS}`, u);
213
+ }));
214
+ server.registerTool('update_public_url', {
215
+ title: 'Change a public URL’s port or access',
216
+ description: 'Point a public URL at another port, switch it between public and private, or both. The label is the URL and does not change — delete it and create another for a new name. Fields you leave out are kept; name at least one.',
217
+ inputSchema: z
218
+ .object({
219
+ ...idArg,
220
+ ...urlIdArg,
221
+ port: portArg('update').optional(),
222
+ access: accessArg('update').optional(),
223
+ })
224
+ .strict(),
225
+ annotations: { idempotentHint: true },
226
+ }, ({ computer_id, url_id, port, access }, extra) => guarded(async () => {
227
+ const sent = P.publicUrlBody({ port, access });
228
+ if (!Object.keys(sent).length) {
229
+ return refused('Nothing to change: name a port, an access, or both. The platform refuses an empty update, so nothing was sent.');
230
+ }
231
+ const id = session.resolve(computer_id);
232
+ const path = P.publicUrl(id, url_id);
233
+ const got = await changed(() => session.api.with(extra.signal).send('PATCH', path, { body: sent }), (why) => refused(`The update to ${url_id} could not be read back (${why}). THE CHANGE MAY HAVE LANDED — read it back with list_public_urls rather than assuming either way, since who can open the URL may have changed.`));
234
+ if ('refusal' in got)
235
+ return got.refusal;
236
+ const body = got.value;
237
+ const u = publicUrlOf(body);
238
+ if (!u) {
239
+ return refused(`The update to ${url_id} answered with ${shapeOf(body)}, not a public URL. THE CHANGE MAY HAVE LANDED — read it back with list_public_urls rather than assuming either way, since who can open the URL may have changed.`, body);
240
+ }
241
+ return said(`Updated ${u.url}: port ${u.port}. ${reach(u)}.`, u);
242
+ }));
243
+ server.registerTool('delete_public_url', {
244
+ title: 'Remove a public URL',
245
+ description: 'The URL stops answering at once. Its label stays with this account: no other account can ever take it, and this account may use it again (create_public_url with that label) unless the platform has blocked it. The app inside the computer keeps running. A URL made again is a new id.',
246
+ inputSchema: z
247
+ .object({
248
+ ...idArg,
249
+ ...urlIdArg,
250
+ confirm: z.literal(true).describe('Must be true. The URL stops answering at once.'),
251
+ })
252
+ .strict(),
253
+ annotations: { destructiveHint: true, idempotentHint: true },
254
+ }, ({ computer_id, url_id }, extra) => guarded(async () => {
255
+ const id = session.resolve(computer_id);
256
+ const path = P.publicUrl(id, url_id);
257
+ let res;
258
+ try {
259
+ res = await session.api.with(extra.signal).send('DELETE', path);
260
+ }
261
+ catch (err) {
262
+ if (!(err instanceof APIError)) {
263
+ const why = err instanceof Error ? err.message : String(err);
264
+ return refused(`The delete of ${url_id} could not be read back (${why}). IT MAY OR MAY NOT HAVE BEEN DELETED — call list_public_urls for ${id} to see whether it is still there before telling anyone it no longer answers.`);
265
+ }
266
+ // A 404 is the state this call asked for, and the tool is annotated
267
+ // idempotent, so the retry after a lost 2xx is one a client may make.
268
+ // Said as a success but not as "Deleted": the same 404 answers an id
269
+ // that was never on this computer, and "deleted" over a mistyped id
270
+ // leaves a real URL answering. delete_webhook answers the same way.
271
+ if (!(err instanceof NotFoundError))
272
+ throw err;
273
+ // Not "the id is wrong" alone: the platform answers the same 404 for
274
+ // a computer this key cannot see — another workspace's, or one that
275
+ // is gone — before it looks for the URL at all.
276
+ return said(`Nothing was deleted: the platform found no public URL ${url_id} on ${id} that this key can reach. Either it was already removed — if this is a retry, the first call is the one that did it — or the URL id is wrong, or ${id} is not a computer this key can see (another workspace's, or gone). In the last two cases NO URL has been touched and the one you meant may still be answering. list_public_urls for ${id} says which.`);
277
+ }
278
+ // The platform's ack, checked before saying the exposure ended: a 2xx
279
+ // that is not `{ ok: true }` is not evidence the URL stopped answering
280
+ // (Codex, round 1 on #212).
281
+ if (!isRecord(res) || res.ok !== true) {
282
+ return refused(`The delete of ${url_id} answered with ${shapeOf(res)}, not the platform's acknowledgment. IT MAY OR MAY NOT HAVE BEEN DELETED — call list_public_urls for ${id} to see whether it is still there before telling anyone it no longer answers.`, res);
283
+ }
284
+ return said(`Deleted ${url_id} from ${id}. It no longer answers. Its label stays with this account: no other account can take it, and you may use it again unless the platform has blocked it.`, res);
285
+ }));
286
+ };
287
+ //# sourceMappingURL=publicurls.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"publicurls.js","sourceRoot":"","sources":["../../src/tools/publicurls.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"snapshots.d.ts","sourceRoot":"","sources":["../../src/tools/snapshots.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAoN5C,eAAO,MAAM,iBAAiB,EAAE,SA42B/B,CAAC"}
1
+ {"version":3,"file":"snapshots.d.ts","sourceRoot":"","sources":["../../src/tools/snapshots.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAoN5C,eAAO,MAAM,iBAAiB,EAAE,SA62B/B,CAAC"}
@@ -556,6 +556,7 @@ export const registerSnapshots = (server, session, opts) => {
556
556
  minute: z.number().int().min(0).max(59).default(0),
557
557
  tz: z.string().default('UTC').describe('An IANA zone, e.g. "America/New_York".'),
558
558
  })
559
+ .strict()
559
560
  .optional()
560
561
  .describe('Omit to read the current schedule. Include to replace it.'),
561
562
  clear: z.boolean().default(false).describe('Remove the schedule entirely.'),
@@ -1 +1 @@
1
- {"version":3,"file":"snapshots.js","sourceRoot":"","sources":["../../src/tools/snapshots.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"snapshots.js","sourceRoot":"","sources":["../../src/tools/snapshots.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ssh.d.ts","sourceRoot":"","sources":["../../src/tools/ssh.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AA2I5C,eAAO,MAAM,WAAW,EAAE,SAyLzB,CAAC"}
1
+ {"version":3,"file":"ssh.d.ts","sourceRoot":"","sources":["../../src/tools/ssh.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AA2I5C,eAAO,MAAM,WAAW,EAAE,SA2LzB,CAAC"}
package/dist/tools/ssh.js CHANGED
@@ -121,9 +121,11 @@ export const registerSSH = (server, session) => {
121
121
  if (!Array.isArray(body)) {
122
122
  return refused(`GET /ssh-keys answered with ${shapeOf(body)}, not a list of keys. This does not mean you have none.`, body);
123
123
  }
124
- const rows = body.filter(isRecord);
124
+ // Strict (OPL-5975): a row that is not an object, or has no id, fails
125
+ // the listing, as the SDKs decode it — never a key line read as `?`.
126
+ const rows = body.filter((k) => isRecord(k) && !!text(k.id));
125
127
  if (rows.length !== body.length) {
126
- return refused(`GET /ssh-keys answered with ${body.length - rows.length} malformed entr${body.length - rows.length === 1 ? 'y' : 'ies'}; the list cannot be trusted.`, body);
128
+ return refused(`GET /ssh-keys answered with ${body.length - rows.length} malformed entr${body.length - rows.length === 1 ? 'y' : 'ies'} (not an object, or without an id); the list cannot be trusted.`, body);
127
129
  }
128
130
  if (!rows.length)
129
131
  return said('No SSH keys are registered to you. add_ssh_key adds one.', body);
@@ -1 +1 @@
1
- {"version":3,"file":"ssh.js","sourceRoot":"","sources":["../../src/tools/ssh.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ssh.js","sourceRoot":"","sources":["../../src/tools/ssh.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"webhooks.d.ts","sourceRoot":"","sources":["../../src/tools/webhooks.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAyP5C,eAAO,MAAM,gBAAgB,EAAE,SA0Q9B,CAAC"}
1
+ {"version":3,"file":"webhooks.d.ts","sourceRoot":"","sources":["../../src/tools/webhooks.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AA0Q5C,eAAO,MAAM,gBAAgB,EAAE,SAqQ9B,CAAC"}
@@ -87,17 +87,28 @@ const shapeOf = (v) => v === undefined ? 'no body at all' : v === null ? 'null'
87
87
  * telling them apart. A body that is not an array at all — an error envelope, a
88
88
  * future paginated wrapper, a gateway answering 200 with nothing — coerced to
89
89
  * `[]` becomes an affirmative claim about the account made from a body this
90
- * server could not read; and a listing whose ROWS are not objects throws at the
91
- * first `w.id` before any `??` can help, so `guarded` turns the whole answer
92
- * into an opaque failure. Neither is an empty list, and only one of the two
93
- * answers invites an action.
90
+ * server could not read; and a listing with a ROW that is not one — not an
91
+ * object, or missing a field every row has — is a listing that cannot be
92
+ * read. These rows used to be dropped with a warning; now one fails the
93
+ * listing (OPL-5975), as the SDKs decode it: a dropped row is a subscription
94
+ * that may be delivering, left out of the answer a caller reads to find out.
94
95
  */
95
- const rowsOf = (body) => Array.isArray(body)
96
- ? { rows: body.filter(isRecord), malformed: body.filter((item) => !isRecord(item)).length }
96
+ const rowsOf = (body, valid) => Array.isArray(body)
97
+ ? {
98
+ rows: body.filter(isRecord),
99
+ malformed: body.filter((item) => !isRecord(item) || !valid(item)).length,
100
+ }
97
101
  : undefined;
98
- const malformedWarning = (noun, n) => n
99
- ? `WARNING: ignored ${n} malformed ${noun} entr${n === 1 ? 'y' : 'ies'} from the platform.\n\n`
100
- : '';
102
+ const nonblank = (v) => typeof v === 'string' && v.trim() !== '';
103
+ /** The fields every subscription row has, each of the type it must be. */
104
+ const webhookRow = (w) => nonblank(w.id) && typeof w.url === 'string' && typeof w.enabled === 'boolean';
105
+ /** The fields every delivery row has, each of the type it must be. */
106
+ const deliveryRow = (d) => nonblank(d.id) &&
107
+ typeof d.state === 'string' &&
108
+ typeof d.attempts === 'number' &&
109
+ Number.isSafeInteger(d.attempts) &&
110
+ d.attempts >= 0;
111
+ const malformedRows = (noun, n) => `${n} ${noun} entr${n === 1 ? 'y is' : 'ies are'} malformed (not an object, or missing a field every entry has), so this listing cannot be read`;
101
112
  /**
102
113
  * The single record a one-subscription call answers with, or nothing.
103
114
  *
@@ -206,20 +217,19 @@ export const registerWebhooks = (server, session) => {
206
217
  annotations: { readOnlyHint: true },
207
218
  }, (_args, extra) => guarded(async () => {
208
219
  const body = await session.api.with(extra.signal).json('GET', P.WEBHOOKS);
209
- const checked = rowsOf(body);
220
+ const checked = rowsOf(body, webhookRow);
210
221
  if (!checked) {
211
222
  return refused(`GET /webhooks answered with ${shapeOf(body)}, not a list of subscriptions. This is not an empty account — do not create a webhook on the strength of it.`, body);
212
223
  }
224
+ if (checked.malformed) {
225
+ return refused(`GET /webhooks answered, but ${malformedRows('webhook', checked.malformed)}. It is not evidence about which subscriptions exist — do not create or delete one on the strength of it; try list_webhooks again.`, body);
226
+ }
213
227
  const list = checked.rows;
214
- const warning = malformedWarning('webhook', checked.malformed);
215
228
  if (!list.length) {
216
- if (checked.malformed) {
217
- return refused(`${warning}No valid webhook subscriptions remained. This is not an empty account — do not create a webhook on the strength of a malformed listing.`, body);
218
- }
219
- return said(`${warning}No webhook subscriptions on this account. create_webhook makes one.`, body);
229
+ return said('No webhook subscriptions on this account. create_webhook makes one.', body);
220
230
  }
221
- const lines = list.map((w) => `${w.id ?? '?'} → ${w.url ?? '?'}: ${health(w)}`);
222
- return said(`${warning}${list.length} webhook subscription${list.length === 1 ? '' : 's'}, oldest first:\n${lines.join('\n')}`, body);
231
+ const lines = list.map((w) => `${w.id} → ${w.url}: ${health(w)}`);
232
+ return said(`${list.length} webhook subscription${list.length === 1 ? '' : 's'}, oldest first:\n${lines.join('\n')}`, body);
223
233
  }));
224
234
  server.registerTool('create_webhook', {
225
235
  title: 'Subscribe an endpoint to this account’s events',
@@ -321,16 +331,15 @@ export const registerWebhooks = (server, session) => {
321
331
  const body = await session.api
322
332
  .with(extra.signal)
323
333
  .json('GET', P.webhookAction(webhook_id, 'deliveries'));
324
- const checked = rowsOf(body);
334
+ const checked = rowsOf(body, deliveryRow);
325
335
  if (!checked) {
326
336
  return refused(`GET the deliveries of ${webhook_id} answered with ${shapeOf(body)}, not a list of deliveries. This is not an empty history — do not conclude anything about what has been delivered from it.`, body);
327
337
  }
328
- const list = checked.rows;
329
- const warning = malformedWarning('delivery', checked.malformed);
330
- if (!list.length && checked.malformed) {
331
- return refused(`${warning}No valid deliveries remained for ${webhook_id}. This is not an empty history — do not conclude anything about what has been delivered from it.`, body);
338
+ if (checked.malformed) {
339
+ return refused(`GET the deliveries of ${webhook_id} answered, but ${malformedRows('delivery', checked.malformed)}. Do not conclude anything about what has been delivered from it.`, body);
332
340
  }
333
- return said(`${warning}${deliveriesLine(webhook_id, list)}`, body);
341
+ const list = checked.rows;
342
+ return said(deliveriesLine(webhook_id, list), body);
334
343
  }));
335
344
  server.registerTool('delete_webhook', {
336
345
  title: 'Delete a webhook subscription',