@optimystic/db-core 0.14.0 → 0.16.2

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 (301) hide show
  1. package/dist/src/blocks/block-store.d.ts +18 -1
  2. package/dist/src/blocks/block-store.d.ts.map +1 -1
  3. package/dist/src/blocks/helpers.d.ts +2 -2
  4. package/dist/src/blocks/helpers.d.ts.map +1 -1
  5. package/dist/src/blocks/helpers.js +2 -2
  6. package/dist/src/blocks/helpers.js.map +1 -1
  7. package/dist/src/btree/btree.d.ts +27 -6
  8. package/dist/src/btree/btree.d.ts.map +1 -1
  9. package/dist/src/btree/btree.js +104 -61
  10. package/dist/src/btree/btree.js.map +1 -1
  11. package/dist/src/chain/chain.d.ts.map +1 -1
  12. package/dist/src/chain/chain.js +11 -1
  13. package/dist/src/chain/chain.js.map +1 -1
  14. package/dist/src/cluster/index.d.ts +1 -0
  15. package/dist/src/cluster/index.d.ts.map +1 -1
  16. package/dist/src/cluster/index.js +1 -0
  17. package/dist/src/cluster/index.js.map +1 -1
  18. package/dist/src/cluster/membership.d.ts +49 -0
  19. package/dist/src/cluster/membership.d.ts.map +1 -0
  20. package/dist/src/cluster/membership.js +75 -0
  21. package/dist/src/cluster/membership.js.map +1 -0
  22. package/dist/src/cluster/structs.d.ts +50 -1
  23. package/dist/src/cluster/structs.d.ts.map +1 -1
  24. package/dist/src/cluster/structs.js +9 -1
  25. package/dist/src/cluster/structs.js.map +1 -1
  26. package/dist/src/cohort-topic/addressing.d.ts +8 -2
  27. package/dist/src/cohort-topic/addressing.d.ts.map +1 -1
  28. package/dist/src/cohort-topic/addressing.js +11 -3
  29. package/dist/src/cohort-topic/addressing.js.map +1 -1
  30. package/dist/src/cohort-topic/antidos/bootstrap-evidence.d.ts +13 -7
  31. package/dist/src/cohort-topic/antidos/bootstrap-evidence.d.ts.map +1 -1
  32. package/dist/src/cohort-topic/antidos/bootstrap-evidence.js +17 -6
  33. package/dist/src/cohort-topic/antidos/bootstrap-evidence.js.map +1 -1
  34. package/dist/src/cohort-topic/antidos/replay-guard.d.ts +17 -0
  35. package/dist/src/cohort-topic/antidos/replay-guard.d.ts.map +1 -1
  36. package/dist/src/cohort-topic/antidos/replay-guard.js +33 -0
  37. package/dist/src/cohort-topic/antidos/replay-guard.js.map +1 -1
  38. package/dist/src/cohort-topic/antidos/topic-budget.d.ts +7 -0
  39. package/dist/src/cohort-topic/antidos/topic-budget.d.ts.map +1 -1
  40. package/dist/src/cohort-topic/antidos/topic-budget.js +8 -2
  41. package/dist/src/cohort-topic/antidos/topic-budget.js.map +1 -1
  42. package/dist/src/cohort-topic/coldstart.d.ts +34 -14
  43. package/dist/src/cohort-topic/coldstart.d.ts.map +1 -1
  44. package/dist/src/cohort-topic/coldstart.js +25 -11
  45. package/dist/src/cohort-topic/coldstart.js.map +1 -1
  46. package/dist/src/cohort-topic/gossip/bus.d.ts +12 -1
  47. package/dist/src/cohort-topic/gossip/bus.d.ts.map +1 -1
  48. package/dist/src/cohort-topic/gossip/bus.js +27 -1
  49. package/dist/src/cohort-topic/gossip/bus.js.map +1 -1
  50. package/dist/src/cohort-topic/gossip/view.d.ts +8 -0
  51. package/dist/src/cohort-topic/gossip/view.d.ts.map +1 -1
  52. package/dist/src/cohort-topic/gossip/view.js +17 -1
  53. package/dist/src/cohort-topic/gossip/view.js.map +1 -1
  54. package/dist/src/cohort-topic/member-engine.d.ts +10 -3
  55. package/dist/src/cohort-topic/member-engine.d.ts.map +1 -1
  56. package/dist/src/cohort-topic/member-engine.js +29 -14
  57. package/dist/src/cohort-topic/member-engine.js.map +1 -1
  58. package/dist/src/cohort-topic/membership/publisher.d.ts +14 -7
  59. package/dist/src/cohort-topic/membership/publisher.d.ts.map +1 -1
  60. package/dist/src/cohort-topic/membership/publisher.js +15 -27
  61. package/dist/src/cohort-topic/membership/publisher.js.map +1 -1
  62. package/dist/src/cohort-topic/membership/verifier.d.ts +35 -0
  63. package/dist/src/cohort-topic/membership/verifier.d.ts.map +1 -1
  64. package/dist/src/cohort-topic/membership/verifier.js +88 -3
  65. package/dist/src/cohort-topic/membership/verifier.js.map +1 -1
  66. package/dist/src/cohort-topic/promotion.d.ts +7 -0
  67. package/dist/src/cohort-topic/promotion.d.ts.map +1 -1
  68. package/dist/src/cohort-topic/promotion.js +16 -2
  69. package/dist/src/cohort-topic/promotion.js.map +1 -1
  70. package/dist/src/cohort-topic/registration/renewal.d.ts +18 -0
  71. package/dist/src/cohort-topic/registration/renewal.d.ts.map +1 -1
  72. package/dist/src/cohort-topic/registration/renewal.js +54 -0
  73. package/dist/src/cohort-topic/registration/renewal.js.map +1 -1
  74. package/dist/src/cohort-topic/registration/types.d.ts +12 -0
  75. package/dist/src/cohort-topic/registration/types.d.ts.map +1 -1
  76. package/dist/src/cohort-topic/registration/types.js +14 -0
  77. package/dist/src/cohort-topic/registration/types.js.map +1 -1
  78. package/dist/src/cohort-topic/service.d.ts +4 -3
  79. package/dist/src/cohort-topic/service.d.ts.map +1 -1
  80. package/dist/src/cohort-topic/service.js +38 -12
  81. package/dist/src/cohort-topic/service.js.map +1 -1
  82. package/dist/src/cohort-topic/sig/payloads.d.ts +23 -7
  83. package/dist/src/cohort-topic/sig/payloads.d.ts.map +1 -1
  84. package/dist/src/cohort-topic/sig/payloads.js +22 -6
  85. package/dist/src/cohort-topic/sig/payloads.js.map +1 -1
  86. package/dist/src/cohort-topic/traffic.d.ts +6 -0
  87. package/dist/src/cohort-topic/traffic.d.ts.map +1 -1
  88. package/dist/src/cohort-topic/traffic.js +16 -1
  89. package/dist/src/cohort-topic/traffic.js.map +1 -1
  90. package/dist/src/cohort-topic/walk.d.ts +22 -7
  91. package/dist/src/cohort-topic/walk.d.ts.map +1 -1
  92. package/dist/src/cohort-topic/walk.js +78 -18
  93. package/dist/src/cohort-topic/walk.js.map +1 -1
  94. package/dist/src/cohort-topic/wire/codec.d.ts +3 -1
  95. package/dist/src/cohort-topic/wire/codec.d.ts.map +1 -1
  96. package/dist/src/cohort-topic/wire/codec.js +7 -1
  97. package/dist/src/cohort-topic/wire/codec.js.map +1 -1
  98. package/dist/src/cohort-topic/wire/index.d.ts +1 -1
  99. package/dist/src/cohort-topic/wire/index.d.ts.map +1 -1
  100. package/dist/src/cohort-topic/wire/index.js +1 -1
  101. package/dist/src/cohort-topic/wire/index.js.map +1 -1
  102. package/dist/src/cohort-topic/wire/payloads.d.ts +5 -4
  103. package/dist/src/cohort-topic/wire/payloads.d.ts.map +1 -1
  104. package/dist/src/cohort-topic/wire/payloads.js +14 -5
  105. package/dist/src/cohort-topic/wire/payloads.js.map +1 -1
  106. package/dist/src/cohort-topic/wire/primitives.d.ts +65 -0
  107. package/dist/src/cohort-topic/wire/primitives.d.ts.map +1 -0
  108. package/dist/src/cohort-topic/wire/primitives.js +173 -0
  109. package/dist/src/cohort-topic/wire/primitives.js.map +1 -0
  110. package/dist/src/cohort-topic/wire/types.d.ts +132 -5
  111. package/dist/src/cohort-topic/wire/types.d.ts.map +1 -1
  112. package/dist/src/cohort-topic/wire/validate.d.ts +15 -5
  113. package/dist/src/cohort-topic/wire/validate.d.ts.map +1 -1
  114. package/dist/src/cohort-topic/wire/validate.js +146 -123
  115. package/dist/src/cohort-topic/wire/validate.js.map +1 -1
  116. package/dist/src/collection/collection.d.ts +23 -12
  117. package/dist/src/collection/collection.d.ts.map +1 -1
  118. package/dist/src/collection/collection.js +111 -35
  119. package/dist/src/collection/collection.js.map +1 -1
  120. package/dist/src/collection/struct.d.ts +37 -2
  121. package/dist/src/collection/struct.d.ts.map +1 -1
  122. package/dist/src/collection/struct.js +16 -1
  123. package/dist/src/collection/struct.js.map +1 -1
  124. package/dist/src/collections/tree/tree.d.ts +18 -1
  125. package/dist/src/collections/tree/tree.d.ts.map +1 -1
  126. package/dist/src/collections/tree/tree.js +36 -6
  127. package/dist/src/collections/tree/tree.js.map +1 -1
  128. package/dist/src/index.d.ts +1 -0
  129. package/dist/src/index.d.ts.map +1 -1
  130. package/dist/src/index.js +1 -0
  131. package/dist/src/index.js.map +1 -1
  132. package/dist/src/log/log.d.ts +26 -3
  133. package/dist/src/log/log.d.ts.map +1 -1
  134. package/dist/src/log/log.js +34 -7
  135. package/dist/src/log/log.js.map +1 -1
  136. package/dist/src/log/struct.d.ts +5 -4
  137. package/dist/src/log/struct.d.ts.map +1 -1
  138. package/dist/src/log/struct.js.map +1 -1
  139. package/dist/src/matchmaking/wire.d.ts +2 -1
  140. package/dist/src/matchmaking/wire.d.ts.map +1 -1
  141. package/dist/src/matchmaking/wire.js +13 -92
  142. package/dist/src/matchmaking/wire.js.map +1 -1
  143. package/dist/src/network/i-key-network.d.ts +9 -0
  144. package/dist/src/network/i-key-network.d.ts.map +1 -1
  145. package/dist/src/network/i-repo.d.ts +8 -0
  146. package/dist/src/network/i-repo.d.ts.map +1 -1
  147. package/dist/src/network/struct.d.ts +10 -0
  148. package/dist/src/network/struct.d.ts.map +1 -1
  149. package/dist/src/reactivity/push-state.d.ts.map +1 -1
  150. package/dist/src/reactivity/push-state.js +4 -33
  151. package/dist/src/reactivity/push-state.js.map +1 -1
  152. package/dist/src/reactivity/wire-validate.d.ts +7 -22
  153. package/dist/src/reactivity/wire-validate.d.ts.map +1 -1
  154. package/dist/src/reactivity/wire-validate.js +7 -73
  155. package/dist/src/reactivity/wire-validate.js.map +1 -1
  156. package/dist/src/reactivity/wire.js +3 -3
  157. package/dist/src/reactivity/wire.js.map +1 -1
  158. package/dist/src/testing/async-wait.d.ts +23 -0
  159. package/dist/src/testing/async-wait.d.ts.map +1 -0
  160. package/dist/src/testing/async-wait.js +42 -0
  161. package/dist/src/testing/async-wait.js.map +1 -0
  162. package/dist/src/testing/index.d.ts +3 -0
  163. package/dist/src/testing/index.d.ts.map +1 -0
  164. package/dist/src/testing/index.js +3 -0
  165. package/dist/src/testing/index.js.map +1 -0
  166. package/dist/src/testing/test-transactor.d.ts +44 -0
  167. package/dist/src/testing/test-transactor.d.ts.map +1 -0
  168. package/dist/src/testing/test-transactor.js +423 -0
  169. package/dist/src/testing/test-transactor.js.map +1 -0
  170. package/dist/src/transaction/actions-engine.d.ts +6 -3
  171. package/dist/src/transaction/actions-engine.d.ts.map +1 -1
  172. package/dist/src/transaction/actions-engine.js +8 -7
  173. package/dist/src/transaction/actions-engine.js.map +1 -1
  174. package/dist/src/transaction/coordinator.d.ts +43 -22
  175. package/dist/src/transaction/coordinator.d.ts.map +1 -1
  176. package/dist/src/transaction/coordinator.js +443 -178
  177. package/dist/src/transaction/coordinator.js.map +1 -1
  178. package/dist/src/transaction/errors.d.ts +82 -0
  179. package/dist/src/transaction/errors.d.ts.map +1 -0
  180. package/dist/src/transaction/errors.js +93 -0
  181. package/dist/src/transaction/errors.js.map +1 -0
  182. package/dist/src/transaction/index.d.ts +6 -3
  183. package/dist/src/transaction/index.d.ts.map +1 -1
  184. package/dist/src/transaction/index.js +4 -2
  185. package/dist/src/transaction/index.js.map +1 -1
  186. package/dist/src/transaction/operations-hash.d.ts +119 -0
  187. package/dist/src/transaction/operations-hash.d.ts.map +1 -0
  188. package/dist/src/transaction/operations-hash.js +180 -0
  189. package/dist/src/transaction/operations-hash.js.map +1 -0
  190. package/dist/src/transaction/read-dependency-collector.d.ts +43 -0
  191. package/dist/src/transaction/read-dependency-collector.d.ts.map +1 -0
  192. package/dist/src/transaction/read-dependency-collector.js +69 -0
  193. package/dist/src/transaction/read-dependency-collector.js.map +1 -0
  194. package/dist/src/transaction/session.d.ts +12 -3
  195. package/dist/src/transaction/session.d.ts.map +1 -1
  196. package/dist/src/transaction/session.js +35 -9
  197. package/dist/src/transaction/session.js.map +1 -1
  198. package/dist/src/transaction/transaction.d.ts +162 -1
  199. package/dist/src/transaction/transaction.d.ts.map +1 -1
  200. package/dist/src/transaction/transaction.js +85 -3
  201. package/dist/src/transaction/transaction.js.map +1 -1
  202. package/dist/src/transaction/validator.d.ts +3 -11
  203. package/dist/src/transaction/validator.d.ts.map +1 -1
  204. package/dist/src/transaction/validator.js +69 -28
  205. package/dist/src/transaction/validator.js.map +1 -1
  206. package/dist/src/transactor/network-transactor.d.ts +35 -0
  207. package/dist/src/transactor/network-transactor.d.ts.map +1 -1
  208. package/dist/src/transactor/network-transactor.js +146 -40
  209. package/dist/src/transactor/network-transactor.js.map +1 -1
  210. package/dist/src/transactor/transactor-source.d.ts +19 -5
  211. package/dist/src/transactor/transactor-source.d.ts.map +1 -1
  212. package/dist/src/transactor/transactor-source.js +43 -11
  213. package/dist/src/transactor/transactor-source.js.map +1 -1
  214. package/dist/src/transform/atomic-proxy.d.ts +35 -5
  215. package/dist/src/transform/atomic-proxy.d.ts.map +1 -1
  216. package/dist/src/transform/atomic-proxy.js +39 -7
  217. package/dist/src/transform/atomic-proxy.js.map +1 -1
  218. package/dist/src/transform/cache-source.d.ts +36 -5
  219. package/dist/src/transform/cache-source.d.ts.map +1 -1
  220. package/dist/src/transform/cache-source.js +84 -8
  221. package/dist/src/transform/cache-source.js.map +1 -1
  222. package/dist/src/transform/helpers.d.ts.map +1 -1
  223. package/dist/src/transform/helpers.js +8 -2
  224. package/dist/src/transform/helpers.js.map +1 -1
  225. package/dist/src/transform/tracker.d.ts +17 -2
  226. package/dist/src/transform/tracker.d.ts.map +1 -1
  227. package/dist/src/transform/tracker.js +66 -11
  228. package/dist/src/transform/tracker.js.map +1 -1
  229. package/dist/src/utility/backoff.d.ts +48 -0
  230. package/dist/src/utility/backoff.d.ts.map +1 -0
  231. package/dist/src/utility/backoff.js +60 -0
  232. package/dist/src/utility/backoff.js.map +1 -0
  233. package/dist/src/utility/pending.d.ts +1 -0
  234. package/dist/src/utility/pending.d.ts.map +1 -1
  235. package/dist/src/utility/pending.js +3 -1
  236. package/dist/src/utility/pending.js.map +1 -1
  237. package/package.json +4 -4
  238. package/src/blocks/block-store.ts +19 -1
  239. package/src/blocks/helpers.ts +3 -3
  240. package/src/btree/btree.ts +108 -63
  241. package/src/chain/chain.ts +11 -1
  242. package/src/cluster/index.ts +1 -0
  243. package/src/cluster/membership.ts +85 -0
  244. package/src/cluster/structs.ts +51 -1
  245. package/src/cohort-topic/addressing.ts +12 -4
  246. package/src/cohort-topic/antidos/bootstrap-evidence.ts +21 -9
  247. package/src/cohort-topic/antidos/replay-guard.ts +37 -0
  248. package/src/cohort-topic/antidos/topic-budget.ts +17 -2
  249. package/src/cohort-topic/coldstart.ts +48 -15
  250. package/src/cohort-topic/gossip/bus.ts +39 -2
  251. package/src/cohort-topic/gossip/view.ts +26 -1
  252. package/src/cohort-topic/member-engine.ts +36 -15
  253. package/src/cohort-topic/membership/publisher.ts +25 -33
  254. package/src/cohort-topic/membership/verifier.ts +119 -3
  255. package/src/cohort-topic/promotion.ts +23 -2
  256. package/src/cohort-topic/registration/renewal.ts +73 -1
  257. package/src/cohort-topic/registration/types.ts +15 -0
  258. package/src/cohort-topic/service.ts +41 -15
  259. package/src/cohort-topic/sig/payloads.ts +29 -9
  260. package/src/cohort-topic/traffic.ts +23 -1
  261. package/src/cohort-topic/walk.ts +95 -24
  262. package/src/cohort-topic/wire/codec.ts +12 -0
  263. package/src/cohort-topic/wire/index.ts +2 -0
  264. package/src/cohort-topic/wire/payloads.ts +14 -5
  265. package/src/cohort-topic/wire/primitives.ts +188 -0
  266. package/src/cohort-topic/wire/types.ts +136 -4
  267. package/src/cohort-topic/wire/validate.ts +168 -134
  268. package/src/collection/collection.ts +123 -40
  269. package/src/collection/struct.ts +44 -2
  270. package/src/collections/tree/tree.ts +42 -5
  271. package/src/index.ts +1 -0
  272. package/src/log/log.ts +37 -9
  273. package/src/log/struct.ts +5 -4
  274. package/src/matchmaking/wire.ts +25 -102
  275. package/src/network/i-key-network.ts +10 -0
  276. package/src/network/i-repo.ts +8 -0
  277. package/src/network/struct.ts +10 -0
  278. package/src/reactivity/push-state.ts +4 -37
  279. package/src/reactivity/wire-validate.ts +7 -81
  280. package/src/reactivity/wire.ts +3 -3
  281. package/src/testing/async-wait.ts +65 -0
  282. package/src/testing/index.ts +2 -0
  283. package/src/testing/test-transactor.ts +468 -0
  284. package/src/transaction/actions-engine.ts +8 -6
  285. package/src/transaction/coordinator.ts +498 -229
  286. package/src/transaction/errors.ts +91 -0
  287. package/src/transaction/index.ts +23 -3
  288. package/src/transaction/operations-hash.ts +196 -0
  289. package/src/transaction/read-dependency-collector.ts +78 -0
  290. package/src/transaction/session.ts +37 -9
  291. package/src/transaction/transaction.ts +211 -4
  292. package/src/transaction/validator.ts +73 -48
  293. package/src/transactor/network-transactor.ts +164 -49
  294. package/src/transactor/transactor-source.ts +47 -12
  295. package/src/transform/atomic-proxy.ts +92 -49
  296. package/src/transform/cache-source.ts +87 -9
  297. package/src/transform/helpers.ts +8 -2
  298. package/src/transform/tracker.ts +69 -11
  299. package/src/utility/backoff.ts +95 -0
  300. package/src/utility/pending.ts +3 -1
  301. package/src/transaction/context.ts +0 -103
@@ -1 +1 @@
1
- {"version":3,"file":"push-state.js","sourceRoot":"","sources":["../../../src/reactivity/push-state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"push-state.js","sourceRoot":"","sources":["../../../src/reactivity/push-state.ts"],"names":[],"mappings":"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"}
@@ -2,27 +2,12 @@
2
2
  * Reactivity — shared wire-validation primitives.
3
3
  *
4
4
  * The reactivity message codecs ({@link import("./wire.js")}, {@link import("./push-state.js")},
5
- * {@link import("./backfill.js")}, {@link import("./resume.js")}) all decode untrusted JSON into
6
- * validated V1 shapes with the same structural checks. Those primitives live here so each codec module
7
- * narrows fields the same way (DRY) every helper throws {@link CohortWireError} on a defect, matching
8
- * the cohort-topic wire conventions (base64url byte fields, finite/integer numbers, `v: 1`).
5
+ * {@link import("./backfill.js")}, {@link import("./resume.js")}, plus checkpoint / rotation / recover)
6
+ * decode untrusted JSON into validated V1 shapes with the same structural checks the rest of the
7
+ * substrate uses. Those generic primitives now live in one place
8
+ * {@link import("../cohort-topic/wire/primitives.js")} so a hardening tweak lands once; this module is
9
+ * a thin re-export kept so the reactivity codecs import from a sibling path. Every helper throws
10
+ * {@link CohortWireError} on a defect (base64url byte fields, finite/integer numbers, `v: 1`).
9
11
  */
10
- /** Throw a {@link CohortWireError} with `message`. */
11
- export declare function failWire(message: string): never;
12
- /** Narrow `value` to a plain object (not null, not an array), or throw. */
13
- export declare function asObject(value: unknown, what: string): Record<string, unknown>;
14
- /** Require `obj.v === 1`. */
15
- export declare function requireV1(obj: Record<string, unknown>, what: string): void;
16
- /** Require `obj[key]` to be a string; returns it. */
17
- export declare function reqString(obj: Record<string, unknown>, key: string, what: string): string;
18
- /** Require `obj[key]` to be a boolean; returns it. */
19
- export declare function reqBoolean(obj: Record<string, unknown>, key: string, what: string): boolean;
20
- /** Require `obj[key]` to be a finite number; returns it. */
21
- export declare function reqFiniteNumber(obj: Record<string, unknown>, key: string, what: string): number;
22
- /** Require `obj[key]` to be an integer `>= min` (and `<= max` when supplied); returns it. */
23
- export declare function reqIntInRange(obj: Record<string, unknown>, key: string, what: string, min: number, max?: number): number;
24
- /** Assert a base64url string decodes cleanly; returns it unchanged. */
25
- export declare function b64urlField(value: string, key: string, what: string): string;
26
- /** Require `value` to be an array of strings; returns it (callers map each element through {@link b64urlField}). */
27
- export declare function reqStringArray(value: unknown, key: string, what: string): string[];
12
+ export * from "../cohort-topic/wire/primitives.js";
28
13
  //# sourceMappingURL=wire-validate.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"wire-validate.d.ts","sourceRoot":"","sources":["../../../src/reactivity/wire-validate.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAKH,sDAAsD;AACtD,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,CAE/C;AAED,2EAA2E;AAC3E,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAK9E;AAED,6BAA6B;AAC7B,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAI1E;AAED,qDAAqD;AACrD,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAMzF;AAED,sDAAsD;AACtD,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAM3F;AAED,4DAA4D;AAC5D,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAM/F;AAED,6FAA6F;AAC7F,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAOxH;AAED,uEAAuE;AACvE,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAO5E;AAED,oHAAoH;AACpH,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAKlF"}
1
+ {"version":3,"file":"wire-validate.d.ts","sourceRoot":"","sources":["../../../src/reactivity/wire-validate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,cAAc,oCAAoC,CAAC"}
@@ -2,78 +2,12 @@
2
2
  * Reactivity — shared wire-validation primitives.
3
3
  *
4
4
  * The reactivity message codecs ({@link import("./wire.js")}, {@link import("./push-state.js")},
5
- * {@link import("./backfill.js")}, {@link import("./resume.js")}) all decode untrusted JSON into
6
- * validated V1 shapes with the same structural checks. Those primitives live here so each codec module
7
- * narrows fields the same way (DRY) every helper throws {@link CohortWireError} on a defect, matching
8
- * the cohort-topic wire conventions (base64url byte fields, finite/integer numbers, `v: 1`).
5
+ * {@link import("./backfill.js")}, {@link import("./resume.js")}, plus checkpoint / rotation / recover)
6
+ * decode untrusted JSON into validated V1 shapes with the same structural checks the rest of the
7
+ * substrate uses. Those generic primitives now live in one place
8
+ * {@link import("../cohort-topic/wire/primitives.js")} so a hardening tweak lands once; this module is
9
+ * a thin re-export kept so the reactivity codecs import from a sibling path. Every helper throws
10
+ * {@link CohortWireError} on a defect (base64url byte fields, finite/integer numbers, `v: 1`).
9
11
  */
10
- import { b64urlToBytes } from "../cohort-topic/wire/codec.js";
11
- import { CohortWireError } from "../cohort-topic/wire/validate.js";
12
- /** Throw a {@link CohortWireError} with `message`. */
13
- export function failWire(message) {
14
- throw new CohortWireError(message);
15
- }
16
- /** Narrow `value` to a plain object (not null, not an array), or throw. */
17
- export function asObject(value, what) {
18
- if (typeof value !== "object" || value === null || Array.isArray(value)) {
19
- failWire(`${what}: expected an object`);
20
- }
21
- return value;
22
- }
23
- /** Require `obj.v === 1`. */
24
- export function requireV1(obj, what) {
25
- if (obj["v"] !== 1) {
26
- failWire(`${what}: expected v === 1, got ${JSON.stringify(obj["v"])}`);
27
- }
28
- }
29
- /** Require `obj[key]` to be a string; returns it. */
30
- export function reqString(obj, key, what) {
31
- const value = obj[key];
32
- if (typeof value !== "string") {
33
- failWire(`${what}: field "${key}" must be a string`);
34
- }
35
- return value;
36
- }
37
- /** Require `obj[key]` to be a boolean; returns it. */
38
- export function reqBoolean(obj, key, what) {
39
- const value = obj[key];
40
- if (typeof value !== "boolean") {
41
- failWire(`${what}: field "${key}" must be a boolean`);
42
- }
43
- return value;
44
- }
45
- /** Require `obj[key]` to be a finite number; returns it. */
46
- export function reqFiniteNumber(obj, key, what) {
47
- const value = obj[key];
48
- if (typeof value !== "number" || !Number.isFinite(value)) {
49
- failWire(`${what}: field "${key}" must be a finite number`);
50
- }
51
- return value;
52
- }
53
- /** Require `obj[key]` to be an integer `>= min` (and `<= max` when supplied); returns it. */
54
- export function reqIntInRange(obj, key, what, min, max) {
55
- const value = reqFiniteNumber(obj, key, what);
56
- if (!Number.isInteger(value) || value < min || (max !== undefined && value > max)) {
57
- const bound = max === undefined ? `>= ${min}` : `in ${min}..${max}`;
58
- failWire(`${what}: field "${key}" must be an integer ${bound}, got ${value}`);
59
- }
60
- return value;
61
- }
62
- /** Assert a base64url string decodes cleanly; returns it unchanged. */
63
- export function b64urlField(value, key, what) {
64
- try {
65
- b64urlToBytes(value);
66
- }
67
- catch {
68
- failWire(`${what}: field "${key}" is not valid base64url`);
69
- }
70
- return value;
71
- }
72
- /** Require `value` to be an array of strings; returns it (callers map each element through {@link b64urlField}). */
73
- export function reqStringArray(value, key, what) {
74
- if (!Array.isArray(value) || value.some((entry) => typeof entry !== "string")) {
75
- failWire(`${what}: field "${key}" must be an array of strings`);
76
- }
77
- return value;
78
- }
12
+ export * from "../cohort-topic/wire/primitives.js";
79
13
  //# sourceMappingURL=wire-validate.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"wire-validate.js","sourceRoot":"","sources":["../../../src/reactivity/wire-validate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wire-validate.js","sourceRoot":"","sources":["../../../src/reactivity/wire-validate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,cAAc,oCAAoC,CAAC"}
@@ -22,7 +22,7 @@
22
22
  * base64url block ids verbatim. The `BackfillV1` / `ResumeV1` codecs belong to the sibling tickets.
23
23
  */
24
24
  import { decodeCohortMessage, encodeCohortMessage, DEFAULT_MAX_MESSAGE_BYTES, } from "../cohort-topic/wire/codec.js";
25
- import { asObject, b64urlField, failWire as fail, reqBoolean, reqFiniteNumber, reqIntInRange, reqString, reqStringArray, requireV1, } from "./wire-validate.js";
25
+ import { asObject, b64urlField, failWire as fail, reqBool, reqFiniteNumber, reqIntInRange, reqString, reqStringArray, requireV1, } from "./wire-validate.js";
26
26
  const utf8Encoder = new TextEncoder();
27
27
  const utf8Decoder = new TextDecoder("utf-8", { fatal: true });
28
28
  /** Ceiling for an opaque subscribe app payload, guarding decode allocation. */
@@ -86,7 +86,7 @@ export function validateNotificationV1(value) {
86
86
  const what = "NotificationV1";
87
87
  const obj = asObject(value, what);
88
88
  requireV1(obj, what);
89
- const signers = reqStringArray(obj["signers"], "signers", what);
89
+ const signers = reqStringArray(obj, "signers", what);
90
90
  const out = {
91
91
  v: 1,
92
92
  collectionId: b64urlField(reqString(obj, "collectionId", what), "collectionId", what),
@@ -104,7 +104,7 @@ export function validateNotificationV1(value) {
104
104
  out.rotationHint = validateRotationHint(obj["rotationHint"], `${what}.rotationHint`);
105
105
  }
106
106
  if (obj["invalidation"] !== undefined) {
107
- out.invalidation = reqBoolean(obj, "invalidation", what);
107
+ out.invalidation = reqBool(obj, "invalidation", what);
108
108
  }
109
109
  if (obj["invalidatedActionId"] !== undefined) {
110
110
  out.invalidatedActionId = reqString(obj, "invalidatedActionId", what);
@@ -1 +1 @@
1
- {"version":3,"file":"wire.js","sourceRoot":"","sources":["../../../src/reactivity/wire.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wire.js","sourceRoot":"","sources":["../../../src/reactivity/wire.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ export interface WaitForOptions {
2
+ /** Upper bound before the poll gives up. Default 2_000. */
3
+ timeoutMs?: number;
4
+ /** Poll cadence. Default 10. */
5
+ intervalMs?: number;
6
+ /** Included in the thrown message so a failure says WHAT never became true. */
7
+ description?: string;
8
+ }
9
+ /** Real-time sleep. Retain ONLY for residual cases a condition poll cannot cover. */
10
+ export declare const delay: (ms: number) => Promise<void>;
11
+ /**
12
+ * Poll `predicate` until it returns true or `timeoutMs` elapses; throws on timeout.
13
+ * `predicate` may be sync or async; a thrown/rejected predicate propagates immediately.
14
+ * `undefined` is treated as `false` (not ready yet).
15
+ */
16
+ export declare function waitFor(predicate: () => boolean | Promise<boolean>, opts?: WaitForOptions): Promise<void>;
17
+ /**
18
+ * Poll `fn` until it returns a non-undefined value or `timeoutMs` elapses; throws on timeout.
19
+ * `undefined` means "not ready yet" — callers needing to wait for an actual `undefined`
20
+ * should use `waitFor` on a separate flag.
21
+ */
22
+ export declare function waitForValue<T>(fn: () => T | undefined | Promise<T | undefined>, opts?: WaitForOptions): Promise<T>;
23
+ //# sourceMappingURL=async-wait.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"async-wait.d.ts","sourceRoot":"","sources":["../../../src/testing/async-wait.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAK9B,2DAA2D;IAC3D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gCAAgC;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,+EAA+E;IAC/E,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,qFAAqF;AACrF,eAAO,MAAM,KAAK,GAAI,IAAI,MAAM,KAAG,OAAO,CAAC,IAAI,CACG,CAAC;AAEnD;;;;GAIG;AACH,wBAAsB,OAAO,CAC5B,SAAS,EAAE,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,EAC3C,IAAI,CAAC,EAAE,cAAc,GACnB,OAAO,CAAC,IAAI,CAAC,CAcf;AAED;;;;GAIG;AACH,wBAAsB,YAAY,CAAC,CAAC,EACnC,EAAE,EAAE,MAAM,CAAC,GAAG,SAAS,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,EAChD,IAAI,CAAC,EAAE,cAAc,GACnB,OAAO,CAAC,CAAC,CAAC,CAeZ"}
@@ -0,0 +1,42 @@
1
+ /** Real-time sleep. Retain ONLY for residual cases a condition poll cannot cover. */
2
+ export const delay = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
3
+ /**
4
+ * Poll `predicate` until it returns true or `timeoutMs` elapses; throws on timeout.
5
+ * `predicate` may be sync or async; a thrown/rejected predicate propagates immediately.
6
+ * `undefined` is treated as `false` (not ready yet).
7
+ */
8
+ export async function waitFor(predicate, opts) {
9
+ const { timeoutMs = 2_000, intervalMs = 10, description } = opts ?? {};
10
+ const deadline = Date.now() + timeoutMs;
11
+ for (;;) {
12
+ if (await predicate())
13
+ return;
14
+ if (Date.now() >= deadline) {
15
+ throw new Error(description
16
+ ? `waitFor timed out after ${timeoutMs}ms: ${description}`
17
+ : `waitFor timed out after ${timeoutMs}ms`);
18
+ }
19
+ await delay(intervalMs);
20
+ }
21
+ }
22
+ /**
23
+ * Poll `fn` until it returns a non-undefined value or `timeoutMs` elapses; throws on timeout.
24
+ * `undefined` means "not ready yet" — callers needing to wait for an actual `undefined`
25
+ * should use `waitFor` on a separate flag.
26
+ */
27
+ export async function waitForValue(fn, opts) {
28
+ const { timeoutMs = 2_000, intervalMs = 10, description } = opts ?? {};
29
+ const deadline = Date.now() + timeoutMs;
30
+ for (;;) {
31
+ const value = await fn();
32
+ if (value !== undefined)
33
+ return value;
34
+ if (Date.now() >= deadline) {
35
+ throw new Error(description
36
+ ? `waitForValue timed out after ${timeoutMs}ms: ${description}`
37
+ : `waitForValue timed out after ${timeoutMs}ms`);
38
+ }
39
+ await delay(intervalMs);
40
+ }
41
+ }
42
+ //# sourceMappingURL=async-wait.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"async-wait.js","sourceRoot":"","sources":["../../../src/testing/async-wait.ts"],"names":[],"mappings":"AAaA,qFAAqF;AACrF,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,EAAU,EAAiB,EAAE,CAClD,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAEnD;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAC5B,SAA2C,EAC3C,IAAqB;IAErB,MAAM,EAAE,SAAS,GAAG,KAAK,EAAE,UAAU,GAAG,EAAE,EAAE,WAAW,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC;IACvE,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;IACxC,SAAS,CAAC;QACT,IAAI,MAAM,SAAS,EAAE;YAAE,OAAO;QAC9B,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,QAAQ,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CACd,WAAW;gBACV,CAAC,CAAC,2BAA2B,SAAS,OAAO,WAAW,EAAE;gBAC1D,CAAC,CAAC,2BAA2B,SAAS,IAAI,CAC3C,CAAC;QACH,CAAC;QACD,MAAM,KAAK,CAAC,UAAU,CAAC,CAAC;IACzB,CAAC;AACF,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CACjC,EAAgD,EAChD,IAAqB;IAErB,MAAM,EAAE,SAAS,GAAG,KAAK,EAAE,UAAU,GAAG,EAAE,EAAE,WAAW,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC;IACvE,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;IACxC,SAAS,CAAC;QACT,MAAM,KAAK,GAAG,MAAM,EAAE,EAAE,CAAC;QACzB,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO,KAAK,CAAC;QACtC,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,QAAQ,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CACd,WAAW;gBACV,CAAC,CAAC,gCAAgC,SAAS,OAAO,WAAW,EAAE;gBAC/D,CAAC,CAAC,gCAAgC,SAAS,IAAI,CAChD,CAAC;QACH,CAAC;QACD,MAAM,KAAK,CAAC,UAAU,CAAC,CAAC;IACzB,CAAC;AACF,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from './test-transactor.js';
2
+ export * from './async-wait.js';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/testing/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from './test-transactor.js';
2
+ export * from './async-wait.js';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/testing/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,44 @@
1
+ import { type ITransactor, type GetBlockResults, type ActionBlocks, type BlockActionStatus, type PendResult, type CommitResult, type PendRequest, type BlockId, type CommitRequest, type BlockGets, type ActionId, type ActionTransforms, type ClusterNomineesResult } from "../index.js";
2
+ export declare class TestTransactor implements ITransactor {
3
+ private blocks;
4
+ available: boolean;
5
+ private getLocks;
6
+ constructor();
7
+ get(blockGets: BlockGets): Promise<GetBlockResults>;
8
+ getStatus(actionRefs: ActionBlocks[]): Promise<BlockActionStatus[]>;
9
+ pend(request: PendRequest): Promise<PendResult>;
10
+ cancel(actionRef: ActionBlocks): Promise<void>;
11
+ commit(request: CommitRequest): Promise<CommitResult>;
12
+ reset(): void;
13
+ getPendingActions(): Map<ActionId, ActionTransforms>;
14
+ getCommittedActions(): Map<ActionId, ActionTransforms>;
15
+ setAvailable(available: boolean): void;
16
+ checkAvailable(): void;
17
+ /** Optional method for querying cluster nominees (used in GATHER phase for multi-collection transactions) */
18
+ queryClusterNominees?: (blockId: BlockId) => Promise<ClusterNomineesResult>;
19
+ }
20
+ /**
21
+ * Wraps a {@link TestTransactor} and forces its commit phase to fail a bounded (or unbounded)
22
+ * number of times before delegating, so tests can exercise the sync retry / backoff / give-up
23
+ * path deterministically. pend/get/getStatus/cancel delegate unchanged, so the pend→commit→cancel
24
+ * round-trip runs exactly as in production.
25
+ */
26
+ export declare class FlakyCommitTransactor implements ITransactor {
27
+ private readonly inner;
28
+ private readonly failFirstN;
29
+ private readonly reason;
30
+ /** Number of commit() calls observed so far (across success and forced failure). */
31
+ commitAttempts: number;
32
+ /**
33
+ * @param inner delegate transactor
34
+ * @param failFirstN number of initial commit() calls to fail; Infinity to always fail
35
+ * @param reason the StaleFailure.reason returned on a forced failure
36
+ */
37
+ constructor(inner: TestTransactor, failFirstN: number, reason?: string);
38
+ get(b: BlockGets): Promise<GetBlockResults>;
39
+ getStatus(a: ActionBlocks[]): Promise<BlockActionStatus[]>;
40
+ pend(r: PendRequest): Promise<PendResult>;
41
+ cancel(a: ActionBlocks): Promise<void>;
42
+ commit(request: CommitRequest): Promise<CommitResult>;
43
+ }
44
+ //# sourceMappingURL=test-transactor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-transactor.d.ts","sourceRoot":"","sources":["../../../src/testing/test-transactor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,eAAe,EAAE,KAAK,YAAY,EAAE,KAAK,iBAAiB,EAAE,KAAK,UAAU,EAAE,KAAK,YAAY,EAAE,KAAK,WAAW,EAAE,KAAK,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,SAAS,EAAe,KAAK,QAAQ,EAAE,KAAK,gBAAgB,EAAwD,KAAK,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAmB7V,qBAAa,cAAe,YAAW,WAAW;IAChD,OAAO,CAAC,MAAM,CAAkC;IACjD,SAAS,UAAQ;IACjB,OAAO,CAAC,QAAQ,CAA2C;;IAIpD,GAAG,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,eAAe,CAAC;IAoGnD,SAAS,CAAC,UAAU,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAanE,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;IAuG/C,MAAM,CAAC,SAAS,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAU9C,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC;IAuG3D,KAAK;IAIL,iBAAiB,IAAI,GAAG,CAAC,QAAQ,EAAE,gBAAgB,CAAC;IAepD,mBAAmB,IAAI,GAAG,CAAC,QAAQ,EAAE,gBAAgB,CAAC;IAsBvD,YAAY,CAAC,SAAS,EAAE,OAAO;IAI/B,cAAc;IAMd,6GAA6G;IAC7G,oBAAoB,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,qBAAqB,CAAC,CAAC;CAC5E;AAED;;;;;GAKG;AACH,qBAAa,qBAAsB,YAAW,WAAW;IAUvD,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,MAAM;IAXxB,oFAAoF;IACpF,cAAc,SAAK;IAEnB;;;;OAIG;gBAEe,KAAK,EAAE,cAAc,EACrB,UAAU,EAAE,MAAM,EAClB,MAAM,SAAiB;IAGzC,GAAG,CAAC,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,eAAe,CAAC;IAC3C,SAAS,CAAC,CAAC,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAC1D,IAAI,CAAC,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;IACzC,MAAM,CAAC,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAEhC,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC;CAO3D"}