@mcsherrylabs/evolver-mcp 0.10.0 → 0.12.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/mcp.js CHANGED
@@ -57,27 +57,44 @@ export function submitOutcomeToMcpResult(outcome) {
57
57
  break;
58
58
  case "fined":
59
59
  text =
60
- `fined: ordered, but the node reversed it and charged a fee and a fine. reason: ` +
61
- `${outcome.reason}; message: ${outcome.message} (txId ${outcome.txId}). Nothing it asked ` +
62
- `for happened, and it cost more than a fee. Read the balance for the truth.`;
60
+ `fined: ordered, then an apply-time guard failed and a fee and a fine were charged. reason: ` +
61
+ `${outcome.reason}; message: ${outcome.message} (txId ${outcome.txId}). Intended core-state ` +
62
+ `changes were not applied, but a channel body may already have been delivered. Do not ` +
63
+ `automatically retry or re-sign; verify balances and retained delivery separately.`;
63
64
  break;
64
65
  case "refused":
65
- text =
66
- `refused: the node did not order it and charged nothing. reason: ${outcome.reason}; ` +
66
+ // Local guards say only that THIS call sent nothing. In particular already_submitted is
67
+ // not evidence the earlier call never ordered/charged; do not render the node-refusal claim.
68
+ if (["already_submitted", "not_signed_here", "not_channel_write", "da_not_configured"].includes(outcome.reason)) {
69
+ text = `refused: this call sent nothing. reason: ${outcome.reason}; ` +
67
70
  `message: ${outcome.message}${outcome.txId ? ` (txId ${outcome.txId})` : ""}. ` +
68
- `Re-sending the SAME bytes is free; if the reason is structural, fix it before re-signing.`;
71
+ `This says nothing about an earlier submission's outcome; do not automatically retry or re-sign.`;
72
+ }
73
+ else {
74
+ text =
75
+ `refused: the node did not order it and charged nothing. reason: ${outcome.reason}; ` +
76
+ `message: ${outcome.message}${outcome.txId ? ` (txId ${outcome.txId})` : ""}. ` +
77
+ `Re-sending the SAME bytes is free; if the reason is structural, fix it before re-signing. ` +
78
+ `This session still blocks repeat submission; no automatic retry or re-sign is performed.`;
79
+ }
69
80
  break;
70
81
  case "unknown":
71
82
  text =
72
83
  `unknown: ${outcome.why}${outcome.txId ? ` (txId ${outcome.txId})` : ""}. ` +
73
- `It may have committed — LOOK IT UP, do not sign it again (a new signature is a DIFFERENT ` +
74
- `transaction that nothing deduplicates, and both may commit).`;
84
+ `It may have committed — LOOK IT UP using evolver_transaction with the ORIGINAL txId; ` +
85
+ `not-observed is bounded unknown, never proof of absence or permission to retry. Do not sign ` +
86
+ `or pay again automatically: a new signed intent may create a second payment.`;
75
87
  break;
76
88
  default: {
77
89
  const _exhaustive = outcome;
78
90
  text = String(_exhaustive);
79
91
  }
80
92
  }
93
+ if (typeof outcome.daSubmitDurationMs === "number") {
94
+ text += ` \`daSubmitDurationMs\`: ${outcome.daSubmitDurationMs} ms for the whole DA gateway call ` +
95
+ `(collection + assembly + submission until return/error), NOT commit-only latency or proof ` +
96
+ `of commit/delivery. Separate commit timing is unavailable from the SDK.`;
97
+ }
81
98
  return { content: [{ type: "text", text: text + UNTRUSTED }], isError: false };
82
99
  }
83
100
  //# sourceMappingURL=mcp.js.map
package/dist/mcp.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"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"}
package/dist/read.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { ChannelOwner, ChannelTerms } from "@mcsherrylabs/evolver-client";
1
+ import type { ChannelOwner, ChannelTerms, TransactionObservation } from "@mcsherrylabs/evolver-client";
2
2
  import type { ToolResult } from "./result.js";
3
3
  /** One row of the chain's recent-transaction feed, as the client returns it. */
4
4
  export interface FeedTx {
@@ -26,6 +26,9 @@ export interface ChainReads {
26
26
  blockHeight: number;
27
27
  appliedRound: number | null;
28
28
  heardRound: number;
29
+ /** #9 — `true` only from a node that refuses any tx lacking its sender's AUTHORIZE auth.
30
+ * Absent (older SDK/node), `null` or `false` all mean unsupported; never defaulted. */
31
+ senderAuthorizationRequired?: boolean | null;
29
32
  }>;
30
33
  getIdentity(name: string): Promise<{
31
34
  nodeId: string;
@@ -48,16 +51,65 @@ export interface ChainReads {
48
51
  memberCount: number;
49
52
  owner: string;
50
53
  }>>;
51
- searchPrincipals(q: string): Promise<Array<{
52
- type: string;
54
+ /** SDK 0.21+ page contract. Old installed SDKs fail closed, never fall back to scans. */
55
+ searchPrincipalPage?(q: string, options?: SearchOptions): Promise<SearchPage>;
56
+ /** SDK 0.21+ / node #101. Missing API refuses, never falls back to a feed scan. */
57
+ getTransaction?(txId: string): Promise<TransactionObservation>;
58
+ /** #10 — one explorer page each. Optional so a client without them refuses, never scans. */
59
+ listLedgerOwners?(limit?: number, offset?: number): Promise<{
60
+ owners: Array<{
61
+ ledgerId: string;
62
+ ownerNodeId: string;
63
+ }>;
64
+ total: number;
65
+ }>;
66
+ getKeys?(limit?: number, offset?: number): Promise<Array<{
53
67
  nodeId: string;
54
- summary: string;
68
+ keyType: string;
69
+ label: string;
70
+ publicKeyHex: string;
55
71
  }>>;
56
72
  }
73
+ export interface SearchOptions {
74
+ mode?: "prefix" | "contains";
75
+ kind?: "all" | "identity" | "group" | "validator";
76
+ limit?: number;
77
+ offset?: number;
78
+ }
79
+ export interface SearchPage {
80
+ results: Array<{
81
+ type: "identity" | "group";
82
+ nodeId: string;
83
+ summary: string;
84
+ balance: bigint | null;
85
+ memberCount: number | null;
86
+ owner: string | null;
87
+ validator: boolean;
88
+ weight: number | null;
89
+ }>;
90
+ total: number;
91
+ limit: number;
92
+ offset: number;
93
+ truncated: boolean;
94
+ mode: "prefix" | "contains";
95
+ kind: "all" | "identity" | "group" | "validator";
96
+ stateRound: number;
97
+ }
57
98
  /** Small on purpose: the reader is a model, and a page it did not need is context it cannot get
58
99
  * back. 200 is the node's own clamp, so the tool never asks for what it cannot get. */
59
100
  export declare const DEFAULT_LIMIT = 20;
60
101
  export declare const MAX_LIMIT = 200;
102
+ /** The node's clamp for the ledger-owners and keys explorer pages (`ExplorerApiHandler`). */
103
+ export declare const INVENTORY_MAX_LIMIT = 100;
104
+ /** The node parses `offset` as a JVM Int and reads anything larger as 0 — page one, silently. */
105
+ export declare const MAX_OFFSET = 2147483647;
106
+ /** Exact page arguments, or why not. Only an ABSENT value takes the default; a present one must
107
+ * already be an in-range safe integer. Nothing is clamped, coerced or rounded: the node would
108
+ * clamp silently, and an answer to a page nobody asked for reads as the page they did. */
109
+ export declare function pageArgs(limit: unknown, offset: unknown, maxLimit: number): {
110
+ limit: number;
111
+ offset: number;
112
+ } | string;
61
113
  /** The three heights a node actually has, and what each one answers.
62
114
  *
63
115
  * ⚠️ `height` ALONE IS THE TRAP THIS REPLACES. It used to return one number — the held tip —
@@ -77,7 +129,39 @@ export interface HeightReport extends NodeHeights {
77
129
  readonly note: string;
78
130
  }
79
131
  export declare function chainHeight(reads: ChainReads): Promise<ToolResult<HeightReport>>;
80
- export declare function recent(reads: ChainReads, limit?: number): Promise<ToolResult<FeedTx[]>>;
132
+ export declare function transaction(reads: Pick<ChainReads, "getTransaction">, txId: unknown): Promise<ToolResult<TransactionObservation>>;
133
+ /** One newest-first page of the explorer feed at the exact validated offset. A display tail, never
134
+ * a lookup: an empty page says nothing about whether a transaction exists. */
135
+ export declare function recent(reads: ChainReads, limit?: unknown, offset?: unknown): Promise<ToolResult<{
136
+ transactions: FeedTx[];
137
+ limit: number;
138
+ offset: number;
139
+ }>>;
140
+ /** One page of the chain-wide ledger-owner listing, exactly as the node orders and reports it.
141
+ * `ownerNodeId` carries no identity/group kind on this row, so none is invented here.
142
+ *
143
+ * ⚠️ NO TOTAL. SDK 0.21.0 substitutes `0` for an absent node total, so a zero cannot be told from
144
+ * a missing field; a count that may be fabricated is not reported. */
145
+ export declare function ledgerOwnersPage(reads: ChainReads, limit?: unknown, offset?: unknown): Promise<ToolResult<{
146
+ owners: Array<{
147
+ ledgerId: string;
148
+ ownerNodeId: string;
149
+ }>;
150
+ limit: number;
151
+ offset: number;
152
+ }>>;
153
+ /** One page of the chain-wide registered PUBLIC key metadata. Never the route to one identity's
154
+ * keys — that is `keys(name)`, a direct read. The SDK returns no total for this page. */
155
+ export declare function chainKeysPage(reads: ChainReads, limit?: unknown, offset?: unknown): Promise<ToolResult<{
156
+ keys: Array<{
157
+ nodeId: string;
158
+ keyType: string;
159
+ label: string;
160
+ publicKeyHex: string;
161
+ }>;
162
+ limit: number;
163
+ offset: number;
164
+ }>>;
81
165
  /** The one read with a DEFINITIVE negative: the chain answered and has no such identity. The
82
166
  * height it answered at travels with it, so a lagging node is visible rather than confident.
83
167
  *
@@ -151,25 +235,18 @@ export declare function groups(reads: ChainReads, limit?: number, offset?: numbe
151
235
  limit: number;
152
236
  offset: number;
153
237
  }>>;
154
- /** Search principal NAMES (identities and groups) via the node's explorer (READ-12).
155
- *
156
- * ⚠️ THIS SEARCHES NAMES, NOT CONTENT BYTES. Content is content-addressed — "nothing can be
157
- * found without being told the key", so there is no content search, and this is the only search
158
- * the node exposes. A query shorter than two characters is refused locally BEFORE the node is
159
- * asked: the node's own 400 `invalid_query` floor exists because a one-character query would ask
160
- * for everything (T-5-06).
161
- *
162
- * ⚠️ THE NODE RETURNS THE WHOLE RESULT SET, so the `limit` slice below is local and `total` says
163
- * what it was sliced from — the node's own results are unordered and de-duplicated by
164
- * `(nodeId, type)`.
165
- */
166
- export declare function searchPrincipals(reads: ChainReads, q: string, limit?: number): Promise<ToolResult<{
238
+ /** One bounded node page. Total is the NODE's filtered count, not an array length. */
239
+ export declare function searchPrincipals(reads: ChainReads, q: string, limit?: number, offset?: number, mode?: SearchOptions["mode"], kind?: SearchOptions["kind"]): Promise<ToolResult<{
167
240
  query: string;
168
- matches: Array<{
169
- type: string;
170
- nodeId: string;
171
- summary: string;
241
+ matches: Array<Omit<SearchPage["results"][number], "balance"> & {
242
+ balance: string | null;
172
243
  }>;
173
244
  total: number;
245
+ limit: number;
246
+ offset: number;
247
+ truncated: boolean;
248
+ mode: string;
249
+ kind: string;
250
+ stateRound: number;
174
251
  }>>;
175
252
  //# sourceMappingURL=read.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"read.d.ts","sourceRoot":"","sources":["../src/read.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"read.d.ts","sourceRoot":"","sources":["../src/read.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAEvG,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,gFAAgF;AAChF,MAAM,WAAW,MAAM;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACnE;AAED;;mBAEmB;AACnB,MAAM,WAAW,UAAU;IACzB,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAChC;;;kBAGc;IACd,UAAU,IAAI,OAAO,CAAC;QACpB,MAAM,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QACrF;gGACwF;QACxF,2BAA2B,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;KAC9C,CAAC,CAAC;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC,CAAC;IAC/E,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,IAAI,CAAC,CAAC;IAChF,kBAAkB,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACvE,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC,GAAG,IAAI,CAAC,CAAC;IAC/H,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IACzD,UAAU,IAAI,OAAO,CAAC,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAAC;IACvF,yFAAyF;IACzF,mBAAmB,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAC9E,mFAAmF;IACnF,cAAc,CAAC,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAC/D,4FAA4F;IAC5F,gBAAgB,CAAC,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,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,CAAC;IACzI,OAAO,CAAC,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAAC;CACrI;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC7B,IAAI,CAAC,EAAE,KAAK,GAAG,UAAU,GAAG,OAAO,GAAG,WAAW,CAAC;IAClD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AACD,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;QACnG,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,SAAS,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC,CAAC;IACjG,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,OAAO,CAAC;IACjE,IAAI,EAAE,QAAQ,GAAG,UAAU,CAAC;IAAC,IAAI,EAAE,KAAK,GAAG,UAAU,GAAG,OAAO,GAAG,WAAW,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;CACnG;AAED;wFACwF;AACxF,eAAO,MAAM,aAAa,KAAK,CAAC;AAChC,eAAO,MAAM,SAAS,MAAM,CAAC;AAC7B,6FAA6F;AAC7F,eAAO,MAAM,mBAAmB,MAAM,CAAC;AACvC,iGAAiG;AACjG,eAAO,MAAM,UAAU,aAAgB,CAAC;AAExC;;2FAE2F;AAC3F,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAStH;AA0BD;;;;;oDAKoD;AACpD,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,YAAa,SAAQ,WAAW;IAC/C,yFAAyF;IACzF,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,4EAA4E;IAC5E,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,wBAAsB,WAAW,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAyBtF;AAED,wBAAsB,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,gBAAgB,CAAC,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,sBAAsB,CAAC,CAAC,CAavI;AAED;+EAC+E;AAC/E,wBAAsB,MAAM,CAC1B,KAAK,EAAE,UAAU,EACjB,KAAK,CAAC,EAAE,OAAO,EACf,MAAM,CAAC,EAAE,OAAO,GACf,OAAO,CAAC,UAAU,CAAC;IAAE,YAAY,EAAE,MAAM,EAAE,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,CAYhF;AAED;;;;uEAIuE;AACvE,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,UAAU,EACjB,KAAK,CAAC,EAAE,OAAO,EACf,MAAM,CAAC,EAAE,OAAO,GACf,OAAO,CAAC,UAAU,CAAC;IAAE,MAAM,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,CAgBlH;AAED;0FAC0F;AAC1F,wBAAsB,aAAa,CACjC,KAAK,EAAE,UAAU,EACjB,KAAK,CAAC,EAAE,OAAO,EACf,MAAM,CAAC,EAAE,OAAO,GACf,OAAO,CAAC,UAAU,CAAC;IAAE,IAAI,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,CAiB/I;AAED;;;;;;;kBAOkB;AAClB,wBAAsB,QAAQ,CAC5B,KAAK,EAAE,UAAU,EACjB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,UAAU,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,CAkB1D;AAED;;;;;;;;wBAQwB;AACxB,wBAAsB,KAAK,CACzB,KAAK,EAAE,UAAU,EACjB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,UAAU,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CAAC,CAc9D;AAMD;;;8FAG8F;AAC9F,wBAAsB,IAAI,CACxB,KAAK,EAAE,UAAU,EACjB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,UAAU,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,CAsBtJ;AAED;;;;yFAIyF;AACzF,wBAAsB,YAAY,CAChC,KAAK,EAAE,UAAU,EACjB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,UAAU,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,YAAY,EAAE,CAAC;IAC3D,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACnD,EAAE,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACjD,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC,CAAC,CAuBF;AAED;;;;+FAI+F;AAC/F,wBAAsB,MAAM,CAC1B,KAAK,EAAE,UAAU,EACjB,KAAK,SAAgB,EACrB,MAAM,SAAI,GACT,OAAO,CAAC,UAAU,CAAC;IAAE,MAAM,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,CAShJ;AAED,sFAAsF;AACtF,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,UAAU,EACjB,CAAC,EAAE,MAAM,EACT,KAAK,SAAgB,EACrB,MAAM,SAAI,EACV,IAAI,GAAE,aAAa,CAAC,MAAM,CAAY,EACtC,IAAI,GAAE,aAAa,CAAC,MAAM,CAAS,GAClC,OAAO,CAAC,UAAU,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC,GAAG;QAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC,CAAC;IACjI,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,CAerH"}
package/dist/read.js CHANGED
@@ -1,18 +1,49 @@
1
- // Reading the chain. Phase 1 is the plain reads only; the bounded scan (`scanFeed`,
2
- // `absenceIsProven`, `search`) is deferred (it serves `evolver_transaction`/`evolver_search`,
3
- // both out of Phase-1 scope). This file carries the eight Phase-1 reads — the three-height status
4
- // read, the recent-transaction feed, identity/group (with `wrong_kind` disambiguation), keys,
5
- // channel terms, and the group listing — plus the structural `ChainReads` seam that lets every
6
- // rule be exercised without a live node.
7
- //
8
- // The chain has no lookup by transaction id and no filter by sender: transactions are not a
9
- // queryable entity at all, they live inside block payloads and the only read is "the most recent
10
- // N, paged".
11
- import { wrongKind } from "./result.js";
1
+ // Chain reads, including bounded node-owned transaction observations. Exact lookup never walks
2
+ // the feed, proves absence, or touches session signing records. A cache miss is not permission
3
+ // to retry a payment. Structural seams permit focused checks without a live node.
4
+ import { ok, partial, wrongKind } from "./result.js";
12
5
  /** Small on purpose: the reader is a model, and a page it did not need is context it cannot get
13
6
  * back. 200 is the node's own clamp, so the tool never asks for what it cannot get. */
14
7
  export const DEFAULT_LIMIT = 20;
15
8
  export const MAX_LIMIT = 200;
9
+ /** The node's clamp for the ledger-owners and keys explorer pages (`ExplorerApiHandler`). */
10
+ export const INVENTORY_MAX_LIMIT = 100;
11
+ /** The node parses `offset` as a JVM Int and reads anything larger as 0 — page one, silently. */
12
+ export const MAX_OFFSET = 2_147_483_647;
13
+ /** Exact page arguments, or why not. Only an ABSENT value takes the default; a present one must
14
+ * already be an in-range safe integer. Nothing is clamped, coerced or rounded: the node would
15
+ * clamp silently, and an answer to a page nobody asked for reads as the page they did. */
16
+ export function pageArgs(limit, offset, maxLimit) {
17
+ const lim = limit === undefined ? DEFAULT_LIMIT : limit;
18
+ const off = offset === undefined ? 0 : offset;
19
+ const shown = (v) => typeof v === "string" ? JSON.stringify(v) : String(v);
20
+ if (typeof lim !== "number" || !Number.isSafeInteger(lim) || lim < 1 || lim > maxLimit)
21
+ return `limit must be an integer 1-${maxLimit} (omit for ${DEFAULT_LIMIT}); got ${shown(limit)}`;
22
+ if (typeof off !== "number" || !Number.isSafeInteger(off) || off < 0 || off > MAX_OFFSET)
23
+ return `offset must be an integer 0-${MAX_OFFSET} (omit for 0); got ${shown(offset)}`;
24
+ return { limit: lim, offset: off };
25
+ }
26
+ /** A node that answered outside the page contract is `partial` — retrying will not change it;
27
+ * only failing to get an answer is `unreachable`. The SDK throws `<method>: HTTP <status>`. */
28
+ function pageFailure(what, e) {
29
+ const cause = e instanceof Error ? e.message : String(e);
30
+ if (e instanceof SyntaxError)
31
+ return partial(what, `malformed node response (${cause}); no scan fallback`);
32
+ if (/: HTTP (404|405|501)$/.test(cause))
33
+ return partial(what, `unsupported by this node (${cause}); no scan fallback`);
34
+ return { kind: "unreachable", chain: "", cause };
35
+ }
36
+ const malformedPage = (what, fields) => partial(what, `malformed node page: expected an array of at most limit rows with string ${fields}; no scan fallback`);
37
+ const stringFields = (v, fields) => typeof v === "object" && v !== null && fields.every((f) => typeof v[f] === "string");
38
+ /** Every declared `FeedTx` field, checked before a row is rendered — a renderer handed a partial row
39
+ * would manufacture `undefined` fields. Values are checked, never converted or decoded. */
40
+ const isFeedTx = (v) => {
41
+ if (!stringFields(v, ["txId", "ledgerId", "txType", "sender"]))
42
+ return false;
43
+ const { roundNum, details } = v;
44
+ return typeof roundNum === "number" && Number.isSafeInteger(roundNum) && roundNum >= 0 &&
45
+ Array.isArray(details) && details.every((d) => stringFields(d, ["label", "value"]));
46
+ };
16
47
  export async function chainHeight(reads) {
17
48
  try {
18
49
  const raw = await reads.nodeStatus();
@@ -39,13 +70,83 @@ export async function chainHeight(reads) {
39
70
  return { kind: "unreachable", chain: "", cause: e instanceof Error ? e.message : String(e) };
40
71
  }
41
72
  }
42
- export async function recent(reads, limit = DEFAULT_LIMIT) {
43
- const bounded = Math.max(1, Math.min(limit, MAX_LIMIT));
73
+ export async function transaction(reads, txId) {
74
+ const what = "transaction observation";
75
+ if (typeof txId !== "string" || !/^[0-9a-f]{64}$/.test(txId))
76
+ return { kind: "partial", what, cause: "invalid txId: use the original 64-character lowercase signed-intent ID" };
77
+ if (typeof reads.getTransaction !== "function")
78
+ return { kind: "partial", what, cause: "unsupported SDK: getTransaction requires SDK 0.21+ and node #101; no scan fallback" };
44
79
  try {
45
- return { kind: "ok", value: await reads.recentTransactions(bounded, 0) };
80
+ return { kind: "ok", value: await reads.getTransaction(txId) };
46
81
  }
47
82
  catch (e) {
48
- return { kind: "unreachable", chain: "", cause: e instanceof Error ? e.message : String(e) };
83
+ const cause = e instanceof Error ? e.message : String(e);
84
+ if (/unsupported transaction lookup|malformed transaction lookup/.test(cause))
85
+ return { kind: "partial", what, cause };
86
+ return { kind: "unreachable", chain: "", cause };
87
+ }
88
+ }
89
+ /** One newest-first page of the explorer feed at the exact validated offset. A display tail, never
90
+ * a lookup: an empty page says nothing about whether a transaction exists. */
91
+ export async function recent(reads, limit, offset) {
92
+ const what = "recent transactions";
93
+ const page = pageArgs(limit, offset, MAX_LIMIT);
94
+ if (typeof page === "string")
95
+ return partial(what, page);
96
+ try {
97
+ const rows = await reads.recentTransactions(page.limit, page.offset);
98
+ if (!Array.isArray(rows) || rows.length > page.limit || !rows.every(isFeedTx))
99
+ return malformedPage(what, "txId/ledgerId/txType/sender, a nonnegative integer roundNum and label/value details");
100
+ return ok({ transactions: rows, ...page });
101
+ }
102
+ catch (e) {
103
+ return pageFailure(what, e);
104
+ }
105
+ }
106
+ /** One page of the chain-wide ledger-owner listing, exactly as the node orders and reports it.
107
+ * `ownerNodeId` carries no identity/group kind on this row, so none is invented here.
108
+ *
109
+ * ⚠️ NO TOTAL. SDK 0.21.0 substitutes `0` for an absent node total, so a zero cannot be told from
110
+ * a missing field; a count that may be fabricated is not reported. */
111
+ export async function ledgerOwnersPage(reads, limit, offset) {
112
+ const what = "ledger owners page";
113
+ const page = pageArgs(limit, offset, INVENTORY_MAX_LIMIT);
114
+ if (typeof page === "string")
115
+ return partial(what, page);
116
+ if (typeof reads.listLedgerOwners !== "function")
117
+ return partial(what, "unsupported client: listLedgerOwners is unavailable; no scan fallback");
118
+ try {
119
+ const rows = (await reads.listLedgerOwners(page.limit, page.offset))?.owners;
120
+ if (!Array.isArray(rows) || rows.length > page.limit || !rows.every((o) => stringFields(o, ["ledgerId", "ownerNodeId"])))
121
+ return malformedPage(what, "ledgerId/ownerNodeId");
122
+ const owners = rows
123
+ .map((o) => ({ ledgerId: o.ledgerId, ownerNodeId: o.ownerNodeId }));
124
+ return ok({ owners, ...page });
125
+ }
126
+ catch (e) {
127
+ return pageFailure(what, e);
128
+ }
129
+ }
130
+ /** One page of the chain-wide registered PUBLIC key metadata. Never the route to one identity's
131
+ * keys — that is `keys(name)`, a direct read. The SDK returns no total for this page. */
132
+ export async function chainKeysPage(reads, limit, offset) {
133
+ const what = "chain keys page";
134
+ const page = pageArgs(limit, offset, INVENTORY_MAX_LIMIT);
135
+ if (typeof page === "string")
136
+ return partial(what, page);
137
+ if (typeof reads.getKeys !== "function")
138
+ return partial(what, "unsupported client: getKeys is unavailable; no scan fallback");
139
+ const fields = ["nodeId", "keyType", "label", "publicKeyHex"];
140
+ try {
141
+ const rows = await reads.getKeys(page.limit, page.offset);
142
+ if (!Array.isArray(rows) || rows.length > page.limit || !rows.every((k) => stringFields(k, fields)))
143
+ return malformedPage(what, fields.join("/"));
144
+ const keys = rows
145
+ .map((k) => ({ nodeId: k.nodeId, keyType: k.keyType, label: k.label, publicKeyHex: k.publicKeyHex }));
146
+ return ok({ keys, ...page });
147
+ }
148
+ catch (e) {
149
+ return pageFailure(what, e);
49
150
  }
50
151
  }
51
152
  /** The one read with a DEFINITIVE negative: the chain answered and has no such identity. The
@@ -127,6 +228,11 @@ export async function keys(reads, identityName) {
127
228
  if (who.length === 0)
128
229
  return refuseRead("keys", "which identity? a name is required");
129
230
  try {
231
+ // Older key endpoints returned [] for groups too. Probe the other kind first so even
232
+ // those nodes cannot turn an empty group into a fabricated keyless identity. Two direct
233
+ // by-name reads, no chain-wide keys/groups scan. A failed kind read is not absence.
234
+ if (await reads.getGroup(who) !== null)
235
+ return wrongKind(`identity keys "${who}"`, "group", "evolver_group");
130
236
  const rows = await reads.getIdentityKeys(who);
131
237
  if (rows === null)
132
238
  return { kind: "not_found", what: `identity "${who}"` };
@@ -191,26 +297,21 @@ export async function groups(reads, limit = DEFAULT_LIMIT, offset = 0) {
191
297
  return { kind: "unreachable", chain: "", cause: e instanceof Error ? e.message : String(e) };
192
298
  }
193
299
  }
194
- /** Search principal NAMES (identities and groups) via the node's explorer (READ-12).
195
- *
196
- * ⚠️ THIS SEARCHES NAMES, NOT CONTENT BYTES. Content is content-addressed — "nothing can be
197
- * found without being told the key", so there is no content search, and this is the only search
198
- * the node exposes. A query shorter than two characters is refused locally BEFORE the node is
199
- * asked: the node's own 400 `invalid_query` floor exists because a one-character query would ask
200
- * for everything (T-5-06).
201
- *
202
- * ⚠️ THE NODE RETURNS THE WHOLE RESULT SET, so the `limit` slice below is local and `total` says
203
- * what it was sliced from — the node's own results are unordered and de-duplicated by
204
- * `(nodeId, type)`.
205
- */
206
- export async function searchPrincipals(reads, q, limit = DEFAULT_LIMIT) {
300
+ /** One bounded node page. Total is the NODE's filtered count, not an array length. */
301
+ export async function searchPrincipals(reads, q, limit = DEFAULT_LIMIT, offset = 0, mode = "prefix", kind = "all") {
207
302
  const query = String(q ?? "").trim();
208
- if (query.length < 2)
209
- return refuseRead("search", "at least two characters — the node will not answer a shorter query");
210
- const lim = Math.max(1, Math.min(MAX_LIMIT, Math.trunc(limit)));
303
+ if (!query || query.length > 128)
304
+ return refuseRead("search", "query must be 1-128 characters");
305
+ if (!Number.isSafeInteger(limit) || !Number.isSafeInteger(offset) ||
306
+ !["prefix", "contains"].includes(mode) || !["all", "identity", "group", "validator"].includes(kind))
307
+ return refuseRead("search", "use integer limit/offset, mode prefix|contains and kind all|identity|group|validator");
308
+ const lim = Math.max(1, Math.min(100, limit)), off = Math.max(0, offset);
309
+ if (!reads.searchPrincipalPage)
310
+ return refuseRead("search", "requires evolver-client 0.21+ and the node #64 principal-page contract; upgrade both (no scan fallback)");
211
311
  try {
212
- const all = await reads.searchPrincipals(query);
213
- return { kind: "ok", value: { query, matches: all.slice(0, lim), total: all.length } };
312
+ const { results, ...page } = await reads.searchPrincipalPage(query, { limit: lim, offset: off, mode, kind });
313
+ const matches = results.map(r => ({ ...r, balance: r.balance === null ? null : r.balance.toString() }));
314
+ return { kind: "ok", value: { query, matches, ...page } };
214
315
  }
215
316
  catch (e) {
216
317
  return { kind: "unreachable", chain: "", cause: e instanceof Error ? e.message : String(e) };
package/dist/read.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"read.js","sourceRoot":"","sources":["../src/read.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"read.js","sourceRoot":"","sources":["../src/read.ts"],"names":[],"mappings":"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"}
package/dist/tools.d.ts CHANGED
@@ -22,6 +22,7 @@ export interface ToolContext {
22
22
  readonly identity: string;
23
23
  readonly signer: Signer;
24
24
  readonly submitTx: (bytes: Uint8Array) => Promise<SubmitResult>;
25
+ readonly submitTxWithDa: (bytes: Uint8Array) => Promise<SubmitResult>;
25
26
  readonly claim: (args: {
26
27
  nodeId: string;
27
28
  blsPublicKey: Uint8Array;
@@ -1 +1 @@
1
- {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAGvC,OAAO,KAAK,EAAE,UAAU,EAAU,MAAM,WAAW,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAGjD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAW9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAGhD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAGtD,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAEtF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE1C;8DAC8D;AAC9D,eAAO,MAAM,SAAS,kHAC2F,CAAC;AAalH;;;;;;oFAMoF;AACpF,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC;IAChE,QAAQ,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,UAAU,CAAC;QAAC,MAAM,EAAE,UAAU,CAAC;QAAC,gBAAgB,EAAE,UAAU,CAAC;QAAC,UAAU,EAAE,UAAU,CAAA;KAAE,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC;IACvK,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;IAC9B,6FAA6F;IAC7F,QAAQ,CAAC,SAAS,CAAC,EAAE,eAAe,CAAC;CACtC;AAED,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B;;sEAEkE;IAClE,QAAQ,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC,CAAC;CAC/G;AAED,eAAO,MAAM,KAAK,EAAE,QAAQ,EA+vB3B,CAAC"}
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAMvC,OAAO,KAAK,EAAE,UAAU,EAAU,MAAM,WAAW,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAGjD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAW9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAGhD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAOtD,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAEtF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE1C;8DAC8D;AAC9D,eAAO,MAAM,SAAS,kHAC2F,CAAC;AAwBlH;;;;;;oFAMoF;AACpF,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC;IAChE,QAAQ,CAAC,cAAc,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC;IACtE,QAAQ,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,UAAU,CAAC;QAAC,MAAM,EAAE,UAAU,CAAC;QAAC,gBAAgB,EAAE,UAAU,CAAC;QAAC,UAAU,EAAE,UAAU,CAAA;KAAE,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC;IACvK,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;IAC9B,6FAA6F;IAC7F,QAAQ,CAAC,SAAS,CAAC,EAAE,eAAe,CAAC;CACtC;AAED,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B;;sEAEkE;IAClE,QAAQ,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC,CAAC;CAC/G;AAED,eAAO,MAAM,KAAK,EAAE,QAAQ,EAi/B3B,CAAC"}