@moltzap/protocol 2026.503.3 → 2026.504.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (253) 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 +1238 -278
  30. package/dist/rpc-registry.d.ts.map +1 -1
  31. package/dist/rpc-registry.js +11 -22
  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 -23
  38. package/dist/schema/apps.d.ts.map +1 -1
  39. package/dist/schema/apps.js +2 -12
  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 +138 -85
  74. package/dist/schema/methods/apps.d.ts.map +1 -1
  75. package/dist/schema/methods/apps.js +4 -45
  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 +791 -0
  90. package/dist/schema/notifications.d.ts.map +1 -0
  91. package/dist/schema/notifications.js +173 -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 +34 -990
  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 +6 -15
  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 +9 -7
  110. package/dist/testing/arbitraries/frames.js.map +1 -1
  111. package/dist/testing/arbitraries/from-typebox.d.ts.map +1 -1
  112. package/dist/testing/arbitraries/from-typebox.js +19 -10
  113. package/dist/testing/arbitraries/from-typebox.js.map +1 -1
  114. package/dist/testing/arbitraries/index.d.ts +1 -1
  115. package/dist/testing/arbitraries/index.d.ts.map +1 -1
  116. package/dist/testing/arbitraries/index.js +1 -1
  117. package/dist/testing/arbitraries/index.js.map +1 -1
  118. package/dist/testing/arbitraries/rpc.d.ts +3 -2
  119. package/dist/testing/arbitraries/rpc.d.ts.map +1 -1
  120. package/dist/testing/arbitraries/rpc.js +13 -3
  121. package/dist/testing/arbitraries/rpc.js.map +1 -1
  122. package/dist/testing/captures.d.ts.map +1 -1
  123. package/dist/testing/captures.js +4 -3
  124. package/dist/testing/captures.js.map +1 -1
  125. package/dist/testing/codec.d.ts +13 -11
  126. package/dist/testing/codec.d.ts.map +1 -1
  127. package/dist/testing/codec.js +43 -50
  128. package/dist/testing/codec.js.map +1 -1
  129. package/dist/testing/conformance/__divergence_proofs__/executable-proof-helpers.d.ts.map +1 -1
  130. package/dist/testing/conformance/__divergence_proofs__/executable-proof-helpers.js +15 -5
  131. package/dist/testing/conformance/__divergence_proofs__/executable-proof-helpers.js.map +1 -1
  132. package/dist/testing/conformance/_helpers.d.ts +12 -7
  133. package/dist/testing/conformance/_helpers.d.ts.map +1 -1
  134. package/dist/testing/conformance/_helpers.js +30 -7
  135. package/dist/testing/conformance/_helpers.js.map +1 -1
  136. package/dist/testing/conformance/adversity.d.ts.map +1 -1
  137. package/dist/testing/conformance/adversity.js +83 -90
  138. package/dist/testing/conformance/adversity.js.map +1 -1
  139. package/dist/testing/conformance/boundary.d.ts +1 -1
  140. package/dist/testing/conformance/boundary.d.ts.map +1 -1
  141. package/dist/testing/conformance/boundary.js +55 -50
  142. package/dist/testing/conformance/boundary.js.map +1 -1
  143. package/dist/testing/conformance/client/_fixtures.d.ts +7 -5
  144. package/dist/testing/conformance/client/_fixtures.d.ts.map +1 -1
  145. package/dist/testing/conformance/client/_fixtures.js +17 -8
  146. package/dist/testing/conformance/client/_fixtures.js.map +1 -1
  147. package/dist/testing/conformance/client/adversity.d.ts.map +1 -1
  148. package/dist/testing/conformance/client/adversity.js +28 -22
  149. package/dist/testing/conformance/client/adversity.js.map +1 -1
  150. package/dist/testing/conformance/client/boundary.d.ts +2 -2
  151. package/dist/testing/conformance/client/boundary.d.ts.map +1 -1
  152. package/dist/testing/conformance/client/boundary.js +19 -16
  153. package/dist/testing/conformance/client/boundary.js.map +1 -1
  154. package/dist/testing/conformance/client/delivery.d.ts +5 -5
  155. package/dist/testing/conformance/client/delivery.d.ts.map +1 -1
  156. package/dist/testing/conformance/client/delivery.js +77 -73
  157. package/dist/testing/conformance/client/delivery.js.map +1 -1
  158. package/dist/testing/conformance/client/index.d.ts +2 -2
  159. package/dist/testing/conformance/client/index.d.ts.map +1 -1
  160. package/dist/testing/conformance/client/index.js +1 -1
  161. package/dist/testing/conformance/client/index.js.map +1 -1
  162. package/dist/testing/conformance/client/rpc-semantics.d.ts.map +1 -1
  163. package/dist/testing/conformance/client/rpc-semantics.js +31 -37
  164. package/dist/testing/conformance/client/rpc-semantics.js.map +1 -1
  165. package/dist/testing/conformance/client/runner.d.ts +38 -32
  166. package/dist/testing/conformance/client/runner.d.ts.map +1 -1
  167. package/dist/testing/conformance/client/runner.js +36 -45
  168. package/dist/testing/conformance/client/runner.js.map +1 -1
  169. package/dist/testing/conformance/client/schema-conformance.d.ts +8 -8
  170. package/dist/testing/conformance/client/schema-conformance.d.ts.map +1 -1
  171. package/dist/testing/conformance/client/schema-conformance.js +37 -35
  172. package/dist/testing/conformance/client/schema-conformance.js.map +1 -1
  173. package/dist/testing/conformance/client/suite.d.ts.map +1 -1
  174. package/dist/testing/conformance/client/suite.js +4 -3
  175. package/dist/testing/conformance/client/suite.js.map +1 -1
  176. package/dist/testing/conformance/delivery.d.ts.map +1 -1
  177. package/dist/testing/conformance/delivery.js +127 -140
  178. package/dist/testing/conformance/delivery.js.map +1 -1
  179. package/dist/testing/conformance/dispatcher-concurrency.js +12 -12
  180. package/dist/testing/conformance/dispatcher-concurrency.js.map +1 -1
  181. package/dist/testing/conformance/env.d.ts +9 -0
  182. package/dist/testing/conformance/env.d.ts.map +1 -1
  183. package/dist/testing/conformance/env.js +16 -3
  184. package/dist/testing/conformance/env.js.map +1 -1
  185. package/dist/testing/conformance/presence.d.ts.map +1 -1
  186. package/dist/testing/conformance/presence.js +35 -24
  187. package/dist/testing/conformance/presence.js.map +1 -1
  188. package/dist/testing/conformance/registry.d.ts +1 -1
  189. package/dist/testing/conformance/registry.d.ts.map +1 -1
  190. package/dist/testing/conformance/registry.js +1 -1
  191. package/dist/testing/conformance/registry.js.map +1 -1
  192. package/dist/testing/conformance/rpc-semantics.d.ts +12 -12
  193. package/dist/testing/conformance/rpc-semantics.d.ts.map +1 -1
  194. package/dist/testing/conformance/rpc-semantics.js +131 -90
  195. package/dist/testing/conformance/rpc-semantics.js.map +1 -1
  196. package/dist/testing/conformance/runner.d.ts +2 -2
  197. package/dist/testing/conformance/runner.d.ts.map +1 -1
  198. package/dist/testing/conformance/runner.js +5 -10
  199. package/dist/testing/conformance/runner.js.map +1 -1
  200. package/dist/testing/conformance/schema-conformance.d.ts +3 -40
  201. package/dist/testing/conformance/schema-conformance.d.ts.map +1 -1
  202. package/dist/testing/conformance/schema-conformance.js +75 -235
  203. package/dist/testing/conformance/schema-conformance.js.map +1 -1
  204. package/dist/testing/conformance/suite.d.ts +1 -1
  205. package/dist/testing/conformance/suite.d.ts.map +1 -1
  206. package/dist/testing/conformance/suite.js +17 -18
  207. package/dist/testing/conformance/suite.js.map +1 -1
  208. package/dist/testing/index.d.ts +1 -1
  209. package/dist/testing/index.d.ts.map +1 -1
  210. package/dist/testing/models/dispatch.d.ts +5 -5
  211. package/dist/testing/models/dispatch.d.ts.map +1 -1
  212. package/dist/testing/models/dispatch.js +50 -59
  213. package/dist/testing/models/dispatch.js.map +1 -1
  214. package/dist/testing/models/state.d.ts +5 -5
  215. package/dist/testing/models/state.d.ts.map +1 -1
  216. package/dist/testing/models/state.js +14 -1
  217. package/dist/testing/models/state.js.map +1 -1
  218. package/dist/testing/test-client.d.ts +51 -40
  219. package/dist/testing/test-client.d.ts.map +1 -1
  220. package/dist/testing/test-client.js +154 -122
  221. package/dist/testing/test-client.js.map +1 -1
  222. package/dist/testing/test-server.d.ts +5 -5
  223. package/dist/testing/test-server.d.ts.map +1 -1
  224. package/dist/testing/test-server.js +11 -15
  225. package/dist/testing/test-server.js.map +1 -1
  226. package/dist/testing/toxics/client.d.ts.map +1 -1
  227. package/dist/testing/toxics/client.js +9 -3
  228. package/dist/testing/toxics/client.js.map +1 -1
  229. package/dist/testing/toxics/profile.d.ts.map +1 -1
  230. package/dist/testing/toxics/profile.js +4 -1
  231. package/dist/testing/toxics/profile.js.map +1 -1
  232. package/dist/types.d.ts +3 -5
  233. package/dist/types.d.ts.map +1 -1
  234. package/dist/types.js.map +1 -1
  235. package/dist/validators.d.ts +366 -101
  236. package/dist/validators.d.ts.map +1 -1
  237. package/dist/validators.js +23 -30
  238. package/dist/validators.js.map +1 -1
  239. package/dist/version.d.ts +1 -1
  240. package/dist/version.js +1 -1
  241. package/package.json +2 -2
  242. package/dist/schema/events.d.ts +0 -213
  243. package/dist/schema/events.d.ts.map +0 -1
  244. package/dist/schema/events.js +0 -122
  245. package/dist/schema/events.js.map +0 -1
  246. package/dist/schema/methods/push.d.ts +0 -21
  247. package/dist/schema/methods/push.d.ts.map +0 -1
  248. package/dist/schema/methods/push.js +0 -28
  249. package/dist/schema/methods/push.js.map +0 -1
  250. package/dist/schema/surfaces.d.ts +0 -55
  251. package/dist/schema/surfaces.d.ts.map +0 -1
  252. package/dist/schema/surfaces.js +0 -55
  253. package/dist/schema/surfaces.js.map +0 -1
@@ -6,7 +6,7 @@ import type { ConformanceRunContext } from "./runner.js";
6
6
  */
7
7
  export declare function registerRequestWellFormedness(ctx: ConformanceRunContext): void;
8
8
  /**
9
- * Valid event frame round-trips the codec cleanly.
9
+ * Valid notification frame round-trips the codec cleanly.
10
10
  *
11
11
  * `@pure-codec` — does NOT drive a real server or real client. Spec A2's
12
12
  * "accepted by a real client" assertion requires a TestServer + real
@@ -14,10 +14,10 @@ export declare function registerRequestWellFormedness(ctx: ConformanceRunContext
14
14
  * `packages/client` or `moltzap-arena`) and is tracked under #186.
15
15
  *
16
16
  * Tightened per architect §4.4: predicate demands `Right` AND schema
17
- * check of the specific event variant — the previous `Right || Left`
17
+ * check of the specific notification variant — the previous `Right || Left`
18
18
  * shape was a tautology over the union.
19
19
  */
20
- export declare function registerEventWellFormedness(ctx: ConformanceRunContext): void;
20
+ export declare function registerNotificationWellFormedness(ctx: ConformanceRunContext): void;
21
21
  /** parse(serialize(frame)) ≡ frame — pure codec round-trip. */
22
22
  export declare function registerRoundTripIdentity(ctx: ConformanceRunContext): void;
23
23
  /**
@@ -26,42 +26,5 @@ export declare function registerRoundTripIdentity(ctx: ConformanceRunContext): v
26
26
  * asserts the observable outcome.
27
27
  */
28
28
  export declare function registerMalformedFrameHandling(ctx: ConformanceRunContext): void;
29
- /**
30
- * S2C request frames round-trip through the codec. Architect plan §3.1 +
31
- * §1.7: `direction: "s2c"` is part of the wire identity — encode →
32
- * decodeFrame → re-encode must be byte-identical for every well-formed
33
- * server-initiated request.
34
- *
35
- * `@pure-codec` — does NOT drive a real server. Asserts the codec preserves
36
- * `direction: "s2c"` so c2s and s2c request-id pools can coexist on the
37
- * wire without confusion.
38
- */
39
- export declare function registerS2cRequestRoundTripIdentity(ctx: ConformanceRunContext): void;
40
- /**
41
- * S2C response frames validate against `ResponseFrameSchema`. Architect plan
42
- * §3.1: c2s and s2c responses share one schema discriminated by `direction`.
43
- * Property asserts `Value.Check` accepts every drawn s2c response — the
44
- * positive shape every consumer's decoder relies on.
45
- */
46
- export declare function registerS2cResponseValidation(ctx: ConformanceRunContext): void;
47
- /**
48
- * Malformed s2c request bytes do not crash the codec — `decodeFrame`
49
- * returns `FrameSchemaError`, never throws. `@pure-codec` — exercises
50
- * the codec only. Wire-level liveness with a real server is covered by
51
- * `malformed-frame-handling` (above).
52
- */
53
- export declare function registerS2cMalformedRequestHandling(ctx: ConformanceRunContext): void;
54
- /**
55
- * Dual-direction request-id collision — c2s and s2c request frames
56
- * carrying the same `id` decode to distinct frames whose `direction`
57
- * field discriminates the routing pool. Architect plan §3.1: pending
58
- * maps key on `(side, id)`, not `id` alone — a c2s request with id
59
- * `tc-1` and an s2c request with id `tc-1` must NOT collide.
60
- *
61
- * `@pure-codec` — pure-codec proof of the contract every transport
62
- * relies on. Wire-level routing is enforced by sender/receiver pending
63
- * maps; this property anchors the codec piece.
64
- */
65
- export declare function registerDualDirectionIdCollision(ctx: ConformanceRunContext): void;
66
29
  export declare function registerRpcMapCoverage(ctx: ConformanceRunContext): void;
67
30
  //# sourceMappingURL=schema-conformance.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema-conformance.d.ts","sourceRoot":"","sources":["../../../src/testing/conformance/schema-conformance.ts"],"names":[],"mappings":"AAoCA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAWzD;;;;GAIG;AACH,wBAAgB,6BAA6B,CAC3C,GAAG,EAAE,qBAAqB,GACzB,IAAI,CA+EN;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,qBAAqB,GAAG,IAAI,CAyB5E;AAED,+DAA+D;AAC/D,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,qBAAqB,GAAG,IAAI,CA6B1E;AAED;;;;GAIG;AACH,wBAAgB,8BAA8B,CAC5C,GAAG,EAAE,qBAAqB,GACzB,IAAI,CA2DN;AAgBD;;;;;;;;;GASG;AACH,wBAAgB,mCAAmC,CACjD,GAAG,EAAE,qBAAqB,GACzB,IAAI,CA4BN;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAC3C,GAAG,EAAE,qBAAqB,GACzB,IAAI,CAkBN;AAED;;;;;GAKG;AACH,wBAAgB,mCAAmC,CACjD,GAAG,EAAE,qBAAqB,GACzB,IAAI,CAgCN;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,gCAAgC,CAC9C,GAAG,EAAE,qBAAqB,GACzB,IAAI,CAuEN;AA0FD,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,qBAAqB,GAAG,IAAI,CAqEvE"}
1
+ {"version":3,"file":"schema-conformance.d.ts","sourceRoot":"","sources":["../../../src/testing/conformance/schema-conformance.ts"],"names":[],"mappings":"AAuCA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAkBzD;;;;GAIG;AACH,wBAAgB,6BAA6B,CAC3C,GAAG,EAAE,qBAAqB,GACzB,IAAI,CA4FN;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,kCAAkC,CAChD,GAAG,EAAE,qBAAqB,GACzB,IAAI,CA6BN;AAED,+DAA+D;AAC/D,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,qBAAqB,GAAG,IAAI,CAoC1E;AAED;;;;GAIG;AACH,wBAAgB,8BAA8B,CAC5C,GAAG,EAAE,qBAAqB,GACzB,IAAI,CAkEN;AAeD,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,qBAAqB,GAAG,IAAI,CA6EvE"}
@@ -12,17 +12,22 @@
12
12
  * `PropertyInvariantViolation`.
13
13
  */
14
14
  import * as fc from "fast-check";
15
- import { Effect } from "effect";
15
+ import { Effect, Either } from "effect";
16
16
  import { Value } from "@sinclair/typebox/value";
17
17
  import { allRpcMethods, arbitraryAnyCall, arbitraryCallFor, } from "../arbitraries/rpc.js";
18
- import { s2cRpcMethods } from "../../rpc-registry.js";
19
- import { arbitraryEventFrame, arbitraryMalformedFrame, } from "../arbitraries/frames.js";
20
- import { decodeFrame, encodeFrame } from "../codec.js";
21
- import { EventFrameSchema, RequestFrameSchema, ResponseFrameSchema, } from "../../schema/frames.js";
18
+ import { arbitraryNotificationFrame, arbitraryMalformedFrame, } from "../arbitraries/frames.js";
19
+ import { decodeFrame, encodeFrame, isNotificationFrame, isRequestFrame, isResponseFrame, } from "../codec.js";
20
+ import { NotificationFrameSchema, ResponseFrameSchema, } from "../../schema/frames.js";
22
21
  import { makeTestClient } from "../test-client.js";
23
22
  import { registerTestAgent } from "../agent-registration.js";
24
23
  import { assertProperty, PropertyInvariantViolation, registerProperty, } from "./registry.js";
24
+ import { AgentsList, Connect } from "../../schema/methods/auth.js";
25
+ import { ContactsList } from "../../schema/methods/contacts.js";
26
+ import { ConversationsList } from "../../schema/methods/conversations.js";
25
27
  const CATEGORY = "schema-conformance";
28
+ const DEFAULT_MALFORMED_RESPONSE_RUNS = 3;
29
+ const DEFAULT_NOTIFICATION_SCHEMA_RUNS = 20;
30
+ const DEFAULT_ROUNDTRIP_RUNS = 50;
26
31
  const DEFAULT_TIMEOUT_MS = 3000;
27
32
  const DEFAULT_CAPTURE_CAPACITY = 64;
28
33
  /**
@@ -49,7 +54,7 @@ export function registerRequestWellFormedness(ctx) {
49
54
  // that landed before the sampled call.
50
55
  const handshakeEnd = (yield* client.snapshot).length;
51
56
  yield* client
52
- .sendRpc(call.method, call.params)
57
+ .sendRpc(call.definition, call.params)
53
58
  .pipe(Effect.either);
54
59
  return (yield* client.snapshot).slice(handshakeEnd);
55
60
  })).pipe(Effect.map((observed) => {
@@ -61,22 +66,31 @@ export function registerRequestWellFormedness(ctx) {
61
66
  // - replies.some(id === expectedId) (the sampled call got a
62
67
  // reply, not just some other request)
63
68
  const outbound = observed.find((s) => s.kind === "outbound" &&
64
- s.frame?.type === "request" &&
69
+ s.frame !== null &&
70
+ isRequestFrame(s.frame) &&
65
71
  s.frame.method === call.method);
66
- if (outbound?.frame?.type !== "request")
72
+ if (outbound?.frame === null ||
73
+ outbound?.frame === undefined ||
74
+ !isRequestFrame(outbound.frame)) {
67
75
  return false;
76
+ }
68
77
  const expectedId = outbound.frame.id;
69
- const replies = observed.filter((s) => s.kind === "inbound" && s.frame?.type === "response");
78
+ const replies = observed.filter((s) => s.kind === "inbound" &&
79
+ s.frame !== null &&
80
+ isResponseFrame(s.frame));
70
81
  if (replies.length < 1)
71
82
  return false;
72
- const allValid = replies.every((r) => r.frame?.type === "response" &&
83
+ const allValid = replies.every((r) => r.frame !== null &&
84
+ isResponseFrame(r.frame) &&
73
85
  Value.Check(ResponseFrameSchema, r.frame));
74
86
  if (!allValid)
75
87
  return false;
76
- return replies.some((r) => r.frame?.type === "response" && r.frame.id === expectedId);
88
+ return replies.some((r) => r.frame !== null &&
89
+ isResponseFrame(r.frame) &&
90
+ r.frame.id === expectedId);
77
91
  })))), {
78
92
  seed: ctx.seed,
79
- numRuns: ctx.opts.numRuns ?? 3,
93
+ numRuns: ctx.opts.numRuns ?? DEFAULT_MALFORMED_RESPONSE_RUNS,
80
94
  // Dropped-response counterexamples pay the client RPC timeout.
81
95
  // Shrinking repeats that timeout and makes executable proofs
82
96
  // timing-sensitive under stress without increasing coverage.
@@ -84,7 +98,7 @@ export function registerRequestWellFormedness(ctx) {
84
98
  })));
85
99
  }
86
100
  /**
87
- * Valid event frame round-trips the codec cleanly.
101
+ * Valid notification frame round-trips the codec cleanly.
88
102
  *
89
103
  * `@pure-codec` — does NOT drive a real server or real client. Spec A2's
90
104
  * "accepted by a real client" assertion requires a TestServer + real
@@ -92,30 +106,40 @@ export function registerRequestWellFormedness(ctx) {
92
106
  * `packages/client` or `moltzap-arena`) and is tracked under #186.
93
107
  *
94
108
  * Tightened per architect §4.4: predicate demands `Right` AND schema
95
- * check of the specific event variant — the previous `Right || Left`
109
+ * check of the specific notification variant — the previous `Right || Left`
96
110
  * shape was a tautology over the union.
97
111
  */
98
- export function registerEventWellFormedness(ctx) {
99
- registerProperty(ctx, CATEGORY, "event-well-formedness", "valid event frame decodes cleanly and re-encodes to match", assertProperty(CATEGORY, "event-well-formedness", () => Promise.resolve(fc.assert(fc.property(arbitraryEventFrame(), (frame) => {
112
+ export function registerNotificationWellFormedness(ctx) {
113
+ registerProperty(ctx, CATEGORY, "notification-well-formedness", "valid notification frame decodes cleanly and re-encodes to match", assertProperty(CATEGORY, "notification-well-formedness", () => Promise.resolve(fc.assert(fc.property(arbitraryNotificationFrame(), (frame) => {
100
114
  const raw = encodeFrame(frame);
101
115
  const decoded = Effect.runSync(Effect.either(decodeFrame(raw, "inbound")));
102
- if (decoded._tag !== "Right")
103
- return false;
104
- return (decoded.right.type === "event" &&
105
- Value.Check(EventFrameSchema, decoded.right));
106
- }), { seed: ctx.seed, numRuns: ctx.opts.numRuns ?? 20 }))));
116
+ return Either.match(decoded, {
117
+ onLeft: () => false,
118
+ onRight: (frame) => isNotificationFrame(frame) &&
119
+ Value.Check(NotificationFrameSchema, frame),
120
+ });
121
+ }), {
122
+ seed: ctx.seed,
123
+ numRuns: ctx.opts.numRuns ?? DEFAULT_NOTIFICATION_SCHEMA_RUNS,
124
+ }))));
107
125
  }
108
126
  /** parse(serialize(frame)) ≡ frame — pure codec round-trip. */
109
127
  export function registerRoundTripIdentity(ctx) {
110
128
  registerProperty(ctx, CATEGORY, "round-trip-identity", "parse(serialize(frame)) ≡ frame", assertProperty(CATEGORY, "round-trip-identity", () => Promise.resolve(fc.assert(fc.property(arbitraryMalformedFrame().map((m) => m.base), (frame) => {
111
129
  const raw = encodeFrame(frame);
112
130
  const re = Effect.runSync(Effect.either(decodeFrame(raw, "inbound")));
113
- if (re._tag === "Left")
114
- return true; // generator-side drift
115
- const redone = encodeFrame(re.right);
116
- return (JSON.stringify(JSON.parse(raw)) ===
117
- JSON.stringify(JSON.parse(redone)));
118
- }), { seed: ctx.seed, numRuns: ctx.opts.numRuns ?? 50 }))));
131
+ return Either.match(re, {
132
+ onLeft: () => true, // generator-side drift
133
+ onRight: (frame) => {
134
+ const redone = encodeFrame(frame);
135
+ return (JSON.stringify(JSON.parse(raw)) ===
136
+ JSON.stringify(JSON.parse(redone)));
137
+ },
138
+ });
139
+ }), {
140
+ seed: ctx.seed,
141
+ numRuns: ctx.opts.numRuns ?? DEFAULT_ROUNDTRIP_RUNS,
142
+ }))));
119
143
  }
120
144
  /**
121
145
  * Malformed bytes on the wire → the server drops or returns a typed
@@ -137,7 +161,8 @@ export function registerMalformedFrameHandling(ctx) {
137
161
  malformedQuiescenceMs: 500,
138
162
  });
139
163
  const response = yield* client.sendMalformed({
140
- baseMethod: "agents/list",
164
+ baseDefinition: AgentsList,
165
+ baseParams: {},
141
166
  kind,
142
167
  seed,
143
168
  });
@@ -145,7 +170,7 @@ export function registerMalformedFrameHandling(ctx) {
145
170
  // normal RPC — proves the server didn't crash or
146
171
  // poison its state.
147
172
  const post = yield* client
148
- .sendRpc("agents/list", {})
173
+ .sendRpc(AgentsList, {})
149
174
  .pipe(Effect.either);
150
175
  return { malformedReply: response, post };
151
176
  })).pipe(Effect.map((result) => {
@@ -158,9 +183,15 @@ export function registerMalformedFrameHandling(ctx) {
158
183
  // to count as server-alive, which is exactly what the
159
184
  // property must reject. Require the post-malformed call to
160
185
  // return cleanly.
161
- const stillAlive = result.post._tag === "Right";
186
+ const stillAlive = Either.match(result.post, {
187
+ onLeft: () => false,
188
+ onRight: () => true,
189
+ });
162
190
  return validReply && stillAlive;
163
- })))), { seed: ctx.seed, numRuns: ctx.opts.numRuns ?? 3 })));
191
+ })))), {
192
+ seed: ctx.seed,
193
+ numRuns: ctx.opts.numRuns ?? DEFAULT_MALFORMED_RESPONSE_RUNS,
194
+ })));
164
195
  }
165
196
  /**
166
197
  * A representative sample of `RpcMethodName` reaches the real server.
@@ -170,207 +201,11 @@ export function registerMalformedFrameHandling(ctx) {
170
201
  * render every RPC unreachable.
171
202
  */
172
203
  const COVERAGE_SAMPLE = [
173
- "auth/connect",
174
- "agents/list",
175
- "conversations/list",
176
- "contacts/list",
204
+ Connect.name,
205
+ AgentsList.name,
206
+ ConversationsList.name,
207
+ ContactsList.name,
177
208
  ];
178
- /**
179
- * S2C request frames round-trip through the codec. Architect plan §3.1 +
180
- * §1.7: `direction: "s2c"` is part of the wire identity — encode →
181
- * decodeFrame → re-encode must be byte-identical for every well-formed
182
- * server-initiated request.
183
- *
184
- * `@pure-codec` — does NOT drive a real server. Asserts the codec preserves
185
- * `direction: "s2c"` so c2s and s2c request-id pools can coexist on the
186
- * wire without confusion.
187
- */
188
- export function registerS2cRequestRoundTripIdentity(ctx) {
189
- registerProperty(ctx, CATEGORY, "s2c-request-roundtrip-identity", "encode(s2c request) ⇒ decode ⇒ encode is byte-identical", assertProperty(CATEGORY, "s2c-request-roundtrip-identity", () => Promise.resolve(fc.assert(fc.property(arbitraryS2cRequestFrame(), (frame) => {
190
- const raw = encodeFrame(frame);
191
- const decoded = Effect.runSync(Effect.either(decodeFrame(raw, "inbound")));
192
- if (decoded._tag !== "Right")
193
- return false;
194
- if (decoded.right.type !== "request")
195
- return false;
196
- if (decoded.right.direction !== "s2c")
197
- return false;
198
- const redone = encodeFrame(decoded.right);
199
- return (JSON.stringify(JSON.parse(raw)) ===
200
- JSON.stringify(JSON.parse(redone)));
201
- }), { seed: ctx.seed, numRuns: ctx.opts.numRuns ?? 50 }))));
202
- }
203
- /**
204
- * S2C response frames validate against `ResponseFrameSchema`. Architect plan
205
- * §3.1: c2s and s2c responses share one schema discriminated by `direction`.
206
- * Property asserts `Value.Check` accepts every drawn s2c response — the
207
- * positive shape every consumer's decoder relies on.
208
- */
209
- export function registerS2cResponseValidation(ctx) {
210
- registerProperty(ctx, CATEGORY, "s2c-response-validation", "every well-formed s2c response frame Value.Checks", assertProperty(CATEGORY, "s2c-response-validation", () => Promise.resolve(fc.assert(fc.property(arbitraryS2cResponseFrame(), (frame) => {
211
- if (!Value.Check(ResponseFrameSchema, frame))
212
- return false;
213
- return frame.direction === "s2c";
214
- }), { seed: ctx.seed, numRuns: ctx.opts.numRuns ?? 50 }))));
215
- }
216
- /**
217
- * Malformed s2c request bytes do not crash the codec — `decodeFrame`
218
- * returns `FrameSchemaError`, never throws. `@pure-codec` — exercises
219
- * the codec only. Wire-level liveness with a real server is covered by
220
- * `malformed-frame-handling` (above).
221
- */
222
- export function registerS2cMalformedRequestHandling(ctx) {
223
- registerProperty(ctx, CATEGORY, "s2c-malformed-request-handling", "malformed s2c request bytes ⇒ FrameSchemaError or drop; never crash", assertProperty(CATEGORY, "s2c-malformed-request-handling", () => Promise.resolve(fc.assert(fc.property(arbitraryMalformedS2cRequestFrame(), (raw) => {
224
- const decoded = Effect.runSync(Effect.either(decodeFrame(raw, "inbound")));
225
- // Either decode fails with FrameSchemaError (rejected at the
226
- // edge) or succeeds with a typed frame — both are fine. The
227
- // crash-free contract is what this property enforces.
228
- if (decoded._tag === "Left") {
229
- return decoded.left._tag === "TestingFrameSchemaError";
230
- }
231
- // If decode succeeds, the frame must validate against its
232
- // schema; the codec must not surface an in-between value.
233
- const f = decoded.right;
234
- if (f.type === "request")
235
- return Value.Check(RequestFrameSchema, f);
236
- if (f.type === "response")
237
- return Value.Check(ResponseFrameSchema, f);
238
- return Value.Check(EventFrameSchema, f);
239
- }), { seed: ctx.seed, numRuns: ctx.opts.numRuns ?? 50 }))));
240
- }
241
- /**
242
- * Dual-direction request-id collision — c2s and s2c request frames
243
- * carrying the same `id` decode to distinct frames whose `direction`
244
- * field discriminates the routing pool. Architect plan §3.1: pending
245
- * maps key on `(side, id)`, not `id` alone — a c2s request with id
246
- * `tc-1` and an s2c request with id `tc-1` must NOT collide.
247
- *
248
- * `@pure-codec` — pure-codec proof of the contract every transport
249
- * relies on. Wire-level routing is enforced by sender/receiver pending
250
- * maps; this property anchors the codec piece.
251
- */
252
- export function registerDualDirectionIdCollision(ctx) {
253
- registerProperty(ctx, CATEGORY, "dual-direction-id-collision", "c2s id=X and s2c id=X decode to distinct frames discriminated by direction", assertProperty(CATEGORY, "dual-direction-id-collision", () => Promise.resolve(fc.assert(fc.property(
254
- // A shared id and a method name; no need to vary params for
255
- // the routing-discrimination property.
256
- fc.tuple(fc
257
- .string({ minLength: 1, maxLength: 32 })
258
- .filter((s) => /^[a-zA-Z0-9_\-:.]+$/.test(s)), fc.constantFrom("auth/connect", "agents/list", ...s2cRpcMethods.map((m) => m.name))), ([id, method]) => {
259
- const c2s = {
260
- jsonrpc: "2.0",
261
- type: "request",
262
- direction: "c2s",
263
- id,
264
- method,
265
- params: {},
266
- };
267
- const s2c = {
268
- jsonrpc: "2.0",
269
- type: "request",
270
- direction: "s2c",
271
- id,
272
- method,
273
- params: {},
274
- };
275
- const decC2s = Effect.runSync(Effect.either(decodeFrame(encodeFrame(c2s), "inbound")));
276
- const decS2c = Effect.runSync(Effect.either(decodeFrame(encodeFrame(s2c), "inbound")));
277
- if (decC2s._tag !== "Right" || decS2c._tag !== "Right") {
278
- return false;
279
- }
280
- if (decC2s.right.type !== "request" ||
281
- decS2c.right.type !== "request") {
282
- return false;
283
- }
284
- // Same id, different direction — they are NOT equal frames
285
- // and a pending map keyed on (direction, id) yields disjoint
286
- // entries.
287
- if (decC2s.right.id !== decS2c.right.id)
288
- return false;
289
- if (decC2s.right.direction === decS2c.right.direction) {
290
- return false;
291
- }
292
- const keyC2s = `${decC2s.right.direction}:${decC2s.right.id}`;
293
- const keyS2c = `${decS2c.right.direction}:${decS2c.right.id}`;
294
- return keyC2s !== keyS2c;
295
- }), { seed: ctx.seed, numRuns: ctx.opts.numRuns ?? 30 }))));
296
- }
297
- // ── s2c arbitraries (local to this module) ────────────────────────────
298
- //
299
- // Kept private — only the four properties above use them. If a future
300
- // module needs s2c-direction frames, promote to `arbitraries/frames.ts`.
301
- function arbitraryS2cRequestFrame() {
302
- // Drive method names from the typed `s2cRpcMethods` registry so adding
303
- // a verb to the protocol auto-widens conformance coverage; no manual
304
- // sync required between this arbitrary and `rpc-registry.ts`.
305
- const methodNames = s2cRpcMethods.map((m) => m.name);
306
- return fc.record({
307
- jsonrpc: fc.constant("2.0"),
308
- type: fc.constant("request"),
309
- direction: fc.constant("s2c"),
310
- id: fc
311
- .string({ minLength: 1, maxLength: 32 })
312
- .filter((s) => /^[a-zA-Z0-9_\-:.]+$/.test(s)),
313
- method: fc.constantFrom(...methodNames),
314
- params: fc.option(fc.dictionary(fc.string(), fc.anything()), {
315
- nil: undefined,
316
- }),
317
- });
318
- }
319
- function arbitraryS2cResponseFrame() {
320
- const successBody = fc.record({
321
- result: fc.dictionary(fc.string({ minLength: 1, maxLength: 8 }), fc.anything()),
322
- });
323
- const errorBody = fc.record({
324
- error: fc.record({
325
- code: fc.integer({ min: -32700, max: -32000 }),
326
- message: fc.string({ minLength: 1, maxLength: 64 }),
327
- }),
328
- });
329
- const id = fc
330
- .string({ minLength: 1, maxLength: 32 })
331
- .filter((s) => /^[a-zA-Z0-9_\-:.]+$/.test(s));
332
- return fc
333
- .tuple(id, fc.oneof(successBody, errorBody))
334
- .map(([frameId, body]) => ({
335
- jsonrpc: "2.0",
336
- type: "response",
337
- direction: "s2c",
338
- id: frameId,
339
- ...body,
340
- }));
341
- }
342
- /**
343
- * Generate raw bytes that purport to be an s2c request but are malformed
344
- * in one of the kinds the codec must absorb. Mixes wire-level corruptions
345
- * (invalid JSON, missing `direction`, bad `direction`, extra property)
346
- * with schema-violation kinds the existing codec already rejects.
347
- */
348
- function arbitraryMalformedS2cRequestFrame() {
349
- const valid = arbitraryS2cRequestFrame();
350
- return fc.oneof(
351
- // Invalid JSON.
352
- fc.constant("not-json"), fc.constant("{not-json"),
353
- // Wrong direction value.
354
- valid.map((f) => {
355
- const invalidDirection = "lateral";
356
- const corrupted = { ...f, direction: invalidDirection };
357
- return JSON.stringify(corrupted);
358
- }),
359
- // Missing direction.
360
- valid.map((f) => {
361
- const { direction: _drop, ...rest } = f;
362
- void _drop;
363
- return JSON.stringify(rest);
364
- }),
365
- // Missing id.
366
- valid.map((f) => {
367
- const { id: _drop, ...rest } = f;
368
- void _drop;
369
- return JSON.stringify(rest);
370
- }),
371
- // Extra property — schema is `additionalProperties: false`.
372
- valid.map((f) => JSON.stringify({ ...f, extra: "rejected" })));
373
- }
374
209
  export function registerRpcMapCoverage(ctx) {
375
210
  registerProperty(ctx, CATEGORY, "rpc-map-coverage", "a representative sample of RpcMethodName reaches a real-server response", Effect.gen(function* () {
376
211
  void allRpcMethods; // kept for future expansion to full-set coverage
@@ -401,17 +236,22 @@ export function registerRpcMapCoverage(ctx) {
401
236
  // OWN response with a matching request id.
402
237
  const handshakeEnd = (yield* client.snapshot).length;
403
238
  yield* client
404
- .sendRpc(sampled.method, sampled.params)
239
+ .sendRpc(sampled.definition, sampled.params)
405
240
  .pipe(Effect.either);
406
241
  const snap = (yield* client.snapshot).slice(handshakeEnd);
407
242
  const outbound = snap.find((s) => s.kind === "outbound" &&
408
- s.frame?.type === "request" &&
243
+ s.frame !== null &&
244
+ isRequestFrame(s.frame) &&
409
245
  s.frame.method === sampled.method);
410
- if (outbound?.frame?.type !== "request")
246
+ if (outbound?.frame === null ||
247
+ outbound?.frame === undefined ||
248
+ !isRequestFrame(outbound.frame)) {
411
249
  return false;
250
+ }
412
251
  const expectedId = outbound.frame.id;
413
252
  return snap.some((s) => s.kind === "inbound" &&
414
- s.frame?.type === "response" &&
253
+ s.frame !== null &&
254
+ isResponseFrame(s.frame) &&
415
255
  s.frame.id === expectedId);
416
256
  })).pipe(Effect.orElseSucceed(() => false));
417
257
  if (!reached) {
@@ -1 +1 @@
1
- {"version":3,"file":"schema-conformance.js","sourceRoot":"","sources":["../../../src/testing/conformance/schema-conformance.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema-conformance.js","sourceRoot":"","sources":["../../../src/testing/conformance/schema-conformance.ts"],"names":[],"mappings":"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"}
@@ -29,7 +29,7 @@ import { type AllowedCoverageGap } from "./coverage-policy.js";
29
29
  */
30
30
  export interface ConformanceSuiteOptions {
31
31
  /** Factory for the implementation under test (server handle). */
32
- readonly realServer: () => Promise<RealServerHandle>;
32
+ readonly realServer: Effect.Effect<RealServerHandle, RealServerAcquireError>;
33
33
  /**
34
34
  * Toxiproxy control-plane URL. When `null`, the adversity category is
35
35
  * skipped (registered properties return `PropertyUnavailable`).
@@ -1 +1 @@
1
- {"version":3,"file":"suite.d.ts","sourceRoot":"","sources":["../../../src/testing/conformance/suite.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,EAAgB,MAAM,EAAgB,MAAM,QAAQ,CAAC;AAG5D,OAAO,EAEL,KAAK,qBAAqB,EAE1B,KAAK,gBAAgB,EACtB,MAAM,aAAa,CAAC;AACrB,OAAO,EAEL,KAAK,eAAe,EAErB,MAAM,eAAe,CAAC;AAOvB,OAAO,KAAK,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAC9E,OAAO,EAEL,KAAK,kBAAkB,EACxB,MAAM,sBAAsB,CAAC;AAG9B;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACtC,iEAAiE;IACjE,QAAQ,CAAC,UAAU,EAAE,MAAM,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACrD;;;OAGG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,iEAAiE;IACjE,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,4EAA4E;IAC5E,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,2FAA2F;IAC3F,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACvC,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC;QAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;KACzB,CAAC,CAAC;IACH,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC;QAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;KACzB,CAAC,CAAC;IACH,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;QAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,OAAO,EACZ,eAAe,GACf;YAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;YAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;SAAE,CAAC;KAC3D,CAAC,CAAC;CACJ;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,qBAAqB,GAAG,IAAI,CA6CtE;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,qBAAqB,EAC1B,WAAW,EAAE,MAAM,EACnB,mBAAmB,GAAE,aAAa,CAAC,kBAAkB,CAAM,GAC1D,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CA0E5B;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,uBAAuB,GAC5B,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,iBAAiB,GAAG,sBAAsB,CAAC,CA4BxE"}
1
+ {"version":3,"file":"suite.d.ts","sourceRoot":"","sources":["../../../src/testing/conformance/suite.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,EAAgB,MAAM,EAAgB,MAAM,QAAQ,CAAC;AAG5D,OAAO,EAEL,KAAK,qBAAqB,EAE1B,KAAK,gBAAgB,EACtB,MAAM,aAAa,CAAC;AACrB,OAAO,EAEL,KAAK,eAAe,EAErB,MAAM,eAAe,CAAC;AAOvB,OAAO,KAAK,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAC9E,OAAO,EAEL,KAAK,kBAAkB,EACxB,MAAM,sBAAsB,CAAC;AAQ9B;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACtC,iEAAiE;IACjE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,gBAAgB,EAAE,sBAAsB,CAAC,CAAC;IAC7E;;;OAGG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,iEAAiE;IACjE,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,4EAA4E;IAC5E,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,2FAA2F;IAC3F,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACvC,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC;QAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;KACzB,CAAC,CAAC;IACH,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC;QAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;KACzB,CAAC,CAAC;IACH,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;QAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,OAAO,EACZ,eAAe,GACf;YAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;YAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;SAAE,CAAC;KAC3D,CAAC,CAAC;CACJ;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,qBAAqB,GAAG,IAAI,CAyCtE;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,qBAAqB,EAC1B,WAAW,EAAE,MAAM,EACnB,mBAAmB,GAAE,aAAa,CAAC,kBAAkB,CAAM,GAC1D,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CA0E5B;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,uBAAuB,GAC5B,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,iBAAiB,GAAG,sBAAsB,CAAC,CA4BxE"}