@descryy/mcp 0.11.0 → 0.11.2

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 (103) hide show
  1. package/dist/render.d.ts +7 -11
  2. package/dist/render.d.ts.map +1 -1
  3. package/dist/render.js +22 -2
  4. package/dist/render.js.map +1 -1
  5. package/dist/server.d.ts.map +1 -1
  6. package/dist/server.js +13 -2
  7. package/dist/server.js.map +1 -1
  8. package/dist/tools/alias-kit.d.ts +29 -0
  9. package/dist/tools/alias-kit.d.ts.map +1 -0
  10. package/dist/tools/alias-kit.js +21 -0
  11. package/dist/tools/alias-kit.js.map +1 -0
  12. package/dist/tools/aliases.d.ts +42 -0
  13. package/dist/tools/aliases.d.ts.map +1 -0
  14. package/dist/tools/aliases.js +52 -0
  15. package/dist/tools/aliases.js.map +1 -0
  16. package/dist/tools/browser-close-session.d.ts +5 -1
  17. package/dist/tools/browser-close-session.d.ts.map +1 -1
  18. package/dist/tools/browser-close-session.js +3 -1
  19. package/dist/tools/browser-close-session.js.map +1 -1
  20. package/dist/tools/browser-navigate.d.ts +5 -1
  21. package/dist/tools/browser-navigate.d.ts.map +1 -1
  22. package/dist/tools/browser-navigate.js +3 -1
  23. package/dist/tools/browser-navigate.js.map +1 -1
  24. package/dist/tools/browser-read.d.ts +33 -0
  25. package/dist/tools/browser-read.d.ts.map +1 -0
  26. package/dist/tools/browser-read.js +113 -0
  27. package/dist/tools/browser-read.js.map +1 -0
  28. package/dist/tools/browser-snapshot.d.ts +5 -2
  29. package/dist/tools/browser-snapshot.d.ts.map +1 -1
  30. package/dist/tools/browser-snapshot.js +3 -1
  31. package/dist/tools/browser-snapshot.js.map +1 -1
  32. package/dist/tools/browser-wait-for.d.ts +5 -1
  33. package/dist/tools/browser-wait-for.d.ts.map +1 -1
  34. package/dist/tools/browser-wait-for.js +3 -1
  35. package/dist/tools/browser-wait-for.js.map +1 -1
  36. package/dist/tools/browser.d.ts +69 -0
  37. package/dist/tools/browser.d.ts.map +1 -0
  38. package/dist/tools/browser.js +377 -0
  39. package/dist/tools/browser.js.map +1 -0
  40. package/dist/tools/change-scope.d.ts +25 -0
  41. package/dist/tools/change-scope.d.ts.map +1 -0
  42. package/dist/tools/change-scope.js +110 -0
  43. package/dist/tools/change-scope.js.map +1 -0
  44. package/dist/tools/code-context.d.ts +83 -0
  45. package/dist/tools/code-context.d.ts.map +1 -0
  46. package/dist/tools/code-context.js +416 -0
  47. package/dist/tools/code-context.js.map +1 -0
  48. package/dist/tools/disclosure.d.ts +75 -0
  49. package/dist/tools/disclosure.d.ts.map +1 -0
  50. package/dist/tools/disclosure.js +288 -0
  51. package/dist/tools/disclosure.js.map +1 -0
  52. package/dist/tools/draw-conclusion.d.ts +12 -1
  53. package/dist/tools/draw-conclusion.d.ts.map +1 -1
  54. package/dist/tools/draw-conclusion.js +11 -2
  55. package/dist/tools/draw-conclusion.js.map +1 -1
  56. package/dist/tools/git-context.d.ts +39 -0
  57. package/dist/tools/git-context.d.ts.map +1 -0
  58. package/dist/tools/git-context.js +364 -0
  59. package/dist/tools/git-context.js.map +1 -0
  60. package/dist/tools/index.d.ts +15 -6
  61. package/dist/tools/index.d.ts.map +1 -1
  62. package/dist/tools/index.js +41 -67
  63. package/dist/tools/index.js.map +1 -1
  64. package/dist/tools/kit.d.ts +3 -2
  65. package/dist/tools/kit.d.ts.map +1 -1
  66. package/dist/tools/kit.js.map +1 -1
  67. package/dist/tools/merged-browser.d.ts +11 -0
  68. package/dist/tools/merged-browser.d.ts.map +1 -0
  69. package/dist/tools/merged-browser.js +20 -0
  70. package/dist/tools/merged-browser.js.map +1 -0
  71. package/dist/tools/merged-context.d.ts +11 -0
  72. package/dist/tools/merged-context.d.ts.map +1 -0
  73. package/dist/tools/merged-context.js +21 -0
  74. package/dist/tools/merged-context.js.map +1 -0
  75. package/dist/tools/merged-observe.d.ts +13 -0
  76. package/dist/tools/merged-observe.d.ts.map +1 -0
  77. package/dist/tools/merged-observe.js +21 -0
  78. package/dist/tools/merged-observe.js.map +1 -0
  79. package/dist/tools/merged-workspace.d.ts +14 -0
  80. package/dist/tools/merged-workspace.d.ts.map +1 -0
  81. package/dist/tools/merged-workspace.js +21 -0
  82. package/dist/tools/merged-workspace.js.map +1 -0
  83. package/dist/tools/observe-runtime.d.ts +11 -1
  84. package/dist/tools/observe-runtime.d.ts.map +1 -1
  85. package/dist/tools/observe-runtime.js +6 -2
  86. package/dist/tools/observe-runtime.js.map +1 -1
  87. package/dist/tools/observe-tests.d.ts +12 -1
  88. package/dist/tools/observe-tests.d.ts.map +1 -1
  89. package/dist/tools/observe-tests.js +6 -2
  90. package/dist/tools/observe-tests.js.map +1 -1
  91. package/dist/tools/observe.d.ts +28 -0
  92. package/dist/tools/observe.d.ts.map +1 -0
  93. package/dist/tools/observe.js +285 -0
  94. package/dist/tools/observe.js.map +1 -0
  95. package/dist/tools/verb.d.ts +46 -0
  96. package/dist/tools/verb.d.ts.map +1 -0
  97. package/dist/tools/verb.js +78 -0
  98. package/dist/tools/verb.js.map +1 -0
  99. package/dist/tools/workspace.d.ts +28 -0
  100. package/dist/tools/workspace.d.ts.map +1 -0
  101. package/dist/tools/workspace.js +101 -0
  102. package/dist/tools/workspace.js.map +1 -0
  103. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"observe-tests.js","sourceRoot":"","sources":["../../src/tools/observe-tests.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"observe-tests.js","sourceRoot":"","sources":["../../src/tools/observe-tests.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * `observe` — merges `observe_runtime` and `observe_tests` into one action-class tool
3
+ * (documents/plans/mcp-surface-consolidation.md, group 1). Dispatches on "verb" to the exact
4
+ * `run`/`describeAction` bodies each absorbed tool already had (see observe-runtime.ts,
5
+ * observe-tests.ts) — extracted, not reimplemented, so behaviour is unchanged per verb.
6
+ *
7
+ * The schema below restates both tools' arguments under one flat, `additionalProperties: false`
8
+ * shape — required by the merge itself, since a merged tool has one schema for two verbs. It is
9
+ * also deliberately far shorter than `observe_runtime`'s own prose (that tool alone was 10,646
10
+ * schema bytes, 14% of the whole registry). Nothing here drops an argument, an enum value, a
11
+ * default, or a conditional-requirement rule — only the narrative explaining each one. The real
12
+ * behaviour (every disclosure, every refusal) still lives in the reused `run`/`describeAction`
13
+ * bodies, untouched by this trim.
14
+ */
15
+ import type { ToolDefinition } from "./kit.ts";
16
+ import type { ObserveRuntimeData } from "./observe-runtime.ts";
17
+ import type { ObserveTestsData } from "./observe-tests.ts";
18
+ /**
19
+ * What this tool answers with: one verb's shape, never a merged one.
20
+ *
21
+ * The merge cost this its single concrete output type, and `unknown` would have
22
+ * silently retired `output-shapes.test.ts`'s check that a declared shape is tied
23
+ * to the code producing it. A union keeps that tie: a verb added without its
24
+ * shape here stops compiling.
25
+ */
26
+ export type ObserveData = ObserveRuntimeData | ObserveTestsData;
27
+ export declare const observeTool: ToolDefinition;
28
+ //# sourceMappingURL=observe.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"observe.d.ts","sourceRoot":"","sources":["../../src/tools/observe.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAKH,OAAO,KAAK,EAAe,cAAc,EAAE,MAAM,UAAU,CAAC;AAQ5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAE3D;;;;;;;GAOG;AACH,MAAM,MAAM,WAAW,GACnB,kBAAkB,GAClB,gBAAgB,CAAC;AAmRrB,eAAO,MAAM,WAAW,EAAE,cAoBzB,CAAC"}
@@ -0,0 +1,285 @@
1
+ /**
2
+ * `observe` — merges `observe_runtime` and `observe_tests` into one action-class tool
3
+ * (documents/plans/mcp-surface-consolidation.md, group 1). Dispatches on "verb" to the exact
4
+ * `run`/`describeAction` bodies each absorbed tool already had (see observe-runtime.ts,
5
+ * observe-tests.ts) — extracted, not reimplemented, so behaviour is unchanged per verb.
6
+ *
7
+ * The schema below restates both tools' arguments under one flat, `additionalProperties: false`
8
+ * shape — required by the merge itself, since a merged tool has one schema for two verbs. It is
9
+ * also deliberately far shorter than `observe_runtime`'s own prose (that tool alone was 10,646
10
+ * schema bytes, 14% of the whole registry). Nothing here drops an argument, an enum value, a
11
+ * default, or a conditional-requirement rule — only the narrative explaining each one. The real
12
+ * behaviour (every disclosure, every refusal) still lives in the reused `run`/`describeAction`
13
+ * bodies, untouched by this trim.
14
+ */
15
+ import { SAFETY_LEVELS, PROFILE_MODES } from "@descryy/runtime-environment-profile";
16
+ import { selectVerb } from "./verb.js";
17
+ import { run as runRuntime, describeAction as describeRuntimeAction, DEFAULT_EVIDENCE_RELATIVE_PATH, } from "./observe-runtime.js";
18
+ import { run as runTests, describeAction as describeTestsAction } from "./observe-tests.js";
19
+ /** Mirrors observe-runtime.ts's own module-local `READINESS_KINDS` — kept as a literal here
20
+ * rather than imported so this schema module has no other reason to reach into that file's
21
+ * internals beyond the two functions it reuses. */
22
+ const READINESS_KINDS = ["http", "tcp-port", "command"];
23
+ const VERB_SPECS = [
24
+ {
25
+ verb: "runtime",
26
+ accepts: [
27
+ "profile",
28
+ "services",
29
+ "adapter",
30
+ "scopeByService",
31
+ "observeForMs",
32
+ "environmentTier",
33
+ "fidelityLevel",
34
+ "evidencePath",
35
+ "resourceLimits",
36
+ "filesystemPolicy",
37
+ "networkPolicy",
38
+ "sandboxBackend",
39
+ ],
40
+ },
41
+ { verb: "tests", accepts: ["command", "cwd"] },
42
+ ];
43
+ /** `timeoutMs` means a different thing per verb (whole-execution budget vs. suite timeout) but
44
+ * is the same key in both schemas — shared so neither verb refuses the other's caller for
45
+ * sending it. `confirmToken` is the handshake's own field, not either tool's. */
46
+ const SHARED_PROPS = ["confirmToken", "timeoutMs"];
47
+ const SCHEMA = {
48
+ type: "object",
49
+ properties: {
50
+ verb: {
51
+ type: "string",
52
+ enum: ["runtime", "tests"],
53
+ description: 'Which observation to run. "runtime": boot or attach to services and record what they ' +
54
+ 'witness. "tests": run the test suite and record which tests executed.',
55
+ },
56
+ // --- runtime only ---
57
+ profile: {
58
+ type: "object",
59
+ description: "runtime only, REQUIRED. Target environment. Every field is explicit, never inferred from " +
60
+ 'another — a profile named "staging" with safetyLevel "readOnly" is read-only, and so is ' +
61
+ 'one named "local".',
62
+ properties: {
63
+ name: { type: "string", description: "Free-form. Matched against no vocabulary." },
64
+ url: { type: "string", description: "The target's base URL. Must parse." },
65
+ safetyLevel: {
66
+ type: "string",
67
+ enum: [...SAFETY_LEVELS],
68
+ description: 'Booting a service is a write; "readOnly" refuses a run that spawns anything. An ' +
69
+ 'all-"attach" run spawns nothing and is permitted under "readOnly".',
70
+ },
71
+ credentialRef: { type: "string", description: "An opaque key into a credential store — never the secret." },
72
+ mode: { type: "string", enum: [...PROFILE_MODES] },
73
+ },
74
+ required: ["name", "url", "safetyLevel", "credentialRef", "mode"],
75
+ additionalProperties: false,
76
+ },
77
+ services: {
78
+ type: "object",
79
+ description: "runtime only, REQUIRED. One entry per service, keyed by name. At least one required; each " +
80
+ 'needs exactly one of "command" or "attach".',
81
+ additionalProperties: {
82
+ type: "object",
83
+ properties: {
84
+ command: { type: "string", description: 'How to start it. Omit when using "attach".' },
85
+ cwd: {
86
+ type: "string",
87
+ description: 'Directory the service starts in, relative to the repo root. Required with "command"; ' +
88
+ 'required with "attach" only when readiness is a "command" check.',
89
+ },
90
+ port: {
91
+ type: "integer",
92
+ description: 'Readiness port. With "attach": REQUIRED when readiness is "http"/"tcp-port" — an ' +
93
+ 'attached target\'s port cannot be inferred. With "command": omit for an ephemeral ' +
94
+ "port passed as PORT; set only if your command hardcodes one, and it must match.",
95
+ },
96
+ dependsOn: {
97
+ type: "array",
98
+ items: { type: "string" },
99
+ description: "Service names that must be ready first.",
100
+ },
101
+ env: { type: "object", additionalProperties: { type: "string" } },
102
+ attach: {
103
+ type: "object",
104
+ description: "Observe an already-running process instead of spawning one. Never executed, signalled, or limited.",
105
+ properties: {
106
+ pid: { type: "integer" },
107
+ logFilePath: { type: "string", description: "A file the target already writes its stdout/stderr to." },
108
+ },
109
+ required: ["pid", "logFilePath"],
110
+ additionalProperties: false,
111
+ },
112
+ readiness: {
113
+ type: "object",
114
+ description: "Required per service. Only http/tcp-port/command are expressible here — log-pattern " +
115
+ "and custom-hook need a function and are unreachable through this tool.",
116
+ properties: {
117
+ kind: { type: "string", enum: [...READINESS_KINDS] },
118
+ path: { type: "string", description: 'kind "http": appended to http://127.0.0.1:<port>. Defaults to "/".' },
119
+ expectedStatus: { type: "integer", description: 'kind "http": defaults to any 2xx/3xx.' },
120
+ host: { type: "string", description: 'kind "tcp-port": defaults to 127.0.0.1.' },
121
+ command: { type: "string", description: 'kind "command": the executable to run.' },
122
+ args: { type: "array", items: { type: "string" }, description: 'kind "command".' },
123
+ timeoutMs: { type: "integer", description: "Defaults to 30000." },
124
+ },
125
+ required: ["kind"],
126
+ additionalProperties: false,
127
+ },
128
+ },
129
+ required: ["readiness"],
130
+ additionalProperties: false,
131
+ },
132
+ },
133
+ adapter: {
134
+ type: "object",
135
+ description: "runtime only, REQUIRED. Runtime adapter to observe with, as a module specifier imported at " +
136
+ "call time. This server bundles none of descry-runtime's language adapters by design — " +
137
+ "install one alongside it and name it here.",
138
+ properties: {
139
+ module: { type: "string" },
140
+ export: { type: "string", description: "Defaults to the sole create*RuntimeAdapter export; name one if there are two." },
141
+ options: { type: "object", description: "Passed to the factory. Adapter-specific and opaque here." },
142
+ },
143
+ required: ["module"],
144
+ additionalProperties: false,
145
+ },
146
+ scopeByService: {
147
+ type: "object",
148
+ description: "runtime only. Service name → which repository its symbols resolve in. An unlisted service " +
149
+ "is left unresolved rather than guessed. Defaults to this session's own repo for every service.",
150
+ additionalProperties: {
151
+ type: "object",
152
+ properties: {
153
+ repo: { type: "string" },
154
+ repoRoot: { type: "string", description: "Absolute on-disk root, for translating observed absolute paths." },
155
+ cwd: { type: "string" },
156
+ },
157
+ required: ["repo"],
158
+ additionalProperties: false,
159
+ },
160
+ },
161
+ observeForMs: {
162
+ type: "integer",
163
+ description: 'runtime only. How long to drain collector output after services are ready. Defaults to ' +
164
+ '5000. There is no "done" signal at this layer, so you state the window.',
165
+ },
166
+ timeoutMs: {
167
+ type: "integer",
168
+ description: 'Timeout budget, in ms. verb "runtime": whole-execution budget, default 60000. verb ' +
169
+ '"tests": how long to let the suite run, default 600000.',
170
+ },
171
+ environmentTier: {
172
+ type: "string",
173
+ enum: ["tier-0-ci-attached", "tier-1-preview", "tier-2-container", "tier-2b-api-only", "tier-3-static-only"],
174
+ description: 'runtime only. Recorded on the execution. Defaults to "tier-2-container"; never derived ' +
175
+ "from profile.mode — declared fields are never inferred from a neighbour.",
176
+ },
177
+ fidelityLevel: {
178
+ type: "integer",
179
+ enum: [1, 2, 3, 4],
180
+ description: "runtime only. 1 rule-aware stub · 2 real code + disposable DB · 3 real code + redacted " +
181
+ "recordings · 4 real staging. Defaults to 2.",
182
+ },
183
+ evidencePath: {
184
+ type: "string",
185
+ description: `runtime only. Where the evidence database lives. Defaults to ${DEFAULT_EVIDENCE_RELATIVE_PATH} under the repo root.`,
186
+ },
187
+ resourceLimits: {
188
+ type: "object",
189
+ description: "runtime only. OS-enforced caps on a spawned service (prlimit); never applied to an " +
190
+ "attached one. Absent means unconstrained, which every reply discloses.",
191
+ properties: {
192
+ maxMemoryBytes: { type: "integer", description: "Virtual address space cap (prlimit --as)." },
193
+ maxCpuSeconds: { type: "integer", description: "CPU time cap, in seconds (prlimit --cpu)." },
194
+ maxProcesses: { type: "integer", description: "Process count cap, per real uid (prlimit --nproc)." },
195
+ },
196
+ additionalProperties: false,
197
+ },
198
+ filesystemPolicy: {
199
+ type: "object",
200
+ description: "runtime only. Confines a spawned service's filesystem to its own cwd plus these roots — " +
201
+ "real on Linux (a bwrap mount namespace); refuses the run rather than silently going " +
202
+ "unenforced elsewhere. Absent means unconstrained.",
203
+ properties: {
204
+ allowedRoots: {
205
+ type: "array",
206
+ items: { type: "string" },
207
+ description: "Absolute paths visible read-write in addition to the service's own cwd.",
208
+ },
209
+ },
210
+ required: ["allowedRoots"],
211
+ additionalProperties: false,
212
+ },
213
+ networkPolicy: {
214
+ type: "object",
215
+ description: 'runtime only. Only { mode: "allow", hosts: [] } (full denial) is actually enforced today ' +
216
+ "— any other shape refuses the run rather than starting unconstrained. Absent means unconstrained.",
217
+ properties: {
218
+ mode: { type: "string", enum: ["allow", "deny"] },
219
+ hosts: { type: "array", items: { type: "string" } },
220
+ },
221
+ required: ["mode", "hosts"],
222
+ additionalProperties: false,
223
+ },
224
+ sandboxBackend: {
225
+ type: "string",
226
+ enum: ["bwrap", "container"],
227
+ description: 'runtime only. Mechanism enforcing filesystemPolicy/networkPolicy. Defaults to "bwrap" ' +
228
+ '(Linux). "container" is the only option on macOS/Windows and does not compose with resourceLimits.',
229
+ },
230
+ // --- tests only ---
231
+ command: {
232
+ type: "string",
233
+ description: "tests only, REQUIRED. The test command, exactly as typed in a terminal. Matched against " +
234
+ "ten known runner families, never sniffed from package.json or a lockfile — an unrecognised " +
235
+ "command is refused by name. Executes your code, hence the two-call confirmation.",
236
+ },
237
+ cwd: {
238
+ type: "string",
239
+ description: "tests only. Where to run the command. Relative paths resolve against the repo root; absent means the repo root.",
240
+ },
241
+ // --- shared ---
242
+ confirmToken: {
243
+ type: "string",
244
+ description: "The token from an unconfirmed call. Required to actually run: call once without it for a " +
245
+ "description and a token, again with it to execute — with the arguments frozen when the token was minted, not " +
246
+ "time. A conflicting argument on the confirming call is discarded, not applied, and the " +
247
+ "reply discloses which.",
248
+ },
249
+ },
250
+ required: ["verb"],
251
+ additionalProperties: false,
252
+ };
253
+ async function run(args, ctx) {
254
+ const verb = selectVerb(args, "verb", VERB_SPECS, SHARED_PROPS);
255
+ return verb === "runtime" ? runRuntime(args, ctx) : runTests(args, ctx);
256
+ }
257
+ /** One `describeAction` for two verbs — the requirement this merge cannot get wrong (UAT phase 5
258
+ * F12: `browser_start_session` once issued a consent sentence for the wrong verb). `selectVerb`
259
+ * decides which verb the call names before either absorbed `describeAction` sees it, so each one
260
+ * only ever describes the run it was actually asked to describe. */
261
+ function describeAction(args, ctx) {
262
+ const verb = selectVerb(args, "verb", VERB_SPECS, SHARED_PROPS);
263
+ return verb === "runtime" ? describeRuntimeAction(args, ctx) : describeTestsAction(args);
264
+ }
265
+ export const observeTool = {
266
+ name: "observe",
267
+ class: "action",
268
+ tier: "evidence",
269
+ version: "1.0.0",
270
+ title: "Observe a running application or a test run",
271
+ description: 'Two ways to gather runtime evidence, chosen by "verb". "runtime": boot or attach to declared ' +
272
+ "services, watch them with a runtime adapter, and record what was witnessed as R4 graph edges " +
273
+ '— the resolution level static analysis cannot reach. "tests": run the project\'s test suite ' +
274
+ "and record which TEST_CASE nodes actually ran, needing no application booted. Both take a " +
275
+ "two-call confirmation: the first call performs nothing and returns a confirmToken describing " +
276
+ "what it would do; call again with confirmToken to run it. " +
277
+ '"runtime" before calling: this observes an app you can already run — it does not get you to a ' +
278
+ "runnable state (dependencies, env, migrations are yours to prepare). Overriding some env vars " +
279
+ "does not isolate the run from the app's own config file — anything unoverridden is still read " +
280
+ "from it, including values naming other environments.",
281
+ inputSchema: SCHEMA,
282
+ run,
283
+ describeAction,
284
+ };
285
+ //# sourceMappingURL=observe.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"observe.js","sourceRoot":"","sources":["../../src/tools/observe.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * Per-verb argument validation for a merged tool.
3
+ *
4
+ * ## Why a merged tool needs this at all
5
+ *
6
+ * The dispatch loop refuses any argument no schema declares
7
+ * (`server.ts`'s `unknownArgumentKeys`, built for UAT phase 5's F12 after
8
+ * `browser_start_session({ profile })` silently read `environment` and issued
9
+ * the wrong consent sentence). That check reads one flat `inputSchema`.
10
+ *
11
+ * A merged tool has one schema for many verbs, so its schema must declare the
12
+ * *union* of every verb's properties. `text` is then a declared property of the
13
+ * `browser` tool as a whole, and `browser({ verb: "snapshot", text: "hi" })`
14
+ * sails through the dispatch gate — the same silent-acceptance defect, one
15
+ * level further down, and invisible to the test that caught it the first time.
16
+ *
17
+ * So the strength the flat schema loses is re-established here, per verb. This
18
+ * is the price of merging, paid explicitly rather than absorbed.
19
+ *
20
+ * ## Why it names the other verb
21
+ *
22
+ * "unknown argument" is true but useless when the argument is real and the verb
23
+ * is wrong — the caller who sent `text` to `snapshot` did not misspell
24
+ * anything, they picked the wrong verb. Saying *`"text"` belongs to `type`*
25
+ * turns a refusal the caller must debug into one they can act on, which is the
26
+ * same reason `ToolInputError` exists separately from a thrown `Error`.
27
+ */
28
+ export interface VerbSpec<V extends string = string> {
29
+ readonly verb: V;
30
+ /** Properties this verb accepts, beyond the shared ones. */
31
+ readonly accepts: readonly string[];
32
+ }
33
+ /**
34
+ * Resolve and validate the verb of a merged tool call.
35
+ *
36
+ * Refuses, rather than defaulting or ignoring, on: a missing verb, an unknown
37
+ * verb, and any property that belongs to a different verb. Returns the verb so
38
+ * the caller can switch on a value already known to be valid.
39
+ *
40
+ * `shared` are properties every verb accepts — a session id, a budget. A
41
+ * property in neither `shared` nor any verb's `accepts` is not this function's
42
+ * to judge: the dispatch gate already refused it against the declared schema,
43
+ * and re-refusing it here would put the tool's property list in two places.
44
+ */
45
+ export declare function selectVerb<V extends string>(args: Record<string, unknown>, key: string, specs: readonly VerbSpec<V>[], shared?: readonly string[]): V;
46
+ //# sourceMappingURL=verb.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verb.d.ts","sourceRoot":"","sources":["../../src/tools/verb.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAIH,MAAM,WAAW,QAAQ,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM;IACjD,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;IACjB,4DAA4D;IAC5D,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;CACrC;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,UAAU,CAAC,CAAC,SAAS,MAAM,EACzC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,SAAS,QAAQ,CAAC,CAAC,CAAC,EAAE,EAC7B,MAAM,GAAE,SAAS,MAAM,EAAO,GAC7B,CAAC,CAwCH"}
@@ -0,0 +1,78 @@
1
+ /**
2
+ * Per-verb argument validation for a merged tool.
3
+ *
4
+ * ## Why a merged tool needs this at all
5
+ *
6
+ * The dispatch loop refuses any argument no schema declares
7
+ * (`server.ts`'s `unknownArgumentKeys`, built for UAT phase 5's F12 after
8
+ * `browser_start_session({ profile })` silently read `environment` and issued
9
+ * the wrong consent sentence). That check reads one flat `inputSchema`.
10
+ *
11
+ * A merged tool has one schema for many verbs, so its schema must declare the
12
+ * *union* of every verb's properties. `text` is then a declared property of the
13
+ * `browser` tool as a whole, and `browser({ verb: "snapshot", text: "hi" })`
14
+ * sails through the dispatch gate — the same silent-acceptance defect, one
15
+ * level further down, and invisible to the test that caught it the first time.
16
+ *
17
+ * So the strength the flat schema loses is re-established here, per verb. This
18
+ * is the price of merging, paid explicitly rather than absorbed.
19
+ *
20
+ * ## Why it names the other verb
21
+ *
22
+ * "unknown argument" is true but useless when the argument is real and the verb
23
+ * is wrong — the caller who sent `text` to `snapshot` did not misspell
24
+ * anything, they picked the wrong verb. Saying *`"text"` belongs to `type`*
25
+ * turns a refusal the caller must debug into one they can act on, which is the
26
+ * same reason `ToolInputError` exists separately from a thrown `Error`.
27
+ */
28
+ import { ToolInputError } from "./kit.js";
29
+ /**
30
+ * Resolve and validate the verb of a merged tool call.
31
+ *
32
+ * Refuses, rather than defaulting or ignoring, on: a missing verb, an unknown
33
+ * verb, and any property that belongs to a different verb. Returns the verb so
34
+ * the caller can switch on a value already known to be valid.
35
+ *
36
+ * `shared` are properties every verb accepts — a session id, a budget. A
37
+ * property in neither `shared` nor any verb's `accepts` is not this function's
38
+ * to judge: the dispatch gate already refused it against the declared schema,
39
+ * and re-refusing it here would put the tool's property list in two places.
40
+ */
41
+ export function selectVerb(args, key, specs, shared = []) {
42
+ const raw = args[key];
43
+ if (raw === undefined || raw === null || raw === "") {
44
+ throw new ToolInputError(`"${key}" is required — one of: ${specs.map((s) => s.verb).join(", ")}`);
45
+ }
46
+ if (typeof raw !== "string")
47
+ throw new ToolInputError(`"${key}" must be a string`);
48
+ const spec = specs.find((s) => s.verb === raw);
49
+ if (spec === undefined) {
50
+ throw new ToolInputError(`"${key}" must be one of: ${specs.map((s) => s.verb).join(", ")}`);
51
+ }
52
+ // Where each property that is not this verb's does belong. Built per call
53
+ // rather than hoisted: the specs are a handful of entries, and a module-level
54
+ // cache keyed on a caller-supplied array is a lifetime question this does not
55
+ // need to have.
56
+ const ownerOf = new Map();
57
+ for (const other of specs) {
58
+ if (other.verb === spec.verb)
59
+ continue;
60
+ for (const property of other.accepts) {
61
+ if (spec.accepts.includes(property))
62
+ continue;
63
+ // First owner wins only for the message; the refusal is the same either
64
+ // way, and listing every owner of a property shared by two other verbs
65
+ // would bury the one fact the caller needs.
66
+ if (!ownerOf.has(property))
67
+ ownerOf.set(property, other.verb);
68
+ }
69
+ }
70
+ const strays = Object.keys(args).filter((property) => property !== key && !shared.includes(property) && ownerOf.has(property));
71
+ if (strays.length > 0) {
72
+ const detail = strays.map((property) => `"${property}" belongs to ${ownerOf.get(property)}`).join("; ");
73
+ throw new ToolInputError(`${spec.verb} does not accept ${strays.map((p) => `"${p}"`).join(", ")} — ${detail}. ` +
74
+ `${spec.verb} accepts: ${[...shared, ...spec.accepts].join(", ") || "no arguments beyond the verb"}.`);
75
+ }
76
+ return spec.verb;
77
+ }
78
+ //# sourceMappingURL=verb.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verb.js","sourceRoot":"","sources":["../../src/tools/verb.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * `workspace` — merges `analyze`, `analyze_workspace` and `link_workspace`
3
+ * behind one `verb` (documents/plans/mcp-surface-consolidation.md §2, group 1).
4
+ * All three are `stateful-read`/`evidence`, so the merge crosses neither
5
+ * boundary.
6
+ *
7
+ * Dispatch only. Each verb's own `run()` body is untouched and stays in its
8
+ * own module (`analyze.ts` / `analyze-workspace.ts` / `link-workspace.ts`) —
9
+ * this file never holds a second copy of that logic, it only routes to it
10
+ * after `selectVerb` has re-established, per verb, the argument strength a
11
+ * flat union schema loses (`verb.ts`'s own header explains why that is
12
+ * mandatory once a schema covers more than one verb).
13
+ */
14
+ import type { ToolDefinition } from "./kit.ts";
15
+ import type { AnalyzeData } from "./analyze.ts";
16
+ import type { AnalyzeWorkspaceData } from "./analyze-workspace.ts";
17
+ import type { LinkWorkspaceData } from "./link-workspace.ts";
18
+ /**
19
+ * What this tool answers with: one verb's shape, never a merged one.
20
+ *
21
+ * The merge cost this its single concrete output type, and `unknown` would have
22
+ * silently retired `output-shapes.test.ts`'s check that a declared shape is tied
23
+ * to the code producing it. A union keeps that tie: a verb added without its
24
+ * shape here stops compiling.
25
+ */
26
+ export type WorkspaceData = AnalyzeData | AnalyzeWorkspaceData | LinkWorkspaceData;
27
+ export declare const workspaceTool: ToolDefinition;
28
+ //# sourceMappingURL=workspace.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workspace.d.ts","sourceRoot":"","sources":["../../src/tools/workspace.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,KAAK,EAAe,cAAc,EAAE,MAAM,UAAU,CAAC;AAM5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAE7D;;;;;;;GAOG;AACH,MAAM,MAAM,aAAa,GACrB,WAAW,GACX,oBAAoB,GACpB,iBAAiB,CAAC;AAiFtB,eAAO,MAAM,aAAa,EAAE,cAa3B,CAAC"}