apps 0.0.1-beta.5 → 0.0.1-beta.55

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 (188) hide show
  1. package/README.md +68 -44
  2. package/framework-reference.json +1 -1
  3. package/js/chunk-47F7VXST.js +221 -0
  4. package/js/chunk-5FHWNLCI.js +88 -0
  5. package/js/{chunk-M3B3DE4K.js → chunk-74YVXBKY.js} +463 -218
  6. package/js/chunk-7UUHJR2Q.js +49 -0
  7. package/js/{chunk-CYYBFC2K.js → chunk-AQU56EPI.js} +9 -5
  8. package/js/chunk-BTSIG4NQ.js +1885 -0
  9. package/js/chunk-CDXQDN7W.js +92 -0
  10. package/js/{chunk-UK573G7W.js → chunk-EOPQ727L.js} +87 -51
  11. package/js/{chunk-27F7W2LG.js → chunk-H2CJWXA3.js} +2 -2
  12. package/js/{chunk-JU7VHODU.js → chunk-H72MEDMN.js} +65 -10
  13. package/js/{chunk-CDL5PM2Q.js → chunk-IFJU5SYQ.js} +19082 -18402
  14. package/js/{chunk-UDDE5KOR.js → chunk-JK5S2N2S.js} +148 -34
  15. package/js/{chunk-RJDDBDSN.js → chunk-JM7LOD2W.js} +628 -85
  16. package/js/{chunk-VFZKSM3T.js → chunk-JPEUKEV4.js} +3 -3
  17. package/js/{chunk-FWQC6I3C.js → chunk-KGCTYL2S.js} +523 -63
  18. package/js/{chunk-KUMBKVJD.js → chunk-KLYSEHUD.js} +2 -2
  19. package/js/chunk-L4K2K22P.js +42 -0
  20. package/js/chunk-LTDHQJ2Z.js +171 -0
  21. package/js/chunk-MWKHKOTL.js +240 -0
  22. package/js/chunk-OD3KFKZD.js +1617 -0
  23. package/js/{chunk-57RKNWL2.js → chunk-PD6I2SDG.js} +4 -4
  24. package/js/chunk-PXXZ6ABC.js +266 -0
  25. package/js/chunk-QEBRH5AP.js +729 -0
  26. package/js/chunk-TLWLJ7PD.js +4342 -0
  27. package/js/{chunk-IJX4CYZO.js → chunk-TUMGL2OC.js} +228 -264
  28. package/js/{chunk-XHO2ZX6W.js → chunk-UM62MBJQ.js} +96 -41
  29. package/js/{chunk-IPI4MFSN.js → chunk-XBG7HHXC.js} +2 -2
  30. package/js/chunk-XCSG7FT7.js +340 -0
  31. package/js/client.js +142 -94
  32. package/js/contracts.js +123 -33
  33. package/js/effect.js +19 -21
  34. package/js/{es-APDZKREY.js → es-DIULA3ZF.js} +62 -1659
  35. package/js/graphql.js +63 -60
  36. package/js/host.js +83 -60
  37. package/js/index.js +262 -222
  38. package/js/mcp/effect.js +23 -23
  39. package/js/mcp/stdio.js +48 -40
  40. package/js/mcp.js +109 -72
  41. package/js/openapi.js +4129 -1419
  42. package/js/react.js +2 -3
  43. package/js/skills/effect.js +6 -3
  44. package/js/skills.js +208 -82
  45. package/js/storage/facet.js +1 -540
  46. package/js/ui/auth/contracts.js +2 -2
  47. package/js/ui/auth.js +5 -5
  48. package/js/ui/contracts.js +5 -4
  49. package/js/ui/serving.js +8517 -214
  50. package/package.json +2 -3
  51. package/runtime.json +1 -1
  52. package/types/app-cache/src/index.d.ts +10 -1
  53. package/types/apps/src/contracts/api-response-error.d.ts +4 -0
  54. package/types/apps/src/contracts/app.d.ts +9 -8
  55. package/types/apps/src/contracts/cache.d.ts +20 -0
  56. package/types/apps/src/contracts/context.d.ts +19 -11
  57. package/types/apps/src/contracts/elicitation.d.ts +6 -6
  58. package/types/apps/src/contracts/events.d.ts +93 -0
  59. package/types/apps/src/contracts/failure.d.ts +30 -1
  60. package/types/apps/src/contracts/graphql.d.ts +2 -1
  61. package/types/apps/src/contracts/host.d.ts +57 -18
  62. package/types/apps/src/contracts/live.d.ts +2 -0
  63. package/types/apps/src/contracts/mcp.d.ts +96 -10
  64. package/types/apps/src/contracts/network.d.ts +84 -0
  65. package/types/apps/src/contracts/openapi-compile.d.ts +32 -3
  66. package/types/apps/src/contracts/openapi.d.ts +45 -9
  67. package/types/apps/src/contracts/operations.d.ts +8 -9
  68. package/types/apps/src/contracts/protocol-version.d.ts +2 -2
  69. package/types/apps/src/contracts/protocols/1.d.ts +733 -81
  70. package/types/apps/src/contracts/protocols/10.d.ts +1450 -0
  71. package/types/apps/src/contracts/protocols/2.d.ts +69 -26
  72. package/types/apps/src/contracts/protocols/3.d.ts +133 -33
  73. package/types/apps/src/contracts/protocols/4.d.ts +1306 -0
  74. package/types/apps/src/contracts/protocols/5.d.ts +1200 -0
  75. package/types/apps/src/contracts/protocols/6.d.ts +1629 -0
  76. package/types/apps/src/contracts/protocols/7.d.ts +1785 -0
  77. package/types/apps/src/contracts/protocols/8.d.ts +1182 -0
  78. package/types/apps/src/contracts/protocols/9.d.ts +1104 -0
  79. package/types/apps/src/contracts/protocols/current.d.ts +2476 -0
  80. package/types/apps/src/contracts/protocols/oauth-6.d.ts +74 -0
  81. package/types/apps/src/contracts/protocols/oauth.d.ts +134 -0
  82. package/types/apps/src/contracts/provider-error.d.ts +9 -0
  83. package/types/apps/src/contracts/provider.d.ts +115 -10
  84. package/types/apps/src/contracts/router.d.ts +59 -0
  85. package/types/apps/src/contracts/skills.d.ts +50 -13
  86. package/types/apps/src/contracts/sql.d.ts +58 -0
  87. package/types/apps/src/contracts/ui.d.ts +19 -1
  88. package/types/apps/src/contracts/workflows.d.ts +6 -0
  89. package/types/apps/src/facet.d.ts +4 -5
  90. package/types/apps/src/graphql.d.ts +1 -3
  91. package/types/apps/src/host.d.ts +5 -0
  92. package/types/apps/src/implementation/account-router.d.ts +13 -0
  93. package/types/apps/src/implementation/app.d.ts +5 -4
  94. package/types/apps/src/implementation/authoring.d.ts +25 -5
  95. package/types/apps/src/implementation/browser-scripts.gen.d.ts +6 -0
  96. package/types/apps/src/implementation/cache.d.ts +4 -0
  97. package/types/apps/src/implementation/catalog-cache.d.ts +43 -5
  98. package/types/apps/src/implementation/elicitation.d.ts +18 -15
  99. package/types/apps/src/implementation/events.d.ts +59 -0
  100. package/types/apps/src/implementation/failure-detail.d.ts +25 -3
  101. package/types/apps/src/implementation/graphql-catalog.d.ts +4 -7
  102. package/types/apps/src/implementation/graphql.d.ts +4 -3
  103. package/types/apps/src/implementation/input-problems.d.ts +6 -2
  104. package/types/apps/src/implementation/invocation-timing.d.ts +16 -0
  105. package/types/apps/src/implementation/live.d.ts +2 -2
  106. package/types/apps/src/implementation/mcp-call.d.ts +6 -5
  107. package/types/apps/src/implementation/mcp-catalog.d.ts +7 -8
  108. package/types/apps/src/implementation/mcp-client.d.ts +49 -25
  109. package/types/apps/src/implementation/mcp-stdio.d.ts +1 -1
  110. package/types/apps/src/implementation/mcp-tools.d.ts +2 -1
  111. package/types/apps/src/implementation/mcp.d.ts +52 -25
  112. package/types/apps/src/implementation/network.d.ts +16 -0
  113. package/types/apps/src/implementation/openapi-compile.d.ts +27 -6
  114. package/types/apps/src/implementation/openapi-document.d.ts +46 -19
  115. package/types/apps/src/implementation/openapi-names.d.ts +9 -4
  116. package/types/apps/src/implementation/openapi-request.d.ts +10 -2
  117. package/types/apps/src/implementation/openapi-source.d.ts +8 -6
  118. package/types/apps/src/implementation/openapi-upgrade.d.ts +4 -0
  119. package/types/apps/src/implementation/operations.d.ts +43 -5
  120. package/types/apps/src/implementation/optimistic.d.ts +1 -1
  121. package/types/apps/src/implementation/protocol-operations.d.ts +6 -4
  122. package/types/apps/src/implementation/provider-error.d.ts +28 -1
  123. package/types/apps/src/implementation/provider.d.ts +19 -5
  124. package/types/apps/src/implementation/query-commit.d.ts +1 -1
  125. package/types/apps/src/implementation/router-catalog.d.ts +223 -0
  126. package/types/apps/src/implementation/router.d.ts +70 -0
  127. package/types/apps/src/implementation/runtime-yield.d.ts +7 -0
  128. package/types/apps/src/implementation/schema.d.ts +95 -11
  129. package/types/apps/src/implementation/skills.d.ts +18 -24
  130. package/types/apps/src/implementation/sql.d.ts +71 -0
  131. package/types/apps/src/implementation/ui-account-notice.d.ts +9 -0
  132. package/types/apps/src/implementation/ui-auth.d.ts +1 -1
  133. package/types/apps/src/implementation/ui-client.d.ts +2 -2
  134. package/types/apps/src/implementation/ui-document.d.ts +5 -0
  135. package/types/apps/src/implementation/ui-errors.d.ts +1 -1
  136. package/types/apps/src/implementation/ui-serving.d.ts +11 -5
  137. package/types/apps/src/implementation/ui-watch.d.ts +1 -1
  138. package/types/apps/src/implementation/upstream-error.d.ts +7 -0
  139. package/types/apps/src/implementation/webhooks.d.ts +1 -1
  140. package/types/apps/src/implementation/workflow-context.d.ts +1 -1
  141. package/types/apps/src/implementation/workflows.d.ts +1 -1
  142. package/types/apps/src/index.d.ts +32 -13
  143. package/types/apps/src/mcp-stdio.d.ts +2 -5
  144. package/types/apps/src/mcp.d.ts +25 -5
  145. package/types/apps/src/openapi.d.ts +6 -6
  146. package/types/apps/src/react.d.ts +1 -1
  147. package/types/apps/src/skills.d.ts +10 -8
  148. package/types/telemetry/src/app-records.d.ts +42 -0
  149. package/types/telemetry/src/browser-operations.d.ts +7 -4
  150. package/types/telemetry/src/browser.d.ts +8 -3
  151. package/types/telemetry/src/config.d.ts +2 -2
  152. package/types/telemetry/src/index.d.ts +1 -0
  153. package/types/telemetry/src/layer.d.ts +2 -2
  154. package/types/telemetry/src/ownership.d.ts +56 -0
  155. package/types/telemetry/src/recorded-failure.d.ts +29 -0
  156. package/types/telemetry/src/relay.d.ts +2 -2
  157. package/types/telemetry/src/transport.d.ts +8 -1
  158. package/types/utils/src/api-error.d.ts +55 -0
  159. package/types/utils/src/connection-failure.d.ts +33 -0
  160. package/types/utils/src/recorded-message.d.ts +18 -0
  161. package/types/utils/src/user-facing-error.d.ts +83 -0
  162. package/js/chunk-3XKZDQLM.js +0 -93
  163. package/js/chunk-4M277YTM.js +0 -136
  164. package/js/chunk-67EVWIGJ.js +0 -224
  165. package/js/chunk-C3VAOK5B.js +0 -215
  166. package/js/chunk-DQAZTA4I.js +0 -2375
  167. package/js/chunk-G7T27IWB.js +0 -63
  168. package/js/chunk-LUVSFETN.js +0 -1347
  169. package/js/chunk-N7YDVXYJ.js +0 -186
  170. package/js/chunk-PJJ24GU7.js +0 -877
  171. package/js/chunk-PZB6T6KU.js +0 -19
  172. package/js/chunk-SB3V4YVR.js +0 -18
  173. package/js/chunk-TDNYXSIX.js +0 -29
  174. package/js/chunk-W4DMKWAB.js +0 -35
  175. package/js/chunk-YEPYT6SD.js +0 -85
  176. package/js/chunk-ZQINWV4W.js +0 -630
  177. package/types/app-data/src/implementation/cursor.d.ts +0 -10
  178. package/types/app-data/src/implementation/index-key.d.ts +0 -7
  179. package/types/app-data/src/implementation/promise.d.ts +0 -68
  180. package/types/app-data/src/implementation/range.d.ts +0 -8
  181. package/types/app-data/src/implementation/schema.d.ts +0 -18
  182. package/types/app-data/src/implementation/sqlite.d.ts +0 -11
  183. package/types/app-data/src/index.d.ts +0 -4
  184. package/types/apps/src/contracts/dynamic-tools.d.ts +0 -13
  185. package/types/apps/src/contracts/storage.d.ts +0 -68
  186. package/types/apps/src/implementation/account-operations.d.ts +0 -151
  187. package/types/apps/src/implementation/dynamic-tools.d.ts +0 -8
  188. package/types/apps/src/implementation/storage.d.ts +0 -15
@@ -0,0 +1,221 @@
1
+ import {
2
+ fromPromise
3
+ } from "./chunk-LTDHQJ2Z.js";
4
+ import {
5
+ HostedTool,
6
+ RouterKey,
7
+ RouterMeta,
8
+ reservedRouterKeys
9
+ } from "./chunk-TLWLJ7PD.js";
10
+ import {
11
+ decoderOf,
12
+ schemaArgument
13
+ } from "./chunk-KGCTYL2S.js";
14
+ import {
15
+ Effect_exports,
16
+ Schema_exports
17
+ } from "./chunk-IFJU5SYQ.js";
18
+
19
+ // src/implementation/operations.ts
20
+ var NativeOperation = /* @__PURE__ */ Symbol("apps.Operation");
21
+ var NativeRouterKey = /* @__PURE__ */ Symbol("apps.Router");
22
+ var operationDeclaration = (operation) => ({
23
+ kind: operation.kind,
24
+ [NativeOperation]: operation
25
+ });
26
+ var nativeOperation = (value) => {
27
+ if (typeof value !== "object" || value === null || !(NativeOperation in value)) return void 0;
28
+ return value[NativeOperation];
29
+ };
30
+ var operationOptions = (options) => {
31
+ const approval = options.approval;
32
+ return {
33
+ ...options.description === void 0 ? {} : { description: options.description },
34
+ ...options.title === void 0 ? {} : { title: options.title },
35
+ ...options.annotations === void 0 ? {} : { annotations: options.annotations },
36
+ ...options._meta === void 0 ? {} : { _meta: options._meta },
37
+ input: decoderOf(options.input),
38
+ ...approval === void 0 ? {} : {
39
+ approval: (context) => fromPromise(async () => approval(context), "approval")()
40
+ }
41
+ };
42
+ };
43
+ var approvedOperation = (operation, approval) => {
44
+ const copy = Object.defineProperties({}, Object.getOwnPropertyDescriptors(operation));
45
+ return Object.defineProperty(copy, "approval", {
46
+ enumerable: true,
47
+ value: (context) => fromPromise(async () => approval(context), "approval")()
48
+ });
49
+ };
50
+ var withApproval = (operation, approval) => ({
51
+ ...operation,
52
+ [NativeOperation]: approvedOperation(operation[NativeOperation], approval)
53
+ });
54
+ var toolAnnotations = (operation) => nativeOperation(operation)?.annotations;
55
+ var make = (kind, options, run) => operationDeclaration({
56
+ ...operationOptions({ ...options, input: schemaArgument(options.input, `The ${kind} input`) }),
57
+ kind,
58
+ // The host always validates JSON serialization, even without a stronger output declaration.
59
+ ...options.output === void 0 ? {} : { output: decoderOf(schemaArgument(options.output, `The ${kind} output`)) },
60
+ // SAFETY: defineApp checks the handler context against its requirements.
61
+ // The host validates account bindings and creates the matching storage facade.
62
+ run: (context, input) => fromPromise(run, "handler")(context, input)
63
+ });
64
+ var query = (options, run) => make("query", options, run);
65
+ var mutation = (options, run) => make("mutation", options, run);
66
+
67
+ // src/implementation/router.ts
68
+ var routerDeclaration = (node) => ({
69
+ [NativeRouterKey]: node
70
+ });
71
+ var nativeRouter = (value) => {
72
+ if (typeof value !== "object" || value === null || !(NativeRouterKey in value)) return void 0;
73
+ return value[NativeRouterKey];
74
+ };
75
+ var nativeNode = (value) => nativeOperation(value) ?? nativeRouter(value);
76
+ var metaOf = (options) => {
77
+ if (options === void 0) return void 0;
78
+ const defined = Object.fromEntries(
79
+ Object.entries(options).filter(([, value]) => value !== void 0)
80
+ );
81
+ return Object.keys(defined).length === 0 ? void 0 : Schema_exports.decodeUnknownSync(RouterMeta)(defined);
82
+ };
83
+ var mergeMeta = (base, override) => base === void 0 ? override : override === void 0 ? base : { ...base, ...override };
84
+ function router(children, options) {
85
+ const meta = metaOf(options);
86
+ const existing = nativeRouter(children);
87
+ if (existing !== void 0)
88
+ return routerDeclaration(
89
+ existing.kind === "router" ? { ...existing, ...withMeta(mergeMeta(existing.meta, meta)) } : { ...existing, ...withOverrides(mergeMeta(existing.overrides, meta)) }
90
+ );
91
+ const nodes = {};
92
+ for (const [key, value] of Object.entries(children)) {
93
+ if (reservedRouterKeys.has(key)) throw new Error(`Router key "${key}" is reserved`);
94
+ if (!Schema_exports.is(RouterKey)(key))
95
+ throw new Error(`Router key "${key}" must start with a letter or _ and contain no dots`);
96
+ const node = nativeNode(value);
97
+ if (node === void 0)
98
+ throw new Error(`Router key "${key}" must be a query, mutation or router`);
99
+ nodes[key] = node;
100
+ }
101
+ return routerDeclaration({ kind: "router", ...withMeta(meta), children: nodes });
102
+ }
103
+ var withMeta = (meta) => meta === void 0 ? {} : { meta };
104
+ var withOverrides = (overrides) => overrides === void 0 ? {} : { overrides };
105
+ var dynamicRouter = (source) => {
106
+ const meta = source.meta;
107
+ return routerDeclaration({
108
+ kind: "dynamic",
109
+ ...meta === void 0 ? {} : {
110
+ meta: () => fromPromise(async () => meta(), "router")().pipe(
111
+ Effect_exports.flatMap((options) => Schema_exports.decodeUnknownEffect(RouterMeta)(options))
112
+ )
113
+ },
114
+ list: () => fromPromise(async () => source.list(), "router")().pipe(
115
+ Effect_exports.flatMap(Schema_exports.decodeUnknownEffect(Schema_exports.Array(HostedTool)))
116
+ ),
117
+ resolve: (name) => fromPromise(async () => source.resolve(name), "router")().pipe(
118
+ Effect_exports.map((value) => {
119
+ if (value === void 0) return void 0;
120
+ const operation = nativeOperation(value);
121
+ if (operation === void 0) throw new Error("Expected an operation declaration");
122
+ return operation;
123
+ })
124
+ )
125
+ });
126
+ };
127
+ var joinPath = (path, name) => path === "" ? name : `${path}.${name}`;
128
+ var locate = (root, name) => {
129
+ if (root?.kind === "dynamic") return { kind: "dynamic", source: root, router: "", name };
130
+ let current = root;
131
+ let path = "";
132
+ let rest = name;
133
+ while (current !== void 0) {
134
+ const dot = rest.indexOf(".");
135
+ const key = dot < 0 ? rest : rest.slice(0, dot);
136
+ const child = Object.hasOwn(current.children, key) ? current.children[key] : void 0;
137
+ if (child === void 0) return void 0;
138
+ const remaining = dot < 0 ? void 0 : rest.slice(dot + 1);
139
+ switch (child.kind) {
140
+ case "query":
141
+ case "mutation":
142
+ return remaining === void 0 ? { kind: "operation", operation: child, router: path } : void 0;
143
+ case "dynamic":
144
+ return remaining === void 0 || remaining === "" ? void 0 : { kind: "dynamic", source: child, router: joinPath(path, key), name: remaining };
145
+ case "router":
146
+ if (remaining === void 0) return void 0;
147
+ current = child;
148
+ path = joinPath(path, key);
149
+ rest = remaining;
150
+ }
151
+ }
152
+ return void 0;
153
+ };
154
+ var declaredOperations = (root, path = "") => Object.entries(root?.children ?? {}).flatMap(([key, child]) => {
155
+ const name = joinPath(path, key);
156
+ switch (child.kind) {
157
+ case "query":
158
+ case "mutation":
159
+ return [{ name, router: path, operation: child }];
160
+ case "router":
161
+ return declaredOperations(child, name);
162
+ case "dynamic":
163
+ return [];
164
+ }
165
+ });
166
+ var withApprovals = (source, policy) => {
167
+ const native = nativeRouter(source);
168
+ if (native === void 0) throw new Error("withApprovals expects a router");
169
+ const operation = (node, name) => {
170
+ const approval = policy(operationDeclaration(node), name);
171
+ return approval === void 0 ? node : approvedOperation(node, approval);
172
+ };
173
+ const child = (node, name) => {
174
+ switch (node.kind) {
175
+ case "query":
176
+ case "mutation":
177
+ return operation(node, name);
178
+ case "router":
179
+ case "dynamic":
180
+ return walk(node, name);
181
+ }
182
+ };
183
+ const walk = (node, path) => node.kind === "dynamic" ? {
184
+ ...node,
185
+ resolve: (name) => node.resolve(name).pipe(
186
+ Effect_exports.flatMap(
187
+ (resolved) => resolved === void 0 ? Effect_exports.succeed(void 0) : Effect_exports.try({
188
+ try: () => operation(resolved, joinPath(path, name)),
189
+ catch: (error) => error
190
+ })
191
+ )
192
+ )
193
+ } : {
194
+ ...node,
195
+ children: Object.fromEntries(
196
+ Object.entries(node.children).map(([key, value]) => [
197
+ key,
198
+ child(value, joinPath(path, key))
199
+ ])
200
+ )
201
+ };
202
+ return routerDeclaration(walk(native, ""));
203
+ };
204
+
205
+ export {
206
+ operationDeclaration,
207
+ nativeOperation,
208
+ withApproval,
209
+ toolAnnotations,
210
+ query,
211
+ mutation,
212
+ routerDeclaration,
213
+ nativeRouter,
214
+ mergeMeta,
215
+ router,
216
+ dynamicRouter,
217
+ joinPath,
218
+ locate,
219
+ declaredOperations,
220
+ withApprovals
221
+ };
@@ -0,0 +1,88 @@
1
+ import {
2
+ Predicate_exports
3
+ } from "./chunk-IFJU5SYQ.js";
4
+
5
+ // ../utils/src/recorded-message.ts
6
+ var RecordedMessage = /* @__PURE__ */ Symbol.for("@executor-js/utils/RecordedMessage");
7
+ var recordedMessage = (error) => {
8
+ if (Predicate_exports.hasProperty(error, RecordedMessage)) {
9
+ const message = error[RecordedMessage];
10
+ return typeof message === "string" ? message : void 0;
11
+ }
12
+ return protocolErrorMessage(error) ?? sqlErrorMessage(error);
13
+ };
14
+ var jsonRpcMeanings = {
15
+ [-32700]: "Parse error",
16
+ [-32600]: "Invalid request",
17
+ [-32601]: "Method not found",
18
+ [-32602]: "Invalid params",
19
+ [-32603]: "Internal error",
20
+ [-32002]: "Resource not found"
21
+ };
22
+ var protocolErrorMessage = (error) => {
23
+ if (!Predicate_exports.isTagged(error, "ProtocolError") || !Predicate_exports.hasProperty(error, "code") || typeof error.code !== "number" || !Predicate_exports.hasProperty(error, "message") || !Predicate_exports.isString(error.message))
24
+ return void 0;
25
+ const code = error.code;
26
+ const refusal = /^Tool '.*' not found$/s.test(error.message) ? ": the requested tool does not exist" : error.message.startsWith("Invalid parameters for tool '") ? ": the tool's arguments failed validation" : "";
27
+ const meaning = jsonRpcMeanings[code];
28
+ const kind = meaning === void 0 ? "JSON-RPC error with an unlisted code" : `${meaning} (${code})`;
29
+ return kind + refusal;
30
+ };
31
+ var sqlReasons = /* @__PURE__ */ new Set([
32
+ "ConnectionError",
33
+ "AuthenticationError",
34
+ "AuthorizationError",
35
+ "SqlSyntaxError",
36
+ "UniqueViolation",
37
+ "ConstraintError",
38
+ "DeadlockError",
39
+ "SerializationError",
40
+ "LockTimeoutError",
41
+ "StatementTimeoutError",
42
+ "UnknownError"
43
+ ]);
44
+ var sqlMessages = new Set(
45
+ [
46
+ "A pipelined query completed out of order",
47
+ "Connection closed",
48
+ "Connection closed during startup",
49
+ "Connection is closed",
50
+ "Connection timed out",
51
+ "Failed to connect",
52
+ "Failed to decode row",
53
+ "Failed to encode query",
54
+ "Failed to negotiate TLS",
55
+ "Failed to parse SSLRequest error response",
56
+ "Failed to parse server messages",
57
+ "Failed to parse server response",
58
+ "Failed to write query",
59
+ "Failed to write query batch",
60
+ "Invalid SSLRequest response",
61
+ "MD5 authentication failed",
62
+ "No password configured",
63
+ "Protocol desync",
64
+ "Query cancellation timed out",
65
+ "Query failed",
66
+ "SCRAM authentication failed",
67
+ "SCRAM exchange did not complete",
68
+ "SCRAM server verification failed",
69
+ "Server refused TLS",
70
+ "Socket error",
71
+ "Stream cancellation timed out",
72
+ "The server reported an error",
73
+ "Unsupported authentication method"
74
+ ].map((message) => `PgConnection: ${message}`)
75
+ );
76
+ var sqlErrorMessage = (error) => {
77
+ if (!Predicate_exports.isTagged(error, "SqlError") || !Predicate_exports.hasProperty(error, "reason"))
78
+ return void 0;
79
+ const reason = error.reason;
80
+ const kind = Predicate_exports.hasProperty(reason, "_tag") && Predicate_exports.isString(reason._tag) && sqlReasons.has(reason._tag) ? reason._tag : "an unlisted kind";
81
+ const message = Predicate_exports.hasProperty(reason, "message") && Predicate_exports.isString(reason.message) && sqlMessages.has(reason.message) ? `: ${reason.message}` : "";
82
+ return `The database failed (${kind})${message}`;
83
+ };
84
+
85
+ export {
86
+ RecordedMessage,
87
+ recordedMessage
88
+ };