@bcts/frost-hubert 1.0.0-alpha.23 → 1.0.0-beta.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 (154) hide show
  1. package/dist/bin/frost.cjs +345 -71
  2. package/dist/bin/frost.cjs.map +1 -1
  3. package/dist/bin/frost.mjs +345 -71
  4. package/dist/bin/frost.mjs.map +1 -1
  5. package/dist/busy-DkM2jAIZ.mjs +27 -0
  6. package/dist/busy-DkM2jAIZ.mjs.map +1 -0
  7. package/dist/busy-EZU7EKr6.cjs +38 -0
  8. package/dist/busy-EZU7EKr6.cjs.map +1 -0
  9. package/dist/cmd/index.cjs +28 -22
  10. package/dist/cmd/index.d.cts +2 -2
  11. package/dist/cmd/index.d.mts +2 -2
  12. package/dist/cmd/index.mjs +7 -3
  13. package/dist/cmd-Bw9_i2_f.cjs +130 -0
  14. package/dist/cmd-Bw9_i2_f.cjs.map +1 -0
  15. package/dist/cmd-CS1uJtuD.mjs +113 -0
  16. package/dist/cmd-CS1uJtuD.mjs.map +1 -0
  17. package/dist/common-CvH6dFvQ.mjs +282 -0
  18. package/dist/common-CvH6dFvQ.mjs.map +1 -0
  19. package/dist/common-DUWvtc08.mjs +96 -0
  20. package/dist/common-DUWvtc08.mjs.map +1 -0
  21. package/dist/common-lKP5EzHy.cjs +372 -0
  22. package/dist/common-lKP5EzHy.cjs.map +1 -0
  23. package/dist/common-lThIvJmZ.cjs +114 -0
  24. package/dist/common-lThIvJmZ.cjs.map +1 -0
  25. package/dist/dkg/index.cjs +6 -102
  26. package/dist/dkg/index.cjs.map +1 -1
  27. package/dist/dkg/index.d.cts +2 -2
  28. package/dist/dkg/index.d.mts +2 -2
  29. package/dist/dkg/index.mjs +4 -101
  30. package/dist/dkg/index.mjs.map +1 -1
  31. package/dist/finalize-BRgJK-Xv.cjs +402 -0
  32. package/dist/finalize-BRgJK-Xv.cjs.map +1 -0
  33. package/dist/finalize-BfLgzn8f.cjs +303 -0
  34. package/dist/finalize-BfLgzn8f.cjs.map +1 -0
  35. package/dist/finalize-CNTDj6aS.mjs +389 -0
  36. package/dist/finalize-CNTDj6aS.mjs.map +1 -0
  37. package/dist/finalize-EC3ikHQq.mjs +252 -0
  38. package/dist/finalize-EC3ikHQq.mjs.map +1 -0
  39. package/dist/finalize-IA01t_Qq.mjs +290 -0
  40. package/dist/finalize-IA01t_Qq.mjs.map +1 -0
  41. package/dist/finalize-UPyI1yb1.cjs +265 -0
  42. package/dist/finalize-UPyI1yb1.cjs.map +1 -0
  43. package/dist/{index-BkqLimZT.d.mts → index-B3c-80VS.d.cts} +26 -3
  44. package/dist/index-B3c-80VS.d.cts.map +1 -0
  45. package/dist/{index-BJlwbPYu.d.cts → index-BgbSGpxn.d.mts} +102 -80
  46. package/dist/index-BgbSGpxn.d.mts.map +1 -0
  47. package/dist/{index-BMbPgH0W.d.cts → index-C8QeHNwa.d.cts} +46 -2
  48. package/dist/{index-BMbPgH0W.d.cts.map → index-C8QeHNwa.d.cts.map} +1 -1
  49. package/dist/{index-DmxfT59Y.d.cts → index-D3QTWkEm.d.mts} +26 -3
  50. package/dist/index-D3QTWkEm.d.mts.map +1 -0
  51. package/dist/{index-DoV5HFvV.d.mts → index-DVbWyOs7.d.mts} +46 -2
  52. package/dist/{index-DoV5HFvV.d.mts.map → index-DVbWyOs7.d.mts.map} +1 -1
  53. package/dist/{index-Dzm1v4_4.d.mts → index-F1iNEAJR.d.cts} +102 -80
  54. package/dist/index-F1iNEAJR.d.cts.map +1 -0
  55. package/dist/index.cjs +31 -23
  56. package/dist/index.cjs.map +1 -1
  57. package/dist/index.d.cts +4 -4
  58. package/dist/index.d.mts +4 -4
  59. package/dist/index.mjs +9 -4
  60. package/dist/index.mjs.map +1 -1
  61. package/dist/invite-5277FQVT.cjs +274 -0
  62. package/dist/invite-5277FQVT.cjs.map +1 -0
  63. package/dist/invite-DUTcfTgX.cjs +109 -0
  64. package/dist/invite-DUTcfTgX.cjs.map +1 -0
  65. package/dist/invite-IU4n0dq2.mjs +96 -0
  66. package/dist/invite-IU4n0dq2.mjs.map +1 -0
  67. package/dist/invite-RU-OXTNS.mjs +219 -0
  68. package/dist/invite-RU-OXTNS.mjs.map +1 -0
  69. package/dist/parallel-D1R6ZGlY.cjs +318 -0
  70. package/dist/parallel-D1R6ZGlY.cjs.map +1 -0
  71. package/dist/parallel-D6zc6VW4.mjs +235 -0
  72. package/dist/parallel-D6zc6VW4.mjs.map +1 -0
  73. package/dist/proposed-participant-Dm1Eq6mX.cjs +141 -0
  74. package/dist/proposed-participant-Dm1Eq6mX.cjs.map +1 -0
  75. package/dist/proposed-participant-cWM7iUrO.mjs +129 -0
  76. package/dist/proposed-participant-cWM7iUrO.mjs.map +1 -0
  77. package/dist/receive-CAI-x4II.cjs +213 -0
  78. package/dist/receive-CAI-x4II.cjs.map +1 -0
  79. package/dist/receive-D2Nn68L7.mjs +188 -0
  80. package/dist/receive-D2Nn68L7.mjs.map +1 -0
  81. package/dist/receive-DA_KQEgk.mjs +177 -0
  82. package/dist/receive-DA_KQEgk.mjs.map +1 -0
  83. package/dist/receive-kZMsXhbK.cjs +190 -0
  84. package/dist/receive-kZMsXhbK.cjs.map +1 -0
  85. package/dist/registry/index.cjs +85 -10
  86. package/dist/registry/index.cjs.map +1 -1
  87. package/dist/registry/index.d.cts +1 -1
  88. package/dist/registry/index.d.mts +1 -1
  89. package/dist/registry/index.mjs +85 -10
  90. package/dist/registry/index.mjs.map +1 -1
  91. package/dist/{registry-loI1_Mh1.cjs → registry-9puTaRrD.cjs} +1 -1
  92. package/dist/{registry-loI1_Mh1.cjs.map → registry-9puTaRrD.cjs.map} +1 -1
  93. package/dist/{registry-CgrCZ4En.mjs → registry-BpCwtrRt.mjs} +1 -1
  94. package/dist/{registry-CgrCZ4En.mjs.map → registry-BpCwtrRt.mjs.map} +1 -1
  95. package/dist/round1-4Hyx8w0x.cjs +422 -0
  96. package/dist/round1-4Hyx8w0x.cjs.map +1 -0
  97. package/dist/round1-7v9LlE11.mjs +373 -0
  98. package/dist/round1-7v9LlE11.mjs.map +1 -0
  99. package/dist/round1-BHBjru1m.cjs +465 -0
  100. package/dist/round1-BHBjru1m.cjs.map +1 -0
  101. package/dist/round1-CMLKN2RR.mjs +195 -0
  102. package/dist/round1-CMLKN2RR.mjs.map +1 -0
  103. package/dist/round1-CWSXZx5R.cjs +208 -0
  104. package/dist/round1-CWSXZx5R.cjs.map +1 -0
  105. package/dist/round1-CcQCGlIT.mjs +208 -0
  106. package/dist/round1-CcQCGlIT.mjs.map +1 -0
  107. package/dist/round1-Cgm7j1kI.mjs +452 -0
  108. package/dist/round1-Cgm7j1kI.mjs.map +1 -0
  109. package/dist/round1-DQ0fnc1H.cjs +221 -0
  110. package/dist/round1-DQ0fnc1H.cjs.map +1 -0
  111. package/dist/round2-BWz9SQIi.cjs +305 -0
  112. package/dist/round2-BWz9SQIi.cjs.map +1 -0
  113. package/dist/round2-BkNRCXgS.mjs +292 -0
  114. package/dist/round2-BkNRCXgS.mjs.map +1 -0
  115. package/dist/round2-Bl2uK93U.mjs +450 -0
  116. package/dist/round2-Bl2uK93U.mjs.map +1 -0
  117. package/dist/round2-CdUT-AhH.cjs +499 -0
  118. package/dist/round2-CdUT-AhH.cjs.map +1 -0
  119. package/dist/round2-DOA3rnV-.mjs +280 -0
  120. package/dist/round2-DOA3rnV-.mjs.map +1 -0
  121. package/dist/round2-Dg24w-TU.mjs +397 -0
  122. package/dist/round2-Dg24w-TU.mjs.map +1 -0
  123. package/dist/round2-LylCa84n.cjs +293 -0
  124. package/dist/round2-LylCa84n.cjs.map +1 -0
  125. package/dist/round2-o2Q-GMbX.cjs +410 -0
  126. package/dist/round2-o2Q-GMbX.cjs.map +1 -0
  127. package/dist/storage-B-Gu68-O.cjs +79 -0
  128. package/dist/storage-B-Gu68-O.cjs.map +1 -0
  129. package/dist/storage-Bkkliz0K.mjs +74 -0
  130. package/dist/storage-Bkkliz0K.mjs.map +1 -0
  131. package/package.json +10 -10
  132. package/src/bin/frost.ts +849 -128
  133. package/src/cmd/common.ts +19 -1
  134. package/src/cmd/dkg/common.ts +97 -10
  135. package/src/cmd/dkg/coordinator/invite.ts +5 -2
  136. package/src/cmd/dkg/participant/finalize.ts +51 -17
  137. package/src/cmd/dkg/participant/round1.ts +39 -38
  138. package/src/cmd/dkg/participant/round2.ts +60 -26
  139. package/src/cmd/sign/coordinator/round2.ts +5 -1
  140. package/src/cmd/sign/participant/finalize.ts +6 -2
  141. package/src/cmd/sign/participant/receive.ts +5 -2
  142. package/src/dkg/group-invite.ts +12 -2
  143. package/src/dkg/proposed-participant.ts +32 -3
  144. package/src/registry/owner-record.ts +12 -0
  145. package/src/registry/participant-record.ts +35 -2
  146. package/src/registry/registry-impl.ts +74 -18
  147. package/dist/cmd-5yLeC_QL.mjs +0 -4708
  148. package/dist/cmd-5yLeC_QL.mjs.map +0 -1
  149. package/dist/cmd-BfZjC3Uh.cjs +0 -4847
  150. package/dist/cmd-BfZjC3Uh.cjs.map +0 -1
  151. package/dist/index-BJlwbPYu.d.cts.map +0 -1
  152. package/dist/index-BkqLimZT.d.mts.map +0 -1
  153. package/dist/index-DmxfT59Y.d.cts.map +0 -1
  154. package/dist/index-Dzm1v4_4.d.mts.map +0 -1
@@ -1,22 +1,112 @@
1
- import { d as PendingRequests, i as Registry, l as GroupParticipant, o as ParticipantRecord, r as OwnerOutcome, s as OwnerRecord, t as AddOutcome, u as GroupRecord } from "./index-BMbPgH0W.cjs";
2
- import { t as DkgInvitation } from "./index-DmxfT59Y.cjs";
1
+ import { d as PendingRequests, i as Registry, l as GroupParticipant, o as ParticipantRecord, r as OwnerOutcome, s as OwnerRecord, t as AddOutcome, u as GroupRecord } from "./index-DVbWyOs7.mjs";
2
+ import { t as DkgInvitation } from "./index-D3QTWkEm.mjs";
3
3
  import { ARID, PrivateKeys, XID } from "@bcts/components";
4
4
  import { Envelope, EnvelopeEncodableValue } from "@bcts/envelope";
5
- import { XIDDocument } from "@bcts/xid";
6
5
  import { SealedRequest } from "@bcts/gstp";
6
+ import { XIDDocument } from "@bcts/xid";
7
7
 
8
- //#region src/cmd/common.d.ts
8
+ //#region src/cmd/dkg/common.d.ts
9
+ /**
10
+ * Parse an ARID from a UR string.
11
+ *
12
+ * Mirrors Rust `parse_arid_ur` (`cmd/common.rs:27-43`):
13
+ *
14
+ * 1. Trim and reject empty input.
15
+ * 2. Parse as a UR; require `ur_type` of `"arid"`.
16
+ * 3. Try `ARID::try_from(cbor)` (the tagged-CBOR form).
17
+ * 4. If that fails, fall back to interpreting the CBOR as a bare
18
+ * byte string and constructing the ARID from those bytes via
19
+ * `ARID::from_data_ref`.
20
+ *
21
+ * The earlier port only accepted the tagged form; this matches Rust
22
+ * by accepting the byte-string fallback too.
23
+ */
24
+ declare function parseAridUr(urString: string): ARID;
25
+ /**
26
+ * Parse an envelope from a UR string.
27
+ *
28
+ * Port of `parse_envelope_ur()` from cmd/dkg/common.rs.
29
+ */
30
+ declare function parseEnvelopeUr(urString: string): Envelope;
9
31
  /**
10
- * Copyright © 2023-2026 Blockchain Commons, LLC
11
- * Copyright © 2025-2026 Parity Technologies
32
+ * Resolve the registry owner's XID document.
12
33
  *
34
+ * The earlier port called this `resolveSender(registry)`, but its
35
+ * behaviour — "give me the owner" — has nothing in common with Rust's
36
+ * `resolve_sender(registry, input)` (which resolves an arbitrary
37
+ * named sender). This helper is renamed to its actual behaviour;
38
+ * the Rust-equivalent `resolveSender(registry, input)` lives below.
39
+ */
40
+ declare function resolveOwnerXidDocument(registry: Registry): XIDDocument;
41
+ /**
42
+ * Resolve a sender XID document from the registry by UR or pet name.
13
43
  *
14
- * Common utilities for commands.
44
+ * Mirrors Rust `resolve_sender(registry, input)`
45
+ * (`cmd/dkg/common.rs:76-94`):
15
46
  *
16
- * Port of cmd/common.rs from frost-hubert-rust.
47
+ * 1. Trim and reject empty input.
48
+ * 2. Try parsing the input as a `ur:xid`. If that succeeds, look it
49
+ * up via `registry.participant(xid)`; if no record is found,
50
+ * error with `Sender with XID {ur} not found`.
51
+ * 3. Otherwise look it up by pet name via
52
+ * `registry.participantByPetName(name)`; if no record is found,
53
+ * error with `Sender with pet name '{name}' not found`.
17
54
  *
18
- * @module
55
+ * Note Rust does NOT check the owner here — only the participants
56
+ * map. The earlier inline duplicate in `participant/round1.ts` did
57
+ * an extra owner-check fallback which is removed to match Rust.
19
58
  */
59
+ declare function resolveSender(registry: Registry, input: string): XIDDocument;
60
+ /**
61
+ * Resolve participant identifiers (XID URs or pet names) to records.
62
+ *
63
+ * Port of `resolve_participants()` from cmd/dkg/common.rs lines 29-74.
64
+ */
65
+ declare function resolveParticipants(registry: Registry, inputs: string[]): [XID, ParticipantRecord][];
66
+ /**
67
+ * Get display name for sender from registry.
68
+ *
69
+ * Port of `resolve_sender_name()` from cmd/dkg/common.rs lines 96-116.
70
+ */
71
+ declare function resolveSenderName(registry: Registry, sender: XIDDocument): string | undefined;
72
+ /**
73
+ * Build GroupParticipant[] from XIDDocuments using registry lookups.
74
+ *
75
+ * Port of `build_group_participants()` from cmd/dkg/common.rs lines 122-131.
76
+ */
77
+ declare function buildGroupParticipants(registry: Registry, owner: OwnerRecord, participants: XIDDocument[]): GroupParticipant[];
78
+ /**
79
+ * Create a GroupParticipant from a XIDDocument, validating against the registry.
80
+ *
81
+ * Port of `group_participant_from_registry()` from cmd/dkg/common.rs lines 133-149.
82
+ */
83
+ declare function groupParticipantFromRegistry(registry: Registry, owner: OwnerRecord, document: XIDDocument): GroupParticipant;
84
+ /**
85
+ * Format a participant name with owner marker if applicable.
86
+ *
87
+ * Port of `format_name_with_owner_marker()` from cmd/dkg/common.rs lines 155-157.
88
+ */
89
+ declare function formatNameWithOwnerMarker(name: string, isOwner: boolean): string;
90
+ /**
91
+ * Get display names for participants, sorted by XID, with owner marked.
92
+ *
93
+ * Port of `participant_names_from_registry()` from cmd/dkg/common.rs lines 159-191.
94
+ */
95
+ declare function participantNamesFromRegistry(registry: Registry, participants: XIDDocument[], ownerXid: XID, ownerPetName: string | undefined): string[];
96
+ /**
97
+ * Get the DKG state directory for a given registry path and group ID.
98
+ *
99
+ * Port of `dkg_state_dir()` from cmd/dkg/common.rs.
100
+ */
101
+ declare function dkgStateDir(registryPath: string, groupIdHex: string): string;
102
+ /**
103
+ * Convert a verifying key bytes to a SigningPublicKey.
104
+ *
105
+ * Port of `signing_key_from_verifying()` from cmd/dkg/common.rs.
106
+ */
107
+ declare function signingKeyFromVerifying(verifyingKeyBytes: Uint8Array): unknown;
108
+ //#endregion
109
+ //#region src/cmd/common.d.ts
20
110
  /**
21
111
  * Get the group state directory for a given registry path and group ID.
22
112
  *
@@ -224,74 +314,6 @@ declare function parallelSend(client: StorageClient, messages: [XID, ARID, Envel
224
314
  */
225
315
  declare function checkAridExists(client: StorageClient, arid: ARID): Promise<boolean>;
226
316
  //#endregion
227
- //#region src/cmd/dkg/common.d.ts
228
- /**
229
- * Parse an ARID from a UR string.
230
- *
231
- * Port of `parse_arid_ur()` from cmd/dkg/common.rs.
232
- */
233
- declare function parseAridUr(urString: string): ARID;
234
- /**
235
- * Parse an envelope from a UR string.
236
- *
237
- * Port of `parse_envelope_ur()` from cmd/dkg/common.rs.
238
- */
239
- declare function parseEnvelopeUr(urString: string): Envelope;
240
- /**
241
- * Resolve the sender XID document from the registry.
242
- *
243
- * Port of `resolve_sender()` from cmd/dkg/common.rs.
244
- */
245
- declare function resolveSender(registry: Registry): XIDDocument;
246
- /**
247
- * Resolve participant identifiers (XID URs or pet names) to records.
248
- *
249
- * Port of `resolve_participants()` from cmd/dkg/common.rs lines 29-74.
250
- */
251
- declare function resolveParticipants(registry: Registry, inputs: string[]): [XID, ParticipantRecord][];
252
- /**
253
- * Get display name for sender from registry.
254
- *
255
- * Port of `resolve_sender_name()` from cmd/dkg/common.rs lines 96-116.
256
- */
257
- declare function resolveSenderName(registry: Registry, sender: XIDDocument): string | undefined;
258
- /**
259
- * Build GroupParticipant[] from XIDDocuments using registry lookups.
260
- *
261
- * Port of `build_group_participants()` from cmd/dkg/common.rs lines 122-131.
262
- */
263
- declare function buildGroupParticipants(registry: Registry, owner: OwnerRecord, participants: XIDDocument[]): GroupParticipant[];
264
- /**
265
- * Create a GroupParticipant from a XIDDocument, validating against the registry.
266
- *
267
- * Port of `group_participant_from_registry()` from cmd/dkg/common.rs lines 133-149.
268
- */
269
- declare function groupParticipantFromRegistry(registry: Registry, owner: OwnerRecord, document: XIDDocument): GroupParticipant;
270
- /**
271
- * Format a participant name with owner marker if applicable.
272
- *
273
- * Port of `format_name_with_owner_marker()` from cmd/dkg/common.rs lines 155-157.
274
- */
275
- declare function formatNameWithOwnerMarker(name: string, isOwner: boolean): string;
276
- /**
277
- * Get display names for participants, sorted by XID, with owner marked.
278
- *
279
- * Port of `participant_names_from_registry()` from cmd/dkg/common.rs lines 159-191.
280
- */
281
- declare function participantNamesFromRegistry(registry: Registry, participants: XIDDocument[], ownerXid: XID, ownerPetName: string | undefined): string[];
282
- /**
283
- * Get the DKG state directory for a given registry path and group ID.
284
- *
285
- * Port of `dkg_state_dir()` from cmd/dkg/common.rs.
286
- */
287
- declare function dkgStateDir(registryPath: string, groupIdHex: string): string;
288
- /**
289
- * Convert a verifying key bytes to a SigningPublicKey.
290
- *
291
- * Port of `signing_key_from_verifying()` from cmd/dkg/common.rs.
292
- */
293
- declare function signingKeyFromVerifying(verifyingKeyBytes: Uint8Array): unknown;
294
- //#endregion
295
317
  //#region src/cmd/dkg/coordinator/invite.d.ts
296
318
  /**
297
319
  * Options for the DKG invite command.
@@ -612,7 +634,7 @@ declare namespace index_d_exports$5 {
612
634
  export { DkgFinalizeOptions, DkgFinalizeResult, DkgReceiveOptions, DkgReceiveResult, DkgRound1Options, DkgRound1Result, DkgRound2Options, DkgRound2Result, InviteDetails, decodeInviteDetails, finalize$1 as finalize, receive$1 as receive, resolveInviteEnvelope, round1$2 as round1, round2$2 as round2 };
613
635
  }
614
636
  declare namespace index_d_exports$4 {
615
- export { buildGroupParticipants, index_d_exports$6 as coordinator, dkgStateDir, formatNameWithOwnerMarker, groupParticipantFromRegistry, groupStateDir, parseAridUr, parseEnvelopeUr, index_d_exports$5 as participant, participantNamesFromRegistry, resolveParticipants, resolveSender, resolveSenderName, signingKeyFromVerifying };
637
+ export { buildGroupParticipants, index_d_exports$6 as coordinator, dkgStateDir, formatNameWithOwnerMarker, groupParticipantFromRegistry, groupStateDir, parseAridUr, parseEnvelopeUr, index_d_exports$5 as participant, participantNamesFromRegistry, resolveOwnerXidDocument, resolveParticipants, resolveSender, resolveSenderName, signingKeyFromVerifying };
616
638
  }
617
639
  //#endregion
618
640
  //#region src/cmd/sign/common.d.ts
@@ -1098,5 +1120,5 @@ declare namespace index_d_exports {
1098
1120
  */
1099
1121
  declare function participantsFilePath(registry: string | undefined, cwd: string): string;
1100
1122
  //#endregion
1101
- export { StorageClient as C, isVerbose as D, groupStateDir as E, setVerbose as O, putWithIndicator as S, createStorageClient as T, fetchStatusTimeout as _, CollectionResult as a, parallelSend as b, FetchStatus as c, directionEmoji as d, emptyCollectionResult as f, fetchStatusSuccess as g, fetchStatusRejected as h, checkAridExists as i, ParallelFetchConfig as l, fetchStatusPending as m, index_d_exports$1 as n, DEFAULT_TIMEOUT_SECONDS as o, fetchStatusError as p, index_d_exports$4 as r, Direction as s, index_d_exports as t, buildFetchRequests as u, parallelFetch as v, StorageSelection as w, getWithIndicator as x, parallelFetchConfigWithTimeout as y };
1102
- //# sourceMappingURL=index-BJlwbPYu.d.cts.map
1123
+ export { signingKeyFromVerifying as A, StorageClient as C, isVerbose as D, groupStateDir as E, setVerbose as O, putWithIndicator as S, createStorageClient as T, fetchStatusTimeout as _, CollectionResult as a, parallelSend as b, FetchStatus as c, directionEmoji as d, emptyCollectionResult as f, fetchStatusSuccess as g, fetchStatusRejected as h, checkAridExists as i, parseAridUr as k, ParallelFetchConfig as l, fetchStatusPending as m, index_d_exports$1 as n, DEFAULT_TIMEOUT_SECONDS as o, fetchStatusError as p, index_d_exports$4 as r, Direction as s, index_d_exports as t, buildFetchRequests as u, parallelFetch as v, StorageSelection as w, getWithIndicator as x, parallelFetchConfigWithTimeout as y };
1124
+ //# sourceMappingURL=index-BgbSGpxn.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-BgbSGpxn.d.mts","names":[],"sources":["../src/cmd/dkg/common.ts","../src/cmd/common.ts","../src/cmd/storage.ts","../src/cmd/busy.ts","../src/cmd/parallel.ts","../src/cmd/check.ts","../src/cmd/dkg/coordinator/invite.ts","../src/cmd/dkg/coordinator/round1.ts","../src/cmd/dkg/coordinator/round2.ts","../src/cmd/dkg/coordinator/finalize.ts","../src/cmd/dkg/coordinator/index.ts","../src/cmd/dkg/participant/receive.ts","../src/cmd/dkg/participant/round1.ts","../src/cmd/dkg/participant/round2.ts","../src/cmd/dkg/participant/finalize.ts","../src/cmd/dkg/participant/index.ts","../src/cmd/dkg/index.ts","../src/cmd/sign/common.ts","../src/cmd/sign/coordinator/invite.ts","../src/cmd/sign/coordinator/round1.ts","../src/cmd/sign/coordinator/round2.ts","../src/cmd/sign/coordinator/index.ts","../src/cmd/sign/participant/receive.ts","../src/cmd/sign/participant/round1.ts","../src/cmd/sign/participant/round2.ts","../src/cmd/sign/participant/finalize.ts","../src/cmd/sign/participant/index.ts","../src/cmd/sign/index.ts","../src/cmd/registry/owner/set.ts","../src/cmd/registry/participant/add.ts","../src/cmd/registry/index.ts"],"mappings":"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"}
@@ -185,6 +185,13 @@ declare class OwnerRecord {
185
185
  toJSON(): Record<string, unknown>;
186
186
  /**
187
187
  * Deserialize from JSON object.
188
+ *
189
+ * Mirrors Rust's `#[serde(deny_unknown_fields)]` derive on
190
+ * `OwnerRecord` (`owner_record.rs:13-17`) — any field not in
191
+ * `{xid_document, pet_name}` causes Rust's `serde_json::from_str`
192
+ * to error with `unknown field`, and we mirror that here so a
193
+ * registry file produced by a future Rust version with extra
194
+ * fields is rejected explicitly rather than silently lossy.
188
195
  */
189
196
  static fromJSON(json: Record<string, unknown>): OwnerRecord;
190
197
  }
@@ -255,6 +262,14 @@ declare class ParticipantRecord {
255
262
  toJSON(): Record<string, unknown>;
256
263
  /**
257
264
  * Deserialize from JSON object.
265
+ *
266
+ * Mirrors Rust's `#[serde(deny_unknown_fields)]` derive on
267
+ * `ParticipantRecord` (`participant_record.rs:12-17`) — Rust's
268
+ * `serde_json::from_str` errors with `unknown field` for any
269
+ * field outside `{xid_document, pet_name}`. We mirror that
270
+ * behaviour so a registry file produced by a future Rust
271
+ * version with extra fields is rejected explicitly rather than
272
+ * silently lossy.
258
273
  */
259
274
  static fromJSON(json: Record<string, unknown>): ParticipantRecord;
260
275
  }
@@ -326,7 +341,27 @@ declare class Registry {
326
341
  /**
327
342
  * Add a participant.
328
343
  *
329
- * Returns the outcome indicating whether the participant was already present or newly inserted.
344
+ * Mirrors Rust `Registry::add_participant`
345
+ * (`registry_impl.rs:83-124`):
346
+ *
347
+ * 1. If `record.pet_name()` is already used by some other XID,
348
+ * bail with `"Pet name '{name}' already used by another
349
+ * participant"`.
350
+ * 2. If `record.pet_name()` matches an existing record under the
351
+ * *same* XID and the public keys also match, return
352
+ * `AlreadyPresent`.
353
+ * 3. If the pet name matches the same XID but public keys don't,
354
+ * bail with `"Participant already exists with a different pet
355
+ * name"`.
356
+ * 4. Otherwise look up by XID. If present and public-keys + pet-name
357
+ * both match, return `AlreadyPresent`; if XID is present but
358
+ * anything differs, bail. If XID is new, insert and return
359
+ * `Inserted`.
360
+ *
361
+ * The earlier port short-circuited on `participants.has(xidUr)` and
362
+ * always returned `AlreadyPresent` — silently allowing re-adds with
363
+ * a different pet name or different public keys, which Rust
364
+ * correctly forbids.
330
365
  */
331
366
  addParticipant(xid: XID, record: ParticipantRecord): AddOutcome;
332
367
  /**
@@ -378,6 +413,15 @@ declare class Registry {
378
413
  save(filePath: string): void;
379
414
  /**
380
415
  * Serialize to JSON object.
416
+ *
417
+ * Mirrors Rust `Registry`'s field declaration order
418
+ * (`registry_impl.rs:8-14` — `owner, participants, groups`). JSON
419
+ * object member order is not semantically significant, but
420
+ * `serde_json::to_string_pretty` emits keys in declaration order,
421
+ * so for byte-equal `registry.json` (used by the integration tests
422
+ * as a string assertion) the TS port must match Rust's order.
423
+ * Empty `owner` is omitted via `Option::None` skip in Rust; we
424
+ * reproduce that by only setting the key when the owner exists.
381
425
  */
382
426
  toJSON(): Record<string, unknown>;
383
427
  /**
@@ -393,4 +437,4 @@ declare class Registry {
393
437
  declare function resolveRegistryPath(registryArg: string | undefined, cwd: string): string;
394
438
  //#endregion
395
439
  export { resolveRegistryPath as a, ContributionPaths as c, PendingRequests as d, Registry as i, GroupParticipant as l, GroupOutcome as n, ParticipantRecord as o, OwnerOutcome as r, OwnerRecord as s, AddOutcome as t, GroupRecord as u };
396
- //# sourceMappingURL=index-BMbPgH0W.d.cts.map
440
+ //# sourceMappingURL=index-C8QeHNwa.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-BMbPgH0W.d.cts","names":[],"sources":["../src/registry/group-record.ts","../src/registry/owner-record.ts","../src/registry/participant-record.ts","../src/registry/registry-impl.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index-C8QeHNwa.d.cts","names":[],"sources":["../src/registry/group-record.ts","../src/registry/owner-record.ts","../src/registry/participant-record.ts","../src/registry/registry-impl.ts"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { ARID, XID } from "@bcts/components";
2
2
  import { Envelope } from "@bcts/envelope";
3
- import { XIDDocument } from "@bcts/xid";
4
3
  import { SealedRequest, SealedResponse } from "@bcts/gstp";
4
+ import { XIDDocument } from "@bcts/xid";
5
5
 
6
6
  //#region src/dkg/proposed-participant.d.ts
7
7
  /**
@@ -53,9 +53,32 @@ declare class DkgProposedParticipant {
53
53
  responseArid(): ARID;
54
54
  /**
55
55
  * Compare participants by XID for sorting.
56
+ *
57
+ * Mirrors Rust `PartialOrd::partial_cmp` which uses
58
+ * `self.xid().cmp(&other.xid())` — i.e. the underlying 32-byte XID
59
+ * data is compared lexicographically (`Vec<u8>` ordering). The
60
+ * earlier port used `xid.toString().localeCompare(...)`, which (a)
61
+ * compares the UR-encoded base32-ish string, not the bytes, and (b)
62
+ * is locale-aware. Sorting on UR strings differs from the byte
63
+ * order whenever the underlying bytes contain values ≥ 0x80, so
64
+ * Rust and TS would assign different FROST identifiers to the same
65
+ * participant set — producing different secret shares.
56
66
  */
57
67
  compareTo(other: DkgProposedParticipant): number;
58
68
  }
69
+ /**
70
+ * Lexicographic byte compare matching Rust's `Vec<u8>::cmp` /
71
+ * `XID::cmp`. Exported so the cmd-tree call sites (round1 / finalize)
72
+ * can use the same comparator when they sort deduplicated XID lists.
73
+ *
74
+ * `XID` is exactly 32 bytes so this only ever compares two equal-length
75
+ * inputs; the length-tiebreak branch mirrors the generic `Ord` impl on
76
+ * `Vec<u8>` and is included for correctness if ever applied to other
77
+ * byte sequences.
78
+ *
79
+ * @internal
80
+ */
81
+ declare function compareXidBytes(a: Uint8Array, b: Uint8Array): number;
59
82
  //#endregion
60
83
  //#region src/dkg/group-invite.d.ts
61
84
  /**
@@ -168,5 +191,5 @@ declare class DkgInvitation {
168
191
  static fromInvite(invite: Envelope, now: Date, expectedSender: XIDDocument | undefined, recipient: XIDDocument): DkgInvitation;
169
192
  }
170
193
  //#endregion
171
- export { declined as a, accepted as i, DkgInvitationResult as n, DkgProposedParticipant as o, DkgInvite as r, DkgInvitation as t };
172
- //# sourceMappingURL=index-DmxfT59Y.d.cts.map
194
+ export { declined as a, accepted as i, DkgInvitationResult as n, DkgProposedParticipant as o, DkgInvite as r, compareXidBytes as s, DkgInvitation as t };
195
+ //# sourceMappingURL=index-D3QTWkEm.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-D3QTWkEm.d.mts","names":[],"sources":["../src/dkg/proposed-participant.ts","../src/dkg/group-invite.ts"],"mappings":";;;;;;;;;;;cAsBa,sBAAA;EAAA,iBACM,SAAA;EAAA,iBACA,SAAA;EAAA,iBACA,SAAA;EAAA,iBACA,aAAA;EAAA,QAEV,WAAA,CAAA;EAiBuC;;;;;EAAA,OAAvC,MAAA,CAAO,QAAA,UAAkB,YAAA,EAAc,IAAA,GAAO,sBAAA;EAmBtC;;;;;EATf,GAAA,CAAA,GAAO,GAAA;EAqDP;;;;;EA5CA,WAAA,CAAA,GAAe,WAAA;EA6Dc;;;;;EApD7B,aAAA,CAAA;EAoD6C;;;;;EA3C7C,mBAAA,CAAA,GAAuB,QAAA;ECzDb;;;;;EDkEV,YAAA,CAAA,GAAgB,IAAA;EClE2D;;;AAK7E;;;;;AAOA;;;;;EDuEE,SAAA,CAAU,KAAA,EAAO,sBAAA;AAAA;;;;;;;;;;;;;iBAiBH,eAAA,CAAgB,CAAA,EAAG,UAAA,EAAY,CAAA,EAAG,UAAA;;;;;;;;KCpGtC,mBAAA;EAAwB,IAAA;AAAA;EAAuB,IAAA;EAAkB,MAAA;AAAA;;;;iBAK7D,QAAA,CAAA,GAAY,mBAAA;;;;iBAOZ,QAAA,CAAS,MAAA,WAAiB,mBAAA;;;;;;cAS7B,SAAA;EAAA,iBACM,UAAA;EAAA,iBACA,OAAA;EAAA,iBACA,QAAA;EAAA,iBACA,KAAA;EAAA,iBACA,WAAA;EAAA,iBACA,WAAA;EAAA,iBACA,QAAA;EAAA,iBACA,oBAAA;EAAA,QAEV,WAAA,CAAA;EDqEmD;;;;;EAAA,OC5CnD,MAAA,CACL,SAAA,EAAW,IAAA,EACX,MAAA,EAAQ,WAAA,EACR,OAAA,EAAS,IAAA,EACT,IAAA,EAAM,IAAA,EACN,UAAA,EAAY,IAAA,EACZ,UAAA,UACA,OAAA,UACA,YAAA,YACA,aAAA,EAAe,IAAA,KACd,SAAA;EAkCH,SAAA,CAAA,GAAa,IAAA;EAIb,MAAA,CAAA,GAAU,WAAA;EAIV,OAAA,CAAA,GAAW,IAAA;EAIX,IAAA,CAAA,GAAQ,IAAA;EAIR,UAAA,CAAA,GAAc,IAAA;EAId,UAAA,CAAA;EAIA,OAAA,CAAA;EAIA,YAAA,CAAA,GAAgB,sBAAA;EA3HF;;;;;EAoId,SAAA,CAAA,GAAa,aAAA;EA7HS;;;;AASxB;EAsJE,kBAAA,CAAA,GAAsB,QAAA;;;;;;EAqBtB,UAAA,CAAA,GAAc,QAAA;AAAA;;;;;;cAoBH,aAAA;EAAA,iBACM,aAAA;EAAA,iBACA,WAAA;EAAA,iBACA,OAAA;EAAA,iBACA,UAAA;EAAA,iBACA,iBAAA;EAAA,iBACA,WAAA;EAAA,iBACA,QAAA;EAAA,iBACA,QAAA;EAAA,QAEV,WAAA,CAAA;EAoBP,YAAA,CAAA,GAAgB,IAAA;EAIhB,UAAA,CAAA,GAAc,IAAA;EAId,MAAA,CAAA,GAAU,WAAA;EAIV,SAAA,CAAA,GAAa,IAAA;EAIb,gBAAA,CAAA,GAAoB,QAAA;EAIpB,UAAA,CAAA;EAIA,OAAA,CAAA;EAIA,OAAA,CAAA,GAAW,IAAA;EArNT;;;;;EA8NF,UAAA,CAAW,QAAA,EAAU,mBAAA,EAAqB,SAAA,EAAW,WAAA,GAAc,cAAA;EA3NjE;;;;;EA2OF,UAAA,CAAW,QAAA,EAAU,mBAAA,EAAqB,SAAA,EAAW,WAAA,GAAc,QAAA;EAtOlD;;;;;EAAA,OAwPV,UAAA,CACL,MAAA,EAAQ,QAAA,EACR,GAAA,EAAK,IAAA,EACL,cAAA,EAAgB,WAAA,cAChB,SAAA,EAAW,WAAA,GACV,aAAA;AAAA"}
@@ -185,6 +185,13 @@ declare class OwnerRecord {
185
185
  toJSON(): Record<string, unknown>;
186
186
  /**
187
187
  * Deserialize from JSON object.
188
+ *
189
+ * Mirrors Rust's `#[serde(deny_unknown_fields)]` derive on
190
+ * `OwnerRecord` (`owner_record.rs:13-17`) — any field not in
191
+ * `{xid_document, pet_name}` causes Rust's `serde_json::from_str`
192
+ * to error with `unknown field`, and we mirror that here so a
193
+ * registry file produced by a future Rust version with extra
194
+ * fields is rejected explicitly rather than silently lossy.
188
195
  */
189
196
  static fromJSON(json: Record<string, unknown>): OwnerRecord;
190
197
  }
@@ -255,6 +262,14 @@ declare class ParticipantRecord {
255
262
  toJSON(): Record<string, unknown>;
256
263
  /**
257
264
  * Deserialize from JSON object.
265
+ *
266
+ * Mirrors Rust's `#[serde(deny_unknown_fields)]` derive on
267
+ * `ParticipantRecord` (`participant_record.rs:12-17`) — Rust's
268
+ * `serde_json::from_str` errors with `unknown field` for any
269
+ * field outside `{xid_document, pet_name}`. We mirror that
270
+ * behaviour so a registry file produced by a future Rust
271
+ * version with extra fields is rejected explicitly rather than
272
+ * silently lossy.
258
273
  */
259
274
  static fromJSON(json: Record<string, unknown>): ParticipantRecord;
260
275
  }
@@ -326,7 +341,27 @@ declare class Registry {
326
341
  /**
327
342
  * Add a participant.
328
343
  *
329
- * Returns the outcome indicating whether the participant was already present or newly inserted.
344
+ * Mirrors Rust `Registry::add_participant`
345
+ * (`registry_impl.rs:83-124`):
346
+ *
347
+ * 1. If `record.pet_name()` is already used by some other XID,
348
+ * bail with `"Pet name '{name}' already used by another
349
+ * participant"`.
350
+ * 2. If `record.pet_name()` matches an existing record under the
351
+ * *same* XID and the public keys also match, return
352
+ * `AlreadyPresent`.
353
+ * 3. If the pet name matches the same XID but public keys don't,
354
+ * bail with `"Participant already exists with a different pet
355
+ * name"`.
356
+ * 4. Otherwise look up by XID. If present and public-keys + pet-name
357
+ * both match, return `AlreadyPresent`; if XID is present but
358
+ * anything differs, bail. If XID is new, insert and return
359
+ * `Inserted`.
360
+ *
361
+ * The earlier port short-circuited on `participants.has(xidUr)` and
362
+ * always returned `AlreadyPresent` — silently allowing re-adds with
363
+ * a different pet name or different public keys, which Rust
364
+ * correctly forbids.
330
365
  */
331
366
  addParticipant(xid: XID, record: ParticipantRecord): AddOutcome;
332
367
  /**
@@ -378,6 +413,15 @@ declare class Registry {
378
413
  save(filePath: string): void;
379
414
  /**
380
415
  * Serialize to JSON object.
416
+ *
417
+ * Mirrors Rust `Registry`'s field declaration order
418
+ * (`registry_impl.rs:8-14` — `owner, participants, groups`). JSON
419
+ * object member order is not semantically significant, but
420
+ * `serde_json::to_string_pretty` emits keys in declaration order,
421
+ * so for byte-equal `registry.json` (used by the integration tests
422
+ * as a string assertion) the TS port must match Rust's order.
423
+ * Empty `owner` is omitted via `Option::None` skip in Rust; we
424
+ * reproduce that by only setting the key when the owner exists.
381
425
  */
382
426
  toJSON(): Record<string, unknown>;
383
427
  /**
@@ -393,4 +437,4 @@ declare class Registry {
393
437
  declare function resolveRegistryPath(registryArg: string | undefined, cwd: string): string;
394
438
  //#endregion
395
439
  export { resolveRegistryPath as a, ContributionPaths as c, PendingRequests as d, Registry as i, GroupParticipant as l, GroupOutcome as n, ParticipantRecord as o, OwnerOutcome as r, OwnerRecord as s, AddOutcome as t, GroupRecord as u };
396
- //# sourceMappingURL=index-DoV5HFvV.d.mts.map
440
+ //# sourceMappingURL=index-DVbWyOs7.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-DoV5HFvV.d.mts","names":[],"sources":["../src/registry/group-record.ts","../src/registry/owner-record.ts","../src/registry/participant-record.ts","../src/registry/registry-impl.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index-DVbWyOs7.d.mts","names":[],"sources":["../src/registry/group-record.ts","../src/registry/owner-record.ts","../src/registry/participant-record.ts","../src/registry/registry-impl.ts"],"mappings":"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"}