@siteverb/webmcp 0.1.0-rc.0 → 0.1.0-rc.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 (48) hide show
  1. package/dist/browser.js +1 -1
  2. package/dist/version.d.ts +1 -1
  3. package/dist/version.js +1 -1
  4. package/package.json +2 -2
  5. package/dist/src/client.d.ts +0 -3
  6. package/dist/src/client.d.ts.map +0 -1
  7. package/dist/src/client.js +0 -292
  8. package/dist/src/client.js.map +0 -1
  9. package/dist/src/evals/index.d.ts +0 -13
  10. package/dist/src/evals/index.d.ts.map +0 -1
  11. package/dist/src/evals/index.js +0 -20
  12. package/dist/src/evals/index.js.map +0 -1
  13. package/dist/src/fingerprint.d.ts +0 -3
  14. package/dist/src/fingerprint.d.ts.map +0 -1
  15. package/dist/src/fingerprint.js +0 -27
  16. package/dist/src/fingerprint.js.map +0 -1
  17. package/dist/src/index.d.ts +0 -9
  18. package/dist/src/index.d.ts.map +0 -1
  19. package/dist/src/index.js +0 -6
  20. package/dist/src/index.js.map +0 -1
  21. package/dist/src/telemetry.d.ts +0 -21
  22. package/dist/src/telemetry.d.ts.map +0 -1
  23. package/dist/src/telemetry.js +0 -218
  24. package/dist/src/telemetry.js.map +0 -1
  25. package/dist/src/testing/index.d.ts +0 -3
  26. package/dist/src/testing/index.d.ts.map +0 -1
  27. package/dist/src/testing/index.js +0 -2
  28. package/dist/src/testing/index.js.map +0 -1
  29. package/dist/src/testing/memory.d.ts +0 -17
  30. package/dist/src/testing/memory.d.ts.map +0 -1
  31. package/dist/src/testing/memory.js +0 -72
  32. package/dist/src/testing/memory.js.map +0 -1
  33. package/dist/src/transport.d.ts +0 -8
  34. package/dist/src/transport.d.ts.map +0 -1
  35. package/dist/src/transport.js +0 -29
  36. package/dist/src/transport.js.map +0 -1
  37. package/dist/src/types.d.ts +0 -185
  38. package/dist/src/types.d.ts.map +0 -1
  39. package/dist/src/types.js +0 -2
  40. package/dist/src/types.js.map +0 -1
  41. package/dist/src/validation.d.ts +0 -5
  42. package/dist/src/validation.d.ts.map +0 -1
  43. package/dist/src/validation.js +0 -119
  44. package/dist/src/validation.js.map +0 -1
  45. package/dist/src/version.d.ts +0 -2
  46. package/dist/src/version.d.ts.map +0 -1
  47. package/dist/src/version.js +0 -2
  48. package/dist/src/version.js.map +0 -1
package/dist/browser.js CHANGED
@@ -90,7 +90,7 @@ function createFetchTelemetryTransport(options) {
90
90
  }
91
91
 
92
92
  // src/version.ts
93
- var SITEVERB_WEBMCP_VERSION = "0.1.0-rc.0";
93
+ var SITEVERB_WEBMCP_VERSION = "0.1.0-rc.1";
94
94
 
95
95
  // src/telemetry.ts
96
96
  function resolveSessionId(siteId) {
package/dist/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const SITEVERB_WEBMCP_VERSION = "0.1.0-rc.0";
1
+ export declare const SITEVERB_WEBMCP_VERSION = "0.1.0-rc.1";
2
2
  //# sourceMappingURL=version.d.ts.map
package/dist/version.js CHANGED
@@ -1,2 +1,2 @@
1
- export const SITEVERB_WEBMCP_VERSION = '0.1.0-rc.0';
1
+ export const SITEVERB_WEBMCP_VERSION = '0.1.0-rc.1';
2
2
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@siteverb/webmcp",
3
- "version": "0.1.0-rc.0",
3
+ "version": "0.1.0-rc.1",
4
4
  "description": "Native-first WebMCP tools with stable identity, lifecycle control, and production-safe instrumentation.",
5
5
  "type": "module",
6
6
  "sideEffects": false,
@@ -33,7 +33,7 @@
33
33
  "node": ">=22"
34
34
  },
35
35
  "scripts": {
36
- "build": "tsc -p tsconfig.build.json && esbuild src/index.ts --bundle --format=esm --platform=browser --target=es2022 --outfile=dist/browser.js",
36
+ "build": "node ../../scripts/clean-package-dist.mjs && tsc -p tsconfig.build.json && esbuild src/index.ts --bundle --format=esm --platform=browser --target=es2022 --outfile=dist/browser.js",
37
37
  "package:check": "publint && attw --pack . --profile esm-only",
38
38
  "test": "vitest run",
39
39
  "typecheck": "tsc -p tsconfig.json --noEmit"
@@ -1,3 +0,0 @@
1
- import type { SiteverbClient, SiteverbOptions } from './types.js';
2
- export declare function createSiteverb(options?: SiteverbOptions): SiteverbClient;
3
- //# sourceMappingURL=client.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAaV,cAAc,EACd,eAAe,EAGhB,MAAM,YAAY,CAAC;AAuFpB,wBAAgB,cAAc,CAAC,OAAO,GAAE,eAAoB,GAAG,cAAc,CA+O5E"}
@@ -1,292 +0,0 @@
1
- import { schemaFingerprint } from './fingerprint.js';
2
- import { classifyTelemetryError, createTelemetryManager } from './telemetry.js';
3
- import { defineTool, isDefinedTool } from './validation.js';
4
- function randomId() {
5
- if (typeof globalThis.crypto?.randomUUID === 'function')
6
- return globalThis.crypto.randomUUID();
7
- const bytes = new Uint8Array(16);
8
- globalThis.crypto?.getRandomValues?.(bytes);
9
- return Array.from(bytes, (byte) => byte.toString(16).padStart(2, '0')).join('');
10
- }
11
- function defaultModelContext() {
12
- if (typeof document === 'undefined')
13
- return undefined;
14
- return document.modelContext;
15
- }
16
- function resolveModelContext(options) {
17
- if (typeof options.modelContext === 'function')
18
- return options.modelContext();
19
- return options.modelContext ?? defaultModelContext();
20
- }
21
- function nativeTool(tool, telemetry, identity) {
22
- return {
23
- name: tool.name,
24
- ...(tool.title === undefined ? {} : { title: tool.title }),
25
- description: tool.description,
26
- ...(tool.inputSchema === undefined ? {} : { inputSchema: tool.inputSchema }),
27
- ...(tool.annotations === undefined ? {} : { annotations: tool.annotations }),
28
- execute: async (input, executionOptions) => {
29
- const invocationId = randomId();
30
- const sequenceIndex = telemetry.nextSequence();
31
- const telemetryIdentity = await identity;
32
- const startedAt = globalThis.performance?.now() ?? Date.now();
33
- telemetry.emit('tool_call_started', {
34
- invocationId,
35
- sequenceIndex,
36
- tool: telemetryIdentity,
37
- });
38
- try {
39
- const result = await tool.execute(input, {
40
- signal: executionOptions.signal,
41
- invocationId,
42
- });
43
- telemetry.emit('tool_call_completed', {
44
- durationMs: Math.max(0, Math.round((globalThis.performance?.now() ?? Date.now()) - startedAt)),
45
- invocationId,
46
- sequenceIndex,
47
- tool: telemetryIdentity,
48
- });
49
- return result;
50
- }
51
- catch (error) {
52
- const errorClass = classifyTelemetryError(error, executionOptions.signal);
53
- telemetry.emit(errorClass === 'abort' ? 'tool_call_cancelled' : 'tool_call_failed', {
54
- durationMs: Math.max(0, Math.round((globalThis.performance?.now() ?? Date.now()) - startedAt)),
55
- errorClass,
56
- invocationId,
57
- sequenceIndex,
58
- tool: telemetryIdentity,
59
- });
60
- throw error;
61
- }
62
- },
63
- };
64
- }
65
- function abortReason(reason) {
66
- if (reason !== undefined)
67
- return reason;
68
- return new DOMException('The Siteverb registration was removed.', 'AbortError');
69
- }
70
- export function createSiteverb(options = {}) {
71
- const registrationsById = new Map();
72
- const registrationsByName = new Map();
73
- const telemetry = createTelemetryManager(options, Boolean(resolveModelContext(options)));
74
- const registerTool = (definition, registerOptions = {}) => {
75
- const tool = isDefinedTool(definition) ? definition : defineTool(definition);
76
- if (registrationsById.has(tool.id)) {
77
- throw new TypeError(`A Siteverb tool with id "${tool.id}" is already registered.`);
78
- }
79
- if (registrationsByName.has(tool.name)) {
80
- throw new TypeError(`A WebMCP tool with name "${tool.name}" is already registered.`);
81
- }
82
- const controller = new AbortController();
83
- const identity = schemaFingerprint(tool.inputSchema).then((schemaHash) => ({
84
- schemaHash,
85
- stableKey: tool.id,
86
- wireName: tool.name,
87
- }));
88
- let externalAbort;
89
- let emittedRegistration = false;
90
- const mutable = {};
91
- const unregister = (reason) => {
92
- if (mutable.status === 'unregistered')
93
- return;
94
- controller.abort(abortReason(reason));
95
- if (emittedRegistration) {
96
- void identity.then((toolIdentity) => telemetry.emit('tool_unregistered', { tool: toolIdentity }));
97
- emittedRegistration = false;
98
- }
99
- mutable.status = 'unregistered';
100
- registrationsById.delete(tool.id);
101
- registrationsByName.delete(tool.name);
102
- if (externalAbort)
103
- registerOptions.signal?.removeEventListener('abort', externalAbort);
104
- };
105
- const handle = {
106
- id: tool.id,
107
- name: tool.name,
108
- get status() {
109
- return mutable.status;
110
- },
111
- signal: controller.signal,
112
- unregister,
113
- };
114
- mutable.handle = handle;
115
- mutable.status = 'pending';
116
- registrationsById.set(tool.id, mutable);
117
- registrationsByName.set(tool.name, mutable);
118
- if (registerOptions.signal) {
119
- externalAbort = () => unregister(registerOptions.signal?.reason);
120
- if (registerOptions.signal.aborted)
121
- externalAbort();
122
- else
123
- registerOptions.signal.addEventListener('abort', externalAbort, { once: true });
124
- }
125
- const ready = (async () => {
126
- if (controller.signal.aborted)
127
- throw controller.signal.reason;
128
- const context = resolveModelContext(options);
129
- if (!context) {
130
- mutable.status = 'unsupported';
131
- return { id: tool.id, name: tool.name, status: 'unsupported' };
132
- }
133
- try {
134
- await context.registerTool(nativeTool(tool, telemetry, identity), {
135
- signal: controller.signal,
136
- ...(registerOptions.exposedTo === undefined
137
- ? {}
138
- : { exposedTo: [...registerOptions.exposedTo] }),
139
- });
140
- if (controller.signal.aborted)
141
- throw controller.signal.reason;
142
- mutable.status = 'registered';
143
- emittedRegistration = true;
144
- telemetry.emit('tool_registered', { tool: await identity });
145
- return { id: tool.id, name: tool.name, status: 'registered' };
146
- }
147
- catch (error) {
148
- if (mutable.status !== 'unregistered')
149
- mutable.status = 'failed';
150
- registrationsById.delete(tool.id);
151
- registrationsByName.delete(tool.name);
152
- telemetry.emit('tool_registration_failed', {
153
- errorClass: classifyTelemetryError(error, controller.signal),
154
- tool: await identity,
155
- });
156
- throw error;
157
- }
158
- })();
159
- handle.ready = ready;
160
- void ready.catch(() => undefined);
161
- return handle;
162
- };
163
- const registerTools = (definitions, registerOptions = {}) => {
164
- const controller = new AbortController();
165
- const handles = [];
166
- const atomic = registerOptions.atomic ?? true;
167
- const unregister = (reason) => {
168
- controller.abort(abortReason(reason));
169
- for (const handle of handles)
170
- handle.unregister(reason);
171
- };
172
- try {
173
- for (const definition of definitions) {
174
- handles.push(registerTool(definition, {
175
- signal: controller.signal,
176
- ...(registerOptions.exposedTo === undefined
177
- ? {}
178
- : { exposedTo: registerOptions.exposedTo }),
179
- }));
180
- }
181
- }
182
- catch (error) {
183
- unregister(error);
184
- throw error;
185
- }
186
- if (registerOptions.signal) {
187
- const onAbort = () => unregister(registerOptions.signal?.reason);
188
- if (registerOptions.signal.aborted)
189
- onAbort();
190
- else
191
- registerOptions.signal.addEventListener('abort', onAbort, { once: true });
192
- }
193
- const ready = Promise.all(handles.map((handle) => handle.ready)).catch((error) => {
194
- if (atomic)
195
- unregister(error);
196
- throw error;
197
- });
198
- void ready.catch(() => undefined);
199
- return Object.freeze({
200
- handles: Object.freeze(handles),
201
- ready,
202
- signal: controller.signal,
203
- unregister,
204
- });
205
- };
206
- const snapshot = () => {
207
- const tools = Array.from(registrationsById.values(), ({ handle, status }) => ({
208
- id: handle.id,
209
- name: handle.name,
210
- status,
211
- })).sort((left, right) => left.id.localeCompare(right.id));
212
- return {
213
- ...(options.environment === undefined ? {} : { environment: options.environment }),
214
- ...(options.release === undefined ? {} : { release: options.release }),
215
- ...(options.siteId === undefined ? {} : { siteId: options.siteId }),
216
- supported: Boolean(resolveModelContext(options)),
217
- telemetry: telemetry.status(),
218
- tools,
219
- };
220
- };
221
- const coverage = async () => {
222
- const context = resolveModelContext(options);
223
- const instrumented = Array.from(registrationsByName.keys()).sort();
224
- if (!context?.getTools) {
225
- return {
226
- completeness: null,
227
- discovered: [],
228
- instrumented,
229
- inventoryOnly: [],
230
- missing: [],
231
- status: 'unavailable',
232
- };
233
- }
234
- let discovered;
235
- try {
236
- discovered = Array.from(new Set((await context.getTools()).map((tool) => tool.name))).sort();
237
- }
238
- catch (cause) {
239
- options.onDiagnostic?.({
240
- cause,
241
- code: 'coverage-unavailable',
242
- message: 'The native WebMCP inventory could not be read.',
243
- severity: 'warning',
244
- });
245
- return {
246
- completeness: null,
247
- discovered: [],
248
- instrumented,
249
- inventoryOnly: [],
250
- missing: [],
251
- status: 'unavailable',
252
- };
253
- }
254
- const discoveredSet = new Set(discovered);
255
- const instrumentedSet = new Set(instrumented);
256
- const inventoryOnly = discovered.filter((name) => !instrumentedSet.has(name));
257
- const missing = instrumented.filter((name) => !discoveredSet.has(name));
258
- return {
259
- completeness: discovered.length === 0
260
- ? instrumented.length === 0
261
- ? 1
262
- : 0
263
- : (discovered.length - inventoryOnly.length) / discovered.length,
264
- discovered,
265
- instrumented,
266
- inventoryOnly,
267
- missing,
268
- status: 'available',
269
- };
270
- };
271
- const dispose = (reason) => {
272
- for (const registration of Array.from(registrationsById.values())) {
273
- registration.handle.unregister(reason);
274
- }
275
- telemetry.dispose();
276
- };
277
- return Object.freeze({
278
- get supported() {
279
- return Boolean(resolveModelContext(options));
280
- },
281
- get telemetry() {
282
- return telemetry.status();
283
- },
284
- registerTool,
285
- registerTools,
286
- coverage,
287
- dispose,
288
- flush: () => telemetry.flush('manual'),
289
- snapshot,
290
- });
291
- }
292
- //# sourceMappingURL=client.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"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"}
@@ -1,13 +0,0 @@
1
- import type { AnySiteverbTool, JsonSchema, WebMcpToolAnnotations } from '../types.js';
2
- export interface WebMcpEvalsToolSchema {
3
- readonly annotations?: WebMcpToolAnnotations;
4
- readonly description: string;
5
- readonly inputSchema: JsonSchema | null;
6
- readonly name: string;
7
- readonly outputSchema: null;
8
- }
9
- export interface WebMcpEvalsSchema {
10
- readonly tools: readonly WebMcpEvalsToolSchema[];
11
- }
12
- export declare function toWebMcpEvalsSchema(tools: readonly AnySiteverbTool[]): WebMcpEvalsSchema;
13
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/evals/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,eAAe,EACf,UAAU,EACV,qBAAqB,EACtB,MAAM,aAAa,CAAC;AAErB,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,WAAW,CAAC,EAAE,qBAAqB,CAAC;IAC7C,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,WAAW,EAAE,UAAU,GAAG,IAAI,CAAC;IACxC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,YAAY,EAAE,IAAI,CAAC;CAC7B;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,KAAK,EAAE,SAAS,qBAAqB,EAAE,CAAC;CAClD;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,SAAS,eAAe,EAAE,GAAG,iBAAiB,CAmBxF"}
@@ -1,20 +0,0 @@
1
- import { defineTool, isDefinedTool } from '../validation.js';
2
- export function toWebMcpEvalsSchema(tools) {
3
- const names = new Set();
4
- const exported = tools.map((candidate) => {
5
- const tool = isDefinedTool(candidate) ? candidate : defineTool(candidate);
6
- if (names.has(tool.name)) {
7
- throw new TypeError(`Cannot export duplicate WebMCP tool name "${tool.name}".`);
8
- }
9
- names.add(tool.name);
10
- return Object.freeze({
11
- name: tool.name,
12
- description: tool.description,
13
- inputSchema: tool.inputSchema ?? null,
14
- outputSchema: null,
15
- ...(tool.annotations === undefined ? {} : { annotations: tool.annotations }),
16
- });
17
- });
18
- return Object.freeze({ tools: Object.freeze(exported) });
19
- }
20
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/evals/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAmB7D,MAAM,UAAU,mBAAmB,CAAC,KAAiC;IACnE,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE;QACvC,MAAM,IAAI,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAC1E,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,SAAS,CAAC,6CAA6C,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC;QAClF,CAAC;QACD,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAErB,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,IAAI;YACrC,YAAY,EAAE,IAAI;YAClB,GAAG,CAAC,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC;SAC7E,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AAC3D,CAAC"}
@@ -1,3 +0,0 @@
1
- import type { JsonSchema } from './types.js';
2
- export declare function schemaFingerprint(schema: JsonSchema | undefined): Promise<string>;
3
- //# sourceMappingURL=fingerprint.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fingerprint.d.ts","sourceRoot":"","sources":["../../src/fingerprint.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAa,MAAM,YAAY,CAAC;AAoBxD,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,UAAU,GAAG,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CASvF"}
@@ -1,27 +0,0 @@
1
- function canonicalize(value) {
2
- if (value === null || typeof value !== 'object')
3
- return JSON.stringify(value);
4
- if (Array.isArray(value))
5
- return `[${value.map(canonicalize).join(',')}]`;
6
- return `{${Object.keys(value)
7
- .sort()
8
- .map((key) => `${JSON.stringify(key)}:${canonicalize(value[key])}`)
9
- .join(',')}}`;
10
- }
11
- function fallbackHash(value) {
12
- let hash = 0x811c9dc5;
13
- for (let index = 0; index < value.length; index += 1) {
14
- hash ^= value.charCodeAt(index);
15
- hash = Math.imul(hash, 0x01000193);
16
- }
17
- return `fnv1a32:${(hash >>> 0).toString(16).padStart(8, '0')}`;
18
- }
19
- export async function schemaFingerprint(schema) {
20
- const canonical = canonicalize((schema ?? {}));
21
- const subtle = globalThis.crypto?.subtle;
22
- if (!subtle)
23
- return fallbackHash(canonical);
24
- const digest = await subtle.digest('SHA-256', new TextEncoder().encode(canonical));
25
- return `sha256:${Array.from(new Uint8Array(digest), (byte) => byte.toString(16).padStart(2, '0')).join('')}`;
26
- }
27
- //# sourceMappingURL=fingerprint.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fingerprint.js","sourceRoot":"","sources":["../../src/fingerprint.ts"],"names":[],"mappings":"AAEA,SAAS,YAAY,CAAC,KAAgB;IACpC,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC9E,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;IAC1E,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;SAC1B,IAAI,EAAE;SACN,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,YAAY,CAAC,KAAK,CAAC,GAAG,CAAc,CAAC,EAAE,CAAC;SAC/E,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;AAClB,CAAC;AAED,SAAS,YAAY,CAAC,KAAa;IACjC,IAAI,IAAI,GAAG,UAAU,CAAC;IACtB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACrD,IAAI,IAAI,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QAChC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,WAAW,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;AACjE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,MAA8B;IACpE,MAAM,SAAS,GAAG,YAAY,CAAC,CAAC,MAAM,IAAI,EAAE,CAAc,CAAC,CAAC;IAC5D,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC;IACzC,IAAI,CAAC,MAAM;QAAE,OAAO,YAAY,CAAC,SAAS,CAAC,CAAC;IAE5C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;IACnF,OAAO,UAAU,KAAK,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAC3D,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CACnC,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;AACf,CAAC"}
@@ -1,9 +0,0 @@
1
- export { createSiteverb } from './client.js';
2
- export { toWebMcpEvalsSchema } from './evals/index.js';
3
- export { createFetchTelemetryTransport } from './transport.js';
4
- export { defineTool, inspectToolDefinition, isDefinedTool } from './validation.js';
5
- export { SITEVERB_WEBMCP_VERSION } from './version.js';
6
- export type { AnySiteverbTool, BatchRegistrationHandle, CoverageSnapshot, DefinedSiteverbTool, JsonPrimitive, JsonSchema, JsonValue, NativeModelContext, NativeModelContextTool, NativeRegisterToolOptions, NativeRegisteredTool, NativeToolExecutionOptions, RegisteredToolSnapshot, RegisterToolOptions, RegisterToolsOptions, RegistrationHandle, RegistrationResult, RegistrationStatus, RuntimeSnapshot, SiteverbClient, SiteverbDiagnostic, SiteverbDiagnosticCode, SiteverbOptions, SiteverbTelemetryEvent, SiteverbToolDefinition, SiteverbToolExecutionContext, TelemetryBatch, TelemetryErrorClass, TelemetryEventName, TelemetryFlushReason, TelemetryOptions, TelemetryStatus, TelemetryToolIdentity, TelemetryTransport, ToolDiagnostic, ToolDiagnosticCode, WebMcpToolAnnotations, } from './types.js';
7
- export type { WebMcpEvalsSchema, WebMcpEvalsToolSchema } from './evals/index.js';
8
- export type { FetchTelemetryTransportOptions } from './transport.js';
9
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,6BAA6B,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACnF,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AACvD,YAAY,EACV,eAAe,EACf,uBAAuB,EACvB,gBAAgB,EAChB,mBAAmB,EACnB,aAAa,EACb,UAAU,EACV,SAAS,EACT,kBAAkB,EAClB,sBAAsB,EACtB,yBAAyB,EACzB,oBAAoB,EACpB,0BAA0B,EAC1B,sBAAsB,EACtB,mBAAmB,EACnB,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,kBAAkB,EAClB,sBAAsB,EACtB,eAAe,EACf,sBAAsB,EACtB,sBAAsB,EACtB,4BAA4B,EAC5B,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAClB,oBAAoB,EACpB,gBAAgB,EAChB,eAAe,EACf,qBAAqB,EACrB,kBAAkB,EAClB,cAAc,EACd,kBAAkB,EAClB,qBAAqB,GACtB,MAAM,YAAY,CAAC;AACpB,YAAY,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACjF,YAAY,EAAE,8BAA8B,EAAE,MAAM,gBAAgB,CAAC"}
package/dist/src/index.js DELETED
@@ -1,6 +0,0 @@
1
- export { createSiteverb } from './client.js';
2
- export { toWebMcpEvalsSchema } from './evals/index.js';
3
- export { createFetchTelemetryTransport } from './transport.js';
4
- export { defineTool, inspectToolDefinition, isDefinedTool } from './validation.js';
5
- export { SITEVERB_WEBMCP_VERSION } from './version.js';
6
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,6BAA6B,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACnF,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC"}
@@ -1,21 +0,0 @@
1
- import type { SiteverbOptions, TelemetryErrorClass, TelemetryEventName, TelemetryFlushReason, TelemetryStatus, TelemetryToolIdentity } from './types.js';
2
- interface EventFields {
3
- readonly durationMs?: number;
4
- readonly errorClass?: TelemetryErrorClass;
5
- readonly invocationId?: string;
6
- readonly sequenceIndex?: number;
7
- readonly tool?: TelemetryToolIdentity;
8
- readonly webmcpSupported?: boolean;
9
- }
10
- export interface TelemetryManager {
11
- readonly enabled: boolean;
12
- emit(event: TelemetryEventName, fields?: EventFields): void;
13
- flush(reason?: TelemetryFlushReason): Promise<void>;
14
- nextSequence(): number;
15
- status(): TelemetryStatus;
16
- dispose(): void;
17
- }
18
- export declare function createTelemetryManager(options: SiteverbOptions, webmcpSupported: boolean): TelemetryManager;
19
- export declare function classifyTelemetryError(error: unknown, signal: AbortSignal): TelemetryErrorClass;
20
- export {};
21
- //# sourceMappingURL=telemetry.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"telemetry.d.ts","sourceRoot":"","sources":["../../src/telemetry.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAEV,eAAe,EAGf,mBAAmB,EACnB,kBAAkB,EAClB,oBAAoB,EACpB,eAAe,EACf,qBAAqB,EAEtB,MAAM,YAAY,CAAC;AAGpB,UAAU,WAAW;IACnB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,CAAC,EAAE,mBAAmB,CAAC;IAC1C,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,IAAI,CAAC,EAAE,qBAAqB,CAAC;IACtC,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAC;CACpC;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,IAAI,CAAC,KAAK,EAAE,kBAAkB,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAC5D,KAAK,CAAC,MAAM,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD,YAAY,IAAI,MAAM,CAAC;IACvB,MAAM,IAAI,eAAe,CAAC;IAC1B,OAAO,IAAI,IAAI,CAAC;CACjB;AAyDD,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,eAAe,EACxB,eAAe,EAAE,OAAO,GACvB,gBAAgB,CAuJlB;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,GAAG,mBAAmB,CAS/F"}