@mcsherrylabs/evolver-client 0.10.0 → 0.13.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.
package/dist/api.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { SubmitResult, PullResp, Delivery, NodeKey } from "./types.js";
1
+ import type { SubmitResult, PullResp, Delivery, NodeKey, NodeStatus } from "./types.js";
2
2
  import { type Identity } from "./identity.js";
3
3
  /** Outcome of a faucet identity claim (102). `exists` = already on-chain (idempotent rerun). */
4
4
  export type ClaimResult = {
@@ -45,6 +45,33 @@ export declare class NodeClient {
45
45
  * already-on-chain identity reports `exists`. Never throws.
46
46
  */
47
47
  claimIdentity(id: Identity): Promise<ClaimResult>;
48
+ /**
49
+ * Claim a faucet-sponsored identity from PROOFS SOMEBODY ELSE PRODUCED.
50
+ *
51
+ * The difference from [[claimIdentity]] is the whole point: that one takes an `Identity` —
52
+ * public and private keys — and signs both proofs itself. This one takes public keys and the
53
+ * signatures their holder made elsewhere, so a caller can bring an identity onto the chain for
54
+ * a party whose keys it must never see.
55
+ *
56
+ * ⚠️ THE DIGEST IS RECOMPUTED LOCALLY AND A MISMATCH REFUSES. The node's `/prepare` answers
57
+ * with the bytes it wants signed; `faucetClaimDigest` reproduces them from the same inputs
58
+ * (it is `popCreateIdentity`, a described codec with a purpose tag and a golden vector). A
59
+ * party that supplies the bytes to be signed is a party choosing what gets signed, so the
60
+ * proofs are only forwarded once we can reproduce what they cover.
61
+ *
62
+ * ⚠️ BOTH KEYS, EXACTLY: the chain requires one `BLS12-381-G1` and one `Ed25519`, each at
63
+ * label `""`. A claim missing one is not refused at admit — it is ordered and FINED.
64
+ *
65
+ * The NODE pays here (its sponsorship cost plus the standard starting credit), so nothing
66
+ * about the caller's balance bounds how many of these succeed. The node's does.
67
+ */
68
+ claimIdentityWithProofs(args: {
69
+ nodeId: string;
70
+ blsPublicKey: Uint8Array;
71
+ blsPop: Uint8Array;
72
+ ed25519PublicKey: Uint8Array;
73
+ ed25519Pop: Uint8Array;
74
+ }): Promise<ClaimResult>;
48
75
  /**
49
76
  * GET /api/identity/:nodeId → { nodeId, balance }, or null if not yet on-chain.
50
77
  *
@@ -60,9 +87,108 @@ export declare class NodeClient {
60
87
  balance: bigint;
61
88
  } | null>;
62
89
  /** Latest committed round (chain tip), via the explorer blocks list (orderDesc). 0 if none. */
90
+ /**
91
+ * The node's three heights, which are three DIFFERENT questions and are routinely
92
+ * three different numbers.
93
+ *
94
+ * ⚠️ `currentRound()` answers only the first of them, and that is how a consumer ends up
95
+ * confidently wrong. A processing node answers every committed-state read AS OF ITS APPLY
96
+ * CURSOR, so an identity created at round N is invisible to `getIdentity` until
97
+ * `appliedRound >= N` — even though the node HOLDS block N and will tell you so. Observed
98
+ * live: held 8147, heard 8147, applied 5253.
99
+ *
100
+ * - `blockHeight` what this node HOLDS (its committed tip).
101
+ * - `appliedRound` how far its STATE has been applied. `null` means "not a processing
102
+ * node" — not "unknown" and not "zero". A processing node nobody has polled reports 0.
103
+ * - `heardRound` the highest round this node has been TOLD OF, from tip gossip. It is a
104
+ * hint, not a verified fact: `heard > held` means behind, while `heard == held` means
105
+ * only "no evidence of anything higher", which is ALSO what an isolated node reports.
106
+ */
107
+ nodeStatus(): Promise<NodeStatus>;
108
+ /** ⚠️ The HELD tip only. For apply lag or catch-up, use `nodeStatus()`. */
63
109
  currentRound(): Promise<number>;
64
- /** Members of a group, from the on-chain group_members (/api/explorer/groups/:g/members). */
110
+ /**
111
+ * One group and its members, or `null` when this node holds no group of that name.
112
+ *
113
+ * ⚠️ `null` IS AN ANSWER; A THROW IS NOT. The explorer answers 404 for a name it has no group
114
+ * row for, so `null` means "the chain says this is not a group" — while an unreadable chain
115
+ * throws. Nothing could tell those apart before: `getGroupMembers` threw for both, so a caller
116
+ * had to treat a network failure as evidence about the world. Same convention as
117
+ * `getIdentity`, deliberately.
118
+ *
119
+ * ⚠️ A GROUP WITH NO MEMBERS ANSWERS `{ members: [] }`, WHICH IS NOT `null`. Absence of members
120
+ * is not absence of the group, and a caller deciding whether a name exists must not read the
121
+ * empty list as "no such group".
122
+ *
123
+ * It does NOT report who owns the group. The node offers an owner only on the whole-list route
124
+ * (`/api/explorer/groups`, unpaged), so answering about one group would mean pulling every group
125
+ * on somebody else's chain.
126
+ *
127
+ * ⚠️ Like every committed-state read, this answers AS OF THE NODE'S APPLIED POSITION. On a
128
+ * processing node a group that has been committed but not yet applied reads as `null` — "not
129
+ * yet", not "no". Ask a fully-applied node when the question is whether a name is taken.
130
+ */
131
+ getGroup(group: string): Promise<{
132
+ ledgerId: string;
133
+ members: string[];
134
+ } | null>;
135
+ /** Members of a group that is expected to exist; throws when it does not.
136
+ *
137
+ * One transport, expressed through `getGroup` — the URL and the parsing live in exactly one
138
+ * place. Kept because a caller that already knows the group exists should not have to handle a
139
+ * `null` it has ruled out; a caller ASKING whether it exists wants `getGroup`. */
65
140
  getGroupMembers(group: string): Promise<string[]>;
141
+ /** Every group on the chain, with its member count and its owner.
142
+ *
143
+ * ⚠️ UNPAGED, because the node's route is: `/api/explorer/groups` returns all of them in one
144
+ * response. That is the node's shape, not a choice made here, and it is why a caller wanting
145
+ * ONE group's members uses `getGroup` instead of filtering this. */
146
+ listGroups(): Promise<Array<{
147
+ ledgerId: string;
148
+ memberCount: number;
149
+ owner: string;
150
+ }>>;
151
+ /** Who owns each claimed ledger, paged.
152
+ *
153
+ * The caller bounds the walk: this returns one page and the total, and does not loop. An
154
+ * ownership check is a tripwire on a hot path, not an audit, so the bound belongs to whoever
155
+ * is asking. */
156
+ listLedgerOwners(limit?: number, offset?: number): Promise<{
157
+ owners: Array<{
158
+ ledgerId: string;
159
+ ownerNodeId: string;
160
+ }>;
161
+ total: number;
162
+ }>;
163
+ /**
164
+ * One channel's terms: who administers it, what it charges, its data-availability and write
165
+ * policies (156).
166
+ *
167
+ * ⚠️ IT NEVER ANSWERS "NO SUCH CHANNEL", and that is not an omission here — the node has no
168
+ * 404 branch for it. **A channel is not a registered entity**: any ledger id that is not a core
169
+ * ledger is a channel, and it either carries terms or carries the defaults. So this returns a
170
+ * value or throws, and it is the one read on this client that does NOT follow `getIdentity`'s
171
+ * null-means-absent convention, because there is no absence to report.
172
+ *
173
+ * ⚠️ A caller asking "is this claimed?" reads `owners.length === 0` — and on a PROCESSING NODE
174
+ * that means "not claimed as of my cursor", which is how a service nearly claimed a channel
175
+ * somebody else already owned (evolver#85). Ask a fully-applied node when the answer matters.
176
+ *
177
+ * Amounts arrive as decimal strings and are returned as `bigint` (Constitution VIII).
178
+ */
179
+ getChannelTerms(ledgerId: string): Promise<{
180
+ ledgerId: string;
181
+ owners: string[];
182
+ toll: {
183
+ amount: bigint;
184
+ recipient: string;
185
+ } | null;
186
+ da: {
187
+ group: string;
188
+ thresholdM: number;
189
+ } | null;
190
+ writePolicy: string | null;
191
+ }>;
66
192
  /**
67
193
  * Principal name search (`/api/explorer/search`) — the read behind a recipient picker.
68
194
  *
package/dist/api.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,YAAY,EAAiB,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACvG,OAAO,EAA2C,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAIvF,gGAAgG;AAChG,MAAM,MAAM,WAAW,GACnB;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,GAC1C;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,GAClB;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAevD,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iFAAiF;IACjF,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;CACtB;AA8GD,qBAAa,UAAU;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAe;gBAE7B,IAAI,GAAE,cAAmB;IAMrC,OAAO,CAAC,GAAG;IAIX,OAAO,CAAC,UAAU;IAIlB,wEAAwE;IAClE,QAAQ,CAAC,QAAQ,EAAE,UAAU,GAAG,OAAO,CAAC,YAAY,CAAC;IAoB3D;;;;;;;;OAQG;IACG,cAAc,CAAC,QAAQ,EAAE,UAAU,GAAG,OAAO,CAAC,YAAY,CAAC;IAoBjE;;;;;;;OAOG;IACG,aAAa,CAAC,EAAE,EAAE,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC;IAsCvD;;;;;;;;;;;;;;;;;;;OAmBG;IACG,uBAAuB,CAAC,IAAI,EAAE;QAClC,MAAM,EAAE,MAAM,CAAC;QACf,YAAY,EAAE,UAAU,CAAC;QACzB,MAAM,EAAE,UAAU,CAAC;QACnB,gBAAgB,EAAE,UAAU,CAAC;QAC7B,UAAU,EAAE,UAAU,CAAC;KACxB,GAAG,OAAO,CAAC,WAAW,CAAC;IAwCxB;;;;;;;;;OASG;IACG,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAQtF,+FAA+F;IAC/F;;;;;;;;;;;;;;;;OAgBG;IACG,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC;IAqBvC,2EAA2E;IACrE,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC;IASrC;;;;;;;;;;;;;;;;;;;;OAoBG;IACG,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,IAAI,CAAC;IAUtF;;;;uFAImF;IAC7E,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAMvD;;;;yEAIqE;IAC/D,UAAU,IAAI,OAAO,CAAC,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAS5F;;;;qBAIiB;IACX,gBAAgB,CACpB,KAAK,SAAM,EACX,MAAM,SAAI,GACT,OAAO,CAAC;QAAE,MAAM,EAAE,KAAK,CAAC;YAAE,QAAQ,EAAE,MAAM,CAAC;YAAC,WAAW,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAavF;;;;;;;;;;;;;;;OAeG;IACG,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;QAC/C,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,EAAE,CAAC;QACjB,IAAI,EAAE;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,SAAS,EAAE,MAAM,CAAA;SAAE,GAAG,IAAI,CAAC;QACnD,EAAE,EAAE;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,UAAU,EAAE,MAAM,CAAA;SAAE,GAAG,IAAI,CAAC;QACjD,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;KAC5B,CAAC;IAwBF;;;;;;;;;;;;;;;OAeG;IACG,gBAAgB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IASpG;;;;;;;;OAQG;IACG,kBAAkB,CAAC,KAAK,SAAK,EAAE,MAAM,SAAI,GAAG,OAAO,CAAC,KAAK,CAAC;QAC9D,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,KAAK,CAAC;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAClD,CAAC,CAAC;IAeH,0FAA0F;IACpF,OAAO,CAAC,KAAK,SAAM,EAAE,MAAM,SAAI,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAS1D;;;;;;;;;6BASyB;IACnB,WAAW,CACf,KAAK,EAAE,UAAU,EACjB,IAAI,CAAC,EAAE;QAAE,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GACzC,OAAO,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAIzC;;;;;;;;;6FASyF;IACnF,iBAAiB,CACrB,IAAI,EAAE,cAAc,CAAC,UAAU,CAAC,EAChC,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GACtD,OAAO,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;YAQ3B,eAAe;YASf,YAAY;IAa1B,6GAA6G;IACvG,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAgBzD;;;;;;wDAMoD;IAC9C,gBAAgB,CACpB,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,WAAW,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,GACvD,OAAO,CAAC;QAAE,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAsBvE,kFAAkF;IAC5E,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAUlE;;;;OAIG;IACG,YAAY,CAChB,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EACvC,SAAS,EAAE,CAAC,CAAC,EAAE,QAAQ,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,EAChD,IAAI,GAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAO,GAC/D,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CA4C7C"}
package/dist/api.js CHANGED
@@ -4,7 +4,7 @@
4
4
  // to "" — relative paths, which is what the browser app uses behind its dev
5
5
  // proxy; pass an absolute origin (e.g. "https://node:8440") from Node.
6
6
  import { FAILURE_REASONS } from "./types.js";
7
- import { faucetClaimDigest } from "./identity.js";
7
+ import { faucetClaimDigest, faucetClaimDigestFor } from "./identity.js";
8
8
  import { blsSign, edSign } from "./crypto/auth.js";
9
9
  import { bytesToHex } from "./crypto/hash.js";
10
10
  function asFailureReason(s) {
@@ -234,6 +234,67 @@ export class NodeClient {
234
234
  return { kind: "failed", error: "internal", message: e instanceof Error ? e.message : String(e) };
235
235
  }
236
236
  }
237
+ /**
238
+ * Claim a faucet-sponsored identity from PROOFS SOMEBODY ELSE PRODUCED.
239
+ *
240
+ * The difference from [[claimIdentity]] is the whole point: that one takes an `Identity` —
241
+ * public and private keys — and signs both proofs itself. This one takes public keys and the
242
+ * signatures their holder made elsewhere, so a caller can bring an identity onto the chain for
243
+ * a party whose keys it must never see.
244
+ *
245
+ * ⚠️ THE DIGEST IS RECOMPUTED LOCALLY AND A MISMATCH REFUSES. The node's `/prepare` answers
246
+ * with the bytes it wants signed; `faucetClaimDigest` reproduces them from the same inputs
247
+ * (it is `popCreateIdentity`, a described codec with a purpose tag and a golden vector). A
248
+ * party that supplies the bytes to be signed is a party choosing what gets signed, so the
249
+ * proofs are only forwarded once we can reproduce what they cover.
250
+ *
251
+ * ⚠️ BOTH KEYS, EXACTLY: the chain requires one `BLS12-381-G1` and one `Ed25519`, each at
252
+ * label `""`. A claim missing one is not refused at admit — it is ordered and FINED.
253
+ *
254
+ * The NODE pays here (its sponsorship cost plus the standard starting credit), so nothing
255
+ * about the caller's balance bounds how many of these succeed. The node's does.
256
+ */
257
+ async claimIdentityWithProofs(args) {
258
+ const expected = faucetClaimDigestFor(args.nodeId, args.blsPublicKey, args.ed25519PublicKey);
259
+ const pubs = {
260
+ node_id: args.nodeId,
261
+ bls_pubkey_hex: bytesToHex(args.blsPublicKey),
262
+ ed25519_pubkey_hex: bytesToHex(args.ed25519PublicKey),
263
+ };
264
+ const post = async (path, body) => this.fetchImpl(this.url(path), {
265
+ method: "POST",
266
+ headers: { "Content-Type": "application/json", Accept: "application/json" },
267
+ body: JSON.stringify(body),
268
+ });
269
+ try {
270
+ const prep = await post("/api/identity/prepare", pubs);
271
+ const p = (await prep.json().catch(() => ({})));
272
+ if (!prep.ok)
273
+ return { kind: "failed", error: p.error ?? `http_${prep.status}`, message: p.message ?? "" };
274
+ if ((p.tx_hash_hex ?? "").toLowerCase() !== bytesToHex(expected).toLowerCase()) {
275
+ return {
276
+ kind: "failed",
277
+ error: "digest_mismatch",
278
+ message: `server tx_hash ${p.tx_hash_hex} != the digest these proofs can only have been made ` +
279
+ `over — refusing to submit them`,
280
+ };
281
+ }
282
+ const create = await post("/api/identity/create", {
283
+ ...pubs,
284
+ bls_pop_sig_hex: bytesToHex(args.blsPop),
285
+ ed25519_pop_sig_hex: bytesToHex(args.ed25519Pop),
286
+ });
287
+ const c = (await create.json().catch(() => ({})));
288
+ if (create.ok)
289
+ return { kind: "committed", blockHeight: c.block_height ?? 0 };
290
+ if (c.error === "identity_already_exists")
291
+ return { kind: "exists" };
292
+ return { kind: "failed", error: c.error ?? `http_${create.status}`, message: c.message ?? "" };
293
+ }
294
+ catch (e) {
295
+ return { kind: "failed", error: "internal", message: e instanceof Error ? e.message : String(e) };
296
+ }
297
+ }
237
298
  /**
238
299
  * GET /api/identity/:nodeId → { nodeId, balance }, or null if not yet on-chain.
239
300
  *
@@ -254,6 +315,42 @@ export class NodeClient {
254
315
  return { nodeId: b.node_id, balance: BigInt(b.balance) };
255
316
  }
256
317
  /** Latest committed round (chain tip), via the explorer blocks list (orderDesc). 0 if none. */
318
+ /**
319
+ * The node's three heights, which are three DIFFERENT questions and are routinely
320
+ * three different numbers.
321
+ *
322
+ * ⚠️ `currentRound()` answers only the first of them, and that is how a consumer ends up
323
+ * confidently wrong. A processing node answers every committed-state read AS OF ITS APPLY
324
+ * CURSOR, so an identity created at round N is invisible to `getIdentity` until
325
+ * `appliedRound >= N` — even though the node HOLDS block N and will tell you so. Observed
326
+ * live: held 8147, heard 8147, applied 5253.
327
+ *
328
+ * - `blockHeight` what this node HOLDS (its committed tip).
329
+ * - `appliedRound` how far its STATE has been applied. `null` means "not a processing
330
+ * node" — not "unknown" and not "zero". A processing node nobody has polled reports 0.
331
+ * - `heardRound` the highest round this node has been TOLD OF, from tip gossip. It is a
332
+ * hint, not a verified fact: `heard > held` means behind, while `heard == held` means
333
+ * only "no evidence of anything higher", which is ALSO what an isolated node reports.
334
+ */
335
+ async nodeStatus() {
336
+ const res = await this.fetchImpl(this.url("/status"), {
337
+ headers: { Accept: "application/json" },
338
+ });
339
+ if (!res.ok)
340
+ throw new Error(`nodeStatus: HTTP ${res.status}`);
341
+ const b = (await res.json());
342
+ // `appliedRound` is ABSENT on a node that is not a processing node, and that absence is an
343
+ // answer. It is mapped to null rather than 0 — "applies at commit" and "has applied
344
+ // nothing" are opposite claims, and 0 is the one a processing node makes.
345
+ return {
346
+ nodeId: b.nodeId ?? "",
347
+ blockHeight: b.blockHeight ?? 0,
348
+ appliedRound: typeof b.appliedRound === "number" ? b.appliedRound : null,
349
+ heardRound: typeof b.heardRound === "number" ? b.heardRound : (b.blockHeight ?? 0),
350
+ selfQuorumIndex: typeof b.selfQuorumIndex === "number" ? b.selfQuorumIndex : null,
351
+ };
352
+ }
353
+ /** ⚠️ The HELD tip only. For apply lag or catch-up, use `nodeStatus()`. */
257
354
  async currentRound() {
258
355
  const res = await this.fetchImpl(this.url("/api/explorer/blocks?limit=1&offset=0"), {
259
356
  headers: { Accept: "application/json" },
@@ -263,15 +360,105 @@ export class NodeClient {
263
360
  const b = (await res.json());
264
361
  return b.blocks && b.blocks.length > 0 ? b.blocks[0].roundNum : 0;
265
362
  }
266
- /** Members of a group, from the on-chain group_members (/api/explorer/groups/:g/members). */
267
- async getGroupMembers(group) {
363
+ /**
364
+ * One group and its members, or `null` when this node holds no group of that name.
365
+ *
366
+ * ⚠️ `null` IS AN ANSWER; A THROW IS NOT. The explorer answers 404 for a name it has no group
367
+ * row for, so `null` means "the chain says this is not a group" — while an unreadable chain
368
+ * throws. Nothing could tell those apart before: `getGroupMembers` threw for both, so a caller
369
+ * had to treat a network failure as evidence about the world. Same convention as
370
+ * `getIdentity`, deliberately.
371
+ *
372
+ * ⚠️ A GROUP WITH NO MEMBERS ANSWERS `{ members: [] }`, WHICH IS NOT `null`. Absence of members
373
+ * is not absence of the group, and a caller deciding whether a name exists must not read the
374
+ * empty list as "no such group".
375
+ *
376
+ * It does NOT report who owns the group. The node offers an owner only on the whole-list route
377
+ * (`/api/explorer/groups`, unpaged), so answering about one group would mean pulling every group
378
+ * on somebody else's chain.
379
+ *
380
+ * ⚠️ Like every committed-state read, this answers AS OF THE NODE'S APPLIED POSITION. On a
381
+ * processing node a group that has been committed but not yet applied reads as `null` — "not
382
+ * yet", not "no". Ask a fully-applied node when the question is whether a name is taken.
383
+ */
384
+ async getGroup(group) {
268
385
  const res = await this.fetchImpl(this.url(`/api/explorer/groups/${encodeURIComponent(group)}/members`), {
269
386
  headers: { Accept: "application/json" },
270
387
  });
388
+ if (res.status === 404)
389
+ return null;
390
+ if (!res.ok)
391
+ throw new Error(`getGroup ${group}: HTTP ${res.status}`);
392
+ const b = (await res.json());
393
+ return { ledgerId: b.ledgerId ?? group, members: b.members ?? [] };
394
+ }
395
+ /** Members of a group that is expected to exist; throws when it does not.
396
+ *
397
+ * One transport, expressed through `getGroup` — the URL and the parsing live in exactly one
398
+ * place. Kept because a caller that already knows the group exists should not have to handle a
399
+ * `null` it has ruled out; a caller ASKING whether it exists wants `getGroup`. */
400
+ async getGroupMembers(group) {
401
+ const found = await this.getGroup(group);
402
+ if (found === null)
403
+ throw new Error(`getGroupMembers ${group}: HTTP 404`);
404
+ return found.members;
405
+ }
406
+ /** Every group on the chain, with its member count and its owner.
407
+ *
408
+ * ⚠️ UNPAGED, because the node's route is: `/api/explorer/groups` returns all of them in one
409
+ * response. That is the node's shape, not a choice made here, and it is why a caller wanting
410
+ * ONE group's members uses `getGroup` instead of filtering this. */
411
+ async listGroups() {
412
+ const res = await this.fetchImpl(this.url("/api/explorer/groups"), {
413
+ headers: { Accept: "application/json" },
414
+ });
415
+ if (!res.ok)
416
+ throw new Error(`listGroups: HTTP ${res.status}`);
417
+ const b = (await res.json());
418
+ return b.groups ?? [];
419
+ }
420
+ /** Who owns each claimed ledger, paged.
421
+ *
422
+ * The caller bounds the walk: this returns one page and the total, and does not loop. An
423
+ * ownership check is a tripwire on a hot path, not an audit, so the bound belongs to whoever
424
+ * is asking. */
425
+ async listLedgerOwners(limit = 200, offset = 0) {
426
+ const res = await this.fetchImpl(this.url(`/api/explorer/ledger-owners?limit=${limit}&offset=${offset}`), { headers: { Accept: "application/json" } });
271
427
  if (!res.ok)
272
- throw new Error(`getGroupMembers ${group}: HTTP ${res.status}`);
428
+ throw new Error(`listLedgerOwners: HTTP ${res.status}`);
273
429
  const b = (await res.json());
274
- return b.members ?? [];
430
+ return { owners: b.owners ?? [], total: b.total ?? 0 };
431
+ }
432
+ /**
433
+ * One channel's terms: who administers it, what it charges, its data-availability and write
434
+ * policies (156).
435
+ *
436
+ * ⚠️ IT NEVER ANSWERS "NO SUCH CHANNEL", and that is not an omission here — the node has no
437
+ * 404 branch for it. **A channel is not a registered entity**: any ledger id that is not a core
438
+ * ledger is a channel, and it either carries terms or carries the defaults. So this returns a
439
+ * value or throws, and it is the one read on this client that does NOT follow `getIdentity`'s
440
+ * null-means-absent convention, because there is no absence to report.
441
+ *
442
+ * ⚠️ A caller asking "is this claimed?" reads `owners.length === 0` — and on a PROCESSING NODE
443
+ * that means "not claimed as of my cursor", which is how a service nearly claimed a channel
444
+ * somebody else already owned (evolver#85). Ask a fully-applied node when the answer matters.
445
+ *
446
+ * Amounts arrive as decimal strings and are returned as `bigint` (Constitution VIII).
447
+ */
448
+ async getChannelTerms(ledgerId) {
449
+ const res = await this.fetchImpl(this.url(`/api/explorer/channels/${encodeURIComponent(ledgerId)}`), { headers: { Accept: "application/json" } });
450
+ if (!res.ok)
451
+ throw new Error(`getChannelTerms ${ledgerId}: HTTP ${res.status}`);
452
+ const b = (await res.json());
453
+ return {
454
+ ledgerId: b.ledgerId ?? ledgerId,
455
+ owners: b.owners ?? [],
456
+ // Every key is always present with absence as null (156), so `null` here is the chain
457
+ // saying "no toll", not a field that failed to arrive.
458
+ toll: b.toll ? { amount: BigInt(b.toll.amount ?? "0"), recipient: b.toll.recipient ?? "" } : null,
459
+ da: b.da ? { group: b.da.group ?? "", thresholdM: b.da.thresholdM ?? 0 } : null,
460
+ writePolicy: b.writePolicy ?? null,
461
+ };
275
462
  }
276
463
  /**
277
464
  * Principal name search (`/api/explorer/search`) — the read behind a recipient picker.
package/dist/api.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,EAAE;AACF,+EAA+E;AAC/E,4EAA4E;AAC5E,uEAAuE;AAEvE,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,OAAO,EAAE,iBAAiB,EAAiB,MAAM,eAAe,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAQ9C,SAAS,eAAe,CAAC,CAAS;IAChC,oFAAoF;IACpF,qFAAqF;IACrF,OAAO,CAAE,eAAqC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAkB,CAAC;AAChG,CAAC;AAED,SAAS,aAAa,CAAC,GAAW;IAChC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;IACtB,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE;QAAE,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IAChE,OAAO,GAAG,CAAC;AACb,CAAC;AASD;gFACgF;AAChF,MAAM,kBAAkB,GAAG,OAAO,CAAC;AAEnC;qFACqF;AACrF,SAAS,cAAc,CAAC,KAAa,EAAE,IAAY,EAAE,oBAA+B;IAClF,MAAM,OAAO,GAA2B;QACtC,cAAc,EAAE,0BAA0B;QAC1C,gBAAgB,EAAE,MAAM,CAAC,IAAI,CAAC;KAC/B,CAAC;IACF,MAAM,QAAQ,GAAG,oBAAoB,IAAI,EAAE,CAAC;IAC5C,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACzE,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAC5C,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,qFAAqF,CAAC,CAAC;IACjH,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,CAAC,gCAAgC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACpF,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,0FAA0F;AAC1F,SAAS,cAAc,CAAC,KAAa,EAAE,MAAc,EAAE,IAAY,EAAE,IAAY;IAC/E,IAAI,MAAM,KAAK,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,UAAU,MAAM,IAAI,IAAI,EAAE,CAAC,CAAC;IACxE,IAAI,IAAI,GAAoC,EAAE,CAAC;IAC/C,IAAI,CAAC;QAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAoC,CAAC;IAAC,CAAC;IAAC,MAAM,CAAC,CAAC,oBAAoB,CAAC,CAAC;IAClG,IAAI,CAAC,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,sBAAsB,CAAC,CAAC;IAC/D,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;AACpD,CAAC;AAsBD,KAAK,UAAU,cAAc,CAAI,IAAY;IAC3C,IAAI,CAAC;QAAC,OAAO,CAAC,MAAM,MAAM,CAAC,kBAAkB,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAM,CAAC;IAAC,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,IAAI,CAAC;IAAC,CAAC;AAC/F,CAAC;AAED;;;;;;;;;GASG;AACH,KAAK,UAAU,cAAc,CAC3B,GAAW,EACX,OAA+B,EAC/B,IAAgC,EAChC,YAAoB;IAEpB,MAAM,QAAQ,GAAI,UAA6D,CAAC,OAAO,EAAE,QAAQ,CAAC;IAClG,IAAI,OAAO,QAAQ,EAAE,IAAI,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACpD,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC;IACrE,MAAM,IAAI,GAAG,MAAM,cAAc,CAAiB,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAC5E,MAAM,OAAO,GAAG,MAAM,cAAc,CAAmB,QAAQ,CAAC,CAAC;IACjE,IAAI,IAAI,KAAK,IAAI,IAAI,OAAO,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACnD,OAAO,MAAM,IAAI,OAAO,CAAmC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC7E,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,IAAI,IAAI,GAAG,EAAE,CAAC;QACd,MAAM,MAAM,GAAG,GAAS,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;YAAC,OAAO,GAAG,IAAI,CAAC;YAAC,OAAO,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAAC,CAAC,CAAC,CAAC,CAAC;QAC5F,MAAM,QAAQ,GAAG,CAAC,CAAU,EAAQ,EAAE;YACpC,IAAI,CAAC,OAAO,EAAE,CAAC;gBAAC,OAAO,GAAG,IAAI,CAAC;gBAAC,MAAM,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAAC,CAAC;QAC1F,CAAC,CAAC;QACF,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE;YACjE,MAAM,GAAG,OAAO,GAAG,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;YACjE,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YACxB,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,GAAG,IAAI,IAAI,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5D,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACtB,GAAG,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YAC1B,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;QACH,sCAAsC;QACtC,GAAG,CAAC,UAAU,CAAC,YAAY,EAAE,GAAG,EAAE,CAChC,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,0CAA0C,YAAY,MAAM,CAAC,CAAC,CAAC,CAAC;QACxF,qFAAqF;QACrF,uFAAuF;QACvF,yEAAyE;QACzE,IAAI,UAAU,GAAY,IAAI,CAAC;QAC/B,MAAM,WAAW,GAAG,CAAC,CAAU,EAAQ,EAAE,GAAG,IAAI,UAAU,KAAK,IAAI;YAAE,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACvF,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QAC7B,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YACnB,IAAI,OAAO;gBAAE,OAAO;YACpB,IAAI,MAAM,KAAK,CAAC;gBAAE,MAAM,EAAE,CAAC;;gBACtB,QAAQ,CAAC,UAAU,IAAI,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC,CAAC;QAC7E,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;IACrE,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,OAAO,UAAU;IACJ,OAAO,CAAS;IAChB,cAAc,CAAS;IACvB,SAAS,CAAe;IAEzC,YAAY,OAAuB,EAAE;QACnC,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACvD,IAAI,CAAC,cAAc,GAAG,CAAC,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACrF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC;IACvC,CAAC;IAEO,GAAG,CAAC,IAAY;QACtB,OAAO,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;IAC7B,CAAC;IAEO,UAAU,CAAC,IAAY;QAC7B,OAAO,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;IACpC,CAAC;IAED,wEAAwE;IACxE,KAAK,CAAC,QAAQ,CAAC,QAAoB;QACjC,IAAI,IAAc,CAAC;QACnB,IAAI,CAAC;YACH,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE;gBACtD,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,wBAAwB,EAAE,MAAM,EAAE,kBAAkB,EAAE;gBACjF,IAAI,EAAE,QAAoB;aAC3B,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;QACrG,CAAC;QACD,IAAI,IAAa,CAAC;QAClB,IAAI,CAAC;YACH,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAC3B,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACpH,CAAC;QACD,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,cAAc,CAAC,QAAoB;QACvC,IAAI,IAAc,CAAC;QACnB,IAAI,CAAC;YACH,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,wBAAwB,CAAC,EAAE;gBAC9D,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,wBAAwB,EAAE,MAAM,EAAE,kBAAkB,EAAE;gBACjF,IAAI,EAAE,QAAoB;aAC3B,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;QACrG,CAAC;QACD,IAAI,IAAa,CAAC;QAClB,IAAI,CAAC;YACH,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAC3B,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACpH,CAAC;QACD,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,aAAa,CAAC,EAAY;QAC9B,MAAM,MAAM,GAAG,iBAAiB,CAAC,EAAE,CAAC,CAAC;QACrC,MAAM,IAAI,GAAG;YACX,OAAO,EAAE,EAAE,CAAC,MAAM;YAClB,cAAc,EAAE,UAAU,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC;YACtC,kBAAkB,EAAE,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC;SAC1C,CAAC;QACF,MAAM,IAAI,GAAG,KAAK,EAAE,IAAY,EAAE,IAAY,EAAE,EAAE,CAChD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YAC7B,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,EAAE,kBAAkB,EAAE;YAC3E,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;SAC3B,CAAC,CAAC;QACL,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,uBAAuB,EAAE,IAAI,CAAC,CAAC;YACvD,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAA+D,CAAC;YAC9G,IAAI,CAAC,IAAI,CAAC,EAAE;gBAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,IAAI,QAAQ,IAAI,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;YAC3G,IAAI,CAAC,CAAC,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,KAAK,UAAU,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;gBAC7E,OAAO;oBACL,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,iBAAiB;oBACxB,OAAO,EAAE,kBAAkB,CAAC,CAAC,WAAW,oDAAoD;iBAC7F,CAAC;YACJ,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,sBAAsB,EAAE;gBAChD,GAAG,IAAI;gBACP,eAAe,EAAE,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACzD,mBAAmB,EAAE,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;aAC5D,CAAC,CAAC;YACH,MAAM,CAAC,GAAG,CAAC,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAgE,CAAC;YACjH,IAAI,MAAM,CAAC,EAAE;gBAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC,CAAC,YAAY,IAAI,CAAC,EAAE,CAAC;YAC9E,IAAI,CAAC,CAAC,KAAK,KAAK,yBAAyB;gBAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;YACrE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,IAAI,QAAQ,MAAM,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;QACjG,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;QACpG,CAAC;IACH,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,WAAW,CAAC,MAAc;QAC9B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAiB,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QAC1F,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG;YAAE,OAAO,IAAI,CAAC;QACpC,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,eAAe,MAAM,UAAU,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;QAC1E,MAAM,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAyC,CAAC;QACrE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IAC3D,CAAC;IAED,+FAA+F;IAC/F,KAAK,CAAC,YAAY;QAChB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,uCAAuC,CAAC,EAAE;YAClF,OAAO,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE;SACxC,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;QACjE,MAAM,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAA6C,CAAC;QACzE,OAAO,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IACpE,CAAC;IAED,6FAA6F;IAC7F,KAAK,CAAC,eAAe,CAAC,KAAa;QACjC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,wBAAwB,kBAAkB,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE;YACtG,OAAO,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE;SACxC,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,KAAK,UAAU,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;QAC7E,MAAM,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAA2B,CAAC;QACvD,OAAO,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC;IACzB,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,KAAK,CAAC,gBAAgB,CAAC,CAAS;QAC9B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,0BAA0B,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;YAC5F,OAAO,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE;SACxC,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,UAAU,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;QAC1E,MAAM,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAA2E,CAAC;QACvG,OAAO,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC;IACzB,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,kBAAkB,CAAC,KAAK,GAAG,EAAE,EAAE,MAAM,GAAG,CAAC;QAQ7C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAC9B,IAAI,CAAC,GAAG,CAAC,oCAAoC,KAAK,WAAW,MAAM,EAAE,CAAC,EACtE,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE,EAAE,CAC5C,CAAC;QACF,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;QACvE,MAAM,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAK1B,CAAC;QACF,OAAO,CAAC,CAAC,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;IACjF,CAAC;IAED,0FAA0F;IAC1F,KAAK,CAAC,OAAO,CAAC,KAAK,GAAG,GAAG,EAAE,MAAM,GAAG,CAAC;QACnC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,4BAA4B,KAAK,WAAW,MAAM,EAAE,CAAC,EAAE;YAC/F,OAAO,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE;SACxC,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,iBAAiB,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;QAC5D,MAAM,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAyB,CAAC;QACrD,OAAO,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;IACtB,CAAC;IAED;;;;;;;;;6BASyB;IACzB,KAAK,CAAC,WAAW,CACf,KAAiB,EACjB,IAA0C;QAE1C,OAAO,IAAI,CAAC,eAAe,CAAC,aAAa,EAAE,KAAiB,EAAE,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,oBAAoB,CAAC,CAAC;IAC1G,CAAC;IAED;;;;;;;;;6FASyF;IACzF,KAAK,CAAC,iBAAiB,CACrB,IAAgC,EAChC,IAAuD;QAEvD,MAAM,KAAK,GAAG,mBAAmB,CAAC;QAClC,MAAM,OAAO,GAAG,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC5E,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,kBAAkB,CAAC,CAAC;QACrG,IAAI,OAAO,KAAK,IAAI;YAAE,OAAO,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5F,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,IAA2B,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACnF,CAAC;IAEO,KAAK,CAAC,eAAe,CAC3B,KAAa,EACb,IAAc,EACd,IAAY,EACZ,oBAA+B;QAE/B,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,EAAE,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE,oBAAoB,CAAC,EAAE,IAAI,CAAC,CAAC;IACjG,CAAC;IAEO,KAAK,CAAC,YAAY,CACxB,KAAa,EACb,IAAc,EACd,OAA+B,EAC/B,IAAY;QAEZ,8EAA8E;QAC9E,MAAM,IAAI,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAiB,CAAC;QAC9E,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,CAAC;QACrE,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QACzF,OAAO,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACxD,CAAC;IAED,6GAA6G;IAC7G,KAAK,CAAC,UAAU,CAAC,GAAW;QAC1B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;QAC7C,IAAI,GAAG,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QAC9B,MAAM,KAAK,GAAiB,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;QACtC,SAAS,CAAC;YACR,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;YAC5C,IAAI,IAAI;gBAAE,MAAM;YAChB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpB,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;QACpE,IAAI,GAAG,GAAG,CAAC,CAAC;QACZ,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;YAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YAAC,GAAG,IAAI,CAAC,CAAC,MAAM,CAAC;QAAC,CAAC;QAC5D,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;;;;;wDAMoD;IACpD,KAAK,CAAC,gBAAgB,CACpB,GAAW,EACX,IAAwD;QAExD,MAAM,OAAO,GAA2B,EAAE,CAAC;QAC3C,IAAI,IAAI,EAAE,KAAK;YAAE,OAAO,CAAC,OAAO,CAAC,GAAG,SAAS,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QACzF,gFAAgF;QAChF,qFAAqF;QACrF,gCAAgC;QAChC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;QACtH,IAAI,IAAI,CAAC,MAAM,KAAK,GAAG;YAAE,OAAO,IAAI,CAAC;QACrC,IAAI,CAAC,IAAI,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QAC3F,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC9D,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC;YACzC,MAAM,IAAI,KAAK,CAAC,oBAAoB,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,0BAA0B,CAAC,CAAC;QAClF,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC;QACzF,8EAA8E;QAC9E,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,MAAM,KAAK,GAAG,IAAI,eAAe,CAAyB;YACxD,SAAS,CAAC,KAAK,EAAE,IAAI,IAAI,IAAI,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACrE,KAAK,KAAK,IAAI,IAAI,KAAK,IAAI;gBAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,IAAI,IAAI,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC;SACpG,CAAC,CAAC;QACH,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;IACxD,CAAC;IAED,kFAAkF;IAClF,KAAK,CAAC,WAAW,CAAC,KAAa,EAAE,KAAa;QAC5C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,2BAA2B,KAAK,UAAU,KAAK,EAAE,CAAC,CAAC,CAAC;QAC9F,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QAC9B,IAAI,CAAC;YACH,OAAO,EAAE,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACzD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QACpE,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,YAAY,CAChB,KAAuC,EACvC,SAAgD,EAChD,OAA8D,EAAE;QAEhE,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,QAAQ,CAAC;QACjC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC;QACvC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,GAAG,CAAC;QAClC,MAAM,KAAK,GAAG,CAAC,EAAU,EAAE,EAAE,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAEpE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;QAC7B,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,IAAI,IAAI,GAAG,CAAC,CAAC;QAEb,OAAO,IAAI,GAAG,GAAG,IAAI,IAAI,GAAG,SAAS,EAAE,CAAC;YACtC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAC/C,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC;gBACjB,KAAK,SAAS;oBACZ,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;oBACxB,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;oBACxB,MAAM,SAAS,CAAC;wBACd,KAAK;wBACL,KAAK;wBACL,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,EAAE;wBAClB,QAAQ,EAAE,CAAC,CAAC,QAAQ,IAAI,EAAE;wBAC1B,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,EAAE;wBACtB,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;qBAClC,CAAC,CAAC;oBACH,KAAK,IAAI,CAAC,CAAC;oBACX,IAAI,IAAI,CAAC,CAAC;oBACV,IAAI,GAAG,CAAC,CAAC;oBACT,MAAM;gBACR,KAAK,cAAc;oBACjB,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBAC5B,KAAK,GAAG,CAAC,CAAC;oBACV,IAAI,GAAG,CAAC,CAAC;oBACT,MAAM;gBACR,KAAK,cAAc,CAAC;gBACpB,KAAK,WAAW;oBACd,IAAI,IAAI,CAAC,CAAC;oBACV,MAAM,KAAK,CAAC,MAAM,CAAC,CAAC;oBACpB,MAAM;gBACR;oBACE,MAAM,IAAI,KAAK,CAAC,uBAAuB,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAChE,CAAC;QACH,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;IAC1B,CAAC;CACF;AAED,SAAS,WAAW,CAAC,IAAa;IAChC,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QAC9C,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,qBAAqB,EAAE,CAAC;IAChF,CAAC;IACD,MAAM,CAAC,GAAG,IAA+B,CAAC;IAC1C,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IAC5D,IAAI,MAAM,KAAK,WAAW,IAAI,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ;QAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC;IAClH,IAAI,MAAM,KAAK,SAAS,IAAI,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ;QAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC;IAC9G,mFAAmF;IACnF,+FAA+F;IAC/F,wFAAwF;IACxF,2FAA2F;IAC3F,+FAA+F;IAC/F,8EAA8E;IAC9E,yFAAyF;IACzF,6FAA6F;IAC7F,gGAAgG;IAChG,yCAAyC;IACzC,IAAI,MAAM,KAAK,UAAU,IAAI,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ;QAC1D,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC;IACnD,IAAI,MAAM,KAAK,SAAS;QACtB,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,oDAAoD,EAAE,CAAC;IAClH,IAAI,MAAM,KAAK,cAAc,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;QACvF,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,2BAA2B,CAAC;QACxF,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IAC7C,CAAC;IACD,2FAA2F;IAC3F,sFAAsF;IACtF,0FAA0F;IAC1F,0FAA0F;IAC1F,0FAA0F;IAC1F,cAAc;IACd,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;QACvB,OAAO;YACL,IAAI,EAAE,OAAO;YACb,MAAM,EAAE,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;YAChF,OAAO,EAAE,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YACvD,OAAO,EAAE,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;SAC5D,CAAC;IACJ,CAAC;IACD,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QACxB,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;QACrF,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/D,sFAAsF;QACtF,+DAA+D;QAC/D,OAAO,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ;YACpC,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,SAAS,EAAE;YAC3D,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IAC1C,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,0BAA0B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;AAC3G,CAAC"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
package/dist/bodies.d.ts CHANGED
@@ -40,6 +40,15 @@ export interface ReplaceKeyArgs {
40
40
  * two descriptions carry different tags. */
41
41
  export declare function replaceKeyInner(args: ReplaceKeyArgs): Uint8Array;
42
42
  export declare function replaceKeyBody(args: ReplaceKeyArgs): Uint8Array;
43
+ /** DeleteIdentityTxBody{ target_node_id = 1 } as TxBody.delete_identity = 2.
44
+ *
45
+ * ⚠️ SELF-DELETION ONLY, AND IRREVERSIBLE. The chain fines a transaction whose sender is not the
46
+ * target, refuses one whose target is a quorum member, and refuses one whose target still has
47
+ * dependents (a group it owns, a membership, a ledger, a committee proposal, tickets, a toll it
48
+ * receives). What it does NOT do is give the name back: a deleted name is free for anyone to
49
+ * take, and a proof already issued naming it keeps working for whoever takes it next
50
+ * (157 FR-026a). The balance is forfeited. */
51
+ export declare function deleteIdentityBody(targetNodeId: string): Uint8Array;
43
52
  export declare function deleteKeyBody(args: {
44
53
  keyType: string;
45
54
  keyLabel: string;
@@ -68,6 +77,24 @@ export declare function transferBody(entries: TransferEntryArg[]): Uint8Array;
68
77
  export declare function createGroupBody(name: string): Uint8Array;
69
78
  export declare function addMemberBody(groupName: string, memberNodeId: string): Uint8Array;
70
79
  export declare function removeMemberBody(groupName: string, memberNodeId: string): Uint8Array;
80
+ /** DeleteGroupTxBody{ group_name = 1 } as GroupTxBody.delete_group = 4.
81
+ *
82
+ * The chain fines this unless the sender owns the group, and refuses it while the group still
83
+ * owns a ledger or serves as a channel's data-availability group — none of which is checked
84
+ * here. A builder that duplicated the ledger's rules would be a second copy of them, going
85
+ * stale the moment the ledger changed. */
86
+ export declare function deleteGroupBody(groupName: string): Uint8Array;
87
+ /** TransferGroupOwnershipTxBody{ group_name = 1, new_owner_node_id = 2 } as
88
+ * GroupTxBody.transfer_ownership = 5.
89
+ *
90
+ * ⚠️ THE TRANSACTION THIS BUILDS IS NOT COMPLETE. The chain requires an auth from the INCOMING
91
+ * owner as well as the sender's, and fines the transaction as "missing co-signer auth" without
92
+ * it. Handing a group over needs the other party's consent, by construction — 055 made adding a
93
+ * member the owner's decision alone and made this one mutual. */
94
+ export declare function transferGroupOwnershipBody(args: {
95
+ groupName: string;
96
+ newOwnerNodeId: string;
97
+ }): Uint8Array;
71
98
  /** 156 — a channel's write policy. "owner_or_group" is the default and today's
72
99
  * behaviour; "open" admits any identity while leaving ADMINISTRATION with the owner. */
73
100
  export type WritePolicy = "owner_or_group" | "open";
@@ -80,6 +107,11 @@ export declare function claimBody(args: {
80
107
  tollRecipient?: string;
81
108
  writePolicy?: WritePolicy;
82
109
  }): Uint8Array;
110
+ export declare function updateChannelDaBody(args: {
111
+ ledgerId: string;
112
+ daGroup?: string;
113
+ daThresholdM?: number;
114
+ }): Uint8Array;
83
115
  export declare function updateChannelWritePolicyBody(args: {
84
116
  ledgerId: string;
85
117
  writePolicy: WritePolicy;
@@ -1 +1 @@
1
- {"version":3,"file":"bodies.d.ts","sourceRoot":"","sources":["../src/bodies.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3C,eAAO,MAAM,MAAM;;;;CAIT,CAAC;AAeX;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,GAAG,MAAM,EAC9B,IAAI,EAAE,QAAQ,EAAE,EAChB,OAAO,EAAE,OAAO,GACf,UAAU,CAOZ;AAED,+EAA+E;AAC/E,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,UAAU,GAAG,UAAU,CAEhE;AAED,MAAM,WAAW,UAAU;IACzB,SAAS,EAAE,UAAU,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,UAAU,CAAC;CAC1B;AAED;;;;sGAIsG;AACtG,wBAAgB,WAAW,CAAC,IAAI,EAAE,UAAU,GAAG,UAAU,CAOxD;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,UAAU,GAAG,UAAU,CAEvD;AAED,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,UAAU,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,UAAU,CAAC;CAC1B;AAED;;;6CAG6C;AAC7C,wBAAgB,eAAe,CAAC,IAAI,EAAE,cAAc,GAAG,UAAU,CAOhE;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,cAAc,GAAG,UAAU,CAE/D;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAAG,UAAU,CAIrF;AAED,qFAAqF;AACrF,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB;wFACoF;IACpF,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,gBAAgB,EAAE,GAAG,UAAU,CAKpE;AAKD,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,CAExD;AAED,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,UAAU,CAEjF;AAED,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,UAAU,CAEpF;AASD;yFACyF;AACzF,MAAM,MAAM,WAAW,GAAG,gBAAgB,GAAG,MAAM,CAAC;AASpD,wBAAgB,SAAS,CAAC,IAAI,EAAE;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B,GAAG,UAAU,CAab;AAID,wBAAgB,4BAA4B,CAAC,IAAI,EAAE;IACjD,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,WAAW,CAAC;CAC1B,GAAG,UAAU,CAIb;AAED,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU,CAE5D;AAID,wBAAgB,qBAAqB,CAAC,IAAI,EAAE;IAC1C,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,GAAG,UAAU,CAKb;AAID,wBAAgB,WAAW,CAAC,OAAO,EAAE,UAAU,GAAG,UAAU,CAE3D"}
1
+ {"version":3,"file":"bodies.d.ts","sourceRoot":"","sources":["../src/bodies.ts"],"names":[],"mappings":"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"}
package/dist/bodies.js CHANGED
@@ -60,6 +60,17 @@ export function replaceKeyInner(args) {
60
60
  export function replaceKeyBody(args) {
61
61
  return concat(fMessage(4, replaceKeyInner(args))); // TxBody.replace_key = 4
62
62
  }
63
+ /** DeleteIdentityTxBody{ target_node_id = 1 } as TxBody.delete_identity = 2.
64
+ *
65
+ * ⚠️ SELF-DELETION ONLY, AND IRREVERSIBLE. The chain fines a transaction whose sender is not the
66
+ * target, refuses one whose target is a quorum member, and refuses one whose target still has
67
+ * dependents (a group it owns, a membership, a ledger, a committee proposal, tickets, a toll it
68
+ * receives). What it does NOT do is give the name back: a deleted name is free for anyone to
69
+ * take, and a proof already issued naming it keeps working for whoever takes it next
70
+ * (157 FR-026a). The balance is forfeited. */
71
+ export function deleteIdentityBody(targetNodeId) {
72
+ return concat(fMessage(2, concat(fString(1, targetNodeId))));
73
+ }
63
74
  export function deleteKeyBody(args) {
64
75
  // DeleteKeyTxBody: 1 key_type | 2 key_label
65
76
  const inner = concat(fString(1, args.keyType), fString(2, args.keyLabel));
@@ -93,6 +104,25 @@ export function addMemberBody(groupName, memberNodeId) {
93
104
  export function removeMemberBody(groupName, memberNodeId) {
94
105
  return concat(fMessage(3, concat(fString(1, groupName), fString(2, memberNodeId))));
95
106
  }
107
+ /** DeleteGroupTxBody{ group_name = 1 } as GroupTxBody.delete_group = 4.
108
+ *
109
+ * The chain fines this unless the sender owns the group, and refuses it while the group still
110
+ * owns a ledger or serves as a channel's data-availability group — none of which is checked
111
+ * here. A builder that duplicated the ledger's rules would be a second copy of them, going
112
+ * stale the moment the ledger changed. */
113
+ export function deleteGroupBody(groupName) {
114
+ return concat(fMessage(4, concat(fString(1, groupName))));
115
+ }
116
+ /** TransferGroupOwnershipTxBody{ group_name = 1, new_owner_node_id = 2 } as
117
+ * GroupTxBody.transfer_ownership = 5.
118
+ *
119
+ * ⚠️ THE TRANSACTION THIS BUILDS IS NOT COMPLETE. The chain requires an auth from the INCOMING
120
+ * owner as well as the sender's, and fines the transaction as "missing co-signer auth" without
121
+ * it. Handing a group over needs the other party's consent, by construction — 055 made adding a
122
+ * member the owner's decision alone and made this one mutual. */
123
+ export function transferGroupOwnershipBody(args) {
124
+ return concat(fMessage(5, concat(fString(1, args.groupName), fString(2, args.newOwnerNodeId))));
125
+ }
96
126
  /** Wire value for a write policy. Anything but "open" is the proto3 zero, which is the
97
127
  * default — an unrecognised value must NARROW, never widen: guessing "open" on a typo
98
128
  * would hand write access to everyone. */
@@ -119,6 +149,24 @@ export function claimBody(args) {
119
149
  parts.push(...fVarint(8, writePolicyWire(args.writePolicy)));
120
150
  return concat(fMessage(1, concat(parts))); // OwnersTxBody.claim = 1
121
151
  }
152
+ // 097 — UpdateChannelDaTxBody: 1 ledger_id | 2 da_group | 3 da_threshold_m.
153
+ // OwnersTxBody.update_channel_da = 4. Owner-gated at apply.
154
+ //
155
+ // ⚠️ An EMPTY `daGroup` with threshold 0 REMOVES the policy, which is how a channel goes back
156
+ // to having no named holders. Both fields are omitted at their proto3 defaults so that form is
157
+ // the one on the wire, and `daThresholdM` without a `daGroup` is meaningless — the node has
158
+ // nobody to demand m attestations from — so it is refused rather than silently sent.
159
+ export function updateChannelDaBody(args) {
160
+ if (!args.daGroup && args.daThresholdM) {
161
+ throw new Error("updateChannelDaBody: a threshold without a DA group has nobody to attest");
162
+ }
163
+ const parts = [...fString(1, args.ledgerId)];
164
+ if (args.daGroup)
165
+ parts.push(...fString(2, args.daGroup));
166
+ if (args.daThresholdM)
167
+ parts.push(...fVarint(3, args.daThresholdM));
168
+ return concat(fMessage(4, concat(parts))); // OwnersTxBody.update_channel_da = 4
169
+ }
122
170
  // 156 — UpdateChannelWritePolicyTxBody: 1 ledger_id | 2 write_policy (enum).
123
171
  // OwnersTxBody.update_channel_write_policy = 6. Owner-gated at apply.
124
172
  export function updateChannelWritePolicyBody(args) {
@@ -1 +1 @@
1
- {"version":3,"file":"bodies.js","sourceRoot":"","sources":["../src/bodies.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bodies.js","sourceRoot":"","sources":["../src/bodies.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,13 @@ export declare const FAUCET_SPONSORED_CREDIT = 5000;
12
12
  * node's /api/identity/prepare returns as tx_hash_hex. Recomputing it locally lets
13
13
  * the claimer refuse to PoP-sign server-chosen bytes. */
14
14
  export declare function faucetClaimDigest(id: Identity): Uint8Array;
15
+ /** The same digest from PUBLIC keys alone — for a caller claiming an identity on behalf of
16
+ * whoever holds the private halves, who signed the proofs elsewhere.
17
+ *
18
+ * ⚠️ One implementation, two entry points: the version above is this one with the public halves
19
+ * taken off an `Identity`. Two copies of a digest recipe is how the two drift, and this recipe
20
+ * decides whether a proof verifies. */
21
+ export declare function faucetClaimDigestFor(nodeId: string, blsPub: Uint8Array, edPub32: Uint8Array): Uint8Array;
15
22
  /** CreateIdentity tx_body for `id`, with PoP signed by `id`'s own keys. */
16
23
  export declare function createIdentityBodyFor(id: Identity, initialCredit: number | bigint): Uint8Array;
17
24
  //# sourceMappingURL=identity.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"identity.d.ts","sourceRoot":"","sources":["../src/identity.ts"],"names":[],"mappings":"AAUA,OAAO,EAA+C,KAAK,UAAU,EAAE,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAGhH,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,UAAU,CAAC;IAChB,EAAE,EAAE,SAAS,CAAC;CACf;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAEpD;AAED;kFACkF;AAClF,eAAO,MAAM,uBAAuB,OAAO,CAAC;AAE5C;;0DAE0D;AAC1D,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,QAAQ,GAAG,UAAU,CAa1D;AAED,2EAA2E;AAC3E,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM,GAAG,UAAU,CAgB9F"}
1
+ {"version":3,"file":"identity.d.ts","sourceRoot":"","sources":["../src/identity.ts"],"names":[],"mappings":"AAUA,OAAO,EAA+C,KAAK,UAAU,EAAE,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAGhH,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,UAAU,CAAC;IAChB,EAAE,EAAE,SAAS,CAAC;CACf;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAEpD;AAED;kFACkF;AAClF,eAAO,MAAM,uBAAuB,OAAO,CAAC;AAE5C;;0DAE0D;AAC1D,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,QAAQ,GAAG,UAAU,CAE1D;AAED;;;;;wCAKwC;AACxC,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,UAAU,EAClB,OAAO,EAAE,UAAU,GAClB,UAAU,CAaZ;AAED,2EAA2E;AAC3E,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM,GAAG,UAAU,CAgB9F"}
package/dist/identity.js CHANGED
@@ -18,15 +18,24 @@ export const FAUCET_SPONSORED_CREDIT = 5000;
18
18
  * node's /api/identity/prepare returns as tx_hash_hex. Recomputing it locally lets
19
19
  * the claimer refuse to PoP-sign server-chosen bytes. */
20
20
  export function faucetClaimDigest(id) {
21
+ return faucetClaimDigestFor(id.nodeId, id.bls.pub, id.ed.pub);
22
+ }
23
+ /** The same digest from PUBLIC keys alone — for a caller claiming an identity on behalf of
24
+ * whoever holds the private halves, who signed the proofs elsewhere.
25
+ *
26
+ * ⚠️ One implementation, two entry points: the version above is this one with the public halves
27
+ * taken off an `Identity`. Two copies of a digest recipe is how the two drift, and this recipe
28
+ * decides whether a proof verifies. */
29
+ export function faucetClaimDigestFor(nodeId, blsPub, edPub32) {
21
30
  const keysNoPoP = [
22
- { keyType: "BLS12-381-G1", publicKey: id.bls.pub, keyLabel: "" },
23
- { keyType: "Ed25519", publicKey: edPubToSpki(id.ed.pub), keyLabel: "" },
31
+ { keyType: "BLS12-381-G1", publicKey: blsPub, keyLabel: "" },
32
+ { keyType: "Ed25519", publicKey: edPubToSpki(edPub32), keyLabel: "" },
24
33
  ];
25
34
  // 148 — canonical PoP encoding, matching the node. This value is recomputed locally and
26
35
  // compared against the server's tx_hash before signing, so a mismatch REFUSES rather than
27
36
  // signs bytes we cannot reproduce.
28
37
  return popCreateIdentity({
29
- nodeId: id.nodeId,
38
+ nodeId,
30
39
  initialCredit: BigInt(FAUCET_SPONSORED_CREDIT),
31
40
  keys: keysNoPoP,
32
41
  });
@@ -1 +1 @@
1
- {"version":3,"file":"identity.js","sourceRoot":"","sources":["../src/identity.ts"],"names":[],"mappings":"AAAA,qFAAqF;AACrF,EAAE;AACF,iFAAiF;AACjF,8FAA8F;AAC9F,8FAA8F;AAC9F,8FAA8F;AAC9F,cAAc;AAEd,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAmC,MAAM,kBAAkB,CAAC;AAShH,MAAM,UAAU,WAAW,CAAC,MAAc;IACxC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC;AAChD,CAAC;AAED;kFACkF;AAClF,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,CAAC;AAE5C;;0DAE0D;AAC1D,MAAM,UAAU,iBAAiB,CAAC,EAAY;IAC5C,MAAM,SAAS,GAAe;QAC5B,EAAE,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE;QAChE,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;KACxE,CAAC;IACF,wFAAwF;IACxF,0FAA0F;IAC1F,mCAAmC;IACnC,OAAO,iBAAiB,CAAC;QACvB,MAAM,EAAE,EAAE,CAAC,MAAM;QACjB,aAAa,EAAE,MAAM,CAAC,uBAAuB,CAAC;QAC9C,IAAI,EAAE,SAAS;KAChB,CAAC,CAAC;AACL,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,qBAAqB,CAAC,EAAY,EAAE,aAA8B;IAChF,MAAM,SAAS,GAAe;QAC5B,EAAE,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,iBAAiB;QACnF,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,aAAa;KACvF,CAAC;IACF,uEAAuE;IACvE,MAAM,OAAO,GAAG,iBAAiB,CAAC;QAChC,MAAM,EAAE,EAAE,CAAC,MAAM;QACjB,aAAa,EAAE,MAAM,CAAC,aAAa,CAAC;QACpC,IAAI,EAAE,SAAS;KAChB,CAAC,CAAC;IACH,MAAM,WAAW,GAAe;QAC9B,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,aAAa;QACzE,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,kBAAkB;KAC7E,CAAC;IACF,OAAO,kBAAkB,CAAC,mBAAmB,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC;AAC9F,CAAC"}
1
+ {"version":3,"file":"identity.js","sourceRoot":"","sources":["../src/identity.ts"],"names":[],"mappings":"AAAA,qFAAqF;AACrF,EAAE;AACF,iFAAiF;AACjF,8FAA8F;AAC9F,8FAA8F;AAC9F,8FAA8F;AAC9F,cAAc;AAEd,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAmC,MAAM,kBAAkB,CAAC;AAShH,MAAM,UAAU,WAAW,CAAC,MAAc;IACxC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC;AAChD,CAAC;AAED;kFACkF;AAClF,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,CAAC;AAE5C;;0DAE0D;AAC1D,MAAM,UAAU,iBAAiB,CAAC,EAAY;IAC5C,OAAO,oBAAoB,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;AAChE,CAAC;AAED;;;;;wCAKwC;AACxC,MAAM,UAAU,oBAAoB,CAClC,MAAc,EACd,MAAkB,EAClB,OAAmB;IAEnB,MAAM,SAAS,GAAe;QAC5B,EAAE,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC5D,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;KACtE,CAAC;IACF,wFAAwF;IACxF,0FAA0F;IAC1F,mCAAmC;IACnC,OAAO,iBAAiB,CAAC;QACvB,MAAM;QACN,aAAa,EAAE,MAAM,CAAC,uBAAuB,CAAC;QAC9C,IAAI,EAAE,SAAS;KAChB,CAAC,CAAC;AACL,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,qBAAqB,CAAC,EAAY,EAAE,aAA8B;IAChF,MAAM,SAAS,GAAe;QAC5B,EAAE,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,iBAAiB;QACnF,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,aAAa;KACvF,CAAC;IACF,uEAAuE;IACvE,MAAM,OAAO,GAAG,iBAAiB,CAAC;QAChC,MAAM,EAAE,EAAE,CAAC,MAAM;QACjB,aAAa,EAAE,MAAM,CAAC,aAAa,CAAC;QACpC,IAAI,EAAE,SAAS;KAChB,CAAC,CAAC;IACH,MAAM,WAAW,GAAe;QAC9B,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,aAAa;QACzE,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,kBAAkB;KAC7E,CAAC;IACF,OAAO,kBAAkB,CAAC,mBAAmB,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC;AAC9F,CAAC"}
package/dist/types.d.ts CHANGED
@@ -92,6 +92,28 @@ export interface Timeout {
92
92
  txIdHex: string;
93
93
  }
94
94
  export type SubmitResult = Committed | Fined | Failed | Timeout;
95
+ /**
96
+ * A node's three heights, plus who it is.
97
+ *
98
+ * ⚠️ THESE ARE THREE QUESTIONS, NOT THREE VIEWS OF ONE NUMBER, and conflating them is the
99
+ * defect this type exists to prevent. `blockHeight` is what the node HOLDS; `appliedRound` is
100
+ * how far its STATE has been applied and therefore what every committed-state read answers as
101
+ * of; `heardRound` is the highest round it has been TOLD OF.
102
+ *
103
+ * `appliedRound` is `null` for a node that is not a processing node — which is a different
104
+ * claim from `0`, the answer a processing node gives when nothing has drained it yet.
105
+ */
106
+ export interface NodeStatus {
107
+ readonly nodeId: string;
108
+ /** What this node HOLDS — its committed tip. */
109
+ readonly blockHeight: number;
110
+ /** How far STATE is applied. `null` = not a processing node (applies at commit). */
111
+ readonly appliedRound: number | null;
112
+ /** Highest round heard of, from tip gossip. A hint, never a verified fact. */
113
+ readonly heardRound: number;
114
+ /** Hops to the committee; 0 = committee member, `null` = unknown. */
115
+ readonly selfQuorumIndex: number | null;
116
+ }
95
117
  export interface NodeKey {
96
118
  nodeId: string;
97
119
  keyType: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mcsherrylabs/evolver-client",
3
- "version": "0.10.0",
3
+ "version": "0.13.0",
4
4
  "description": "Client SDK for an Evolver node: proto3 wire codec, transaction signing (AuthBodySignable), on-chain + group crypto, and the node HTTP API.",
5
5
  "type": "module",
6
6
  "exports": {