apps 0.0.1-beta.9 → 0.0.1-beta.91

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 (191) hide show
  1. package/README.md +56 -38
  2. package/framework-reference.json +1 -1
  3. package/js/chunk-3LEVTFD4.js +712 -0
  4. package/js/chunk-5FHWNLCI.js +88 -0
  5. package/js/{chunk-FL2QR3XW.js → chunk-5MDA7MKL.js} +338 -73
  6. package/js/chunk-6XQLA5NC.js +5047 -0
  7. package/js/{chunk-M3B3DE4K.js → chunk-74YVXBKY.js} +463 -218
  8. package/js/chunk-7PHHWYV4.js +335 -0
  9. package/js/chunk-DADXWWRZ.js +449 -0
  10. package/js/{chunk-27F7W2LG.js → chunk-DDHBUKXX.js} +18 -2
  11. package/js/{chunk-UK573G7W.js → chunk-EOPQ727L.js} +87 -51
  12. package/js/{chunk-5T57N25Q.js → chunk-GQ33QSNB.js} +583 -69
  13. package/js/{chunk-JU7VHODU.js → chunk-H72MEDMN.js} +65 -10
  14. package/js/chunk-I5C7FD5Z.js +171 -0
  15. package/js/{chunk-CDL5PM2Q.js → chunk-IFJU5SYQ.js} +19082 -18402
  16. package/js/{chunk-VFZKSM3T.js → chunk-JPEUKEV4.js} +3 -3
  17. package/js/{chunk-KUMBKVJD.js → chunk-KLYSEHUD.js} +2 -2
  18. package/js/{chunk-RFVIONFX.js → chunk-KUCCHNVY.js} +123 -44
  19. package/js/chunk-OD3KFKZD.js +1617 -0
  20. package/js/{chunk-57RKNWL2.js → chunk-PD6I2SDG.js} +4 -4
  21. package/js/{chunk-72JNVHPK.js → chunk-PYQLOLOC.js} +4 -3
  22. package/js/{chunk-ODEIDRGW.js → chunk-QWQM3CLH.js} +795 -176
  23. package/js/{chunk-IJX4CYZO.js → chunk-TUMGL2OC.js} +228 -264
  24. package/js/{chunk-IPI4MFSN.js → chunk-XBG7HHXC.js} +2 -2
  25. package/js/chunk-XPRZTLHD.js +1915 -0
  26. package/js/chunk-YNJ5CZMJ.js +93 -0
  27. package/js/chunk-YRGL4QEF.js +49 -0
  28. package/js/{chunk-Z5M2LQOZ.js → chunk-YWFUWTUJ.js} +113 -58
  29. package/js/client.js +142 -78
  30. package/js/contracts.js +142 -21
  31. package/js/effect.js +18 -19
  32. package/js/{es-APDZKREY.js → es-DIULA3ZF.js} +62 -1659
  33. package/js/graphql.js +49 -40
  34. package/js/host.js +85 -62
  35. package/js/index.js +165 -70
  36. package/js/mcp/effect.js +21 -21
  37. package/js/mcp.js +76 -56
  38. package/js/openapi.js +4189 -1411
  39. package/js/react.js +2 -3
  40. package/js/skills/effect.js +6 -3
  41. package/js/skills.js +208 -81
  42. package/js/storage/facet.js +1 -540
  43. package/js/ui/auth/contracts.js +2 -2
  44. package/js/ui/auth.js +5 -5
  45. package/js/ui/contracts.js +5 -4
  46. package/js/ui/serving.js +8605 -225
  47. package/package.json +3 -8
  48. package/runtime.json +1 -1
  49. package/types/app-cache/src/contracts/cache.d.ts +18 -0
  50. package/types/app-cache/src/index.d.ts +34 -2
  51. package/types/apps/src/contracts/api-response-error.d.ts +4 -0
  52. package/types/apps/src/contracts/app.d.ts +60 -11
  53. package/types/apps/src/contracts/cache.d.ts +20 -0
  54. package/types/apps/src/contracts/context.d.ts +60 -17
  55. package/types/apps/src/contracts/elicitation.d.ts +23 -7
  56. package/types/apps/src/contracts/events.d.ts +94 -0
  57. package/types/apps/src/contracts/failure.d.ts +30 -1
  58. package/types/apps/src/contracts/graphql.d.ts +2 -1
  59. package/types/apps/src/contracts/host.d.ts +1446 -17
  60. package/types/apps/src/contracts/icons.d.ts +28 -0
  61. package/types/apps/src/contracts/live.d.ts +2 -0
  62. package/types/apps/src/contracts/mcp.d.ts +81 -20
  63. package/types/apps/src/contracts/network.d.ts +120 -0
  64. package/types/apps/src/contracts/openapi-compile.d.ts +82 -3
  65. package/types/apps/src/contracts/openapi.d.ts +41 -9
  66. package/types/apps/src/contracts/operations.d.ts +14 -7
  67. package/types/apps/src/contracts/placement.d.ts +102 -0
  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/11.d.ts +1149 -0
  72. package/types/apps/src/contracts/protocols/12.d.ts +3310 -0
  73. package/types/apps/src/contracts/protocols/2.d.ts +69 -26
  74. package/types/apps/src/contracts/protocols/3.d.ts +133 -33
  75. package/types/apps/src/contracts/protocols/4.d.ts +122 -45
  76. package/types/apps/src/contracts/protocols/5.d.ts +157 -47
  77. package/types/apps/src/contracts/protocols/6.d.ts +1629 -0
  78. package/types/apps/src/contracts/protocols/7.d.ts +1785 -0
  79. package/types/apps/src/contracts/protocols/8.d.ts +1182 -0
  80. package/types/apps/src/contracts/protocols/9.d.ts +1104 -0
  81. package/types/apps/src/contracts/protocols/current.d.ts +6669 -0
  82. package/types/apps/src/contracts/protocols/oauth-6.d.ts +74 -0
  83. package/types/apps/src/contracts/protocols/oauth.d.ts +134 -0
  84. package/types/apps/src/contracts/provider-error.d.ts +9 -0
  85. package/types/apps/src/contracts/provider.d.ts +90 -6
  86. package/types/apps/src/contracts/schedules.d.ts +7 -1
  87. package/types/apps/src/contracts/schema.d.ts +21 -0
  88. package/types/apps/src/contracts/skills.d.ts +50 -13
  89. package/types/apps/src/contracts/sql.d.ts +63 -0
  90. package/types/apps/src/contracts/ui.d.ts +44 -14
  91. package/types/apps/src/contracts/webhooks.d.ts +24 -7
  92. package/types/apps/src/contracts/workflows.d.ts +19 -17
  93. package/types/apps/src/facet.d.ts +4 -5
  94. package/types/apps/src/host.d.ts +5 -0
  95. package/types/apps/src/implementation/account-router.d.ts +4 -3
  96. package/types/apps/src/implementation/app.d.ts +41 -14
  97. package/types/apps/src/implementation/authoring.d.ts +25 -5
  98. package/types/apps/src/implementation/browser-scripts.gen.d.ts +6 -0
  99. package/types/apps/src/implementation/cache.d.ts +29 -2
  100. package/types/apps/src/implementation/catalog-cache.d.ts +35 -4
  101. package/types/apps/src/implementation/elicitation.d.ts +18 -15
  102. package/types/apps/src/implementation/events.d.ts +64 -0
  103. package/types/apps/src/implementation/failure-detail.d.ts +28 -5
  104. package/types/apps/src/implementation/graphql-catalog.d.ts +3 -3
  105. package/types/apps/src/implementation/graphql.d.ts +4 -3
  106. package/types/apps/src/implementation/input-problems.d.ts +6 -2
  107. package/types/apps/src/implementation/invocation-timing.d.ts +18 -0
  108. package/types/apps/src/implementation/live.d.ts +2 -2
  109. package/types/apps/src/implementation/mcp-call.d.ts +6 -5
  110. package/types/apps/src/implementation/mcp-catalog.d.ts +6 -4
  111. package/types/apps/src/implementation/mcp-client.d.ts +17 -9
  112. package/types/apps/src/implementation/mcp-tools.d.ts +2 -1
  113. package/types/apps/src/implementation/mcp.d.ts +20 -9
  114. package/types/apps/src/implementation/network.d.ts +16 -0
  115. package/types/apps/src/implementation/openapi-compile.d.ts +28 -7
  116. package/types/apps/src/implementation/openapi-document.d.ts +46 -19
  117. package/types/apps/src/implementation/openapi-names.d.ts +9 -4
  118. package/types/apps/src/implementation/openapi-request.d.ts +10 -2
  119. package/types/apps/src/implementation/openapi-source.d.ts +23 -1
  120. package/types/apps/src/implementation/openapi-upgrade.d.ts +4 -0
  121. package/types/apps/src/implementation/operations.d.ts +57 -7
  122. package/types/apps/src/implementation/optimistic.d.ts +1 -1
  123. package/types/apps/src/implementation/placement.d.ts +60 -0
  124. package/types/apps/src/implementation/protocol-operations.d.ts +3 -0
  125. package/types/apps/src/implementation/provider-error.d.ts +28 -1
  126. package/types/apps/src/implementation/provider.d.ts +19 -4
  127. package/types/apps/src/implementation/query-commit.d.ts +1 -1
  128. package/types/apps/src/implementation/router-catalog.d.ts +20 -18
  129. package/types/apps/src/implementation/router.d.ts +24 -5
  130. package/types/apps/src/implementation/runtime-yield.d.ts +7 -0
  131. package/types/apps/src/implementation/schedules.d.ts +39 -8
  132. package/types/apps/src/implementation/schema.d.ts +98 -11
  133. package/types/apps/src/implementation/skills.d.ts +18 -24
  134. package/types/apps/src/implementation/sql.d.ts +71 -0
  135. package/types/apps/src/implementation/ui-account-notice.d.ts +9 -0
  136. package/types/apps/src/implementation/ui-auth.d.ts +1 -1
  137. package/types/apps/src/implementation/ui-client.d.ts +2 -2
  138. package/types/apps/src/implementation/ui-document.d.ts +5 -0
  139. package/types/apps/src/implementation/ui-errors.d.ts +1 -1
  140. package/types/apps/src/implementation/ui-serving.d.ts +26 -9
  141. package/types/apps/src/implementation/ui-watch.d.ts +1 -1
  142. package/types/apps/src/implementation/upstream-error.d.ts +7 -0
  143. package/types/apps/src/implementation/webhooks.d.ts +15 -6
  144. package/types/apps/src/implementation/workflow-context.d.ts +6 -2
  145. package/types/apps/src/implementation/workflows.d.ts +11 -4
  146. package/types/apps/src/index.d.ts +68 -19
  147. package/types/apps/src/mcp.d.ts +20 -1
  148. package/types/apps/src/openapi.d.ts +6 -1
  149. package/types/apps/src/react.d.ts +1 -1
  150. package/types/apps/src/skills.d.ts +10 -8
  151. package/types/apps/src/ui-serving.d.ts +1 -1
  152. package/types/telemetry/src/app-records.d.ts +42 -0
  153. package/types/telemetry/src/browser-operations.d.ts +2 -2
  154. package/types/telemetry/src/browser.d.ts +8 -3
  155. package/types/telemetry/src/config.d.ts +2 -2
  156. package/types/telemetry/src/index.d.ts +2 -1
  157. package/types/telemetry/src/layer.d.ts +10 -4
  158. package/types/telemetry/src/measurements.d.ts +1 -1
  159. package/types/telemetry/src/ownership.d.ts +60 -0
  160. package/types/telemetry/src/recorded-failure.d.ts +29 -0
  161. package/types/telemetry/src/relay.d.ts +16 -6
  162. package/types/telemetry/src/span-attributes.d.ts +17 -1
  163. package/types/telemetry/src/transport.d.ts +8 -1
  164. package/types/utils/src/api-error.d.ts +55 -0
  165. package/types/utils/src/connection-failure.d.ts +33 -0
  166. package/types/utils/src/recorded-message.d.ts +18 -0
  167. package/types/utils/src/user-facing-error.d.ts +83 -0
  168. package/js/chunk-7EK2JDX4.js +0 -299
  169. package/js/chunk-IKS2C5MQ.js +0 -224
  170. package/js/chunk-MKWZPDR6.js +0 -63
  171. package/js/chunk-N7YDVXYJ.js +0 -186
  172. package/js/chunk-NKLWZJLE.js +0 -172
  173. package/js/chunk-PJJ24GU7.js +0 -877
  174. package/js/chunk-PZB6T6KU.js +0 -19
  175. package/js/chunk-R3EV5FTO.js +0 -97
  176. package/js/chunk-SJFZCGXG.js +0 -1243
  177. package/js/chunk-WLE7WX2U.js +0 -2645
  178. package/js/chunk-YXQHV65J.js +0 -242
  179. package/js/chunk-ZQINWV4W.js +0 -630
  180. package/js/mcp/stdio.js +0 -128
  181. package/types/app-data/src/implementation/cursor.d.ts +0 -10
  182. package/types/app-data/src/implementation/index-key.d.ts +0 -7
  183. package/types/app-data/src/implementation/promise.d.ts +0 -68
  184. package/types/app-data/src/implementation/range.d.ts +0 -8
  185. package/types/app-data/src/implementation/schema.d.ts +0 -18
  186. package/types/app-data/src/implementation/sqlite.d.ts +0 -11
  187. package/types/app-data/src/index.d.ts +0 -4
  188. package/types/apps/src/contracts/storage.d.ts +0 -68
  189. package/types/apps/src/implementation/mcp-stdio.d.ts +0 -4
  190. package/types/apps/src/implementation/storage.d.ts +0 -15
  191. package/types/apps/src/mcp-stdio.d.ts +0 -5
package/js/graphql.js CHANGED
@@ -1,55 +1,60 @@
1
1
  import {
2
- catalogCache
3
- } from "./chunk-RFVIONFX.js";
2
+ catalogCache,
3
+ catalogScope
4
+ } from "./chunk-KUCCHNVY.js";
4
5
  import {
5
6
  protocolOperations
6
- } from "./chunk-72JNVHPK.js";
7
+ } from "./chunk-PYQLOLOC.js";
7
8
  import "./chunk-BCSNKUAC.js";
8
- import "./chunk-SJFZCGXG.js";
9
+ import "./chunk-XPRZTLHD.js";
9
10
  import {
10
11
  cacheKey
11
- } from "./chunk-NKLWZJLE.js";
12
- import "./chunk-FL2QR3XW.js";
13
- import "./chunk-IPI4MFSN.js";
14
- import "./chunk-YXQHV65J.js";
15
- import "./chunk-ZQINWV4W.js";
12
+ } from "./chunk-7PHHWYV4.js";
13
+ import "./chunk-5MDA7MKL.js";
14
+ import {
15
+ failOnNetworkRefusal
16
+ } from "./chunk-YRGL4QEF.js";
17
+ import "./chunk-XBG7HHXC.js";
18
+ import "./chunk-DADXWWRZ.js";
16
19
  import {
17
20
  nativeOperation,
18
21
  routerDeclaration
19
- } from "./chunk-Z5M2LQOZ.js";
22
+ } from "./chunk-YWFUWTUJ.js";
20
23
  import {
21
24
  accountProviderError,
22
25
  graphqlProviderError,
23
26
  httpProviderError
24
- } from "./chunk-MKWZPDR6.js";
25
- import "./chunk-WLE7WX2U.js";
26
- import "./chunk-N7YDVXYJ.js";
27
+ } from "./chunk-I5C7FD5Z.js";
27
28
  import {
29
+ NetworkRefused,
28
30
  ProviderError
29
- } from "./chunk-R3EV5FTO.js";
30
- import "./chunk-JU7VHODU.js";
31
- import "./chunk-ODEIDRGW.js";
31
+ } from "./chunk-6XQLA5NC.js";
32
+ import "./chunk-H72MEDMN.js";
32
33
  import {
33
- FetchHttpClient_exports
34
- } from "./chunk-57RKNWL2.js";
34
+ jsonSchemaDecoder
35
+ } from "./chunk-GQ33QSNB.js";
35
36
  import {
36
- HttpClientRequest_exports,
37
- HttpClient_exports
38
- } from "./chunk-UK573G7W.js";
37
+ owned
38
+ } from "./chunk-QWQM3CLH.js";
39
39
  import {
40
- jsonSchemaDecoder
41
- } from "./chunk-5T57N25Q.js";
42
- import "./chunk-PZB6T6KU.js";
40
+ FetchHttpClient_exports
41
+ } from "./chunk-PD6I2SDG.js";
42
+ import "./chunk-5FHWNLCI.js";
43
43
  import {
44
44
  AccountId,
45
45
  HttpUrl,
46
46
  JsonObject
47
- } from "./chunk-27F7W2LG.js";
47
+ } from "./chunk-DDHBUKXX.js";
48
+ import "./chunk-TUMGL2OC.js";
49
+ import {
50
+ HttpClientRequest_exports,
51
+ HttpClient_exports
52
+ } from "./chunk-EOPQ727L.js";
48
53
  import {
49
54
  Effect_exports,
50
55
  Redacted_exports,
51
56
  Schema_exports
52
- } from "./chunk-CDL5PM2Q.js";
57
+ } from "./chunk-IFJU5SYQ.js";
53
58
  import "./chunk-CZ7CSFO4.js";
54
59
 
55
60
  // src/contracts/graphql.ts
@@ -85,7 +90,7 @@ var GraphqlError = class extends Schema_exports.TaggedError()("GraphqlError", {
85
90
  status: Schema_exports.optional(Schema_exports.Number)
86
91
  }) {
87
92
  };
88
- var Name = Schema_exports.String.check(Schema_exports.isPattern(/^[_A-Za-z][_0-9A-Za-z]*$/));
93
+ var Name = Schema_exports.String.check(Schema_exports.isPattern(/^[_A-Za-z][_0-9A-Za-z]*$/u));
89
94
  var Kind = Schema_exports.Literals([
90
95
  "SCALAR",
91
96
  "OBJECT",
@@ -268,10 +273,11 @@ var graphqlClientEffect = (input) => Effect_exports.gen(function* () {
268
273
  HttpClientRequest_exports.bodyJsonUnsafe({ query, variables })
269
274
  )
270
275
  );
276
+ yield* failOnNetworkRefusal(response);
271
277
  if (response.status < 200 || response.status >= 300)
272
278
  return yield* httpProviderError(response.status, response.headers) ?? new GraphqlError({ phase, reason: "request", status: response.status });
273
279
  const result = yield* response.json.pipe(
274
- Effect_exports.withSpan("provider.http.response.read"),
280
+ owned("upstream", "provider.http.response.read"),
275
281
  Effect_exports.flatMap(Schema_exports.decodeUnknownEffect(GraphqlResponse)),
276
282
  Effect_exports.mapError(() => new GraphqlError({ phase, reason: "invalid_response" }))
277
283
  );
@@ -282,7 +288,7 @@ var graphqlClientEffect = (input) => Effect_exports.gen(function* () {
282
288
  return result.data;
283
289
  })
284
290
  ).pipe(
285
- Effect_exports.withSpan("provider.graphql.request", {
291
+ owned("upstream", "provider.graphql.request", {
286
292
  attributes: {
287
293
  "executor.operation": phase,
288
294
  "server.address": url.hostname
@@ -296,13 +302,13 @@ var graphqlClientEffect = (input) => Effect_exports.gen(function* () {
296
302
  orElse: () => Effect_exports.fail(new GraphqlError({ phase, reason: "timeout" }))
297
303
  }),
298
304
  Effect_exports.mapError(
299
- (error) => error instanceof ProviderError && options.accountId !== void 0 ? accountProviderError(error, options.accountId) : error instanceof GraphqlError || error instanceof ProviderError ? error : new GraphqlError({ phase, reason: "request" })
305
+ (error) => error instanceof ProviderError && options.accountId !== void 0 ? accountProviderError(error, options.accountId) : error instanceof GraphqlError || error instanceof ProviderError || error instanceof NetworkRefused ? error : new GraphqlError({ phase, reason: "request" })
300
306
  )
301
307
  );
302
308
  const discover = request("discover", getIntrospectionQuery()).pipe(
303
309
  Effect_exports.flatMap(Schema_exports.decodeUnknownEffect(GraphqlIntrospection)),
304
310
  Effect_exports.mapError(
305
- (error) => error instanceof GraphqlError || error instanceof ProviderError ? error : new GraphqlError({ phase: "discover", reason: "invalid_response" })
311
+ (error) => error instanceof GraphqlError || error instanceof ProviderError || error instanceof NetworkRefused ? error : new GraphqlError({ phase: "discover", reason: "invalid_response" })
306
312
  )
307
313
  );
308
314
  return { request, discover };
@@ -411,7 +417,7 @@ var adaptGraphqlTool = (client, definition) => Effect_exports.gen(function* () {
411
417
  return yield* new GraphqlError({ phase: "call", reason: "invalid_response" });
412
418
  return value;
413
419
  }).pipe(
414
- Effect_exports.withSpan("provider.graphql.call", {
420
+ owned("upstream", "provider.graphql.call", {
415
421
  attributes: {
416
422
  "graphql.operation.type": kind,
417
423
  "executor.tool.name": name
@@ -429,17 +435,20 @@ var GraphqlToolSummary = GraphqlToolDefinition.mapFields(({ name, kind, descript
429
435
  description
430
436
  }));
431
437
  var graphqlCatalog = (options, kinds) => Effect_exports.gen(function* () {
432
- const parsed = yield* Schema_exports.decodeUnknownEffect(GraphqlToolsOptions)(options).pipe(
433
- Effect_exports.mapError(() => new GraphqlError({ phase: "discover", reason: "invalid_input" }))
434
- );
435
- const headers = {};
436
- new Headers(parsed.headers).forEach((value, name) => {
437
- headers[name] = value;
438
- });
439
- const id = yield* cacheKey({ url: parsed.url, headers, accountId: parsed.accountId ?? null });
438
+ const invalid = () => new GraphqlError({ phase: "discover", reason: "invalid_input" });
439
+ const parsed = yield* Schema_exports.decodeUnknownEffect(GraphqlToolsOptions)({
440
+ url: options.url,
441
+ accountId: options.account?.id,
442
+ headers: options.headers,
443
+ signal: options.signal,
444
+ timeoutMs: options.timeoutMs
445
+ }).pipe(Effect_exports.mapError(invalid));
446
+ const cache = yield* catalogScope(options, options.headers, invalid);
447
+ const id = yield* cacheKey({ url: parsed.url });
440
448
  const client = yield* graphqlClientEffect(parsed);
441
449
  const catalog = yield* catalogCache({
442
450
  ...options,
451
+ cache,
443
452
  prefix: ["graphql-catalog-v2", id],
444
453
  schema: GraphqlToolDefinition,
445
454
  summary: {
package/js/host.js CHANGED
@@ -1,19 +1,23 @@
1
1
  import {
2
2
  createAppHandler
3
- } from "./chunk-SJFZCGXG.js";
4
- import "./chunk-NKLWZJLE.js";
5
- import "./chunk-FL2QR3XW.js";
6
- import "./chunk-IPI4MFSN.js";
7
- import "./chunk-YXQHV65J.js";
8
- import "./chunk-ZQINWV4W.js";
9
- import "./chunk-Z5M2LQOZ.js";
10
- import "./chunk-MKWZPDR6.js";
3
+ } from "./chunk-XPRZTLHD.js";
4
+ import "./chunk-7PHHWYV4.js";
5
+ import "./chunk-5MDA7MKL.js";
6
+ import "./chunk-YRGL4QEF.js";
7
+ import "./chunk-XBG7HHXC.js";
8
+ import "./chunk-DADXWWRZ.js";
9
+ import "./chunk-YWFUWTUJ.js";
10
+ import "./chunk-I5C7FD5Z.js";
11
11
  import {
12
+ CacheCommand,
13
+ CacheError,
14
+ CacheReply,
12
15
  ElicitationFailed,
13
16
  ElicitationReply,
14
17
  HostAccountsInvalid,
15
18
  HostInputInvalid,
16
19
  HostResponse,
20
+ InvocationTimingSink,
17
21
  ResolvedAccounts,
18
22
  TrustedToolApproval,
19
23
  WorkflowFailure,
@@ -21,30 +25,26 @@ import {
21
25
  WorkflowRun,
22
26
  WorkflowRunId,
23
27
  WorkflowRunPage
24
- } from "./chunk-WLE7WX2U.js";
25
- import "./chunk-N7YDVXYJ.js";
26
- import {
27
- CacheCommand,
28
- CacheError,
29
- CacheReply
30
- } from "./chunk-R3EV5FTO.js";
31
- import "./chunk-JU7VHODU.js";
28
+ } from "./chunk-6XQLA5NC.js";
29
+ import "./chunk-H72MEDMN.js";
30
+ import "./chunk-GQ33QSNB.js";
32
31
  import {
33
32
  collectTelemetry,
34
33
  withRemoteSpan
35
- } from "./chunk-ODEIDRGW.js";
36
- import "./chunk-57RKNWL2.js";
37
- import "./chunk-UK573G7W.js";
38
- import "./chunk-5T57N25Q.js";
39
- import "./chunk-PZB6T6KU.js";
40
- import "./chunk-27F7W2LG.js";
34
+ } from "./chunk-QWQM3CLH.js";
35
+ import "./chunk-PD6I2SDG.js";
36
+ import "./chunk-5FHWNLCI.js";
37
+ import "./chunk-DDHBUKXX.js";
38
+ import "./chunk-TUMGL2OC.js";
39
+ import "./chunk-EOPQ727L.js";
41
40
  import {
42
41
  Cause_exports,
42
+ Clock_exports,
43
43
  Effect_exports,
44
44
  Redacted_exports,
45
45
  Scheduler_exports,
46
46
  Schema_exports
47
- } from "./chunk-CDL5PM2Q.js";
47
+ } from "./chunk-IFJU5SYQ.js";
48
48
  import "./chunk-CZ7CSFO4.js";
49
49
 
50
50
  // src/implementation/cache-session.ts
@@ -52,14 +52,17 @@ var isolatedCacheSession = (callback) => {
52
52
  const controller = new AbortController();
53
53
  const pending = /* @__PURE__ */ new Set();
54
54
  const cache = {
55
- transport: (command) => Effect_exports.tryPromise({
56
- try: () => callback(Schema_exports.encodeSync(CacheCommand)(command)),
57
- catch: () => new CacheError({ reason: "storage" })
58
- }).pipe(
59
- Effect_exports.flatMap(Schema_exports.decodeUnknownEffect(CacheReply)),
60
- Effect_exports.mapError(() => new CacheError({ reason: "storage" })),
61
- Effect_exports.flatMap(
62
- (reply) => reply.ok ? Effect_exports.succeed(reply.value) : Effect_exports.fail(reply.error)
55
+ transport: (command) => (
56
+ // oxlint-disable-next-line executor/authored-code-through-adapter -- the host's cache RPC
57
+ Effect_exports.tryPromise({
58
+ try: () => callback(Schema_exports.encodeSync(CacheCommand)(command)),
59
+ catch: () => new CacheError({ reason: "storage" })
60
+ }).pipe(
61
+ Effect_exports.flatMap(Schema_exports.decodeUnknownEffect(CacheReply)),
62
+ Effect_exports.mapError(() => new CacheError({ reason: "storage" })),
63
+ Effect_exports.flatMap(
64
+ (reply) => reply.ok ? Effect_exports.succeed(reply.value) : Effect_exports.fail(reply.error)
65
+ )
63
66
  )
64
67
  ),
65
68
  background: (task) => Effect_exports.gen(function* () {
@@ -97,14 +100,17 @@ var isolatedCacheSession = (callback) => {
97
100
  // src/implementation/workflow-rpc.ts
98
101
  var isolatedWorkflowExecution = (run, deliver, signal) => {
99
102
  const runId = Schema_exports.decodeUnknownSync(WorkflowRunId)(run);
100
- const request = (input, callback) => Effect_exports.tryPromise({
101
- try: () => deliver(input, callback),
102
- catch: () => new WorkflowFailure({ reason: "engine", retryable: true })
103
- }).pipe(
104
- Effect_exports.flatMap(Schema_exports.decodeUnknownEffect(WorkflowRpcResult)),
105
- Effect_exports.mapError(() => new WorkflowFailure({ reason: "engine", retryable: true })),
106
- Effect_exports.flatMap(
107
- (reply) => reply.ok ? Effect_exports.succeed(reply.value) : Effect_exports.fail(reply.error)
103
+ const request = (input, callback) => (
104
+ // oxlint-disable-next-line executor/authored-code-through-adapter -- the host's workflow RPC
105
+ Effect_exports.tryPromise({
106
+ try: () => deliver(input, callback),
107
+ catch: () => new WorkflowFailure({ reason: "engine", retryable: true })
108
+ }).pipe(
109
+ Effect_exports.flatMap(Schema_exports.decodeUnknownEffect(WorkflowRpcResult)),
110
+ Effect_exports.mapError(() => new WorkflowFailure({ reason: "engine", retryable: true })),
111
+ Effect_exports.flatMap(
112
+ (reply) => reply.ok ? Effect_exports.succeed(reply.value) : Effect_exports.fail(reply.error)
113
+ )
108
114
  )
109
115
  );
110
116
  return {
@@ -146,14 +152,17 @@ var isolatedWorkflowExecution = (run, deliver, signal) => {
146
152
  };
147
153
  };
148
154
  var isolatedWorkflowControls = (deliver) => {
149
- const request = (input) => Effect_exports.tryPromise({
150
- try: () => deliver(input),
151
- catch: () => new WorkflowFailure({ reason: "engine", retryable: true })
152
- }).pipe(
153
- Effect_exports.flatMap(Schema_exports.decodeUnknownEffect(WorkflowRpcResult)),
154
- Effect_exports.mapError(() => new WorkflowFailure({ reason: "engine", retryable: true })),
155
- Effect_exports.flatMap(
156
- (result) => result.ok ? Effect_exports.succeed(result.value) : Effect_exports.fail(result.error)
155
+ const request = (input) => (
156
+ // oxlint-disable-next-line executor/authored-code-through-adapter -- the host's workflow RPC
157
+ Effect_exports.tryPromise({
158
+ try: () => deliver(input),
159
+ catch: () => new WorkflowFailure({ reason: "engine", retryable: true })
160
+ }).pipe(
161
+ Effect_exports.flatMap(Schema_exports.decodeUnknownEffect(WorkflowRpcResult)),
162
+ Effect_exports.mapError(() => new WorkflowFailure({ reason: "engine", retryable: true })),
163
+ Effect_exports.flatMap(
164
+ (result) => result.ok ? Effect_exports.succeed(result.value) : Effect_exports.fail(result.error)
165
+ )
157
166
  )
158
167
  );
159
168
  const run = (input) => request(input).pipe(
@@ -202,17 +211,27 @@ var createAppHandler2 = (app) => {
202
211
  );
203
212
  };
204
213
  };
214
+ var isolatedClock = () => Effect_exports.runSync(Clock_exports.currentTimeNanos);
205
215
  var createIsolatedAppHandler = (app) => {
206
216
  const handler = createAppHandler(app);
207
217
  return (request, context) => Effect_exports.runPromise(
208
218
  Effect_exports.gen(function* () {
219
+ let timing;
209
220
  const { value, telemetry } = yield* collectTelemetry(
210
- handler(request, context).pipe(withRemoteSpan(request, "app.dispatch"))
221
+ handler(request, context).pipe(
222
+ withRemoteSpan(request, "app.dispatch"),
223
+ Effect_exports.provideService(InvocationTimingSink, (reported) => {
224
+ timing = reported;
225
+ })
226
+ )
211
227
  );
212
228
  const body = yield* Effect_exports.promise(() => value.json()).pipe(
213
229
  Effect_exports.flatMap(Schema_exports.decodeUnknownEffect(HostResponse))
214
230
  );
215
- return Response.json({ ...body, telemetry }, { status: value.status });
231
+ return Response.json(
232
+ { ...body, telemetry, ...timing === void 0 ? {} : { timing } },
233
+ { status: value.status }
234
+ );
216
235
  }),
217
236
  {
218
237
  signal: request.signal,
@@ -222,20 +241,23 @@ var createIsolatedAppHandler = (app) => {
222
241
  }
223
242
  );
224
243
  };
225
- var isolatedElicitation = (deliver, lifetime) => (request) => Effect_exports.tryPromise({
226
- try: () => deliver(request),
227
- catch: () => {
228
- lifetime.abort();
229
- return new ElicitationFailed({ reason: "transport" });
230
- }
231
- }).pipe(
232
- Effect_exports.flatMap(
233
- (reply) => Schema_exports.decodeUnknownEffect(ElicitationReply)(reply).pipe(
234
- Effect_exports.mapError(() => new ElicitationFailed({ reason: "transport" }))
244
+ var isolatedElicitation = (deliver, lifetime) => (request) => (
245
+ // oxlint-disable-next-line executor/authored-code-through-adapter -- the host's elicitation RPC
246
+ Effect_exports.tryPromise({
247
+ try: () => deliver(request),
248
+ catch: () => {
249
+ lifetime.abort();
250
+ return new ElicitationFailed({ reason: "transport" });
251
+ }
252
+ }).pipe(
253
+ Effect_exports.flatMap(
254
+ (reply) => Schema_exports.decodeUnknownEffect(ElicitationReply)(reply).pipe(
255
+ Effect_exports.mapError(() => new ElicitationFailed({ reason: "transport" }))
256
+ )
257
+ ),
258
+ Effect_exports.flatMap(
259
+ (reply) => reply.ok ? Effect_exports.succeed(reply.response) : Effect_exports.fail(reply.error)
235
260
  )
236
- ),
237
- Effect_exports.flatMap(
238
- (reply) => reply.ok ? Effect_exports.succeed(reply.response) : Effect_exports.fail(reply.error)
239
261
  )
240
262
  );
241
263
  export {
@@ -243,6 +265,7 @@ export {
243
265
  createIsolatedAppHandler,
244
266
  hostContext,
245
267
  isolatedCacheSession,
268
+ isolatedClock,
246
269
  isolatedElicitation,
247
270
  isolatedWorkflowControls,
248
271
  isolatedWorkflowExecution