@mcsherrylabs/evolver-mcp 0.11.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/write.d.ts CHANGED
@@ -17,6 +17,8 @@ export interface WriteDeps {
17
17
  readonly ttlOffset?: number;
18
18
  readonly reads: ChainReads;
19
19
  submitTx(bytes: Uint8Array): Promise<SubmitResult>;
20
+ /** Gateway collection/assembly/submission; never falls back to ordinary submit. */
21
+ submitTxWithDa?(bytes: Uint8Array): Promise<SubmitResult>;
20
22
  }
21
23
  /** A signed credit transfer, as recorded for inspection. INTENT, not bytes — the base64 bytes
22
24
  * live in a separate map so a live, submittable artefact never sits on what a model reads. */
@@ -70,10 +72,28 @@ export interface SignedGroup {
70
72
  readonly txId: string;
71
73
  readonly expiresAtRound: number;
72
74
  readonly signedAtRound: number;
73
- readonly verb: "create_group" | "delete_group" | "add_member" | "remove_member" | "group_transfer";
75
+ readonly verb: "create_group" | "delete_group" | "add_member" | "remove_member" | "group_transfer" | "group_ownership_transfer";
74
76
  readonly fields: Record<string, string>;
75
77
  readonly summary: Record<string, string>;
76
78
  }
79
+ /** A PREPARED group ownership transfer awaiting the incoming owner's consent. Nothing is signed and
80
+ * no bytes exist, so `submitSigned` cannot find it: an unconsented transfer is unsubmittable by
81
+ * construction, not by a flag. Kept apart from `signedThisSession` for that reason. */
82
+ export interface PendingOwnershipTransfer {
83
+ readonly txId: string;
84
+ readonly expiresAtRound: number;
85
+ readonly preparedAtRound: number;
86
+ readonly verb: "group_ownership_transfer_pending";
87
+ readonly fields: {
88
+ readonly ledgerId: string;
89
+ readonly groupName: string;
90
+ readonly outgoingOwner: string;
91
+ readonly incomingOwner: string;
92
+ readonly maxToll: string;
93
+ };
94
+ readonly summary: Record<string, string>;
95
+ readonly status: string;
96
+ }
77
97
  /** A signed channel-ledger operation (SIGN-13..18: claim, unclaim, write, set-toll, set-write-policy,
78
98
  * set-DA-policy), as recorded for inspection. Intent, never bytes — the base64 bytes live in a
79
99
  * separate map. `fields`/`summary` name ONLY public metadata (channel ledger id, write policy, toll
@@ -108,6 +128,19 @@ export declare function recordedById(txId: string): SignedRecord | undefined;
108
128
  * `src/identity.ts`); composing and recording in one call is what keeps inspect/submit from ever
109
129
  * seeing a signed transaction whose record is missing. */
110
130
  export declare function recordSigned(signed: SignedRecord, bytes: Uint8Array): void;
131
+ /** Record an operation whose envelope carries auths assembled from MORE than this session's signer
132
+ * (the group ownership transfer). Strict where `recordSigned` is lenient: it never replaces or
133
+ * merges an existing id, so a verified multi-auth envelope cannot be shadowed by, or shadow, an
134
+ * earlier record. Returns false (recording nothing) when the id is already known. */
135
+ export declare function recordAssembledOnce(signed: SignedGroup, bytes: Uint8Array): boolean;
136
+ export declare const MAX_PENDING_OWNERSHIP = 16;
137
+ /** Remember a prepared transfer. False when the bound is reached or the id is already known. */
138
+ export declare function recordPendingOwnership(p: PendingOwnershipTransfer): boolean;
139
+ export declare function pendingOwnershipById(txId: string): PendingOwnershipTransfer | undefined;
140
+ export declare function dropPendingOwnership(txId: string): void;
141
+ /** Forget prepared transfers that can no longer be admitted (expiry <= round). They were never
142
+ * signed, so nothing submittable is lost; this keeps the bound from filling with dead entries. */
143
+ export declare function pruneExpiredPendingOwnership(round: number): void;
111
144
  /** The signed bytes for one recorded transaction, base64. Undefined for anything this session
112
145
  * did not sign. */
113
146
  export declare function peekBytes(txId: string): string | undefined;
@@ -123,8 +156,8 @@ export declare function signTransfer(deps: WriteDeps, params: {
123
156
  amount: string;
124
157
  }): Promise<ToolResult<SignedTransfer>>;
125
158
  /**
126
- * Sign a write to a channel — the generic escape hatch (SUBM-07). Signs only; `evolver_submit` is
127
- * still the only thing that reaches a chain.
159
+ * Sign a write to a channel — the generic escape hatch (SUBM-07). Signs only; a separate
160
+ * `evolver_submit` or `evolver_submit_da` call is what reaches a chain.
128
161
  *
129
162
  * ⚠️ WHAT THE CALLER IS TRUSTED WITH, AND WHAT IT IS NOT. The caller chooses the bytes and the
130
163
  * channel. It does NOT choose the interpreter: `writableChannelId` below refuses every CORE ledger
@@ -140,14 +173,13 @@ export declare function signOpaque(deps: WriteDeps, params: {
140
173
  channel: string;
141
174
  bodyHex: string;
142
175
  }): Promise<ToolResult<SignedOpaque>>;
143
- /** What a signed submit returned, for an agent to branch on.
144
- *
145
- * The committed branch carries `commitIntervalMs` (SUBM-03/04): a non-negative integer number of
146
- * milliseconds, present ONLY when a commit was observed. `classifySubmit`'s `SubmissionOutcome`
147
- * is interval-free; the submit wrapper widens exactly the committed branch, so `fined`/`refused`/
148
- * `unknown` report NO interval key at all. */
176
+ /** What a signed submit returned. Ordinary `commitIntervalMs` is present ONLY on an observed
177
+ * matching commit. DA `daSubmitDurationMs` measures the entire gateway call (including collection
178
+ * and assembly), even on an unsuccessful/unknown return; it never claims commit-only latency.
179
+ * The published SDK provides no separate collection or commit timing. Local guards have neither. */
149
180
  export type SubmitReport = SubmissionOutcome & {
150
181
  readonly commitIntervalMs?: number;
182
+ readonly daSubmitDurationMs?: number;
151
183
  readonly submitted?: Record<string, string | number>;
152
184
  };
153
185
  /**
@@ -158,15 +190,16 @@ export type SubmitReport = SubmissionOutcome & {
158
190
  * Rule 2 (SAFE-01) — never twice: a repeat is a no-op the chain refuses, and re-signing is the
159
191
  * loop that pays twice. Here the refusal names "look it up", never re-sign.
160
192
  *
161
- * The `txId` resolves the signed record and the base64 bytes; the ordinary `submitTx` route is
162
- * used (a credit transfer is not a channel write, so never `submitTxWithDa`).
193
+ * The `txId` resolves the signed record and the exact stored bytes. Both routes share these guards
194
+ * and mark the id before awaiting the network, including when the result is unknown. DA permits
195
+ * only channel-write intent, never a core-ledger operation or owners-ledger administration.
163
196
  */
164
- export declare function submitSigned(deps: WriteDeps, txId: string): Promise<SubmitReport>;
197
+ export declare function submitSigned(deps: WriteDeps, txId: string, mode?: "ordinary" | "da"): Promise<SubmitReport>;
165
198
  /**
166
199
  * Read back what a signed transaction would do (READ-05). Answers from the session RECORD, not
167
200
  * by decoding — and not from any other transaction. Contacts no chain.
168
201
  */
169
- export declare function inspectSigned(txId: string): ToolResult<SignedRecord>;
202
+ export declare function inspectSigned(txId: string): ToolResult<SignedRecord | PendingOwnershipTransfer>;
170
203
  /** Test seam only: forget this session's signing history (all three stores). */
171
204
  export declare function __resetSession(): void;
172
205
  /** The single compose→sign→record helper, re-exported from `src/identity.ts` so every identity verb
@@ -1 +1 @@
1
- {"version":3,"file":"write.d.ts","sourceRoot":"","sources":["../src/write.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"write.d.ts","sourceRoot":"","sources":["../src/write.ts"],"names":[],"mappings":"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"}
package/dist/write.js CHANGED
@@ -90,6 +90,44 @@ export function recordSigned(signed, bytes) {
90
90
  if (!bytesThisSession.has(k))
91
91
  bytesThisSession.set(k, Buffer.from(bytes).toString("base64"));
92
92
  }
93
+ /** Record an operation whose envelope carries auths assembled from MORE than this session's signer
94
+ * (the group ownership transfer). Strict where `recordSigned` is lenient: it never replaces or
95
+ * merges an existing id, so a verified multi-auth envelope cannot be shadowed by, or shadow, an
96
+ * earlier record. Returns false (recording nothing) when the id is already known. */
97
+ export function recordAssembledOnce(signed, bytes) {
98
+ const k = asKey(signed.txId);
99
+ if (signedThisSession.has(k) || bytesThisSession.has(k))
100
+ return false;
101
+ signedThisSession.set(k, signed);
102
+ bytesThisSession.set(k, Buffer.from(bytes).toString("base64"));
103
+ return true;
104
+ }
105
+ // Prepared-but-unconsented ownership transfers. Bounded so a looping caller cannot grow it.
106
+ export const MAX_PENDING_OWNERSHIP = 16;
107
+ const pendingOwnershipThisSession = new Map();
108
+ /** Remember a prepared transfer. False when the bound is reached or the id is already known. */
109
+ export function recordPendingOwnership(p) {
110
+ const k = asKey(p.txId);
111
+ if (pendingOwnershipThisSession.has(k) || signedThisSession.has(k))
112
+ return false;
113
+ if (pendingOwnershipThisSession.size >= MAX_PENDING_OWNERSHIP)
114
+ return false;
115
+ pendingOwnershipThisSession.set(k, p);
116
+ return true;
117
+ }
118
+ export function pendingOwnershipById(txId) {
119
+ return pendingOwnershipThisSession.get(asKey(txId));
120
+ }
121
+ export function dropPendingOwnership(txId) {
122
+ pendingOwnershipThisSession.delete(asKey(txId));
123
+ }
124
+ /** Forget prepared transfers that can no longer be admitted (expiry <= round). They were never
125
+ * signed, so nothing submittable is lost; this keeps the bound from filling with dead entries. */
126
+ export function pruneExpiredPendingOwnership(round) {
127
+ for (const [k, p] of pendingOwnershipThisSession)
128
+ if (p.expiresAtRound <= round)
129
+ pendingOwnershipThisSession.delete(k);
130
+ }
93
131
  /** The signed bytes for one recorded transaction, base64. Undefined for anything this session
94
132
  * did not sign. */
95
133
  export function peekBytes(txId) {
@@ -138,8 +176,8 @@ export async function signTransfer(deps, params) {
138
176
  return { kind: "ok", value: signed };
139
177
  }
140
178
  /**
141
- * Sign a write to a channel — the generic escape hatch (SUBM-07). Signs only; `evolver_submit` is
142
- * still the only thing that reaches a chain.
179
+ * Sign a write to a channel — the generic escape hatch (SUBM-07). Signs only; a separate
180
+ * `evolver_submit` or `evolver_submit_da` call is what reaches a chain.
143
181
  *
144
182
  * ⚠️ WHAT THE CALLER IS TRUSTED WITH, AND WHAT IT IS NOT. The caller chooses the bytes and the
145
183
  * channel. It does NOT choose the interpreter: `writableChannelId` below refuses every CORE ledger
@@ -221,10 +259,11 @@ export async function signOpaque(deps, params) {
221
259
  * Rule 2 (SAFE-01) — never twice: a repeat is a no-op the chain refuses, and re-signing is the
222
260
  * loop that pays twice. Here the refusal names "look it up", never re-sign.
223
261
  *
224
- * The `txId` resolves the signed record and the base64 bytes; the ordinary `submitTx` route is
225
- * used (a credit transfer is not a channel write, so never `submitTxWithDa`).
262
+ * The `txId` resolves the signed record and the exact stored bytes. Both routes share these guards
263
+ * and mark the id before awaiting the network, including when the result is unknown. DA permits
264
+ * only channel-write intent, never a core-ledger operation or owners-ledger administration.
226
265
  */
227
- export async function submitSigned(deps, txId) {
266
+ export async function submitSigned(deps, txId, mode = "ordinary") {
228
267
  const signed = recordedById(txId);
229
268
  if (signed === undefined)
230
269
  return {
@@ -243,6 +282,18 @@ export async function submitSigned(deps, txId) {
243
282
  `and both may commit. Look it up instead.`,
244
283
  txId: signed.txId,
245
284
  };
285
+ if (mode === "da") {
286
+ if (!("verb" in signed) || (signed.verb !== "opaque" && signed.verb !== "channel_write"))
287
+ return { kind: "refused", reason: "not_channel_write", txId: signed.txId,
288
+ message: "DA submission accepts only session-signed opaque/channel_write intent. Use evolver_submit for transfers and administration; nothing was sent." };
289
+ const channel = writableChannelId(signed.fields.channel);
290
+ if (typeof channel !== "string")
291
+ return { kind: "refused", reason: "not_channel_write", txId: signed.txId,
292
+ message: "DA submission refuses core/reserved or missing channel targets; nothing was sent." };
293
+ if (!deps.submitTxWithDa)
294
+ return { kind: "refused", reason: "da_not_configured", txId: signed.txId,
295
+ message: "DA gateway submission is not configured; nothing was sent. No ordinary-submit fallback was attempted." };
296
+ }
246
297
  const bytes = peekBytes(signed.txId);
247
298
  if (bytes === undefined)
248
299
  return {
@@ -254,28 +305,31 @@ export async function submitSigned(deps, txId) {
254
305
  };
255
306
  alreadySubmitted.add(signed.txId);
256
307
  const raw = Uint8Array.from(Buffer.from(bytes, "base64"));
257
- // ── the commit interval (SUBM-03): two monotonic timestamps bracket EXACTLY the submit call ──
258
- //
259
- // `performance.now()` is monotonic — it cannot jump the way a wall-clock (`Date.now()`) does on
260
- // an NTP step. `t0` is taken after every guard (record resolution, not_signed_here /
261
- // already_submitted refusals, byte peek) so the non-submit work stays OUTSIDE the bracket. A
262
- // throw here is `unknown` with NO interval — nothing was observed, so nothing is reported.
308
+ // Monotonic timestamps bracket exactly ONE SDK call, after all local guards. The DA call
309
+ // includes collection/assembly: elapsed time is not commit-only latency, even when committed.
263
310
  const t0 = performance.now();
264
311
  let result;
265
312
  try {
266
- result = await deps.submitTx(raw);
313
+ result = mode === "da" ? await deps.submitTxWithDa(raw) : await deps.submitTx(raw);
267
314
  }
268
315
  catch (e) {
269
316
  return {
270
317
  kind: "unknown",
271
318
  why: `the submission could not be completed: ${e instanceof Error ? e.message : String(e)}`,
272
319
  txId: signed.txId,
320
+ ...(mode === "da" ? { daSubmitDurationMs: Math.round(performance.now() - t0) } : {}),
273
321
  submitted: { ...signed.summary, expiresAtRound: signed.expiresAtRound },
274
322
  };
275
323
  }
276
- const t1 = performance.now();
277
- const commitIntervalMs = Math.round(t1 - t0);
278
- const outcome = classifySubmit(result);
324
+ const durationMs = Math.round(performance.now() - t0);
325
+ const daTiming = mode === "da" ? { daSubmitDurationMs: durationMs } : {};
326
+ let outcome = classifySubmit(result);
327
+ if (mode === "da" && outcome.kind === "unknown") {
328
+ // SDK 0.21.0 parseSubmit drops reason/message on `timeout`, including the node's
329
+ // da_collection_in_progress response. Do not infer which phase is pending from that shape.
330
+ const detail = result.kind === "timeout" ? "the gateway returned a pending/timeout outcome" : outcome.why;
331
+ outcome = { ...outcome, why: `${detail}. DA collection may still be in progress or submission may be uncertain; the SDK does not distinguish these phases. This is not da_unavailable or a final refusal` };
332
+ }
279
333
  // An EXACT, FREE version-skew detector. The id is computed independently on both ends over the
280
334
  // same fields, so a disagreement is unambiguous evidence the two ends encode differently. A
281
335
  // mismatch is `unknown` with NO interval: the wrong id means the commit was never identified, so
@@ -286,22 +340,20 @@ export async function submitSigned(deps, txId) {
286
340
  why: `the node computed a different transaction id (${outcome.txId}) than this client did ` +
287
341
  `(${signed.txId}). Treat the outcome as unknown and look the transaction up.`,
288
342
  txId: signed.txId,
343
+ ...daTiming,
289
344
  submitted: { ...signed.summary, expiresAtRound: signed.expiresAtRound },
290
345
  };
291
- // The interval is attached ONLY to the committed branch (SUBM-04): a fined/refused/unknown
292
- // outcome is not a commit, so any duration reported there would be a mislead. `classifySubmit`
293
- // stays interval-free; the interval is the submit wrapper's concern, and only when a commit was
294
- // actually observed.
295
346
  if (outcome.kind === "committed") {
296
347
  return {
297
348
  ...outcome,
298
- commitIntervalMs,
349
+ txId: signed.txId,
350
+ ...(mode === "ordinary" ? { commitIntervalMs: durationMs } : daTiming),
299
351
  submitted: { ...signed.summary, expiresAtRound: signed.expiresAtRound },
300
352
  };
301
353
  }
302
- // An ambiguous node response may omit/echo the wrong ID. Reconciliation always uses the
303
- // canonical ID this session signed, never an absent or untrusted response ID.
304
- return { ...outcome, ...(outcome.kind === "unknown" ? { txId: signed.txId } : {}),
354
+ // Reconciliation always uses the original signed-intent ID, even when the gateway omits or
355
+ // echoes a different ID. Adding gateway DA auths does not change that intent.
356
+ return { ...outcome, txId: signed.txId, ...daTiming,
305
357
  submitted: { ...signed.summary, expiresAtRound: signed.expiresAtRound } };
306
358
  }
307
359
  /**
@@ -312,6 +364,9 @@ export function inspectSigned(txId) {
312
364
  const rec = recordedById(txId);
313
365
  if (rec !== undefined)
314
366
  return { kind: "ok", value: rec };
367
+ const pending = pendingOwnershipById(txId);
368
+ if (pending !== undefined)
369
+ return { kind: "ok", value: pending };
315
370
  return {
316
371
  kind: "not_found",
317
372
  what: `transaction ${namedInRefusal(txId)} was not signed in this session — this tool contacts no chain; this is not evidence of on-chain absence`,
@@ -322,6 +377,7 @@ export function __resetSession() {
322
377
  signedThisSession.clear();
323
378
  alreadySubmitted.clear();
324
379
  bytesThisSession.clear();
380
+ pendingOwnershipThisSession.clear();
325
381
  }
326
382
  /** The single compose→sign→record helper, re-exported from `src/identity.ts` so every identity verb
327
383
  * and any future signing verb shares ONE compose implementation (never two). */
package/dist/write.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"write.js","sourceRoot":"","sources":["../src/write.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"write.js","sourceRoot":"","sources":["../src/write.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,EAAE;AACF,8FAA8F;AAC9F,6FAA6F;AAC7F,iGAAiG;AACjG,iGAAiG;AACjG,iCAAiC;AACjC,EAAE;AACF,8FAA8F;AAC9F,8FAA8F;AAC9F,6FAA6F;AAC7F,0DAA0D;AAE1D,OAAO,EACL,MAAM,EACN,aAAa,EACb,YAAY,EACZ,OAAO,EACP,WAAW,EACX,UAAU,EACV,eAAe,EACf,sBAAsB,GACvB,MAAM,8BAA8B,CAAC;AAGtC,qGAAqG;AACrG,mGAAmG;AACnG,OAAO,EAAE,UAAU,EAAE,CAAC;AACtB,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAExD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAG7C;;;;4FAI4F;AAC5F,MAAM,CAAC,MAAM,kBAAkB,GAAG,EAAE,CAAC;AA+FrC;;;2EAG2E;AAC3E,MAAM,cAAc,GAAG,KAAK,GAAG,IAAI,CAAC;AAEpC;;;;;;6FAM6F;AAC7F,MAAM,UAAU,iBAAiB,CAAC,GAAY;IAC5C,MAAM,EAAE,GAAG,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACpC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,kBAAkB,EAAE,CAAC;IAC5F,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC;IAC/B,IAAK,eAAqC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC;QAC/E,OAAO;YACL,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,SAAS;YACf,KAAK,EACH,IAAI,EAAE,oFAAoF;gBAC1F,4FAA4F;gBAC5F,2FAA2F;SAC9F,CAAC;IACJ,IAAI,KAAK,CAAC,UAAU,CAAC,sBAAsB,CAAC;QAC1C,OAAO;YACL,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,IAAI,EAAE,yBAAyB,sBAAsB,mFAAmF;SAChJ,CAAC;IACJ,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,iFAAiF;AACjF,EAAE;AACF,8FAA8F;AAC9F,gGAAgG;AAChG,6FAA6F;AAC7F,kGAAkG;AAClG,8BAA8B;AAE9B,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAwB,CAAC;AAC1D,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAU,CAAC;AAC3C,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAkB,CAAC;AAEnD;qCACqC;AACrC,MAAM,KAAK,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AAEhF;+EAC+E;AAC/E,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,IAAY,EAAU,EAAE;IACrD,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;IACtB,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACrC,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,MAAM,cAAc,CAAC;AACzF,CAAC,CAAC;AAEF,6CAA6C;AAC7C,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,OAAO,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;AAC5C,CAAC;AAED;;;2DAG2D;AAC3D,MAAM,UAAU,YAAY,CAAC,MAAoB,EAAE,KAAiB;IAClE,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC7B,iBAAiB,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IACjC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC;QAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;AAC/F,CAAC;AAED;;;sFAGsF;AACtF,MAAM,UAAU,mBAAmB,CAAC,MAAmB,EAAE,KAAiB;IACxE,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC7B,IAAI,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IACtE,iBAAiB,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IACjC,gBAAgB,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC/D,OAAO,IAAI,CAAC;AACd,CAAC;AAED,4FAA4F;AAC5F,MAAM,CAAC,MAAM,qBAAqB,GAAG,EAAE,CAAC;AACxC,MAAM,2BAA2B,GAAG,IAAI,GAAG,EAAoC,CAAC;AAEhF,gGAAgG;AAChG,MAAM,UAAU,sBAAsB,CAAC,CAA2B;IAChE,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACxB,IAAI,2BAA2B,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IACjF,IAAI,2BAA2B,CAAC,IAAI,IAAI,qBAAqB;QAAE,OAAO,KAAK,CAAC;IAC5E,2BAA2B,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACtC,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,IAAY;IAC/C,OAAO,2BAA2B,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,IAAY;IAC/C,2BAA2B,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;AAClD,CAAC;AAED;mGACmG;AACnG,MAAM,UAAU,4BAA4B,CAAC,KAAa;IACxD,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,2BAA2B;QAAE,IAAI,CAAC,CAAC,cAAc,IAAI,KAAK;YAAE,2BAA2B,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AACzH,CAAC;AAED;oBACoB;AACpB,MAAM,UAAU,SAAS,CAAC,IAAY;IACpC,OAAO,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;AAC3C,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,IAAe,EACf,MAA6C;IAE7C,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACxD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;QACxB,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,oBAAoB,EAAE,CAAC;IAE7E,+FAA+F;IAC/F,yEAAyE;IACzE,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC;IACxD,IAAI,CAAC,MAAM,CAAC,EAAE;QAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;IAEhF,IAAI,GAAW,CAAC;IAChB,IAAI,CAAC;QACH,GAAG,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;IACxC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/F,CAAC;IAED,MAAM,cAAc,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,SAAS,IAAI,kBAAkB,CAAC,CAAC;IACpE,MAAM,IAAI,GAAG,YAAY,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IACjE,MAAM,KAAK,GAAG,aAAa,CAAC;QAC1B,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,YAAY,EAAE,IAAI,CAAC,QAAQ;QAC3B,IAAI;QACJ,QAAQ,EAAE,cAAc;QACxB,OAAO,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC;KACvB,CAAC,CAAC;IAEH,MAAM,MAAM,GAAmB;QAC7B,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,cAAc,EAAE,IAAI,CAAC;QACnE,cAAc;QACd,aAAa,EAAE,GAAG;QAClB,OAAO,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;KAClF,CAAC;IACF,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;IAClD,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;IAChF,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;AACvC,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,IAAe,EACf,MAA4C;IAE5C,iFAAiF;IACjF,MAAM,OAAO,GAAG,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAClD,IAAI,OAAO,OAAO,KAAK,QAAQ;QAAE,OAAO,OAAO,CAAC;IAEhD,8FAA8F;IAC9F,qDAAqD;IACrD,IAAI,IAAgB,CAAC;IACrB,IAAI,CAAC;QACH,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACzD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IACjG,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QACnB,OAAO;YACL,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,uHAAuH;SAC/H,CAAC;IACJ,IAAI,IAAI,CAAC,MAAM,GAAG,cAAc;QAC9B,OAAO;YACL,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,SAAS;YACf,KAAK,EACH,GAAG,IAAI,CAAC,MAAM,sBAAsB,cAAc,kCAAkC;gBACpF,0FAA0F;gBAC1F,uFAAuF;gBACvF,uCAAuC;SAC1C,CAAC;IAEJ,mFAAmF;IACnF,IAAI,GAAW,CAAC;IAChB,IAAI,CAAC;QACH,GAAG,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;IACxC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/F,CAAC;IAED,MAAM,cAAc,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,SAAS,IAAI,kBAAkB,CAAC,CAAC;IACpE,MAAM,SAAS,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IACpC,mFAAmF;IACnF,MAAM,OAAO,GAAG,EAAE,CAAC;IACnB,MAAM,MAAM,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC;IAChF,MAAM,KAAK,GAAG,aAAa,CAAC;QAC1B,QAAQ,EAAE,OAAO;QACjB,YAAY,EAAE,IAAI,CAAC,QAAQ;QAC3B,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,cAAc;QACxB,OAAO,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC;QACtB,OAAO;KACR,CAAC,CAAC;IAEH,MAAM,MAAM,GAAiB;QAC3B,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,cAAc,EAAE,SAAS,EAAE,OAAO,CAAC;QACzE,cAAc;QACd,aAAa,EAAE,GAAG;QAClB,IAAI,EAAE,QAAQ;QACd,MAAM;QACN,OAAO,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,MAAM,EAAE;KAC9C,CAAC;IACF,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;IAClD,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;IAChF,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;AACvC,CAAC;AAYD;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,IAAe,EAAE,IAAY,EAAE,OAA0B,UAAU;IAEnE,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IAElC,IAAI,MAAM,KAAK,SAAS;QACtB,OAAO;YACL,IAAI,EAAE,SAAS;YACf,MAAM,EAAE,iBAAiB;YACzB,OAAO,EACL,0BAA0B,cAAc,CAAC,IAAI,CAAC,oCAAoC;gBAClF,sFAAsF;gBACtF,gBAAgB;SACnB,CAAC;IAEJ,IAAI,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;QACnC,OAAO;YACL,IAAI,EAAE,SAAS;YACf,MAAM,EAAE,mBAAmB;YAC3B,OAAO,EACL,qBAAqB,MAAM,CAAC,IAAI,uDAAuD;gBACvF,yFAAyF;gBACzF,0CAA0C;YAC5C,IAAI,EAAE,MAAM,CAAC,IAAI;SAClB,CAAC;IAEJ,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QAClB,IAAI,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,KAAK,eAAe,CAAC;YACtF,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI;gBACtE,OAAO,EAAE,+IAA+I,EAAE,CAAC;QAC/J,MAAM,OAAO,GAAG,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACzD,IAAI,OAAO,OAAO,KAAK,QAAQ;YAC7B,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI;gBACtE,OAAO,EAAE,mFAAmF,EAAE,CAAC;QACnG,IAAI,CAAC,IAAI,CAAC,cAAc;YACtB,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI;gBACtE,OAAO,EAAE,uGAAuG,EAAE,CAAC;IACzH,CAAC;IAED,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACrC,IAAI,KAAK,KAAK,SAAS;QACrB,OAAO;YACL,IAAI,EAAE,SAAS;YACf,MAAM,EAAE,iBAAiB;YACzB,OAAO,EACL,qCAAqC,MAAM,CAAC,IAAI,0CAA0C;gBAC1F,mCAAmC;YACrC,IAAI,EAAE,MAAM,CAAC,IAAI;SAClB,CAAC;IAEJ,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAClC,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;IAE1D,yFAAyF;IACzF,8FAA8F;IAC9F,MAAM,EAAE,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IAC7B,IAAI,MAAoB,CAAC;IACzB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,cAAe,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IACtF,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO;YACL,IAAI,EAAE,SAAS;YACf,GAAG,EAAE,0CAA0C,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;YAC3F,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,GAAG,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpF,SAAS,EAAE,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE,cAAc,EAAE,MAAM,CAAC,cAAc,EAAE;SACxE,CAAC;IACJ,CAAC;IACD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IACtD,MAAM,QAAQ,GAAG,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAEzE,IAAI,OAAO,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;IACrC,IAAI,IAAI,KAAK,IAAI,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAChD,iFAAiF;QACjF,2FAA2F;QAC3F,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,gDAAgD,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC;QAC1G,OAAO,GAAG,EAAE,GAAG,OAAO,EAAE,GAAG,EAAE,GAAG,MAAM,mKAAmK,EAAE,CAAC;IAC9M,CAAC;IAED,+FAA+F;IAC/F,4FAA4F;IAC5F,iGAAiG;IACjG,mDAAmD;IACnD,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,IAAI,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE;QAC1G,OAAO;YACL,IAAI,EAAE,SAAS;YACf,GAAG,EACD,iDAAiD,OAAO,CAAC,IAAI,yBAAyB;gBACtF,IAAI,MAAM,CAAC,IAAI,8DAA8D;YAC/E,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,GAAG,QAAQ;YACX,SAAS,EAAE,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE,cAAc,EAAE,MAAM,CAAC,cAAc,EAAE;SACxE,CAAC;IAEJ,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;QACjC,OAAO;YACL,GAAG,OAAO;YACV,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,GAAG,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;YACtE,SAAS,EAAE,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE,cAAc,EAAE,MAAM,CAAC,cAAc,EAAE;SACxE,CAAC;IACJ,CAAC;IAED,2FAA2F;IAC3F,8EAA8E;IAC9E,OAAO,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,GAAG,QAAQ;QACjD,SAAS,EAAE,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE,cAAc,EAAE,MAAM,CAAC,cAAc,EAAE,EAAE,CAAC;AAC9E,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,IAAY;IACxC,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IAC/B,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;IACzD,MAAM,OAAO,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC;IAC3C,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;IACjE,OAAO;QACL,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,eAAe,cAAc,CAAC,IAAI,CAAC,yGAAyG;KACnJ,CAAC;AACJ,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,cAAc;IAC5B,iBAAiB,CAAC,KAAK,EAAE,CAAC;IAC1B,gBAAgB,CAAC,KAAK,EAAE,CAAC;IACzB,gBAAgB,CAAC,KAAK,EAAE,CAAC;IACzB,2BAA2B,CAAC,KAAK,EAAE,CAAC;AACtC,CAAC;AAED;iFACiF;AACjF,OAAO,EAAE,iBAAiB,IAAI,cAAc,EAAE,MAAM,eAAe,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mcsherrylabs/evolver-mcp",
3
- "version": "0.11.0",
3
+ "version": "0.12.0",
4
4
  "description": "MCP server over a configurable Evolver node — read the chain, sign a transfer, administer what you own, write to a channel, submit a signed transaction. Wraps @mcsherrylabs/evolver-client; implements no wire format of its own.",
5
5
  "type": "module",
6
6
  "license": "Apache-2.0",
@@ -53,7 +53,7 @@
53
53
  "test": "npm run build && npm run typecheck && npm run check:result && npm run check:config && npm run check:heights && npm run check:principal && npm run check:transaction && npm run check:keys && npm run check:channelterms && npm run check:surface && npm run check:signing && npm run check:interval && npm run check:classify && npm run check:identity && npm run check:claim && npm run check:content && npm run check:inbox && npm run check:group && npm run check:channel && npm run check:channel-admin-apply && npm run check:bootstrap && npm run check:install && npm run check:deployment && npm run check:startup && npm run check:publish && npm run check:channel-regression"
54
54
  },
55
55
  "dependencies": {
56
- "@mcsherrylabs/evolver-client": "0.21.0",
56
+ "@mcsherrylabs/evolver-client": "0.21.1",
57
57
  "@modelcontextprotocol/sdk": "1.32.1",
58
58
  "typebox": "1.3.32"
59
59
  },