@moltzap/protocol 2026.503.4 → 2026.504.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 (225) hide show
  1. package/dist/brands.d.ts +11 -0
  2. package/dist/brands.d.ts.map +1 -0
  3. package/dist/brands.js +14 -0
  4. package/dist/brands.js.map +1 -0
  5. package/dist/helpers.d.ts +29 -26
  6. package/dist/helpers.d.ts.map +1 -1
  7. package/dist/helpers.js +34 -16
  8. package/dist/helpers.js.map +1 -1
  9. package/dist/index.d.ts +6 -3
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +6 -3
  12. package/dist/index.js.map +1 -1
  13. package/dist/internal/ajv.d.ts +5 -0
  14. package/dist/internal/ajv.d.ts.map +1 -0
  15. package/dist/internal/ajv.js +22 -0
  16. package/dist/internal/ajv.js.map +1 -0
  17. package/dist/notification.d.ts +14 -0
  18. package/dist/notification.d.ts.map +1 -0
  19. package/dist/notification.js +11 -0
  20. package/dist/notification.js.map +1 -0
  21. package/dist/rpc-errors.d.ts +30 -0
  22. package/dist/rpc-errors.d.ts.map +1 -0
  23. package/dist/rpc-errors.js +23 -0
  24. package/dist/rpc-errors.js.map +1 -0
  25. package/dist/rpc-groups.d.ts +120 -0
  26. package/dist/rpc-groups.d.ts.map +1 -0
  27. package/dist/rpc-groups.js +131 -0
  28. package/dist/rpc-groups.js.map +1 -0
  29. package/dist/rpc-registry.d.ts +1143 -203
  30. package/dist/rpc-registry.d.ts.map +1 -1
  31. package/dist/rpc-registry.js +11 -23
  32. package/dist/rpc-registry.js.map +1 -1
  33. package/dist/rpc.d.ts +26 -5
  34. package/dist/rpc.d.ts.map +1 -1
  35. package/dist/rpc.js +21 -11
  36. package/dist/rpc.js.map +1 -1
  37. package/dist/schema/apps.d.ts +13 -26
  38. package/dist/schema/apps.d.ts.map +1 -1
  39. package/dist/schema/apps.js +2 -13
  40. package/dist/schema/apps.js.map +1 -1
  41. package/dist/schema/contacts.d.ts +6 -2
  42. package/dist/schema/contacts.d.ts.map +1 -1
  43. package/dist/schema/conversations.d.ts +15 -5
  44. package/dist/schema/conversations.d.ts.map +1 -1
  45. package/dist/schema/delivery.d.ts +9 -3
  46. package/dist/schema/delivery.d.ts.map +1 -1
  47. package/dist/schema/errors.d.ts +0 -4
  48. package/dist/schema/errors.d.ts.map +1 -1
  49. package/dist/schema/errors.js +0 -4
  50. package/dist/schema/errors.js.map +1 -1
  51. package/dist/schema/frames.d.ts +48 -51
  52. package/dist/schema/frames.d.ts.map +1 -1
  53. package/dist/schema/frames.js +28 -50
  54. package/dist/schema/frames.js.map +1 -1
  55. package/dist/schema/identity.d.ts +17 -9
  56. package/dist/schema/identity.d.ts.map +1 -1
  57. package/dist/schema/index.d.ts +3 -4
  58. package/dist/schema/index.d.ts.map +1 -1
  59. package/dist/schema/index.js +3 -4
  60. package/dist/schema/index.js.map +1 -1
  61. package/dist/schema/internal-frames.d.ts +10 -0
  62. package/dist/schema/internal-frames.d.ts.map +1 -0
  63. package/dist/schema/internal-frames.js +5 -0
  64. package/dist/schema/internal-frames.js.map +1 -0
  65. package/dist/schema/invites.d.ts +6 -2
  66. package/dist/schema/invites.d.ts.map +1 -1
  67. package/dist/schema/json-rpc.d.ts +27 -0
  68. package/dist/schema/json-rpc.d.ts.map +1 -0
  69. package/dist/schema/json-rpc.js +32 -0
  70. package/dist/schema/json-rpc.js.map +1 -0
  71. package/dist/schema/messages.d.ts +15 -5
  72. package/dist/schema/messages.d.ts.map +1 -1
  73. package/dist/schema/methods/apps.d.ts +131 -105
  74. package/dist/schema/methods/apps.d.ts.map +1 -1
  75. package/dist/schema/methods/apps.js +4 -57
  76. package/dist/schema/methods/apps.js.map +1 -1
  77. package/dist/schema/methods/auth.d.ts +62 -34
  78. package/dist/schema/methods/auth.d.ts.map +1 -1
  79. package/dist/schema/methods/contacts.d.ts +27 -9
  80. package/dist/schema/methods/contacts.d.ts.map +1 -1
  81. package/dist/schema/methods/conversations.d.ts +91 -18
  82. package/dist/schema/methods/conversations.d.ts.map +1 -1
  83. package/dist/schema/methods/conversations.js +2 -2
  84. package/dist/schema/methods/conversations.js.map +1 -1
  85. package/dist/schema/methods/messages.d.ts +39 -13
  86. package/dist/schema/methods/messages.d.ts.map +1 -1
  87. package/dist/schema/methods/presence.d.ts +6 -2
  88. package/dist/schema/methods/presence.d.ts.map +1 -1
  89. package/dist/schema/notifications.d.ts +752 -0
  90. package/dist/schema/notifications.d.ts.map +1 -0
  91. package/dist/schema/notifications.js +155 -0
  92. package/dist/schema/notifications.js.map +1 -0
  93. package/dist/schema/presence.d.ts +3 -1
  94. package/dist/schema/presence.d.ts.map +1 -1
  95. package/dist/schema/primitives.d.ts +21 -5
  96. package/dist/schema/primitives.d.ts.map +1 -1
  97. package/dist/schema/primitives.js +6 -0
  98. package/dist/schema/primitives.js.map +1 -1
  99. package/dist/test-fixtures/seed-data.d.ts +0 -1388
  100. package/dist/test-fixtures/seed-data.d.ts.map +1 -1
  101. package/dist/test-fixtures/seed-data.js +0 -987
  102. package/dist/test-fixtures/seed-data.js.map +1 -1
  103. package/dist/testing/agent-registration.d.ts +3 -1
  104. package/dist/testing/agent-registration.d.ts.map +1 -1
  105. package/dist/testing/agent-registration.js +2 -14
  106. package/dist/testing/agent-registration.js.map +1 -1
  107. package/dist/testing/arbitraries/frames.d.ts +2 -2
  108. package/dist/testing/arbitraries/frames.d.ts.map +1 -1
  109. package/dist/testing/arbitraries/frames.js +7 -6
  110. package/dist/testing/arbitraries/frames.js.map +1 -1
  111. package/dist/testing/arbitraries/index.d.ts +1 -1
  112. package/dist/testing/arbitraries/index.d.ts.map +1 -1
  113. package/dist/testing/arbitraries/index.js +1 -1
  114. package/dist/testing/arbitraries/index.js.map +1 -1
  115. package/dist/testing/arbitraries/rpc.d.ts +3 -2
  116. package/dist/testing/arbitraries/rpc.d.ts.map +1 -1
  117. package/dist/testing/arbitraries/rpc.js +1 -0
  118. package/dist/testing/arbitraries/rpc.js.map +1 -1
  119. package/dist/testing/codec.d.ts +13 -11
  120. package/dist/testing/codec.d.ts.map +1 -1
  121. package/dist/testing/codec.js +30 -45
  122. package/dist/testing/codec.js.map +1 -1
  123. package/dist/testing/conformance/__divergence_proofs__/executable-proof-helpers.d.ts.map +1 -1
  124. package/dist/testing/conformance/__divergence_proofs__/executable-proof-helpers.js +10 -3
  125. package/dist/testing/conformance/__divergence_proofs__/executable-proof-helpers.js.map +1 -1
  126. package/dist/testing/conformance/_helpers.d.ts +6 -6
  127. package/dist/testing/conformance/_helpers.d.ts.map +1 -1
  128. package/dist/testing/conformance/_helpers.js +6 -7
  129. package/dist/testing/conformance/_helpers.js.map +1 -1
  130. package/dist/testing/conformance/adversity.d.ts.map +1 -1
  131. package/dist/testing/conformance/adversity.js +14 -31
  132. package/dist/testing/conformance/adversity.js.map +1 -1
  133. package/dist/testing/conformance/boundary.d.ts +1 -1
  134. package/dist/testing/conformance/boundary.d.ts.map +1 -1
  135. package/dist/testing/conformance/boundary.js +13 -18
  136. package/dist/testing/conformance/boundary.js.map +1 -1
  137. package/dist/testing/conformance/client/_fixtures.d.ts +7 -5
  138. package/dist/testing/conformance/client/_fixtures.d.ts.map +1 -1
  139. package/dist/testing/conformance/client/_fixtures.js +17 -8
  140. package/dist/testing/conformance/client/_fixtures.js.map +1 -1
  141. package/dist/testing/conformance/client/adversity.d.ts.map +1 -1
  142. package/dist/testing/conformance/client/adversity.js +8 -7
  143. package/dist/testing/conformance/client/adversity.js.map +1 -1
  144. package/dist/testing/conformance/client/boundary.d.ts +2 -2
  145. package/dist/testing/conformance/client/boundary.d.ts.map +1 -1
  146. package/dist/testing/conformance/client/boundary.js +13 -12
  147. package/dist/testing/conformance/client/boundary.js.map +1 -1
  148. package/dist/testing/conformance/client/delivery.d.ts +5 -5
  149. package/dist/testing/conformance/client/delivery.d.ts.map +1 -1
  150. package/dist/testing/conformance/client/delivery.js +53 -55
  151. package/dist/testing/conformance/client/delivery.js.map +1 -1
  152. package/dist/testing/conformance/client/index.d.ts +2 -2
  153. package/dist/testing/conformance/client/index.d.ts.map +1 -1
  154. package/dist/testing/conformance/client/index.js +1 -1
  155. package/dist/testing/conformance/client/index.js.map +1 -1
  156. package/dist/testing/conformance/client/rpc-semantics.d.ts.map +1 -1
  157. package/dist/testing/conformance/client/rpc-semantics.js +13 -22
  158. package/dist/testing/conformance/client/rpc-semantics.js.map +1 -1
  159. package/dist/testing/conformance/client/runner.d.ts +25 -24
  160. package/dist/testing/conformance/client/runner.d.ts.map +1 -1
  161. package/dist/testing/conformance/client/runner.js +20 -22
  162. package/dist/testing/conformance/client/runner.js.map +1 -1
  163. package/dist/testing/conformance/client/schema-conformance.d.ts +8 -8
  164. package/dist/testing/conformance/client/schema-conformance.d.ts.map +1 -1
  165. package/dist/testing/conformance/client/schema-conformance.js +34 -34
  166. package/dist/testing/conformance/client/schema-conformance.js.map +1 -1
  167. package/dist/testing/conformance/client/suite.js +2 -2
  168. package/dist/testing/conformance/client/suite.js.map +1 -1
  169. package/dist/testing/conformance/delivery.d.ts.map +1 -1
  170. package/dist/testing/conformance/delivery.js +58 -54
  171. package/dist/testing/conformance/delivery.js.map +1 -1
  172. package/dist/testing/conformance/dispatcher-concurrency.js +12 -12
  173. package/dist/testing/conformance/dispatcher-concurrency.js.map +1 -1
  174. package/dist/testing/conformance/presence.d.ts.map +1 -1
  175. package/dist/testing/conformance/presence.js +32 -23
  176. package/dist/testing/conformance/presence.js.map +1 -1
  177. package/dist/testing/conformance/rpc-semantics.d.ts +12 -12
  178. package/dist/testing/conformance/rpc-semantics.d.ts.map +1 -1
  179. package/dist/testing/conformance/rpc-semantics.js +43 -41
  180. package/dist/testing/conformance/rpc-semantics.js.map +1 -1
  181. package/dist/testing/conformance/schema-conformance.d.ts +3 -40
  182. package/dist/testing/conformance/schema-conformance.d.ts.map +1 -1
  183. package/dist/testing/conformance/schema-conformance.js +38 -244
  184. package/dist/testing/conformance/schema-conformance.js.map +1 -1
  185. package/dist/testing/conformance/suite.d.ts.map +1 -1
  186. package/dist/testing/conformance/suite.js +5 -9
  187. package/dist/testing/conformance/suite.js.map +1 -1
  188. package/dist/testing/index.d.ts +1 -1
  189. package/dist/testing/index.d.ts.map +1 -1
  190. package/dist/testing/models/dispatch.d.ts +5 -5
  191. package/dist/testing/models/dispatch.d.ts.map +1 -1
  192. package/dist/testing/models/dispatch.js +1 -18
  193. package/dist/testing/models/dispatch.js.map +1 -1
  194. package/dist/testing/models/state.d.ts +2 -2
  195. package/dist/testing/models/state.d.ts.map +1 -1
  196. package/dist/testing/test-client.d.ts +36 -44
  197. package/dist/testing/test-client.d.ts.map +1 -1
  198. package/dist/testing/test-client.js +117 -105
  199. package/dist/testing/test-client.js.map +1 -1
  200. package/dist/testing/test-server.d.ts +5 -5
  201. package/dist/testing/test-server.d.ts.map +1 -1
  202. package/dist/testing/test-server.js +4 -4
  203. package/dist/testing/test-server.js.map +1 -1
  204. package/dist/types.d.ts +3 -5
  205. package/dist/types.d.ts.map +1 -1
  206. package/dist/types.js.map +1 -1
  207. package/dist/validators.d.ts +357 -101
  208. package/dist/validators.d.ts.map +1 -1
  209. package/dist/validators.js +22 -30
  210. package/dist/validators.js.map +1 -1
  211. package/dist/version.d.ts +1 -1
  212. package/dist/version.js +1 -1
  213. package/package.json +2 -2
  214. package/dist/schema/events.d.ts +0 -213
  215. package/dist/schema/events.d.ts.map +0 -1
  216. package/dist/schema/events.js +0 -122
  217. package/dist/schema/events.js.map +0 -1
  218. package/dist/schema/methods/push.d.ts +0 -21
  219. package/dist/schema/methods/push.d.ts.map +0 -1
  220. package/dist/schema/methods/push.js +0 -28
  221. package/dist/schema/methods/push.js.map +0 -1
  222. package/dist/schema/surfaces.d.ts +0 -55
  223. package/dist/schema/surfaces.d.ts.map +0 -1
  224. package/dist/schema/surfaces.js +0 -55
  225. package/dist/schema/surfaces.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"rpc-registry.d.ts","sourceRoot":"","sources":["../src/rpc-registry.ts"],"names":[],"mappings":"AAyDA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAE9C;;;;;GAKG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6CAoDb,CAAC;AAEX;;;;;GAKG;AACH,MAAM,MAAM,MAAM,GAAG;KAClB,CAAC,IAAI,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,GAAG;QAC/C,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC;QACpB,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC;QACpB,UAAU,EAAE,CAAC,CAAC;KACf;CACF,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC;AAEzC,uEAAuE;AACvE,MAAM,MAAM,gBAAgB,CAAC,IAAI,SAAS,aAAa,IACrD,MAAM,CAAC,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC;AAE7B;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,GACxD,aAAa,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AAElC;;;;;;;;;GASG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6CAMyC,CAAC;AAEpE;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG;KACrB,CAAC,IAAI,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,GAAG;QAClD,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC;QACpB,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC;QACpB,UAAU,EAAE,CAAC,CAAC;KACf;CACF,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,SAAS,CAAC;AAE/C,6EAA6E;AAC7E,MAAM,MAAM,mBAAmB,CAAC,IAAI,SAAS,gBAAgB,IAC3D,SAAS,CAAC,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC"}
1
+ {"version":3,"file":"rpc-registry.d.ts","sourceRoot":"","sources":["../src/rpc-registry.ts"],"names":[],"mappings":"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"}
@@ -4,9 +4,8 @@ import { MessagesSend, MessagesList } from "./schema/methods/messages.js";
4
4
  import { ContactsList, ContactsAdd, ContactsAccept, } from "./schema/methods/contacts.js";
5
5
  import { InvitesCreateAgent } from "./schema/methods/invites.js";
6
6
  import { PresenceUpdate, PresenceSubscribe, } from "./schema/methods/presence.js";
7
- import { PushRegister, PushUnregister } from "./schema/methods/push.js";
8
- import { AppsCreate, AppsAttestSkill, PermissionsGrant, PermissionsList, PermissionsRevoke, AppsCloseSession, AppsGetSession, AppsListSessions, AppsAuthorizeDispatch, AppsAttachConversation, AppsOnBeforeDispatch, AppsOnBeforeMessageDelivery, AppsOnSessionActive, AppsOnJoin, AppsOnClose, } from "./schema/methods/apps.js";
9
- import { SurfaceUpdate, SurfaceGet, SurfaceAction, SurfaceClear, } from "./schema/surfaces.js";
7
+ import { AppsCreate, AppsCloseSession, AppsGetSession, AppsListSessions, AppsAuthorizeDispatch, AppsAttachConversation, AppsOnBeforeDispatch, AppsOnBeforeMessageDelivery, AppsOnSessionActive, AppsOnClose, } from "./schema/methods/apps.js";
8
+ import { defineRpcGroup } from "./rpc-groups.js";
10
9
  /**
11
10
  * Every RPC manifest the protocol defines, as a literal tuple. Order doesn't
12
11
  * matter — the wire name is the dispatch key. The `as const` is load-bearing:
@@ -46,41 +45,30 @@ export const rpcMethods = [
46
45
  // Presence
47
46
  PresenceUpdate,
48
47
  PresenceSubscribe,
49
- // Push
50
- PushRegister,
51
- PushUnregister,
52
48
  // Apps
53
49
  AppsCreate,
54
- AppsAttestSkill,
55
- PermissionsGrant,
56
- PermissionsList,
57
- PermissionsRevoke,
58
50
  AppsCloseSession,
59
51
  AppsGetSession,
60
52
  AppsListSessions,
61
53
  AppsAuthorizeDispatch,
62
54
  AppsAttachConversation,
63
- // Surfaces
64
- SurfaceUpdate,
65
- SurfaceGet,
66
- SurfaceAction,
67
- SurfaceClear,
68
55
  ];
56
+ export const taskRpcGroup = defineRpcGroup("task", rpcMethods);
69
57
  /**
70
- * Server-initiated RPC manifests (server client). Direction-namespaced so
71
- * c2s dispatch (server router) cannot collide with s2c dispatch (client
72
- * handler registry); the two pools may share `id` values without confusion.
58
+ * App-callback RPC manifests. These are normal JSON-RPC requests whose
59
+ * handlers live in the connected app client; the wire frame carries no
60
+ * direction marker.
73
61
  *
74
62
  * Shape parity with `rpcMethods` is load-bearing: callers type against
75
- * `S2cRpcMethodName` / `S2cRpcMap[M]`, and the `as const` preserves literal
76
- * names for the projection. All entries are AWAITABLE; void-result verbs
77
- * still reply (with `{}`) so the caller's `Deferred.await` can fire.
63
+ * `AppCallbackRpcMethodName`, and the `as const` preserves literal names for
64
+ * the projection. All entries are AWAITABLE; void-result verbs still reply
65
+ * (with `{}`) so the caller's `Deferred.await` can fire.
78
66
  */
79
- export const s2cRpcMethods = [
67
+ export const appCallbackRpcMethods = [
80
68
  AppsOnBeforeDispatch,
81
69
  AppsOnBeforeMessageDelivery,
82
70
  AppsOnSessionActive,
83
- AppsOnJoin,
84
71
  AppsOnClose,
85
72
  ];
73
+ export const appCallbackRpcGroup = defineRpcGroup("appCallback", appCallbackRpcMethods);
86
74
  //# sourceMappingURL=rpc-registry.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rpc-registry.js","sourceRoot":"","sources":["../src/rpc-registry.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,QAAQ,EACR,WAAW,EACX,WAAW,EACX,YAAY,EACZ,kBAAkB,EAClB,UAAU,GACX,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACnB,2BAA2B,EAC3B,8BAA8B,EAC9B,kBAAkB,EAClB,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EACL,YAAY,EACZ,WAAW,EACX,cAAc,GACf,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EACL,cAAc,EACd,iBAAiB,GAClB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AACxE,OAAO,EACL,UAAU,EACV,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,cAAc,EACd,gBAAgB,EAChB,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,EACpB,2BAA2B,EAC3B,mBAAmB,EACnB,UAAU,EACV,WAAW,GACZ,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,aAAa,EACb,UAAU,EACV,aAAa,EACb,YAAY,GACb,MAAM,sBAAsB,CAAC;AAG9B;;;;;GAKG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,OAAO;IACP,OAAO;IACP,QAAQ;IACR,WAAW;IACX,WAAW;IACX,YAAY;IACZ,kBAAkB;IAClB,UAAU;IACV,gBAAgB;IAChB,mBAAmB;IACnB,iBAAiB;IACjB,gBAAgB;IAChB,mBAAmB;IACnB,iBAAiB;IACjB,mBAAmB;IACnB,2BAA2B;IAC3B,8BAA8B;IAC9B,kBAAkB;IAClB,oBAAoB;IACpB,sBAAsB;IACtB,WAAW;IACX,YAAY;IACZ,YAAY;IACZ,WAAW;IACX,YAAY;IACZ,WAAW;IACX,cAAc;IACd,UAAU;IACV,kBAAkB;IAClB,WAAW;IACX,cAAc;IACd,iBAAiB;IACjB,OAAO;IACP,YAAY;IACZ,cAAc;IACd,OAAO;IACP,UAAU;IACV,eAAe;IACf,gBAAgB;IAChB,eAAe;IACf,iBAAiB;IACjB,gBAAgB;IAChB,cAAc;IACd,gBAAgB;IAChB,qBAAqB;IACrB,sBAAsB;IACtB,WAAW;IACX,aAAa;IACb,UAAU;IACV,aAAa;IACb,YAAY;CACJ,CAAC;AAmCX;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,oBAAoB;IACpB,2BAA2B;IAC3B,mBAAmB;IACnB,UAAU;IACV,WAAW;CACsD,CAAC"}
1
+ {"version":3,"file":"rpc-registry.js","sourceRoot":"","sources":["../src/rpc-registry.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,QAAQ,EACR,WAAW,EACX,WAAW,EACX,YAAY,EACZ,kBAAkB,EAClB,UAAU,GACX,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACnB,2BAA2B,EAC3B,8BAA8B,EAC9B,kBAAkB,EAClB,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EACL,YAAY,EACZ,WAAW,EACX,cAAc,GACf,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EACL,cAAc,EACd,iBAAiB,GAClB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,cAAc,EACd,gBAAgB,EAChB,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,EACpB,2BAA2B,EAC3B,mBAAmB,EACnB,WAAW,GACZ,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAcjD;;;;;GAKG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,OAAO;IACP,OAAO;IACP,QAAQ;IACR,WAAW;IACX,WAAW;IACX,YAAY;IACZ,kBAAkB;IAClB,UAAU;IACV,gBAAgB;IAChB,mBAAmB;IACnB,iBAAiB;IACjB,gBAAgB;IAChB,mBAAmB;IACnB,iBAAiB;IACjB,mBAAmB;IACnB,2BAA2B;IAC3B,8BAA8B;IAC9B,kBAAkB;IAClB,oBAAoB;IACpB,sBAAsB;IACtB,WAAW;IACX,YAAY;IACZ,YAAY;IACZ,WAAW;IACX,YAAY;IACZ,WAAW;IACX,cAAc;IACd,UAAU;IACV,kBAAkB;IAClB,WAAW;IACX,cAAc;IACd,iBAAiB;IACjB,OAAO;IACP,UAAU;IACV,gBAAgB;IAChB,cAAc;IACd,gBAAgB;IAChB,qBAAqB;IACrB,sBAAsB;CACd,CAAC;AAEX,MAAM,CAAC,MAAM,YAAY,GAAG,cAAc,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;AA6B/D;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,oBAAoB;IACpB,2BAA2B;IAC3B,mBAAmB;IACnB,WAAW;CACsD,CAAC;AAEpE,MAAM,CAAC,MAAM,mBAAmB,GAAG,cAAc,CAC/C,aAAa,EACb,qBAAqB,CACtB,CAAC"}
package/dist/rpc.d.ts CHANGED
@@ -1,4 +1,6 @@
1
1
  import { type TSchema, type Static } from "@sinclair/typebox";
2
+ import { Effect } from "effect";
3
+ import { type JsonRpcMethod } from "./schema/json-rpc.js";
2
4
  /**
3
5
  * Re-export TypeBox type helpers so downstream packages (client, server)
4
6
  * can type against manifests without taking a direct typebox dependency.
@@ -8,7 +10,7 @@ export type { TSchema, Static } from "@sinclair/typebox";
8
10
  * A typed manifest for one RPC method. Couples:
9
11
  * - `name` — the wire-level method string (e.g. `"agents/lookupByName"`)
10
12
  * - `paramsSchema` / `resultSchema` — TypeBox schemas (runtime values)
11
- * - `validateParams` — pre-compiled AJV validator for `params`
13
+ * - `validateParams` / `validateResult` — pre-compiled AJV validators
12
14
  * - `Params` / `Result` — phantom type carriers so call sites can write
13
15
  * `Static<D["paramsSchema"]>` without paying a generic-inference cost
14
16
  *
@@ -16,10 +18,11 @@ export type { TSchema, Static } from "@sinclair/typebox";
16
18
  * `rpcMethods[number]["name"]` produces a union of every wire method.
17
19
  */
18
20
  export interface RpcDefinition<Name extends string, P extends TSchema, R extends TSchema> {
19
- readonly name: Name;
21
+ readonly name: JsonRpcMethod<Name>;
20
22
  readonly paramsSchema: P;
21
23
  readonly resultSchema: R;
22
- readonly validateParams: (data: unknown) => boolean;
24
+ readonly validateParams: (data: unknown) => data is Static<P>;
25
+ readonly validateResult: (data: unknown) => data is Static<R>;
23
26
  /** Phantom carrier — inspect with `typeof def.Params` to get `Static<P>`. */
24
27
  readonly Params: Static<P>;
25
28
  /** Phantom carrier — inspect with `typeof def.Result` to get `Static<R>`. */
@@ -27,8 +30,8 @@ export interface RpcDefinition<Name extends string, P extends TSchema, R extends
27
30
  }
28
31
  /**
29
32
  * Build an `RpcDefinition` from a TypeBox params + result schema. Compiles
30
- * the params validator at call time. Result schema is carried along but
31
- * not currently validated on the wire (clients trust server output).
33
+ * the validators at descriptor construction time so every transport boundary
34
+ * validates both inbound params and outbound results with the same schema.
32
35
  */
33
36
  export declare function defineRpc<Name extends string, P extends TSchema, R extends TSchema>(def: {
34
37
  name: Name;
@@ -39,4 +42,22 @@ export declare function defineRpc<Name extends string, P extends TSchema, R exte
39
42
  export type ParamsOf<D> = D extends RpcDefinition<string, infer P, TSchema> ? Static<P> : never;
40
43
  /** Extract the result type from an RpcDefinition. */
41
44
  export type ResultOf<D> = D extends RpcDefinition<string, TSchema, infer R> ? Static<R> : never;
45
+ declare const RpcParamsDecodeError_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
46
+ readonly _tag: "RpcParamsDecodeError";
47
+ } & Readonly<A>;
48
+ export declare class RpcParamsDecodeError extends RpcParamsDecodeError_base<{
49
+ readonly definition: RpcDefinition<string, TSchema, TSchema>;
50
+ readonly data: unknown;
51
+ }> {
52
+ }
53
+ declare const RpcResultDecodeError_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
54
+ readonly _tag: "RpcResultDecodeError";
55
+ } & Readonly<A>;
56
+ export declare class RpcResultDecodeError extends RpcResultDecodeError_base<{
57
+ readonly definition: RpcDefinition<string, TSchema, TSchema>;
58
+ readonly data: unknown;
59
+ }> {
60
+ }
61
+ export declare function decodeRpcParams<D extends RpcDefinition<string, TSchema, TSchema>>(definition: D, data: unknown): Effect.Effect<ParamsOf<D>, RpcParamsDecodeError>;
62
+ export declare function decodeRpcResult<D extends RpcDefinition<string, TSchema, TSchema>>(definition: D, data: unknown): Effect.Effect<ResultOf<D>, RpcResultDecodeError>;
42
63
  //# sourceMappingURL=rpc.d.ts.map
package/dist/rpc.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"rpc.d.ts","sourceRoot":"","sources":["../src/rpc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAI9D;;;GAGG;AACH,YAAY,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AASzD;;;;;;;;;;GAUG;AACH,MAAM,WAAW,aAAa,CAC5B,IAAI,SAAS,MAAM,EACnB,CAAC,SAAS,OAAO,EACjB,CAAC,SAAS,OAAO;IAEjB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IACpB,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC;IACzB,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC;IACzB,QAAQ,CAAC,cAAc,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,CAAC;IACpD,6EAA6E;IAC7E,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IAC3B,6EAA6E;IAC7E,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;CAC5B;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CACvB,IAAI,SAAS,MAAM,EACnB,CAAC,SAAS,OAAO,EACjB,CAAC,SAAS,OAAO,EACjB,GAAG,EAAE;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,CAAC,CAAC;IAAC,MAAM,EAAE,CAAC,CAAA;CAAE,GAAG,aAAa,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAWtE;AAED,qDAAqD;AACrD,MAAM,MAAM,QAAQ,CAAC,CAAC,IACpB,CAAC,SAAS,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;AAExE,qDAAqD;AACrD,MAAM,MAAM,QAAQ,CAAC,CAAC,IACpB,CAAC,SAAS,aAAa,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC"}
1
+ {"version":3,"file":"rpc.d.ts","sourceRoot":"","sources":["../src/rpc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAQ,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,EAAiB,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAEzE;;;GAGG;AACH,YAAY,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAEzD;;;;;;;;;;GAUG;AACH,MAAM,WAAW,aAAa,CAC5B,IAAI,SAAS,MAAM,EACnB,CAAC,SAAS,OAAO,EACjB,CAAC,SAAS,OAAO;IAEjB,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC;IACnC,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC;IACzB,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC;IACzB,QAAQ,CAAC,cAAc,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC;IAC9D,QAAQ,CAAC,cAAc,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC;IAC9D,6EAA6E;IAC7E,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IAC3B,6EAA6E;IAC7E,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;CAC5B;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CACvB,IAAI,SAAS,MAAM,EACnB,CAAC,SAAS,OAAO,EACjB,CAAC,SAAS,OAAO,EACjB,GAAG,EAAE;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,CAAC,CAAC;IAAC,MAAM,EAAE,CAAC,CAAA;CAAE,GAAG,aAAa,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAYtE;AAED,qDAAqD;AACrD,MAAM,MAAM,QAAQ,CAAC,CAAC,IACpB,CAAC,SAAS,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;AAExE,qDAAqD;AACrD,MAAM,MAAM,QAAQ,CAAC,CAAC,IACpB,CAAC,SAAS,aAAa,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;;;;AAExE,qBAAa,oBAAqB,SAAQ,0BAExC;IACA,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC7D,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;CACxB,CAAC;CAAG;;;;AAEL,qBAAa,oBAAqB,SAAQ,0BAExC;IACA,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC7D,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;CACxB,CAAC;CAAG;AAEL,wBAAgB,eAAe,CAC7B,CAAC,SAAS,aAAa,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,EAEjD,UAAU,EAAE,CAAC,EACb,IAAI,EAAE,OAAO,GACZ,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;AAcpD,wBAAgB,eAAe,CAC7B,CAAC,SAAS,aAAa,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,EAEjD,UAAU,EAAE,CAAC,EACb,IAAI,EAAE,OAAO,GACZ,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC"}
package/dist/rpc.js CHANGED
@@ -1,27 +1,37 @@
1
1
  import {} from "@sinclair/typebox";
2
- import Ajv from "ajv";
3
- import addFormats from "ajv-formats";
4
- /**
5
- * Shared AJV instance across every `defineRpc` call. Pre-compiles each
6
- * `params` schema once at module load so validation is a single function
7
- * call per inbound RPC — no per-call compilation cost on the hot path.
8
- */
9
- const ajv = addFormats(new Ajv({ strict: true, allErrors: true }));
2
+ import { Data, Effect } from "effect";
3
+ import { ajv } from "./internal/ajv.js";
4
+ import { jsonRpcMethod } from "./schema/json-rpc.js";
10
5
  /**
11
6
  * Build an `RpcDefinition` from a TypeBox params + result schema. Compiles
12
- * the params validator at call time. Result schema is carried along but
13
- * not currently validated on the wire (clients trust server output).
7
+ * the validators at descriptor construction time so every transport boundary
8
+ * validates both inbound params and outbound results with the same schema.
14
9
  */
15
10
  export function defineRpc(def) {
16
11
  return {
17
- name: def.name,
12
+ name: jsonRpcMethod(def.name),
18
13
  paramsSchema: def.params,
19
14
  resultSchema: def.result,
20
15
  validateParams: ajv.compile(def.params),
16
+ validateResult: ajv.compile(def.result),
21
17
  // Phantom — never read at runtime. Typed as `Static<P>` so
22
18
  // `typeof def.Params` at the type level yields the params type.
23
19
  Params: null,
24
20
  Result: null,
25
21
  };
26
22
  }
23
+ export class RpcParamsDecodeError extends Data.TaggedError("RpcParamsDecodeError") {
24
+ }
25
+ export class RpcResultDecodeError extends Data.TaggedError("RpcResultDecodeError") {
26
+ }
27
+ export function decodeRpcParams(definition, data) {
28
+ return definition.validateParams(data)
29
+ ? Effect.succeed(data)
30
+ : Effect.fail(new RpcParamsDecodeError({ definition, data }));
31
+ }
32
+ export function decodeRpcResult(definition, data) {
33
+ return definition.validateResult(data)
34
+ ? Effect.succeed(data)
35
+ : Effect.fail(new RpcResultDecodeError({ definition, data }));
36
+ }
27
37
  //# sourceMappingURL=rpc.js.map
package/dist/rpc.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"rpc.js","sourceRoot":"","sources":["../src/rpc.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6B,MAAM,mBAAmB,CAAC;AAC9D,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,UAAU,MAAM,aAAa,CAAC;AAQrC;;;;GAIG;AACH,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AA4BnE;;;;GAIG;AACH,MAAM,UAAU,SAAS,CAIvB,GAAyC;IACzC,OAAO;QACL,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,YAAY,EAAE,GAAG,CAAC,MAAM;QACxB,YAAY,EAAE,GAAG,CAAC,MAAM;QACxB,cAAc,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC;QACvC,2DAA2D;QAC3D,gEAAgE;QAChE,MAAM,EAAE,IAAK;QACb,MAAM,EAAE,IAAK;KACd,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"rpc.js","sourceRoot":"","sources":["../src/rpc.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6B,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAsB,MAAM,sBAAsB,CAAC;AAmCzE;;;;GAIG;AACH,MAAM,UAAU,SAAS,CAIvB,GAAyC;IACzC,OAAO;QACL,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC;QAC7B,YAAY,EAAE,GAAG,CAAC,MAAM;QACxB,YAAY,EAAE,GAAG,CAAC,MAAM;QACxB,cAAc,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC;QACvC,cAAc,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC;QACvC,2DAA2D;QAC3D,gEAAgE;QAChE,MAAM,EAAE,IAAK;QACb,MAAM,EAAE,IAAK;KACd,CAAC;AACJ,CAAC;AAUD,MAAM,OAAO,oBAAqB,SAAQ,IAAI,CAAC,WAAW,CACxD,sBAAsB,CAItB;CAAG;AAEL,MAAM,OAAO,oBAAqB,SAAQ,IAAI,CAAC,WAAW,CACxD,sBAAsB,CAItB;CAAG;AAQL,MAAM,UAAU,eAAe,CAK7B,UAAqC,EACrC,IAAa;IAEb,OAAO,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC;QACpC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;QACtB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,oBAAoB,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAClE,CAAC;AAQD,MAAM,UAAU,eAAe,CAK7B,UAAqC,EACrC,IAAa;IAEb,OAAO,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC;QACpC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;QACtB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,oBAAoB,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAClE,CAAC"}
@@ -1,12 +1,11 @@
1
1
  import { type Static } from "@sinclair/typebox";
2
- export declare const AppSessionId: import("@sinclair/typebox").TString;
2
+ export declare const AppSessionId: import("@sinclair/typebox").TString & {
3
+ static: import("../brands.js").BrandedString<"AppSessionId">;
4
+ };
5
+ export declare const appSessionId: (value: string) => Static<typeof AppSessionId>;
3
6
  export declare const AppParticipantStatusEnum: import("@sinclair/typebox").TString & {
4
7
  static: "pending" | "admitted" | "rejected";
5
8
  };
6
- export declare const AppPermissionSchema: import("@sinclair/typebox").TObject<{
7
- resource: import("@sinclair/typebox").TString;
8
- access: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
9
- }>;
10
9
  export declare const AppManifestConversationSchema: import("@sinclair/typebox").TObject<{
11
10
  key: import("@sinclair/typebox").TString;
12
11
  name: import("@sinclair/typebox").TString;
@@ -18,20 +17,6 @@ export declare const AppManifestSchema: import("@sinclair/typebox").TObject<{
18
17
  appId: import("@sinclair/typebox").TString;
19
18
  name: import("@sinclair/typebox").TString;
20
19
  description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
21
- permissions: import("@sinclair/typebox").TObject<{
22
- required: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
23
- resource: import("@sinclair/typebox").TString;
24
- access: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
25
- }>>;
26
- optional: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
27
- resource: import("@sinclair/typebox").TString;
28
- access: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
29
- }>>;
30
- }>;
31
- skillUrl: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
32
- skillMinVersion: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
33
- challengeTimeoutMs: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
34
- permissionTimeoutMs: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
35
20
  limits: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
36
21
  maxParticipants: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
37
22
  }>>;
@@ -49,9 +34,6 @@ export declare const AppManifestSchema: import("@sinclair/typebox").TObject<{
49
34
  before_dispatch: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
50
35
  timeout_ms: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
51
36
  }>>;
52
- on_join: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
53
- timeout_ms: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
54
- }>>;
55
37
  on_close: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
56
38
  timeout_ms: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
57
39
  }>>;
@@ -61,17 +43,22 @@ export declare const AppManifestSchema: import("@sinclair/typebox").TObject<{
61
43
  }>>;
62
44
  }>;
63
45
  export declare const AppSessionSchema: import("@sinclair/typebox").TObject<{
64
- id: import("@sinclair/typebox").TString;
46
+ id: import("@sinclair/typebox").TString & {
47
+ static: import("../brands.js").BrandedString<"AppSessionId">;
48
+ };
65
49
  appId: import("@sinclair/typebox").TString;
66
- initiatorAgentId: import("@sinclair/typebox").TString;
50
+ initiatorAgentId: import("@sinclair/typebox").TString & {
51
+ static: import("../brands.js").BrandedString<"AgentId">;
52
+ };
67
53
  status: import("@sinclair/typebox").TString & {
68
54
  static: "active" | "waiting" | "failed" | "closed";
69
55
  };
70
- conversations: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString>;
56
+ conversations: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString & {
57
+ static: import("../brands.js").BrandedString<"ConversationId">;
58
+ }>;
71
59
  createdAt: import("@sinclair/typebox").TString;
72
60
  closedAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
73
61
  }>;
74
- export type AppPermission = Static<typeof AppPermissionSchema>;
75
62
  export type AppManifest = Static<typeof AppManifestSchema>;
76
63
  export type AppManifestConversation = Static<typeof AppManifestConversationSchema>;
77
64
  export type AppSession = Static<typeof AppSessionSchema>;
@@ -1 +1 @@
1
- {"version":3,"file":"apps.d.ts","sourceRoot":"","sources":["../../src/schema/apps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAItD,eAAO,MAAM,YAAY,qCAA4B,CAAC;AAEtD,eAAO,MAAM,wBAAwB;;CAInC,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;EAM/B,CAAC;AAEF,eAAO,MAAM,6BAA6B;;;;;;EAOzC,CAAC;AAaF,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuC7B,CAAC;AAEF,eAAO,MAAM,gBAAgB;;;;;;;;;;EAW5B,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAC/D,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC3D,MAAM,MAAM,uBAAuB,GAAG,MAAM,CAC1C,OAAO,6BAA6B,CACrC,CAAC;AACF,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,gBAAgB,CAAC,CAAC;AACzD,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC,OAAO,wBAAwB,CAAC,CAAC"}
1
+ {"version":3,"file":"apps.d.ts","sourceRoot":"","sources":["../../src/schema/apps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAKtD,eAAO,MAAM,YAAY;;CAA4B,CAAC;AACtD,eAAO,MAAM,YAAY,GAAI,OAAO,MAAM,KAAG,MAAM,CAAC,OAAO,YAAY,CACpC,CAAC;AAEpC,eAAO,MAAM,wBAAwB;;CAInC,CAAC;AAEH,eAAO,MAAM,6BAA6B;;;;;;EAOzC,CAAC;AAaF,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2B7B,CAAC;AAEF,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;EAW5B,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC3D,MAAM,MAAM,uBAAuB,GAAG,MAAM,CAC1C,OAAO,6BAA6B,CACrC,CAAC;AACF,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,gBAAgB,CAAC,CAAC;AACzD,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC,OAAO,wBAAwB,CAAC,CAAC"}
@@ -1,16 +1,14 @@
1
1
  import { Type } from "@sinclair/typebox";
2
+ import { Value } from "@sinclair/typebox/value";
2
3
  import { stringEnum, brandedId, DateTimeString } from "../helpers.js";
3
4
  import { AgentId, ConversationId } from "./primitives.js";
4
5
  export const AppSessionId = brandedId("AppSessionId");
6
+ export const appSessionId = (value) => Value.Decode(AppSessionId, value);
5
7
  export const AppParticipantStatusEnum = stringEnum([
6
8
  "pending",
7
9
  "admitted",
8
10
  "rejected",
9
11
  ]);
10
- export const AppPermissionSchema = Type.Object({
11
- resource: Type.String(),
12
- access: Type.Array(Type.String()),
13
- }, { additionalProperties: false });
14
12
  export const AppManifestConversationSchema = Type.Object({
15
13
  key: Type.String(),
16
14
  name: Type.String(),
@@ -27,14 +25,6 @@ export const AppManifestSchema = Type.Object({
27
25
  appId: Type.String(),
28
26
  name: Type.String(),
29
27
  description: Type.Optional(Type.String()),
30
- permissions: Type.Object({
31
- required: Type.Array(AppPermissionSchema),
32
- optional: Type.Array(AppPermissionSchema),
33
- }, { additionalProperties: false }),
34
- skillUrl: Type.Optional(Type.String()),
35
- skillMinVersion: Type.Optional(Type.String()),
36
- challengeTimeoutMs: Type.Optional(Type.Integer({ default: 30000 })),
37
- permissionTimeoutMs: Type.Optional(Type.Integer({ default: 120000 })),
38
28
  limits: Type.Optional(Type.Object({
39
29
  maxParticipants: Type.Optional(Type.Integer({ default: 50 })),
40
30
  }, { additionalProperties: false })),
@@ -42,7 +32,6 @@ export const AppManifestSchema = Type.Object({
42
32
  hooks: Type.Optional(Type.Object({
43
33
  before_message_delivery: Type.Optional(HookEntrySchema),
44
34
  before_dispatch: Type.Optional(HookEntrySchema),
45
- on_join: Type.Optional(HookEntrySchema),
46
35
  on_close: Type.Optional(HookEntrySchema),
47
36
  on_session_active: Type.Optional(HookEntrySchema),
48
37
  }, { additionalProperties: false })),
@@ -1 +1 @@
1
- {"version":3,"file":"apps.js","sourceRoot":"","sources":["../../src/schema/apps.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"apps.js","sourceRoot":"","sources":["../../src/schema/apps.ts"],"names":[],"mappings":"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"}
@@ -4,8 +4,12 @@ export declare const ContactSourceEnum: import("@sinclair/typebox").TString & {
4
4
  };
5
5
  export declare const RelationshipType: import("@sinclair/typebox").TString;
6
6
  export declare const ContactSchema: import("@sinclair/typebox").TObject<{
7
- id: import("@sinclair/typebox").TString;
8
- contactUserId: import("@sinclair/typebox").TString;
7
+ id: import("@sinclair/typebox").TString & {
8
+ static: import("../brands.js").BrandedString<"ContactId">;
9
+ };
10
+ contactUserId: import("@sinclair/typebox").TString & {
11
+ static: import("../brands.js").BrandedString<"UserId">;
12
+ };
9
13
  source: import("@sinclair/typebox").TString & {
10
14
  static: "email" | "phone" | "manual";
11
15
  };
@@ -1 +1 @@
1
- {"version":3,"file":"contacts.d.ts","sourceRoot":"","sources":["../../src/schema/contacts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAItD,eAAO,MAAM,iBAAiB;;CAA2C,CAAC;AAE1E,eAAO,MAAM,gBAAgB,qCAAgB,CAAC;AAE9C,eAAO,MAAM,aAAa;;;;;;;;;;EAkBzB,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,aAAa,CAAC,CAAC"}
1
+ {"version":3,"file":"contacts.d.ts","sourceRoot":"","sources":["../../src/schema/contacts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAItD,eAAO,MAAM,iBAAiB;;CAA2C,CAAC;AAE1E,eAAO,MAAM,gBAAgB,qCAAgB,CAAC;AAE9C,eAAO,MAAM,aAAa;;;;;;;;;;;;;;EAkBzB,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,aAAa,CAAC,CAAC"}
@@ -9,12 +9,16 @@ export declare const ConversationMetadataSchema: import("@sinclair/typebox").TOb
9
9
  tags: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString>>>;
10
10
  }>;
11
11
  export declare const ConversationSchema: import("@sinclair/typebox").TObject<{
12
- id: import("@sinclair/typebox").TString;
12
+ id: import("@sinclair/typebox").TString & {
13
+ static: import("../brands.js").BrandedString<"ConversationId">;
14
+ };
13
15
  type: import("@sinclair/typebox").TString & {
14
16
  static: "dm" | "group";
15
17
  };
16
18
  name: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
17
- createdBy: import("@sinclair/typebox").TString;
19
+ createdBy: import("@sinclair/typebox").TString & {
20
+ static: import("../brands.js").BrandedString<"AgentId">;
21
+ };
18
22
  metadata: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
19
23
  tags: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString>>>;
20
24
  }>>;
@@ -23,7 +27,9 @@ export declare const ConversationSchema: import("@sinclair/typebox").TObject<{
23
27
  updatedAt: import("@sinclair/typebox").TString;
24
28
  }>;
25
29
  export declare const ConversationParticipantSchema: import("@sinclair/typebox").TObject<{
26
- conversationId: import("@sinclair/typebox").TString;
30
+ conversationId: import("@sinclair/typebox").TString & {
31
+ static: import("../brands.js").BrandedString<"ConversationId">;
32
+ };
27
33
  participant: import("@sinclair/typebox").TObject<{
28
34
  type: import("@sinclair/typebox").TString & {
29
35
  static: "agent";
@@ -34,13 +40,17 @@ export declare const ConversationParticipantSchema: import("@sinclair/typebox").
34
40
  static: "owner" | "admin" | "member";
35
41
  };
36
42
  joinedAt: import("@sinclair/typebox").TString;
37
- lastReadMessageId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
43
+ lastReadMessageId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
44
+ static: import("../brands.js").BrandedString<"MessageId">;
45
+ }>;
38
46
  mutedUntil: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
39
47
  agentName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
40
48
  agentDisplayName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
41
49
  }>;
42
50
  export declare const ConversationSummarySchema: import("@sinclair/typebox").TObject<{
43
- id: import("@sinclair/typebox").TString;
51
+ id: import("@sinclair/typebox").TString & {
52
+ static: import("../brands.js").BrandedString<"ConversationId">;
53
+ };
44
54
  type: import("@sinclair/typebox").TString & {
45
55
  static: "dm" | "group";
46
56
  };
@@ -1 +1 @@
1
- {"version":3,"file":"conversations.d.ts","sourceRoot":"","sources":["../../src/schema/conversations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAItD,eAAO,MAAM,oBAAoB;;CAA8B,CAAC;AAChE,eAAO,MAAM,mBAAmB;;CAA2C,CAAC;AAE5E,eAAO,MAAM,0BAA0B;;EAKtC,CAAC;AAEF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;EAY9B,CAAC;AAEF,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;EAkBzC,CAAC;AAEF,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;EAsBrC,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAC7D,MAAM,MAAM,uBAAuB,GAAG,MAAM,CAC1C,OAAO,6BAA6B,CACrC,CAAC;AACF,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC,OAAO,yBAAyB,CAAC,CAAC"}
1
+ {"version":3,"file":"conversations.d.ts","sourceRoot":"","sources":["../../src/schema/conversations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAItD,eAAO,MAAM,oBAAoB;;CAA8B,CAAC;AAChE,eAAO,MAAM,mBAAmB;;CAA2C,CAAC;AAE5E,eAAO,MAAM,0BAA0B;;EAKtC,CAAC;AAEF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;EAY9B,CAAC;AAEF,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;EAkBzC,CAAC;AAEF,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;EAsBrC,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAC7D,MAAM,MAAM,uBAAuB,GAAG,MAAM,CAC1C,OAAO,6BAA6B,CACrC,CAAC;AACF,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC,OAAO,yBAAyB,CAAC,CAAC"}
@@ -3,9 +3,15 @@ export declare const DeliveryStatusEnum: import("@sinclair/typebox").TString & {
3
3
  static: "sent" | "delivered" | "read";
4
4
  };
5
5
  export declare const DeliveryEntrySchema: import("@sinclair/typebox").TObject<{
6
- messageId: import("@sinclair/typebox").TString;
7
- conversationId: import("@sinclair/typebox").TString;
8
- agentId: import("@sinclair/typebox").TString;
6
+ messageId: import("@sinclair/typebox").TString & {
7
+ static: import("../brands.js").BrandedString<"MessageId">;
8
+ };
9
+ conversationId: import("@sinclair/typebox").TString & {
10
+ static: import("../brands.js").BrandedString<"ConversationId">;
11
+ };
12
+ agentId: import("@sinclair/typebox").TString & {
13
+ static: import("../brands.js").BrandedString<"AgentId">;
14
+ };
9
15
  status: import("@sinclair/typebox").TString & {
10
16
  static: "sent" | "delivered" | "read";
11
17
  };
@@ -1 +1 @@
1
- {"version":3,"file":"delivery.d.ts","sourceRoot":"","sources":["../../src/schema/delivery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAItD,eAAO,MAAM,kBAAkB;;CAA4C,CAAC;AAE5E,eAAO,MAAM,mBAAmB;;;;;;;;;EAU/B,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,mBAAmB,CAAC,CAAC"}
1
+ {"version":3,"file":"delivery.d.ts","sourceRoot":"","sources":["../../src/schema/delivery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAItD,eAAO,MAAM,kBAAkB;;CAA4C,CAAC;AAE5E,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;EAU/B,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,mBAAmB,CAAC,CAAC"}
@@ -16,10 +16,6 @@ export declare const ErrorCodes: {
16
16
  readonly ProtocolMismatch: -32008;
17
17
  readonly AppNotFound: -32010;
18
18
  readonly AgentNotFound: -32011;
19
- readonly SkillTimeout: -32012;
20
- readonly SkillMismatch: -32013;
21
- readonly PermissionTimeout: -32014;
22
- readonly PermissionDenied: -32015;
23
19
  readonly IdentityRejected: -32016;
24
20
  readonly MaxParticipants: -32017;
25
21
  readonly AgentNoOwner: -32018;
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/schema/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAEtD,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+Bb,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,OAAO,UAAU,CAAC,CAAC;AAErE,eAAO,MAAM,cAAc;;;;EAO1B,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,cAAc,CAAC,CAAC"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/schema/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAEtD,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;CA2Bb,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,OAAO,UAAU,CAAC,CAAC;AAErE,eAAO,MAAM,cAAc;;;;EAO1B,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,cAAc,CAAC,CAAC"}
@@ -19,10 +19,6 @@ export const ErrorCodes = {
19
19
  // App codes (-32010 to -32029)
20
20
  AppNotFound: -32010,
21
21
  AgentNotFound: -32011,
22
- SkillTimeout: -32012,
23
- SkillMismatch: -32013,
24
- PermissionTimeout: -32014,
25
- PermissionDenied: -32015,
26
22
  IdentityRejected: -32016,
27
23
  MaxParticipants: -32017,
28
24
  AgentNoOwner: -32018,
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/schema/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAe,MAAM,mBAAmB,CAAC;AAEtD,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,6CAA6C;IAC7C,UAAU,EAAE,CAAC,KAAK;IAClB,cAAc,EAAE,CAAC,KAAK;IACtB,cAAc,EAAE,CAAC,KAAK;IACtB,aAAa,EAAE,CAAC,KAAK;IACrB,aAAa,EAAE,CAAC,KAAK;IACrB,uCAAuC;IACvC,YAAY,EAAE,CAAC,KAAK;IACpB,SAAS,EAAE,CAAC,KAAK;IACjB,QAAQ,EAAE,CAAC,KAAK;IAChB,QAAQ,EAAE,CAAC,KAAK;IAChB,WAAW,EAAE,CAAC,KAAK;IACnB,aAAa,EAAE,CAAC,KAAK;IACrB,OAAO,EAAE,CAAC,KAAK;IACf,gBAAgB,EAAE,CAAC,KAAK;IACxB,gBAAgB,EAAE,CAAC,KAAK;IACxB,+BAA+B;IAC/B,WAAW,EAAE,CAAC,KAAK;IACnB,aAAa,EAAE,CAAC,KAAK;IACrB,YAAY,EAAE,CAAC,KAAK;IACpB,aAAa,EAAE,CAAC,KAAK;IACrB,iBAAiB,EAAE,CAAC,KAAK;IACzB,gBAAgB,EAAE,CAAC,KAAK;IACxB,gBAAgB,EAAE,CAAC,KAAK;IACxB,eAAe,EAAE,CAAC,KAAK;IACvB,YAAY,EAAE,CAAC,KAAK;IACpB,WAAW,EAAE,CAAC,KAAK;IACnB,aAAa,EAAE,CAAC,KAAK;IACrB,eAAe,EAAE,CAAC,KAAK;IACvB,oBAAoB,EAAE,CAAC,KAAK;CACpB,CAAC;AAIX,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CACvC;IACE,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE;IACpB,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE;IACtB,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;CACpC,EACD,EAAE,oBAAoB,EAAE,KAAK,EAAE,CAChC,CAAC"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/schema/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAe,MAAM,mBAAmB,CAAC;AAEtD,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,6CAA6C;IAC7C,UAAU,EAAE,CAAC,KAAK;IAClB,cAAc,EAAE,CAAC,KAAK;IACtB,cAAc,EAAE,CAAC,KAAK;IACtB,aAAa,EAAE,CAAC,KAAK;IACrB,aAAa,EAAE,CAAC,KAAK;IACrB,uCAAuC;IACvC,YAAY,EAAE,CAAC,KAAK;IACpB,SAAS,EAAE,CAAC,KAAK;IACjB,QAAQ,EAAE,CAAC,KAAK;IAChB,QAAQ,EAAE,CAAC,KAAK;IAChB,WAAW,EAAE,CAAC,KAAK;IACnB,aAAa,EAAE,CAAC,KAAK;IACrB,OAAO,EAAE,CAAC,KAAK;IACf,gBAAgB,EAAE,CAAC,KAAK;IACxB,gBAAgB,EAAE,CAAC,KAAK;IACxB,+BAA+B;IAC/B,WAAW,EAAE,CAAC,KAAK;IACnB,aAAa,EAAE,CAAC,KAAK;IACrB,gBAAgB,EAAE,CAAC,KAAK;IACxB,eAAe,EAAE,CAAC,KAAK;IACvB,YAAY,EAAE,CAAC,KAAK;IACpB,WAAW,EAAE,CAAC,KAAK;IACnB,aAAa,EAAE,CAAC,KAAK;IACrB,eAAe,EAAE,CAAC,KAAK;IACvB,oBAAoB,EAAE,CAAC,KAAK;CACpB,CAAC;AAIX,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CACvC;IACE,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE;IACpB,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE;IACtB,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;CACpC,EACD,EAAE,oBAAoB,EAAE,KAAK,EAAE,CAChC,CAAC"}