stitchkit 0.55.0 → 0.56.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (69) hide show
  1. package/dist/browser/socket-io.d.ts +14 -6
  2. package/dist/browser/socket-io.d.ts.map +1 -1
  3. package/dist/cli.js +4 -4
  4. package/dist/contract/errors.d.ts +7 -0
  5. package/dist/contract/errors.d.ts.map +1 -1
  6. package/dist/contract/index.js +1 -1
  7. package/dist/files/boundary.d.ts +8 -5
  8. package/dist/files/boundary.d.ts.map +1 -1
  9. package/dist/files.js +1 -1
  10. package/dist/{index-rgd18hx3.js → index-28cqssm3.js} +7 -0
  11. package/dist/index-557by2db.js +34 -0
  12. package/dist/index-5r13htq1.js +283 -0
  13. package/dist/index-6y759j86.js +1031 -0
  14. package/dist/{index-1k16zv57.js → index-bfcpjw20.js} +125 -31
  15. package/dist/{index-0gv7k0ra.js → index-escqg10p.js} +73 -666
  16. package/dist/{index-v4bbq3p4.js → index-j3dem06f.js} +1 -1
  17. package/dist/{index-qx84bqzk.js → index-jcc611vh.js} +1 -1
  18. package/dist/{index-npye5kt7.js → index-n4nfa7gh.js} +3 -3
  19. package/dist/{index-pzc32v75.js → index-sm2tjx06.js} +41 -4
  20. package/dist/{index-js7yexng.js → index-xy8fmh6w.js} +83 -4
  21. package/dist/index.d.ts +2 -2
  22. package/dist/index.d.ts.map +1 -1
  23. package/dist/index.js +27 -6
  24. package/dist/node.js +5 -4
  25. package/dist/observability/index.js +3 -3
  26. package/dist/remote.js +1 -1
  27. package/dist/server/context-contribution.d.ts +8 -0
  28. package/dist/server/context-contribution.d.ts.map +1 -1
  29. package/dist/server/index.d.ts +1 -1
  30. package/dist/server/index.d.ts.map +1 -1
  31. package/dist/server/index.js +8 -5
  32. package/dist/server/middleware/auth.d.ts +29 -2
  33. package/dist/server/middleware/auth.d.ts.map +1 -1
  34. package/dist/testing/surface-conformance.d.ts +143 -10
  35. package/dist/testing/surface-conformance.d.ts.map +1 -1
  36. package/dist/testing/surface-manifest.d.ts +132 -33
  37. package/dist/testing/surface-manifest.d.ts.map +1 -1
  38. package/dist/testing.d.ts +2 -2
  39. package/dist/testing.d.ts.map +1 -1
  40. package/dist/testing.js +470 -122
  41. package/dist/tools/async-operation.d.ts +210 -18
  42. package/dist/tools/async-operation.d.ts.map +1 -1
  43. package/dist/tools/define-download-tool.d.ts.map +1 -1
  44. package/dist/tools/define-upload-tool.d.ts.map +1 -1
  45. package/dist/tools/internal/surface-projector.d.ts +101 -0
  46. package/dist/tools/internal/surface-projector.d.ts.map +1 -0
  47. package/dist/tools/managed-file-error.d.ts +6 -0
  48. package/dist/tools/managed-file-error.d.ts.map +1 -0
  49. package/dist/tools/mcp-prepare.d.ts +3 -21
  50. package/dist/tools/mcp-prepare.d.ts.map +1 -1
  51. package/dist/tools/mcp-round-policy.d.ts +9 -0
  52. package/dist/tools/mcp-round-policy.d.ts.map +1 -0
  53. package/dist/tools/mcp-round.d.ts +0 -4
  54. package/dist/tools/mcp-round.d.ts.map +1 -1
  55. package/dist/tools/mount-download.d.ts.map +1 -1
  56. package/dist/tools/mount-upload.d.ts.map +1 -1
  57. package/dist/tools/mount.d.ts +5 -9
  58. package/dist/tools/mount.d.ts.map +1 -1
  59. package/dist/tools/runtime-tool.d.ts.map +1 -1
  60. package/dist/tools/surface.d.ts +7 -0
  61. package/dist/tools/surface.d.ts.map +1 -1
  62. package/dist/tools/view-file.d.ts.map +1 -1
  63. package/dist/tools.d.ts +1 -1
  64. package/dist/tools.d.ts.map +1 -1
  65. package/dist/tools.js +348 -383
  66. package/llms-full.txt +361 -58
  67. package/package.json +1 -1
  68. package/dist/index-h60df7rj.js +0 -110
  69. package/dist/index-k4dftwf7.js +0 -66
@@ -1,26 +1,117 @@
1
1
  import { z } from 'zod';
2
+ import type { RealtimeRejectedEventHook } from '../realtime/contract';
2
3
  import type { OpenApiDocument } from '../server/openapi';
3
4
  import { type SurfaceManifest } from './surface-manifest';
4
- export declare const TransportObservationSchema: z.ZodObject<{
5
- outcome: z.ZodEnum<{
6
- aborted: "aborted";
7
- domain_error: "domain_error";
8
- success: "success";
9
- validation_error: "validation_error";
5
+ export declare const RealtimeRejectionObservationSchema: z.ZodObject<{
6
+ direction: z.ZodEnum<{
7
+ "client-inbound": "client-inbound";
8
+ "client-outbound": "client-outbound";
9
+ "server-inbound": "server-inbound";
10
+ "server-outbound": "server-outbound";
10
11
  }>;
12
+ phase: z.ZodEnum<{
13
+ acknowledgement: "acknowledgement";
14
+ arguments: "arguments";
15
+ }>;
16
+ reason: z.ZodEnum<{
17
+ "invalid-acknowledgement-value": "invalid-acknowledgement-value";
18
+ "invalid-arguments": "invalid-arguments";
19
+ "missing-acknowledgement": "missing-acknowledgement";
20
+ "unknown-event": "unknown-event";
21
+ }>;
22
+ fault: z.ZodEnum<{
23
+ local: "local";
24
+ peer: "peer";
25
+ }>;
26
+ }, z.core.$strip>;
27
+ export declare const RealtimeDisconnectObservationSchema: z.ZodObject<{
28
+ phase: z.ZodEnum<{
29
+ "before-invoke": "before-invoke";
30
+ "in-flight": "in-flight";
31
+ }>;
32
+ }, z.core.$strip>;
33
+ export declare const TransportObservationSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
11
34
  code: z.ZodOptional<z.ZodString>;
12
35
  data: z.ZodOptional<z.ZodUnknown>;
13
36
  diagnostic: z.ZodOptional<z.ZodString>;
14
- }, z.core.$strip>;
37
+ handlerCalls: z.ZodOptional<z.ZodNumber>;
38
+ outcome: z.ZodLiteral<"success">;
39
+ }, z.core.$strip>, z.ZodObject<{
40
+ code: z.ZodOptional<z.ZodString>;
41
+ data: z.ZodOptional<z.ZodUnknown>;
42
+ diagnostic: z.ZodOptional<z.ZodString>;
43
+ handlerCalls: z.ZodOptional<z.ZodNumber>;
44
+ outcome: z.ZodLiteral<"validation_error">;
45
+ }, z.core.$strip>, z.ZodObject<{
46
+ code: z.ZodOptional<z.ZodString>;
47
+ data: z.ZodOptional<z.ZodUnknown>;
48
+ diagnostic: z.ZodOptional<z.ZodString>;
49
+ handlerCalls: z.ZodOptional<z.ZodNumber>;
50
+ outcome: z.ZodLiteral<"domain_error">;
51
+ }, z.core.$strip>, z.ZodObject<{
52
+ code: z.ZodOptional<z.ZodString>;
53
+ data: z.ZodOptional<z.ZodUnknown>;
54
+ diagnostic: z.ZodOptional<z.ZodString>;
55
+ handlerCalls: z.ZodOptional<z.ZodNumber>;
56
+ outcome: z.ZodLiteral<"aborted">;
57
+ }, z.core.$strip>, z.ZodObject<{
58
+ code: z.ZodOptional<z.ZodString>;
59
+ data: z.ZodOptional<z.ZodUnknown>;
60
+ diagnostic: z.ZodOptional<z.ZodString>;
61
+ handlerCalls: z.ZodOptional<z.ZodNumber>;
62
+ outcome: z.ZodLiteral<"realtime_rejected">;
63
+ rejection: z.ZodObject<{
64
+ direction: z.ZodEnum<{
65
+ "client-inbound": "client-inbound";
66
+ "client-outbound": "client-outbound";
67
+ "server-inbound": "server-inbound";
68
+ "server-outbound": "server-outbound";
69
+ }>;
70
+ phase: z.ZodEnum<{
71
+ acknowledgement: "acknowledgement";
72
+ arguments: "arguments";
73
+ }>;
74
+ reason: z.ZodEnum<{
75
+ "invalid-acknowledgement-value": "invalid-acknowledgement-value";
76
+ "invalid-arguments": "invalid-arguments";
77
+ "missing-acknowledgement": "missing-acknowledgement";
78
+ "unknown-event": "unknown-event";
79
+ }>;
80
+ fault: z.ZodEnum<{
81
+ local: "local";
82
+ peer: "peer";
83
+ }>;
84
+ }, z.core.$strip>;
85
+ }, z.core.$strip>, z.ZodObject<{
86
+ code: z.ZodOptional<z.ZodString>;
87
+ data: z.ZodOptional<z.ZodUnknown>;
88
+ diagnostic: z.ZodOptional<z.ZodString>;
89
+ handlerCalls: z.ZodOptional<z.ZodNumber>;
90
+ outcome: z.ZodLiteral<"disconnected">;
91
+ disconnect: z.ZodObject<{
92
+ phase: z.ZodEnum<{
93
+ "before-invoke": "before-invoke";
94
+ "in-flight": "in-flight";
95
+ }>;
96
+ }, z.core.$strip>;
97
+ }, z.core.$strip>, z.ZodObject<{
98
+ code: z.ZodOptional<z.ZodString>;
99
+ data: z.ZodOptional<z.ZodUnknown>;
100
+ diagnostic: z.ZodOptional<z.ZodString>;
101
+ handlerCalls: z.ZodOptional<z.ZodNumber>;
102
+ outcome: z.ZodLiteral<"timeout">;
103
+ }, z.core.$strip>], "outcome">;
104
+ export type RealtimeRejectionObservation = z.infer<typeof RealtimeRejectionObservationSchema>;
105
+ export type RealtimeDisconnectObservation = z.infer<typeof RealtimeDisconnectObservationSchema>;
15
106
  export type TransportObservation = z.infer<typeof TransportObservationSchema>;
16
- export type ConformanceTransport = 'HTTP' | 'MCP' | 'AGENT' | 'CLI';
107
+ export type ConformanceTransport = 'HTTP' | 'MCP' | 'AGENT' | 'CLI' | 'REALTIME';
17
108
  export interface SurfaceProbe<TFixture = unknown> {
18
109
  name: string;
19
110
  fixture: TFixture;
20
111
  transports: readonly ConformanceTransport[];
21
112
  expected: Partial<Record<ConformanceTransport, TransportObservation>>;
22
- setup?: () => void | Promise<void>;
23
- teardown?: () => void | Promise<void>;
113
+ setup?: (signal: AbortSignal) => void | Promise<void>;
114
+ teardown?: (signal: AbortSignal) => void | Promise<void>;
24
115
  }
25
116
  export interface SurfaceProbeDriver<TFixture = unknown> {
26
117
  invoke: (fixture: TFixture, signal: AbortSignal) => Promise<TransportObservation>;
@@ -32,11 +123,53 @@ export interface RunSurfaceProbesConfig<TFixture = unknown> {
32
123
  timeoutMs?: number;
33
124
  maxDiagnosticBytes?: number;
34
125
  }
126
+ export type RealtimeProbeScenario = 'event' | 'acknowledgement' | 'invalid_arguments' | 'invalid_acknowledgement' | 'disconnected' | 'in_flight_disconnect' | 'timeout';
127
+ export interface RealtimeProbeFixture<TFixture> {
128
+ scenario: RealtimeProbeScenario;
129
+ value: TFixture;
130
+ }
131
+ export interface DefineRealtimeProbeConfig<TFixture> {
132
+ name: string;
133
+ scenario: RealtimeProbeScenario;
134
+ fixture: TFixture;
135
+ expected: TransportObservation;
136
+ setup?: (signal: AbortSignal) => void | Promise<void>;
137
+ teardown?: (signal: AbortSignal) => void | Promise<void>;
138
+ }
139
+ export interface RealtimeProbeAdapter<TFixture> {
140
+ /** Observe the bound transport immediately before invocation. */
141
+ connected: () => boolean;
142
+ invoke: (fixture: RealtimeProbeFixture<TFixture>, signal: AbortSignal) => unknown | Promise<unknown>;
143
+ /** Remove probe-owned subscriptions; never disconnects the foreign transport. */
144
+ dispose?: () => void | Promise<void>;
145
+ }
146
+ export interface CreateRealtimeProbeDriverConfig<TFixture> {
147
+ /** Bind the caller-owned transport and route its canonical rejection hook here. */
148
+ bind: (onRejected: RealtimeRejectedEventHook, fixture: RealtimeProbeFixture<TFixture>) => RealtimeProbeAdapter<TFixture>;
149
+ /** Optional application-handler counter used to prove rejected packets were not admitted. */
150
+ handlerCalls?: () => number;
151
+ }
152
+ /** Declare one explicit realtime scenario for the caller's real transport driver. */
153
+ export declare function defineRealtimeProbe<TFixture>(config: DefineRealtimeProbeConfig<TFixture>): SurfaceProbe<RealtimeProbeFixture<TFixture>>;
154
+ /** Normalize real bound-transport behavior without owning its connection lifecycle. */
155
+ export declare function createRealtimeProbeDriver<TFixture>({ bind, handlerCalls, }: CreateRealtimeProbeDriverConfig<TFixture>): SurfaceProbeDriver<RealtimeProbeFixture<TFixture>>;
156
+ export interface SurfaceToolDiscoveryObservation {
157
+ transport: 'MCP' | 'AGENT' | 'CLI';
158
+ surface?: string;
159
+ names: readonly string[];
160
+ }
161
+ export interface SurfaceRealtimeDiscoveryObservation {
162
+ serverToClient: readonly string[];
163
+ clientToServer: readonly string[];
164
+ }
35
165
  export interface SurfaceDiscoveryObservation {
36
166
  openApi?: Pick<OpenApiDocument, 'paths'>;
167
+ /** Default unnamed projections; use toolSurfaces for a named MCP surface. */
37
168
  MCP?: readonly string[];
38
169
  AGENT?: readonly string[];
39
170
  CLI?: readonly string[];
171
+ toolSurfaces?: readonly SurfaceToolDiscoveryObservation[];
172
+ realtime?: Readonly<Record<string, SurfaceRealtimeDiscoveryObservation>>;
40
173
  cliOnly?: readonly string[];
41
174
  extensions?: Partial<Record<ConformanceTransport, readonly string[]>>;
42
175
  }
@@ -1 +1 @@
1
- {"version":3,"file":"surface-conformance.d.ts","sourceRoot":"","sources":["../../src/testing/surface-conformance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EACL,KAAK,eAAe,EAGrB,MAAM,oBAAoB,CAAC;AAI5B,eAAO,MAAM,0BAA0B;;;;;;;;;;iBAKrC,CAAC;AAEH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAC9E,MAAM,MAAM,oBAAoB,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,KAAK,CAAC;AAEpE,MAAM,WAAW,YAAY,CAAC,QAAQ,GAAG,OAAO;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,QAAQ,CAAC;IAClB,UAAU,EAAE,SAAS,oBAAoB,EAAE,CAAC;IAC5C,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,oBAAoB,EAAE,oBAAoB,CAAC,CAAC,CAAC;IACtE,KAAK,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,QAAQ,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACvC;AAED,MAAM,WAAW,kBAAkB,CAAC,QAAQ,GAAG,OAAO;IACpD,MAAM,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,KAAK,OAAO,CAAC,oBAAoB,CAAC,CAAC;CACnF;AAED,MAAM,WAAW,sBAAsB,CAAC,QAAQ,GAAG,OAAO;IACxD,MAAM,EAAE,SAAS,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC;IAC1C,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,oBAAoB,EAAE,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC7E,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAqCD,MAAM,WAAW,2BAA2B;IAC1C,OAAO,CAAC,EAAE,IAAI,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;IACzC,GAAG,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACxB,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1B,GAAG,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACxB,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5B,UAAU,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,oBAAoB,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,CAAC;CACvE;AAED,6DAA6D;AAC7D,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,eAAe,EACzB,QAAQ,EAAE,2BAA2B,GACpC,IAAI,CAuCN;AAmCD,kFAAkF;AAClF,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,EAC/C,MAAM,EACN,OAAO,EACP,MAAM,EACN,SAAkB,EAClB,kBAAyB,GAC1B,EAAE,sBAAsB,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAmClD"}
1
+ {"version":3,"file":"surface-conformance.d.ts","sourceRoot":"","sources":["../../src/testing/surface-conformance.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,15 @@
1
- import { type ZodObject, type ZodType, z } from 'zod';
2
- import type { EndpointToolAnnotations, HttpMethod } from '../contract';
1
+ import { z } from 'zod';
2
+ import type { RealtimeContract, RealtimeEventRegistry } from '../realtime/contract';
3
3
  import type { RouteGroup, ServiceDef } from '../server/types';
4
4
  import type { CliCommandDefinition } from '../tools/cli-command';
5
- export declare const SurfaceSchemaDigestsSchema: ZodObject<{
5
+ import { type McpSchemaValidationConfig, type SurfaceRuntimeToolDefinition, type SurfaceToolExtension } from '../tools/internal/surface-projector';
6
+ export declare const SurfaceSchemaDigestsSchema: z.ZodObject<{
6
7
  params: z.ZodNullable<z.ZodString>;
7
8
  input: z.ZodNullable<z.ZodString>;
8
9
  output: z.ZodNullable<z.ZodString>;
9
10
  multipart: z.ZodNullable<z.ZodString>;
10
11
  }, z.core.$strip>;
11
- export declare const SurfaceManifestOperationSchema: ZodObject<{
12
+ export declare const SurfaceManifestOperationSchema: z.ZodObject<{
12
13
  kind: z.ZodEnum<{
13
14
  contract: "contract";
14
15
  runtime: "runtime";
@@ -25,13 +26,13 @@ export declare const SurfaceManifestOperationSchema: ZodObject<{
25
26
  }>;
26
27
  scope: z.ZodNullable<z.ZodString>;
27
28
  description: z.ZodString;
28
- schemas: ZodObject<{
29
+ schemas: z.ZodObject<{
29
30
  params: z.ZodNullable<z.ZodString>;
30
31
  input: z.ZodNullable<z.ZodString>;
31
32
  output: z.ZodNullable<z.ZodString>;
32
33
  multipart: z.ZodNullable<z.ZodString>;
33
34
  }, z.core.$strip>;
34
- http: z.ZodArray<ZodObject<{
35
+ http: z.ZodArray<z.ZodObject<{
35
36
  method: z.ZodEnum<{
36
37
  DELETE: "DELETE";
37
38
  GET: "GET";
@@ -42,31 +43,75 @@ export declare const SurfaceManifestOperationSchema: ZodObject<{
42
43
  }>;
43
44
  path: z.ZodString;
44
45
  }, z.core.$strip>>;
45
- tools: z.ZodRecord<z.ZodEnum<{
46
+ }, z.core.$strip>;
47
+ export declare const SurfaceManifestToolSchema: z.ZodObject<{
48
+ kind: z.ZodEnum<{
49
+ contract: "contract";
50
+ runtime: "runtime";
51
+ }>;
52
+ service: z.ZodString;
53
+ action: z.ZodString;
54
+ name: z.ZodString;
55
+ input: z.ZodString;
56
+ }, z.core.$strip>;
57
+ export declare const SurfaceManifestToolSurfaceSchema: z.ZodObject<{
58
+ transport: z.ZodEnum<{
46
59
  AGENT: "AGENT";
47
60
  CLI: "CLI";
48
61
  MCP: "MCP";
49
- }> & z.core.$partial, z.ZodString>;
62
+ }>;
63
+ surface: z.ZodNullable<z.ZodString>;
64
+ tools: z.ZodArray<z.ZodObject<{
65
+ kind: z.ZodEnum<{
66
+ contract: "contract";
67
+ runtime: "runtime";
68
+ }>;
69
+ service: z.ZodString;
70
+ action: z.ZodString;
71
+ name: z.ZodString;
72
+ input: z.ZodString;
73
+ }, z.core.$strip>>;
50
74
  }, z.core.$strip>;
51
- export declare const SurfaceManifestCliCommandSchema: ZodObject<{
75
+ export declare const SurfaceManifestCliCommandSchema: z.ZodObject<{
52
76
  name: z.ZodString;
53
77
  description: z.ZodString;
54
78
  input: z.ZodString;
55
79
  output: z.ZodNullable<z.ZodString>;
56
80
  }, z.core.$strip>;
57
- export declare const SurfaceManifestExtensionSchema: ZodObject<{
81
+ export declare const SurfaceManifestExtensionSchema: z.ZodObject<{
58
82
  name: z.ZodString;
59
83
  transport: z.ZodEnum<{
60
84
  AGENT: "AGENT";
61
85
  CLI: "CLI";
62
86
  HTTP: "HTTP";
63
87
  MCP: "MCP";
88
+ REALTIME: "REALTIME";
64
89
  }>;
65
90
  }, z.core.$strip>;
66
- export declare const SurfaceManifestSchema: ZodObject<{
67
- manifestVersion: z.ZodLiteral<1>;
91
+ export declare const SurfaceRealtimeSchemaPairSchema: z.ZodObject<{
92
+ input: z.ZodString;
93
+ output: z.ZodString;
94
+ }, z.core.$strip>;
95
+ export declare const SurfaceManifestRealtimeEventSchema: z.ZodObject<{
96
+ contract: z.ZodString;
97
+ direction: z.ZodEnum<{
98
+ clientToServer: "clientToServer";
99
+ serverToClient: "serverToClient";
100
+ }>;
101
+ event: z.ZodString;
102
+ args: z.ZodObject<{
103
+ input: z.ZodString;
104
+ output: z.ZodString;
105
+ }, z.core.$strip>;
106
+ acknowledgement: z.ZodNullable<z.ZodObject<{
107
+ input: z.ZodString;
108
+ output: z.ZodString;
109
+ }, z.core.$strip>>;
110
+ }, z.core.$strip>;
111
+ export declare const SurfaceManifestSchema: z.ZodObject<{
112
+ manifestVersion: z.ZodLiteral<2>;
68
113
  digestVersion: z.ZodLiteral<1>;
69
- operations: z.ZodArray<ZodObject<{
114
+ operations: z.ZodArray<z.ZodObject<{
70
115
  kind: z.ZodEnum<{
71
116
  contract: "contract";
72
117
  runtime: "runtime";
@@ -83,13 +128,13 @@ export declare const SurfaceManifestSchema: ZodObject<{
83
128
  }>;
84
129
  scope: z.ZodNullable<z.ZodString>;
85
130
  description: z.ZodString;
86
- schemas: ZodObject<{
131
+ schemas: z.ZodObject<{
87
132
  params: z.ZodNullable<z.ZodString>;
88
133
  input: z.ZodNullable<z.ZodString>;
89
134
  output: z.ZodNullable<z.ZodString>;
90
135
  multipart: z.ZodNullable<z.ZodString>;
91
136
  }, z.core.$strip>;
92
- http: z.ZodArray<ZodObject<{
137
+ http: z.ZodArray<z.ZodObject<{
93
138
  method: z.ZodEnum<{
94
139
  DELETE: "DELETE";
95
140
  GET: "GET";
@@ -100,57 +145,111 @@ export declare const SurfaceManifestSchema: ZodObject<{
100
145
  }>;
101
146
  path: z.ZodString;
102
147
  }, z.core.$strip>>;
103
- tools: z.ZodRecord<z.ZodEnum<{
148
+ }, z.core.$strip>>;
149
+ toolSurfaces: z.ZodArray<z.ZodObject<{
150
+ transport: z.ZodEnum<{
104
151
  AGENT: "AGENT";
105
152
  CLI: "CLI";
106
153
  MCP: "MCP";
107
- }> & z.core.$partial, z.ZodString>;
154
+ }>;
155
+ surface: z.ZodNullable<z.ZodString>;
156
+ tools: z.ZodArray<z.ZodObject<{
157
+ kind: z.ZodEnum<{
158
+ contract: "contract";
159
+ runtime: "runtime";
160
+ }>;
161
+ service: z.ZodString;
162
+ action: z.ZodString;
163
+ name: z.ZodString;
164
+ input: z.ZodString;
165
+ }, z.core.$strip>>;
166
+ }, z.core.$strip>>;
167
+ realtimeContracts: z.ZodArray<z.ZodString>;
168
+ realtime: z.ZodArray<z.ZodObject<{
169
+ contract: z.ZodString;
170
+ direction: z.ZodEnum<{
171
+ clientToServer: "clientToServer";
172
+ serverToClient: "serverToClient";
173
+ }>;
174
+ event: z.ZodString;
175
+ args: z.ZodObject<{
176
+ input: z.ZodString;
177
+ output: z.ZodString;
178
+ }, z.core.$strip>;
179
+ acknowledgement: z.ZodNullable<z.ZodObject<{
180
+ input: z.ZodString;
181
+ output: z.ZodString;
182
+ }, z.core.$strip>>;
108
183
  }, z.core.$strip>>;
109
- cliOnly: z.ZodArray<ZodObject<{
184
+ cliOnly: z.ZodArray<z.ZodObject<{
110
185
  name: z.ZodString;
111
186
  description: z.ZodString;
112
187
  input: z.ZodString;
113
188
  output: z.ZodNullable<z.ZodString>;
114
189
  }, z.core.$strip>>;
115
- extensions: z.ZodArray<ZodObject<{
190
+ extensions: z.ZodArray<z.ZodObject<{
116
191
  name: z.ZodString;
117
192
  transport: z.ZodEnum<{
118
193
  AGENT: "AGENT";
119
194
  CLI: "CLI";
120
195
  HTTP: "HTTP";
121
196
  MCP: "MCP";
197
+ REALTIME: "REALTIME";
122
198
  }>;
123
199
  }, z.core.$strip>>;
124
200
  }, z.core.$strip>;
125
201
  export type SurfaceManifest = z.infer<typeof SurfaceManifestSchema>;
126
202
  export type SurfaceManifestOperation = z.infer<typeof SurfaceManifestOperationSchema>;
203
+ export type SurfaceManifestTool = z.infer<typeof SurfaceManifestToolSchema>;
204
+ export type SurfaceManifestToolSurface = z.infer<typeof SurfaceManifestToolSurfaceSchema>;
205
+ export type SurfaceManifestRealtimeEvent = z.infer<typeof SurfaceManifestRealtimeEventSchema>;
127
206
  export type SurfaceManifestExtension = z.infer<typeof SurfaceManifestExtensionSchema>;
128
- /** Peer-free structural subset needed to describe a pathless runtime operation. */
129
- export interface SurfaceRuntimeToolDefinition {
130
- name: string;
131
- description: string;
132
- identity: {
133
- serviceName: string;
134
- action: string;
135
- method: HttpMethod;
136
- scope?: string;
207
+ /** Peer-free runtime-operation descriptor consumed only by manifest projection. */
208
+ export type { IncompatibleSchemaPolicy, McpSchemaValidationConfig, SurfaceRuntimeToolDefinition, SurfaceToolExtension, } from '../tools/internal/surface-projector';
209
+ /** Plain service/runtime selection shared by every tool transport. */
210
+ export interface SurfaceToolDefinition {
211
+ services?: readonly ServiceDef[];
212
+ runtimeTools?: readonly SurfaceRuntimeToolDefinition[];
213
+ }
214
+ /** Agent is the only non-MCP projection with presentation-shaping options. */
215
+ export interface SurfaceAgentProjection extends SurfaceToolDefinition {
216
+ extend?: SurfaceToolExtension;
217
+ flattenUnionInput?: boolean;
218
+ }
219
+ /** Global MCP preparation policy shared by direct and finite named surfaces. */
220
+ export interface SurfaceMcpPreparation {
221
+ extend?: SurfaceToolExtension;
222
+ flattenUnionInput?: boolean;
223
+ schemaValidation?: McpSchemaValidationConfig;
224
+ multiRound?: {
225
+ stateConfigured: boolean;
226
+ maxRounds: number;
137
227
  };
138
- input: ZodObject;
139
- output?: ZodType;
140
- transports?: readonly ('MCP' | 'AGENT' | 'CLI')[];
141
- annotations?: EndpointToolAnnotations;
142
228
  }
143
229
  export interface SurfaceManifestConfig {
230
+ /** Shared shorthand: HTTP services plus every tool transport unless overridden below. */
144
231
  services?: readonly ServiceDef[];
145
232
  groups?: readonly Pick<RouteGroup, 'pathPrefix' | 'services'>[];
146
233
  scopePrefixes?: Readonly<Record<string, string>>;
147
234
  runtimeTools?: readonly SurfaceRuntimeToolDefinition[];
235
+ /** Explicit static projections replace the shared shorthand for that transport. */
236
+ toolSurfaces?: {
237
+ MCP?: SurfaceToolDefinition;
238
+ AGENT?: SurfaceAgentProjection;
239
+ CLI?: SurfaceToolDefinition;
240
+ };
241
+ /** Finite MCP alternatives selected by the application at runtime. */
242
+ mcpSurfaces?: Readonly<Record<string, SurfaceToolDefinition>>;
243
+ /** One preparation policy, matching the real MCP server's global configuration. */
244
+ mcpPreparation?: SurfaceMcpPreparation;
245
+ /** Realtime contracts are named by the manifest, not by the runtime contract API. */
246
+ realtime?: Readonly<Record<string, RealtimeContract<RealtimeEventRegistry, RealtimeEventRegistry>>>;
148
247
  cliCommands?: readonly CliCommandDefinition[];
149
248
  extensions?: readonly SurfaceManifestExtension[];
150
249
  }
151
250
  /** Canonical bytes used by snapshots and schema digests. Arrays retain order. */
152
251
  export declare function serializeSurfaceValue(value: unknown): string;
153
- /** Build one versioned snapshot of the declared HTTP/tool/CLI surface. */
252
+ /** Build one versioned snapshot of the declared transport-specific surface. */
154
253
  export declare function buildSurfaceManifest(config: SurfaceManifestConfig): SurfaceManifest;
155
254
  export declare function assertSurfaceManifestSnapshot(manifest: SurfaceManifest, snapshot: SurfaceManifest): void;
156
255
  //# sourceMappingURL=surface-manifest.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"surface-manifest.d.ts","sourceRoot":"","sources":["../../src/testing/surface-manifest.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACtD,OAAO,KAAK,EAAE,uBAAuB,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEvE,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC9D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAOjE,eAAO,MAAM,0BAA0B;;;;;iBAKrC,CAAC;AAEH,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAUzC,CAAC;AAEH,eAAO,MAAM,+BAA+B;;;;;iBAK1C,CAAC;AAEH,eAAO,MAAM,8BAA8B;;;;;;;;iBAGzC,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAMhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AACpE,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AACtF,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAEtF,mFAAmF;AACnF,MAAM,WAAW,4BAA4B;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE;QACR,WAAW,EAAE,MAAM,CAAC;QACpB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,UAAU,CAAC;QACnB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,KAAK,EAAE,SAAS,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,SAAS,CAAC,KAAK,GAAG,OAAO,GAAG,KAAK,CAAC,EAAE,CAAC;IAClD,WAAW,CAAC,EAAE,uBAAuB,CAAC;CACvC;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;IACjC,MAAM,CAAC,EAAE,SAAS,IAAI,CAAC,UAAU,EAAE,YAAY,GAAG,UAAU,CAAC,EAAE,CAAC;IAChE,aAAa,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACjD,YAAY,CAAC,EAAE,SAAS,4BAA4B,EAAE,CAAC;IACvD,WAAW,CAAC,EAAE,SAAS,oBAAoB,EAAE,CAAC;IAC9C,UAAU,CAAC,EAAE,SAAS,wBAAwB,EAAE,CAAC;CAClD;AAkBD,iFAAiF;AACjF,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAE5D;AAoDD,0EAA0E;AAC1E,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,qBAAqB,GAAG,eAAe,CA0InF;AAED,wBAAgB,6BAA6B,CAC3C,QAAQ,EAAE,eAAe,EACzB,QAAQ,EAAE,eAAe,GACxB,IAAI,CAQN"}
1
+ {"version":3,"file":"surface-manifest.d.ts","sourceRoot":"","sources":["../../src/testing/surface-manifest.ts"],"names":[],"mappings":"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"}
package/dist/testing.d.ts CHANGED
@@ -31,6 +31,6 @@ export declare function createHandlerTestClient<T extends Record<string, Endpoin
31
31
  export declare function createHandlerTestClients<T extends Record<string, ContractDef<Record<string, EndpointDef>, string>>, TServer = unknown, const K extends string = never>(config: HandlerTestClientsConfig<T, TServer, K>): {
32
32
  [P in keyof T]: ScopedHttpClient<T[P]['endpoints'], ScopedKeys<K>>;
33
33
  };
34
- export { assertSurfaceDiscovery, type ConformanceTransport, type RunSurfaceProbesConfig, runSurfaceProbes, type SurfaceDiscoveryObservation, type SurfaceProbe, type SurfaceProbeDriver, type TransportObservation, TransportObservationSchema, } from './testing/surface-conformance';
35
- export { assertSurfaceManifestSnapshot, buildSurfaceManifest, type SurfaceManifest, type SurfaceManifestConfig, type SurfaceManifestExtension, SurfaceManifestExtensionSchema, type SurfaceManifestOperation, SurfaceManifestOperationSchema, SurfaceManifestSchema, type SurfaceRuntimeToolDefinition, SurfaceSchemaDigestsSchema, serializeSurfaceValue, } from './testing/surface-manifest';
34
+ export { assertSurfaceDiscovery, type ConformanceTransport, type CreateRealtimeProbeDriverConfig, createRealtimeProbeDriver, type DefineRealtimeProbeConfig, defineRealtimeProbe, type RealtimeDisconnectObservation, RealtimeDisconnectObservationSchema, type RealtimeProbeAdapter, type RealtimeProbeFixture, type RealtimeProbeScenario, type RealtimeRejectionObservation, RealtimeRejectionObservationSchema, type RunSurfaceProbesConfig, runSurfaceProbes, type SurfaceDiscoveryObservation, type SurfaceProbe, type SurfaceProbeDriver, type SurfaceRealtimeDiscoveryObservation, type SurfaceToolDiscoveryObservation, type TransportObservation, TransportObservationSchema, } from './testing/surface-conformance';
35
+ export { assertSurfaceManifestSnapshot, buildSurfaceManifest, type IncompatibleSchemaPolicy, type McpSchemaValidationConfig, type SurfaceAgentProjection, type SurfaceManifest, type SurfaceManifestConfig, type SurfaceManifestExtension, SurfaceManifestExtensionSchema, type SurfaceManifestOperation, SurfaceManifestOperationSchema, type SurfaceManifestRealtimeEvent, SurfaceManifestRealtimeEventSchema, SurfaceManifestSchema, type SurfaceManifestTool, SurfaceManifestToolSchema, type SurfaceManifestToolSurface, SurfaceManifestToolSurfaceSchema, type SurfaceMcpPreparation, SurfaceRealtimeSchemaPairSchema, type SurfaceRuntimeToolDefinition, SurfaceSchemaDigestsSchema, type SurfaceToolDefinition, type SurfaceToolExtension, serializeSurfaceValue, } from './testing/surface-manifest';
36
36
  //# sourceMappingURL=testing.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"testing.d.ts","sourceRoot":"","sources":["../src/testing.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,KAAK,YAAY,EAEjB,KAAK,oBAAoB,EAGzB,KAAK,UAAU,EAChB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC7E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEnD,MAAM,MAAM,yBAAyB,GAAG,IAAI,CAAC,YAAY,EAAE,SAAS,GAAG,OAAO,CAAC,CAAC;AAEhF,MAAM,WAAW,0BAA0B,CAAC,OAAO;IACjD,OAAO,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IAC/B,2DAA2D;IAC3D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qFAAqF;IACrF,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,6EAA6E;IAC7E,MAAM,CAAC,EAAE,yBAAyB,CAAC;IACnC,2DAA2D;IAC3D,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,uBAAuB,CACtC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,EACrC,OAAO,GAAG,OAAO,EACjB,CAAC,SAAS,MAAM,GAAG,KAAK,CACxB,SAAQ,0BAA0B,CAAC,OAAO,CAAC;IAC3C,QAAQ,EAAE,WAAW,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IACjC,cAAc,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC;CAC1C;AAED,MAAM,WAAW,wBAAwB,CACvC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,CAAC,CAAC,EAC1E,OAAO,GAAG,OAAO,EACjB,CAAC,SAAS,MAAM,GAAG,KAAK,CACxB,SAAQ,0BAA0B,CAAC,OAAO,CAAC;IAC3C,SAAS,EAAE,CAAC,CAAC;IACb,cAAc,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC;CAC1C;AA+BD,gGAAgG;AAChG,wBAAgB,uBAAuB,CACrC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,EACrC,OAAO,GAAG,OAAO,EACjB,KAAK,CAAC,CAAC,SAAS,MAAM,GAAG,KAAK,EAC9B,MAAM,EAAE,uBAAuB,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,GAAG,gBAAgB,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAEpF;AAED,2FAA2F;AAC3F,wBAAgB,wBAAwB,CACtC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,CAAC,CAAC,EAC1E,OAAO,GAAG,OAAO,EACjB,KAAK,CAAC,CAAC,SAAS,MAAM,GAAG,KAAK,EAE9B,MAAM,EAAE,wBAAwB,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,GAC9C;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;CAAE,CAMxE;AAED,OAAO,EACL,sBAAsB,EACtB,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAC3B,gBAAgB,EAChB,KAAK,2BAA2B,EAChC,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,0BAA0B,GAC3B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,6BAA6B,EAC7B,oBAAoB,EACpB,KAAK,eAAe,EACpB,KAAK,qBAAqB,EAC1B,KAAK,wBAAwB,EAC7B,8BAA8B,EAC9B,KAAK,wBAAwB,EAC7B,8BAA8B,EAC9B,qBAAqB,EACrB,KAAK,4BAA4B,EACjC,0BAA0B,EAC1B,qBAAqB,GACtB,MAAM,4BAA4B,CAAC"}
1
+ {"version":3,"file":"testing.d.ts","sourceRoot":"","sources":["../src/testing.ts"],"names":[],"mappings":"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"}