@moltzap/protocol 2026.503.4 → 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 (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 +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 +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 -53
  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 +366 -101
  208. package/dist/validators.d.ts.map +1 -1
  209. package/dist/validators.js +23 -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
@@ -9,7 +9,9 @@
9
9
  */
10
10
  import { Effect } from "effect";
11
11
  import * as fc from "fast-check";
12
- import { arbitraryEventFrame } from "../../arbitraries/frames.js";
12
+ import { MessageDeliveredNotificationDefinition } from "../../../schema/notifications.js";
13
+ import { brandNotificationFrame } from "../../../schema/internal-frames.js";
14
+ import { arbitraryNotificationFrame } from "../../arbitraries/frames.js";
13
15
  import { registerProperty } from "../registry.js";
14
16
  import { acquireFixture, collectTagged, invariant, subscribeAll, } from "./_fixtures.js";
15
17
  const CATEGORY = "boundary";
@@ -17,28 +19,28 @@ const PROPERTY_BUDGET_MS = 12_000;
17
19
  const DEFAULT_FUZZ_BURST_RUNS = 10;
18
20
  const PROPERTY_SCHEMA_EXHAUSTIVE_FUZZ_CLIENT = "schema-exhaustive-fuzz-client";
19
21
  /**
20
- * E2 client half — TestServer emits arbitrary `EventFrame`s across
22
+ * E2 client half — TestServer emits arbitrary `NotificationFrame`s across
21
23
  * many shapes to a real client. Properties interleave with a tagged
22
24
  * liveness probe and a task-boundary assertion.
23
25
  *
24
26
  * Predicate (both must hold):
25
27
  * 1. No crash — real client stays `ready`; no spurious closeSignal.
26
- * 2. Liveness probe — a valid tagged event emitted post-fuzz surfaces.
28
+ * 2. Liveness probe — a valid tagged notification emitted post-fuzz surfaces.
27
29
  */
28
30
  export function registerSchemaExhaustiveFuzzClient(ctx) {
29
- registerProperty(ctx, CATEGORY, PROPERTY_SCHEMA_EXHAUSTIVE_FUZZ_CLIENT, "real client absorbs arbitrary EventFrames; liveness and boundary hold", Effect.scoped(Effect.gen(function* () {
31
+ registerProperty(ctx, CATEGORY, PROPERTY_SCHEMA_EXHAUSTIVE_FUZZ_CLIENT, "real client absorbs arbitrary NotificationFrames; liveness and boundary hold", Effect.scoped(Effect.gen(function* () {
30
32
  const fx = yield* acquireFixture(ctx, CATEGORY, PROPERTY_SCHEMA_EXHAUSTIVE_FUZZ_CLIENT);
31
33
  yield* subscribeAll(fx.handle);
32
34
  // Fuzz burst: default 10 frames; stress mode scales with
33
35
  // CONFORMANCE_NUM_RUNS through ctx.opts.numRuns.
34
36
  const fuzzRuns = ctx.opts.numRuns ?? DEFAULT_FUZZ_BURST_RUNS;
35
- const burst = fc.sample(arbitraryEventFrame(), {
37
+ const burst = fc.sample(arbitraryNotificationFrame(), {
36
38
  numRuns: fuzzRuns,
37
39
  seed: ctx.seed,
38
40
  });
39
41
  for (const frame of burst) {
40
42
  yield* fx.connection
41
- .emitEvent(frame)
43
+ .emitNotification(frame)
42
44
  .pipe(Effect.orElseSucceed(() => undefined));
43
45
  }
44
46
  // (1) Real client still alive — closeSignal not fired.
@@ -48,14 +50,13 @@ export function registerSchemaExhaustiveFuzzClient(ctx) {
48
50
  }
49
51
  // (2) Liveness probe.
50
52
  const tag = yield* fx.window.freshEmissionTag;
51
- yield* fx.window.emitTaggedEvent({
53
+ yield* fx.window.emitTaggedNotification({
52
54
  connection: fx.connection,
53
- base: {
55
+ base: brandNotificationFrame({
54
56
  jsonrpc: "2.0",
55
- type: "event",
56
- event: "messages.delivered",
57
- data: {},
58
- },
57
+ method: MessageDeliveredNotificationDefinition.name,
58
+ params: {},
59
+ }),
59
60
  emissionTag: tag,
60
61
  });
61
62
  const observed = yield* collectTagged(fx.handle, (t) => t === tag, {
@@ -1 +1 @@
1
- {"version":3,"file":"boundary.js","sourceRoot":"","sources":["../../../../src/testing/conformance/client/boundary.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"boundary.js","sourceRoot":"","sources":["../../../../src/testing/conformance/client/boundary.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,sCAAsC,EAAE,MAAM,kCAAkC,CAAC;AAC1F,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AAEzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EACL,cAAc,EACd,aAAa,EACb,SAAS,EACT,YAAY,GACb,MAAM,gBAAgB,CAAC;AAExB,MAAM,QAAQ,GAAG,UAAmB,CAAC;AACrC,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAClC,MAAM,uBAAuB,GAAG,EAAE,CAAC;AACnC,MAAM,sCAAsC,GAAG,+BAA+B,CAAC;AAE/E;;;;;;;;GAQG;AACH,MAAM,UAAU,kCAAkC,CAChD,GAAgC;IAEhC,gBAAgB,CACd,GAAG,EACH,QAAQ,EACR,sCAAsC,EACtC,8EAA8E,EAC9E,MAAM,CAAC,MAAM,CACX,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QAClB,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,cAAc,CAC9B,GAAG,EACH,QAAQ,EACR,sCAAsC,CACvC,CAAC;QACF,KAAK,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;QAC/B,yDAAyD;QACzD,iDAAiD;QACjD,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,uBAAuB,CAAC;QAC7D,MAAM,KAAK,GAAG,EAAE,CAAC,MAAM,CAAC,0BAA0B,EAAE,EAAE;YACpD,OAAO,EAAE,QAAQ;YACjB,IAAI,EAAE,GAAG,CAAC,IAAI;SACf,CAAC,CAAC;QACH,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;YAC1B,KAAK,CAAC,CAAC,EAAE,CAAC,UAAU;iBACjB,gBAAgB,CAAC,KAAK,CAAC;iBACvB,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;QACjD,CAAC;QACD,uDAAuD;QACvD,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAClC,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,QAAiB,CAAC,CAAC,EACxD,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,OAAgB,CAAC,CAAC,CAC7D,CAAC;QACF,IAAI,SAAS,KAAK,QAAQ,EAAE,CAAC;YAC3B,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CACvB,SAAS,CACP,QAAQ,EACR,sCAAsC,EACtC,sCAAsC,CACvC,CACF,CAAC;QACJ,CAAC;QACD,sBAAsB;QACtB,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,gBAAgB,CAAC;QAC9C,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,sBAAsB,CAAC;YACtC,UAAU,EAAE,EAAE,CAAC,UAAU;YACzB,IAAI,EAAE,sBAAsB,CAAC;gBAC3B,OAAO,EAAE,KAAK;gBACd,MAAM,EAAE,sCAAsC,CAAC,IAAI;gBACnD,MAAM,EAAE,EAAE;aACX,CAAC;YACF,WAAW,EAAE,GAAG;SACjB,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,EAAE;YACjE,QAAQ,EAAE,CAAC;YACX,QAAQ,EAAE,kBAAkB;SAC7B,CAAC,CAAC;QACH,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CACvB,SAAS,CACP,QAAQ,EACR,sCAAsC,EACtC,gDAAgD,CACjD,CACF,CAAC;QACJ,CAAC;IACH,CAAC,CAAC,CACH,CACF,CAAC;AACJ,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import type { ClientConformanceRunContext } from "./runner.js";
2
2
  /**
3
- * C1 client-side — TestServer emits N fan-out `EventFrame`s (one
3
+ * C1 client-side — TestServer emits N fan-out `NotificationFrame`s (one
4
4
  * per conversation participant position) to a real client subscribed
5
5
  * to the conversation. All N carry the same `emissionTag` campaign;
6
6
  * each carries a per-position `positionIndex` in the payload.
@@ -15,20 +15,20 @@ import type { ClientConformanceRunContext } from "./runner.js";
15
15
  */
16
16
  export declare function registerFanOutCardinalityClient(ctx: ClientConformanceRunContext): void;
17
17
  /**
18
- * C3 client-side — TestServer emits a single `EventFrame` whose
18
+ * C3 client-side — TestServer emits a single `NotificationFrame` whose
19
19
  * payload contains a distinct byte-sequence token; real client's
20
20
  * subscriber surfaces a frame whose raw bytes still contain that
21
21
  * token.
22
22
  *
23
- * Predicate (strict): the raw-bytes view of the surfaced event
23
+ * Predicate (strict): the raw-bytes view of the surfaced notification
24
24
  * includes the emitted token byte-for-byte. A client that routes
25
25
  * payloads through a lossy re-serialization (e.g., key-reorder JSON
26
26
  * stringify) fails.
27
27
  */
28
28
  export declare function registerPayloadOpacityClient(ctx: ClientConformanceRunContext): void;
29
29
  /**
30
- * C4 client half — TestServer emits N task-A events (tagged campaignA)
31
- * and M task-B events (tagged campaignB) to a real client subscribed
30
+ * C4 client half — TestServer emits N task-A notifications (tagged campaignA)
31
+ * and M task-B notifications (tagged campaignB) to a real client subscribed
32
32
  * with a `conversationId` filter set to task-A. The client's task-A
33
33
  * subscriber surfaces zero campaignB events.
34
34
  *
@@ -1 +1 @@
1
- {"version":3,"file":"delivery.d.ts","sourceRoot":"","sources":["../../../../src/testing/conformance/client/delivery.ts"],"names":[],"mappings":"AA0BA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAC;AA2B/D;;;;;;;;;;;;;GAaG;AACH,wBAAgB,+BAA+B,CAC7C,GAAG,EAAE,2BAA2B,GAC/B,IAAI,CA0EN;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,4BAA4B,CAC1C,GAAG,EAAE,2BAA2B,GAC/B,IAAI,CAsDN;AAED;;;;;;;GAOG;AACH,wBAAgB,mCAAmC,CACjD,GAAG,EAAE,2BAA2B,GAC/B,IAAI,CAiHN;AAED;;;;GAIG;AACH,wBAAgB,8BAA8B,CAC5C,GAAG,EAAE,2BAA2B,GAC/B,IAAI,CA4DN"}
1
+ {"version":3,"file":"delivery.d.ts","sourceRoot":"","sources":["../../../../src/testing/conformance/client/delivery.ts"],"names":[],"mappings":"AAmCA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAC;AAoB/D;;;;;;;;;;;;;GAaG;AACH,wBAAgB,+BAA+B,CAC7C,GAAG,EAAE,2BAA2B,GAC/B,IAAI,CAuEN;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,4BAA4B,CAC1C,GAAG,EAAE,2BAA2B,GAC/B,IAAI,CAuDN;AAED;;;;;;;GAOG;AACH,wBAAgB,mCAAmC,CACjD,GAAG,EAAE,2BAA2B,GAC/B,IAAI,CA+GN;AAED;;;;GAIG;AACH,wBAAgB,8BAA8B,CAC5C,GAAG,EAAE,2BAA2B,GAC/B,IAAI,CAoEN"}
@@ -20,11 +20,13 @@
20
20
  */
21
21
  import { Effect } from "effect";
22
22
  import * as fc from "fast-check";
23
- import { eventFrame } from "../../../helpers.js";
24
- import { EventNames } from "../../../schema/events.js";
25
- import { arbitraryEventFrame } from "../../arbitraries/frames.js";
23
+ import { notificationFrame } from "../../../helpers.js";
24
+ import { ConversationArchivedNotificationDefinition, ConversationUnarchivedNotificationDefinition, MessageDeliveredNotificationDefinition, } from "../../../schema/notifications.js";
25
+ import { agentId, conversationId as toConversationId, } from "../../../schema/primitives.js";
26
+ import { brandNotificationFrame } from "../../../schema/internal-frames.js";
27
+ import { arbitraryNotificationFrame } from "../../arbitraries/frames.js";
26
28
  import { registerProperty } from "../registry.js";
27
- import { acquireFixture, collectTagged, invariant, subscribeAll, } from "./_fixtures.js";
29
+ import { acquireFixture, collectTagged, invariant, notificationParamsRecord, subscribeAll, } from "./_fixtures.js";
28
30
  const CATEGORY = "delivery";
29
31
  const PROPERTY_BUDGET_MS = 8_000;
30
32
  const PROPERTY_FAN_OUT_CARDINALITY_CLIENT = "fan-out-cardinality-client";
@@ -33,14 +35,8 @@ const PROPERTY_TASK_BOUNDARY_ISOLATION_CLIENT = "task-boundary-isolation-client"
33
35
  const PAYLOAD_TOKEN_RADIX = 36;
34
36
  const TASK_BOUNDARY_EMISSION_COUNT = 3;
35
37
  const LIFECYCLE_OBSERVATION_COUNT = 2;
36
- function isStringKeyedRecord(value) {
37
- return typeof value === "object" && value !== null && !Array.isArray(value);
38
- }
39
- function eventDataRecord(data) {
40
- return isStringKeyedRecord(data) ? data : {};
41
- }
42
38
  /**
43
- * C1 client-side — TestServer emits N fan-out `EventFrame`s (one
39
+ * C1 client-side — TestServer emits N fan-out `NotificationFrame`s (one
44
40
  * per conversation participant position) to a real client subscribed
45
41
  * to the conversation. All N carry the same `emissionTag` campaign;
46
42
  * each carries a per-position `positionIndex` in the payload.
@@ -54,10 +50,10 @@ function eventDataRecord(data) {
54
50
  * drops one, or reorders the sequence fails.
55
51
  */
56
52
  export function registerFanOutCardinalityClient(ctx) {
57
- registerProperty(ctx, CATEGORY, PROPERTY_FAN_OUT_CARDINALITY_CLIENT, "N fan-out events surface on real client in emission order, no drops, no dups", Effect.scoped(Effect.gen(function* () {
53
+ registerProperty(ctx, CATEGORY, PROPERTY_FAN_OUT_CARDINALITY_CLIENT, "N fan-out notifications surface on real client in emission order, no drops, no dups", Effect.scoped(Effect.gen(function* () {
58
54
  const fx = yield* acquireFixture(ctx, CATEGORY, PROPERTY_FAN_OUT_CARDINALITY_CLIENT);
59
55
  yield* subscribeAll(fx.handle);
60
- const base = fc.sample(arbitraryEventFrame(), {
56
+ const base = fc.sample(arbitraryNotificationFrame(), {
61
57
  numRuns: 1,
62
58
  seed: ctx.seed,
63
59
  })[0];
@@ -66,13 +62,13 @@ export function registerFanOutCardinalityClient(ctx) {
66
62
  }
67
63
  const N = 5;
68
64
  const campaign = yield* fx.window.freshEmissionTag;
69
- const baseData = eventDataRecord(base.data);
65
+ const baseParams = notificationParamsRecord(base.params);
70
66
  for (let i = 0; i < N; i++) {
71
- const positional = {
67
+ const positional = brandNotificationFrame({
72
68
  ...base,
73
- data: { ...baseData, positionIndex: i },
74
- };
75
- yield* fx.window.emitTaggedEvent({
69
+ params: { ...baseParams, positionIndex: i },
70
+ });
71
+ yield* fx.window.emitTaggedNotification({
76
72
  connection: fx.connection,
77
73
  base: positional,
78
74
  emissionTag: campaign,
@@ -82,7 +78,7 @@ export function registerFanOutCardinalityClient(ctx) {
82
78
  if (observed.length !== N) {
83
79
  return yield* Effect.fail(invariant(CATEGORY, PROPERTY_FAN_OUT_CARDINALITY_CLIENT, `expected ${N} observations, got ${observed.length}`));
84
80
  }
85
- const indices = observed.map((o) => o.data?.positionIndex);
81
+ const indices = observed.map((o) => o.params.positionIndex);
86
82
  // Strict ordering check against `[0..N)`.
87
83
  for (let i = 0; i < N; i++) {
88
84
  if (indices[i] !== i) {
@@ -92,12 +88,12 @@ export function registerFanOutCardinalityClient(ctx) {
92
88
  })));
93
89
  }
94
90
  /**
95
- * C3 client-side — TestServer emits a single `EventFrame` whose
91
+ * C3 client-side — TestServer emits a single `NotificationFrame` whose
96
92
  * payload contains a distinct byte-sequence token; real client's
97
93
  * subscriber surfaces a frame whose raw bytes still contain that
98
94
  * token.
99
95
  *
100
- * Predicate (strict): the raw-bytes view of the surfaced event
96
+ * Predicate (strict): the raw-bytes view of the surfaced notification
101
97
  * includes the emitted token byte-for-byte. A client that routes
102
98
  * payloads through a lossy re-serialization (e.g., key-reorder JSON
103
99
  * stringify) fails.
@@ -107,14 +103,15 @@ export function registerPayloadOpacityClient(ctx) {
107
103
  const fx = yield* acquireFixture(ctx, CATEGORY, PROPERTY_PAYLOAD_OPACITY_CLIENT);
108
104
  yield* subscribeAll(fx.handle);
109
105
  const token = `opq-${ctx.seed.toString(PAYLOAD_TOKEN_RADIX)}-${Date.now().toString(PAYLOAD_TOKEN_RADIX)}`;
110
- const base = {
106
+ const base = brandNotificationFrame({
111
107
  jsonrpc: "2.0",
112
- type: "event",
113
- event: "messages.delivered",
114
- data: { opaqueToken: token },
115
- };
108
+ method: MessageDeliveredNotificationDefinition.name,
109
+ params: {
110
+ opaqueToken: token,
111
+ },
112
+ });
116
113
  const tag = yield* fx.window.freshEmissionTag;
117
- yield* fx.window.emitTaggedEvent({
114
+ yield* fx.window.emitTaggedNotification({
118
115
  connection: fx.connection,
119
116
  base,
120
117
  emissionTag: tag,
@@ -134,36 +131,36 @@ export function registerPayloadOpacityClient(ctx) {
134
131
  })));
135
132
  }
136
133
  /**
137
- * C4 client half — TestServer emits N task-A events (tagged campaignA)
138
- * and M task-B events (tagged campaignB) to a real client subscribed
134
+ * C4 client half — TestServer emits N task-A notifications (tagged campaignA)
135
+ * and M task-B notifications (tagged campaignB) to a real client subscribed
139
136
  * with a `conversationId` filter set to task-A. The client's task-A
140
137
  * subscriber surfaces zero campaignB events.
141
138
  *
142
139
  * Predicate: `observedCampaignB.length === 0`.
143
140
  */
144
141
  export function registerTaskBoundaryIsolationClient(ctx) {
145
- registerProperty(ctx, CATEGORY, PROPERTY_TASK_BOUNDARY_ISOLATION_CLIENT, "task-A subscriber does not surface task-B events — no leakage", Effect.scoped(Effect.gen(function* () {
142
+ registerProperty(ctx, CATEGORY, PROPERTY_TASK_BOUNDARY_ISOLATION_CLIENT, "task-A subscriber does not surface task-B notifications — no leakage", Effect.scoped(Effect.gen(function* () {
146
143
  const fx = yield* acquireFixture(ctx, CATEGORY, PROPERTY_TASK_BOUNDARY_ISOLATION_CLIENT);
147
144
  yield* subscribeAll(fx.handle);
148
- const baseEvent = fc.sample(arbitraryEventFrame(), {
145
+ const baseNotification = fc.sample(arbitraryNotificationFrame(), {
149
146
  numRuns: 1,
150
147
  seed: ctx.seed,
151
148
  })[0];
152
- if (baseEvent === undefined) {
149
+ if (baseNotification === undefined) {
153
150
  return yield* Effect.fail(invariant(CATEGORY, PROPERTY_TASK_BOUNDARY_ISOLATION_CLIENT, "sample failed"));
154
151
  }
155
152
  const campaignA = yield* fx.window.freshEmissionTag;
156
153
  const campaignB = yield* fx.window.freshEmissionTag;
157
154
  const taskA = `task-a-${ctx.seed}`;
158
155
  const taskB = `task-b-${ctx.seed}`;
159
- const baseEventData = eventDataRecord(baseEvent.data);
156
+ const baseParams = notificationParamsRecord(baseNotification.params);
160
157
  // Emit task-A frames.
161
158
  for (let i = 0; i < TASK_BOUNDARY_EMISSION_COUNT; i++) {
162
- yield* fx.window.emitTaggedEvent({
159
+ yield* fx.window.emitTaggedNotification({
163
160
  connection: fx.connection,
164
161
  base: {
165
- ...baseEvent,
166
- data: { ...baseEventData, conversationId: taskA },
162
+ ...baseNotification,
163
+ params: { ...baseParams, conversationId: taskA },
167
164
  },
168
165
  emissionTag: campaignA,
169
166
  });
@@ -171,11 +168,11 @@ export function registerTaskBoundaryIsolationClient(ctx) {
171
168
  // Emit task-B frames that must be filtered out by the client's
172
169
  // subscription (via conversationId filter).
173
170
  for (let i = 0; i < TASK_BOUNDARY_EMISSION_COUNT; i++) {
174
- yield* fx.window.emitTaggedEvent({
171
+ yield* fx.window.emitTaggedNotification({
175
172
  connection: fx.connection,
176
173
  base: {
177
- ...baseEvent,
178
- data: { ...baseEventData, conversationId: taskB },
174
+ ...baseNotification,
175
+ params: { ...baseParams, conversationId: taskB },
179
176
  },
180
177
  emissionTag: campaignB,
181
178
  });
@@ -191,22 +188,20 @@ export function registerTaskBoundaryIsolationClient(ctx) {
191
188
  // filter, the property is vacuous; architect O5 notes channel
192
189
  // packages re-export a bare WS client so no server-side filter is
193
190
  // inserted. To keep the predicate discriminating, require that
194
- // every task-A-emitted event carry the task-A conversationId on
191
+ // every task-A-emitted notification carry the task-A conversationId on
195
192
  // the surfaced raw frame (positive-path witness) — a
196
193
  // cross-wiring bug in the client would route a task-B payload
197
194
  // under a task-A campaign tag and fail this predicate.
198
195
  const taggedA = yield* collectTagged(fx.handle, (t) => t === campaignA, { expected: 3, budgetMs: 0 });
199
196
  for (const obs of taggedA) {
200
- const cid = obs.data
201
- ?.conversationId;
197
+ const cid = obs.params.conversationId;
202
198
  if (cid !== taskA) {
203
199
  return yield* Effect.fail(invariant(CATEGORY, PROPERTY_TASK_BOUNDARY_ISOLATION_CLIENT, `task-A emission surfaced with conversationId ${String(cid)}`));
204
200
  }
205
201
  }
206
202
  const taggedB = yield* collectTagged(fx.handle, (t) => t === campaignB, { expected: 0, budgetMs: 0 });
207
203
  for (const obs of taggedB) {
208
- const cid = obs.data
209
- ?.conversationId;
204
+ const cid = obs.params.conversationId;
210
205
  if (cid !== taskB) {
211
206
  return yield* Effect.fail(invariant(CATEGORY, PROPERTY_TASK_BOUNDARY_ISOLATION_CLIENT, `task-B emission surfaced with conversationId ${String(cid)} (cross-wiring)`));
212
207
  }
@@ -220,25 +215,26 @@ export function registerTaskBoundaryIsolationClient(ctx) {
220
215
  */
221
216
  export function registerArchiveLifecycleClient(ctx) {
222
217
  const name = "archive-lifecycle-client";
223
- registerProperty(ctx, CATEGORY, name, "archive/unarchive lifecycle events surface on the real client in order", Effect.scoped(Effect.gen(function* () {
218
+ registerProperty(ctx, CATEGORY, name, "archive/unarchive lifecycle notifications surface on the real client in order", Effect.scoped(Effect.gen(function* () {
224
219
  const fx = yield* acquireFixture(ctx, CATEGORY, name);
225
220
  yield* subscribeAll(fx.handle);
226
- const conversationId = "00000000-0000-4000-8000-000000000001";
221
+ const conversationId = toConversationId("00000000-0000-4000-8000-000000000001");
222
+ const by = agentId(fx.handle.agentId);
227
223
  const tag = yield* fx.window.freshEmissionTag;
228
- yield* fx.window.emitTaggedEvent({
224
+ yield* fx.window.emitTaggedNotification({
229
225
  connection: fx.connection,
230
- base: eventFrame(EventNames.ConversationArchived, {
226
+ base: notificationFrame(ConversationArchivedNotificationDefinition, {
231
227
  conversationId,
232
228
  archivedAt: new Date(0).toISOString(),
233
- by: fx.handle.agentId,
229
+ by,
234
230
  }),
235
231
  emissionTag: tag,
236
232
  });
237
- yield* fx.window.emitTaggedEvent({
233
+ yield* fx.window.emitTaggedNotification({
238
234
  connection: fx.connection,
239
- base: eventFrame(EventNames.ConversationUnarchived, {
235
+ base: notificationFrame(ConversationUnarchivedNotificationDefinition, {
240
236
  conversationId,
241
- by: fx.handle.agentId,
237
+ by,
242
238
  }),
243
239
  emissionTag: tag,
244
240
  });
@@ -249,9 +245,11 @@ export function registerArchiveLifecycleClient(ctx) {
249
245
  if (observed.length !== LIFECYCLE_OBSERVATION_COUNT) {
250
246
  return yield* Effect.fail(invariant(CATEGORY, name, `expected ${LIFECYCLE_OBSERVATION_COUNT} lifecycle observations, got ${observed.length}`));
251
247
  }
252
- if (observed[0]?.eventName !== EventNames.ConversationArchived ||
253
- observed[1]?.eventName !== EventNames.ConversationUnarchived) {
254
- return yield* Effect.fail(invariant(CATEGORY, name, `lifecycle order mismatch: ${observed.map((o) => o.eventName).join(",")}`));
248
+ if (observed[0]?.notificationName !==
249
+ ConversationArchivedNotificationDefinition.name ||
250
+ observed[1]?.notificationName !==
251
+ ConversationUnarchivedNotificationDefinition.name) {
252
+ return yield* Effect.fail(invariant(CATEGORY, name, `lifecycle order mismatch: ${observed.map((o) => o.notificationName).join(",")}`));
255
253
  }
256
254
  })));
257
255
  }
@@ -1 +1 @@
1
- {"version":3,"file":"delivery.js","sourceRoot":"","sources":["../../../../src/testing/conformance/client/delivery.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"delivery.js","sourceRoot":"","sources":["../../../../src/testing/conformance/client/delivery.ts"],"names":[],"mappings":"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"}
@@ -6,9 +6,9 @@
6
6
  * `../suite.ts` (implement-staff scope) and by the stub entry
7
7
  * `runClientConformanceSuite` in `./suite.ts`.
8
8
  */
9
- export { type ClientConformanceRunContext, type ClientConformanceRunOptions, type ObservedEvent, type RealClientCloseEvent, type RealClientEventFilter, type RealClientEventSubscriber, type RealClientHandle, type RealClientRpcCaller, type RealClientSubscription, ClientHandshakeWindow, RealClientLifecycleError, RealClientRpcError, acquireClientRunContext, makeClientHandshakeWindow, } from "./runner.js";
9
+ export { type ClientConformanceRunContext, type ClientConformanceRunOptions, type ObservedNotification, type RealClientCloseEvent, type RealClientNotificationFilter, type RealClientNotificationSubscriber, type RealClientHandle, type RealClientRpcCaller, type RealClientSubscription, ClientHandshakeWindow, RealClientLifecycleError, RealClientRpcError, acquireClientRunContext, makeClientHandshakeWindow, } from "./runner.js";
10
10
  export { type ClientConformanceSuiteOptions, type JointConformanceSuiteOptions, registerAllClientProperties, runClientConformanceSuite, } from "./suite.js";
11
- export { registerEventWellFormednessClient, registerMalformedFrameHandlingClient, } from "./schema-conformance.js";
11
+ export { registerNotificationWellFormednessClient, registerMalformedFrameHandlingClient, } from "./schema-conformance.js";
12
12
  export { registerModelEquivalenceClient, registerRequestIdUniquenessClient, } from "./rpc-semantics.js";
13
13
  export { registerArchiveLifecycleClient, registerFanOutCardinalityClient, registerPayloadOpacityClient, registerTaskBoundaryIsolationClient, } from "./delivery.js";
14
14
  export { registerLatencyResilienceClient, registerResetPeerRecoveryClient, registerSlicerFramingClient, registerSlowCloseCleanupClient, registerTimeoutSurfaceClient, } from "./adversity.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/testing/conformance/client/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EACL,KAAK,2BAA2B,EAChC,KAAK,2BAA2B,EAChC,KAAK,aAAa,EAClB,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,EAC1B,KAAK,yBAAyB,EAC9B,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,EAC3B,qBAAqB,EACrB,wBAAwB,EACxB,kBAAkB,EAClB,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,KAAK,6BAA6B,EAClC,KAAK,4BAA4B,EACjC,2BAA2B,EAC3B,yBAAyB,GAC1B,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,iCAAiC,EACjC,oCAAoC,GACrC,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,8BAA8B,EAC9B,iCAAiC,GAClC,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,8BAA8B,EAC9B,+BAA+B,EAC/B,4BAA4B,EAC5B,mCAAmC,GACpC,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,+BAA+B,EAC/B,+BAA+B,EAC/B,2BAA2B,EAC3B,8BAA8B,EAC9B,4BAA4B,GAC7B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,kCAAkC,EAAE,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/testing/conformance/client/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EACL,KAAK,2BAA2B,EAChC,KAAK,2BAA2B,EAChC,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EACzB,KAAK,4BAA4B,EACjC,KAAK,gCAAgC,EACrC,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,EAC3B,qBAAqB,EACrB,wBAAwB,EACxB,kBAAkB,EAClB,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,KAAK,6BAA6B,EAClC,KAAK,4BAA4B,EACjC,2BAA2B,EAC3B,yBAAyB,GAC1B,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,wCAAwC,EACxC,oCAAoC,GACrC,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,8BAA8B,EAC9B,iCAAiC,GAClC,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,8BAA8B,EAC9B,+BAA+B,EAC/B,4BAA4B,EAC5B,mCAAmC,GACpC,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,+BAA+B,EAC/B,+BAA+B,EAC/B,2BAA2B,EAC3B,8BAA8B,EAC9B,4BAA4B,GAC7B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,kCAAkC,EAAE,MAAM,eAAe,CAAC"}
@@ -8,7 +8,7 @@
8
8
  */
9
9
  export { ClientHandshakeWindow, RealClientLifecycleError, RealClientRpcError, acquireClientRunContext, makeClientHandshakeWindow, } from "./runner.js";
10
10
  export { registerAllClientProperties, runClientConformanceSuite, } from "./suite.js";
11
- export { registerEventWellFormednessClient, registerMalformedFrameHandlingClient, } from "./schema-conformance.js";
11
+ export { registerNotificationWellFormednessClient, registerMalformedFrameHandlingClient, } from "./schema-conformance.js";
12
12
  export { registerModelEquivalenceClient, registerRequestIdUniquenessClient, } from "./rpc-semantics.js";
13
13
  export { registerArchiveLifecycleClient, registerFanOutCardinalityClient, registerPayloadOpacityClient, registerTaskBoundaryIsolationClient, } from "./delivery.js";
14
14
  export { registerLatencyResilienceClient, registerResetPeerRecoveryClient, registerSlicerFramingClient, registerSlowCloseCleanupClient, registerTimeoutSurfaceClient, } from "./adversity.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/testing/conformance/client/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAUL,qBAAqB,EACrB,wBAAwB,EACxB,kBAAkB,EAClB,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,aAAa,CAAC;AACrB,OAAO,EAGL,2BAA2B,EAC3B,yBAAyB,GAC1B,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,iCAAiC,EACjC,oCAAoC,GACrC,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,8BAA8B,EAC9B,iCAAiC,GAClC,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,8BAA8B,EAC9B,+BAA+B,EAC/B,4BAA4B,EAC5B,mCAAmC,GACpC,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,+BAA+B,EAC/B,+BAA+B,EAC/B,2BAA2B,EAC3B,8BAA8B,EAC9B,4BAA4B,GAC7B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,kCAAkC,EAAE,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/testing/conformance/client/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAUL,qBAAqB,EACrB,wBAAwB,EACxB,kBAAkB,EAClB,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,aAAa,CAAC;AACrB,OAAO,EAGL,2BAA2B,EAC3B,yBAAyB,GAC1B,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,wCAAwC,EACxC,oCAAoC,GACrC,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,8BAA8B,EAC9B,iCAAiC,GAClC,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,8BAA8B,EAC9B,+BAA+B,EAC/B,4BAA4B,EAC5B,mCAAmC,GACpC,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,+BAA+B,EAC/B,+BAA+B,EAC/B,2BAA2B,EAC3B,8BAA8B,EAC9B,4BAA4B,GAC7B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,kCAAkC,EAAE,MAAM,eAAe,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"rpc-semantics.d.ts","sourceRoot":"","sources":["../../../../src/testing/conformance/client/rpc-semantics.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAC;AAW/D;;;;;;;;GAQG;AACH,wBAAgB,8BAA8B,CAC5C,GAAG,EAAE,2BAA2B,GAC/B,IAAI,CAgFN;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,iCAAiC,CAC/C,GAAG,EAAE,2BAA2B,GAC/B,IAAI,CAqGN"}
1
+ {"version":3,"file":"rpc-semantics.d.ts","sourceRoot":"","sources":["../../../../src/testing/conformance/client/rpc-semantics.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAC;AAY/D;;;;;;;;GAQG;AACH,wBAAgB,8BAA8B,CAC5C,GAAG,EAAE,2BAA2B,GAC/B,IAAI,CA4EN;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,iCAAiC,CAC/C,GAAG,EAAE,2BAA2B,GAC/B,IAAI,CAiGN"}
@@ -14,8 +14,11 @@
14
14
  * asserts set equality — no typed-error involvement.
15
15
  */
16
16
  import { Effect } from "effect";
17
+ import { responseFrame } from "../../../helpers.js";
18
+ import { isJsonRpcStringId, jsonRpcStringId, } from "../../../schema/json-rpc.js";
17
19
  import { registerProperty } from "../registry.js";
18
20
  import { acquireFixture, invariant } from "./_fixtures.js";
21
+ import { isRequestFrame } from "../../codec.js";
19
22
  import { AgentsList } from "../../../schema/methods/auth.js";
20
23
  const CATEGORY = "rpc-semantics";
21
24
  const CALL_BUDGET_MS = 5_000;
@@ -44,15 +47,11 @@ export function registerModelEquivalenceClient(ctx) {
44
47
  for (const entry of snap) {
45
48
  if (entry.kind === "inbound" &&
46
49
  entry.frame !== null &&
47
- entry.frame.type === "request" &&
50
+ isRequestFrame(entry.frame) &&
48
51
  entry.frame.method === AgentsList.name) {
49
- const response = {
50
- jsonrpc: "2.0",
51
- type: "response",
52
- direction: "c2s",
53
- id: entry.frame.id,
52
+ const response = responseFrame(entry.frame.id, {
54
53
  result: { agents: {} },
55
- };
54
+ });
56
55
  yield* fx.window.emitTaggedResponse({
57
56
  connection: fx.connection,
58
57
  base: response,
@@ -70,7 +69,7 @@ export function registerModelEquivalenceClient(ctx) {
70
69
  }), Effect.mapError((e) => "_tag" in e && e._tag === "RealClientRpcError"
71
70
  ? invariant(CATEGORY, PROPERTY_MODEL_EQUIVALENCE_CLIENT, `agents/list rejected: ${e.kind} (${e.documentedErrorTag ?? "null"})`)
72
71
  : e));
73
- if (result.type !== "response") {
72
+ if (!("result" in result)) {
74
73
  return yield* Effect.fail(invariant(CATEGORY, PROPERTY_MODEL_EQUIVALENCE_CLIENT, "real client surfaced non-response frame"));
75
74
  }
76
75
  })));
@@ -94,13 +93,9 @@ export function registerRequestIdUniquenessClient(ctx) {
94
93
  // Emit a spurious response with an id the client never sent.
95
94
  const spuriousId = "spurious-id-that-was-never-requested";
96
95
  yield* fx.connection
97
- .emitResponse({
98
- jsonrpc: "2.0",
99
- type: "response",
100
- direction: "c2s",
101
- id: spuriousId,
96
+ .emitResponse(responseFrame(jsonRpcStringId(spuriousId), {
102
97
  result: { agents: {} },
103
- })
98
+ }))
104
99
  .pipe(Effect.orElseSucceed(() => undefined));
105
100
  // Fork a responder that correctly routes the matching response.
106
101
  yield* Effect.forkScoped(Effect.gen(function* () {
@@ -111,16 +106,12 @@ export function registerRequestIdUniquenessClient(ctx) {
111
106
  for (const entry of snap) {
112
107
  if (entry.kind === "inbound" &&
113
108
  entry.frame !== null &&
114
- entry.frame.type === "request" &&
109
+ isRequestFrame(entry.frame) &&
115
110
  entry.frame.method === AgentsList.name) {
116
111
  yield* fx.connection
117
- .emitResponse({
118
- jsonrpc: "2.0",
119
- type: "response",
120
- direction: "c2s",
121
- id: entry.frame.id,
112
+ .emitResponse(responseFrame(entry.frame.id, {
122
113
  result: { agents: {} },
123
- })
114
+ }))
124
115
  .pipe(Effect.orElseSucceed(() => undefined));
125
116
  responded = true;
126
117
  break;
@@ -135,7 +126,7 @@ export function registerRequestIdUniquenessClient(ctx) {
135
126
  }), Effect.mapError((e) => "_tag" in e && e._tag === "RealClientRpcError"
136
127
  ? invariant(CATEGORY, PROPERTY_REQUEST_ID_UNIQUENESS_CLIENT, `agents/list rejected: ${e.kind}`)
137
128
  : e));
138
- if (result.id !== undefined) {
129
+ if ("id" in result && isJsonRpcStringId(result.id)) {
139
130
  // Inspect: the resolved id must appear in the outboundIdFeed —
140
131
  // any resolution via the spurious id is a cross-wiring bug.
141
132
  const outbound = yield* fx.handle.call.outboundIdFeed;
@@ -1 +1 @@
1
- {"version":3,"file":"rpc-semantics.js","sourceRoot":"","sources":["../../../../src/testing/conformance/client/rpc-semantics.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rpc-semantics.js","sourceRoot":"","sources":["../../../../src/testing/conformance/client/rpc-semantics.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EACL,iBAAiB,EACjB,eAAe,GAChB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAE7D,MAAM,QAAQ,GAAG,eAAwB,CAAC;AAC1C,MAAM,cAAc,GAAG,KAAK,CAAC;AAC7B,MAAM,iCAAiC,GAAG,0BAA0B,CAAC;AACrE,MAAM,qCAAqC,GAAG,8BAA8B,CAAC;AAE7E;;;;;;;;GAQG;AACH,MAAM,UAAU,8BAA8B,CAC5C,GAAgC;IAEhC,gBAAgB,CACd,GAAG,EACH,QAAQ,EACR,iCAAiC,EACjC,0EAA0E,EAC1E,MAAM,CAAC,MAAM,CACX,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QAClB,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,cAAc,CAC9B,GAAG,EACH,QAAQ,EACR,iCAAiC,CAClC,CAAC;QACF,gEAAgE;QAChE,kEAAkE;QAClE,cAAc;QACd,KAAK,CAAC,CAAC,MAAM,CAAC,UAAU,CACtB,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,IAAI,SAAS,GAAG,KAAK,CAAC;YACtB,OAAO,CAAC,SAAS,EAAE,CAAC;gBAClB,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;gBACjC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC;gBACnD,KAAK,MAAM,KAAK,IAAI,IAAI,EAAE,CAAC;oBACzB,IACE,KAAK,CAAC,IAAI,KAAK,SAAS;wBACxB,KAAK,CAAC,KAAK,KAAK,IAAI;wBACpB,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC;wBAC3B,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,UAAU,CAAC,IAAI,EACtC,CAAC;wBACD,MAAM,QAAQ,GAAG,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,EAAE;4BAC7C,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;yBACvB,CAAC,CAAC;wBACH,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,kBAAkB,CAAC;4BAClC,UAAU,EAAE,EAAE,CAAC,UAAU;4BACzB,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,EAAE;yBAC5B,CAAC,CAAC;wBACH,SAAS,GAAG,IAAI,CAAC;wBACjB,MAAM;oBACR,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CACH,CAAC;QACF,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CACjE,MAAM,CAAC,WAAW,CAAC;YACjB,QAAQ,EAAE,GAAG,cAAc,SAAS;YACpC,SAAS,EAAE,GAAG,EAAE,CACd,SAAS,CACP,QAAQ,EACR,iCAAiC,EACjC,2CAA2C,cAAc,IAAI,CAC9D;SACJ,CAAC,EACF,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CACpB,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,oBAAoB;YAC5C,CAAC,CAAC,SAAS,CACP,QAAQ,EACR,iCAAiC,EACjC,yBAAyB,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,kBAAkB,IAAI,MAAM,GAAG,CACtE;YACH,CAAC,CAAC,CAAC,CACN,CACF,CAAC;QACF,IAAI,CAAC,CAAC,QAAQ,IAAI,MAAM,CAAC,EAAE,CAAC;YAC1B,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CACvB,SAAS,CACP,QAAQ,EACR,iCAAiC,EACjC,yCAAyC,CAC1C,CACF,CAAC;QACJ,CAAC;IACH,CAAC,CAAC,CACH,CACF,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,iCAAiC,CAC/C,GAAgC;IAEhC,gBAAgB,CACd,GAAG,EACH,QAAQ,EACR,qCAAqC,EACrC,oEAAoE,EACpE,MAAM,CAAC,MAAM,CACX,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QAClB,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,cAAc,CAC9B,GAAG,EACH,QAAQ,EACR,qCAAqC,CACtC,CAAC;QACF,6DAA6D;QAC7D,MAAM,UAAU,GAAG,sCAAsC,CAAC;QAC1D,KAAK,CAAC,CAAC,EAAE,CAAC,UAAU;aACjB,YAAY,CACX,aAAa,CAAC,eAAe,CAAC,UAAU,CAAC,EAAE;YACzC,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;SACvB,CAAC,CACH;aACA,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;QAC/C,gEAAgE;QAChE,KAAK,CAAC,CAAC,MAAM,CAAC,UAAU,CACtB,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,IAAI,SAAS,GAAG,KAAK,CAAC;YACtB,OAAO,CAAC,SAAS,EAAE,CAAC;gBAClB,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;gBACjC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC;gBACnD,KAAK,MAAM,KAAK,IAAI,IAAI,EAAE,CAAC;oBACzB,IACE,KAAK,CAAC,IAAI,KAAK,SAAS;wBACxB,KAAK,CAAC,KAAK,KAAK,IAAI;wBACpB,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC;wBAC3B,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,UAAU,CAAC,IAAI,EACtC,CAAC;wBACD,KAAK,CAAC,CAAC,EAAE,CAAC,UAAU;6BACjB,YAAY,CACX,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,EAAE;4BAC5B,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;yBACvB,CAAC,CACH;6BACA,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;wBAC/C,SAAS,GAAG,IAAI,CAAC;wBACjB,MAAM;oBACR,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CACH,CAAC;QACF,yEAAyE;QACzE,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CACjE,MAAM,CAAC,WAAW,CAAC;YACjB,QAAQ,EAAE,GAAG,cAAc,SAAS;YACpC,SAAS,EAAE,GAAG,EAAE,CACd,SAAS,CACP,QAAQ,EACR,qCAAqC,EACrC,sCAAsC,cAAc,8BAA8B,CACnF;SACJ,CAAC,EACF,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CACpB,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,oBAAoB;YAC5C,CAAC,CAAC,SAAS,CACP,QAAQ,EACR,qCAAqC,EACrC,yBAAyB,CAAC,CAAC,IAAI,EAAE,CAClC;YACH,CAAC,CAAC,CAAC,CACN,CACF,CAAC;QACF,IAAI,IAAI,IAAI,MAAM,IAAI,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;YACnD,+DAA+D;YAC/D,4DAA4D;YAC5D,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC;YACtD,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;gBAClC,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CACvB,SAAS,CACP,QAAQ,EACR,qCAAqC,EACrC,eAAe,MAAM,CAAC,EAAE,0CAA0C,CACnE,CACF,CAAC;YACJ,CAAC;YACD,IAAI,MAAM,CAAC,EAAE,KAAK,UAAU,EAAE,CAAC;gBAC7B,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CACvB,SAAS,CACP,QAAQ,EACR,qCAAqC,EACrC,uCAAuC,CACxC,CACF,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CACH,CACF,CAAC;AACJ,CAAC"}