ox 0.14.37 → 0.14.38

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.
@@ -8,6 +8,120 @@ import * as SignatureEnvelope from './SignatureEnvelope.js';
8
8
  import * as TxEnvelopeTempo from './TxEnvelopeTempo.js';
9
9
  /** Maximum supported multisig configuration version. */
10
10
  const maxConfigVersion = 2n ** 64n - 1n;
11
+ /**
12
+ * Derives the deterministic hash for a multisig operation.
13
+ *
14
+ * @example
15
+ * ```ts twoslash
16
+ * // @noErrors
17
+ * import { MultisigOperation } from 'ox/tempo'
18
+ *
19
+ * const hash = MultisigOperation.getHash({
20
+ * account,
21
+ * configVersion: 1n,
22
+ * transaction,
23
+ * type: 'transaction',
24
+ * })
25
+ * ```
26
+ *
27
+ * @param options - Operation payload and multisig identity.
28
+ * @returns The operation hash signed by each owner.
29
+ */
30
+ export function getHash(options) {
31
+ const { account, configVersion } = options;
32
+ const payload = options.type === 'transaction'
33
+ ? TxEnvelopeTempo.getSignPayload(TxEnvelopeTempo.deserialize(options.transaction))
34
+ : KeyAuthorization_.getSignPayload(KeyAuthorization_.deserialize(options.keyAuthorization));
35
+ return MultisigConfig.getSignPayload({
36
+ account,
37
+ payload,
38
+ version: configVersion,
39
+ });
40
+ }
41
+ /**
42
+ * Validates, deduplicates, and selects owner approvals for an operation.
43
+ *
44
+ * The function retains one canonical approval per owner. It selects the
45
+ * smallest deterministic quorum by owner weight, then orders the selected
46
+ * approvals by owner address for serialization.
47
+ *
48
+ * @example
49
+ * ```ts twoslash
50
+ * // @noErrors
51
+ * import { MultisigOperation } from 'ox/tempo'
52
+ *
53
+ * const selection = await MultisigOperation.selectApprovals({
54
+ * account,
55
+ * approvals,
56
+ * config,
57
+ * hash,
58
+ * resolveConfig,
59
+ * })
60
+ * ```
61
+ *
62
+ * @param options - Approval selection parameters.
63
+ * @returns The retained approvals and deterministic quorum selection.
64
+ */
65
+ export async function selectApprovals(options) {
66
+ const { account, approvals, hash, resolveConfig } = options;
67
+ if (!Address.validate(account) || Hex.toBigInt(account) === 0n)
68
+ throw new InvalidApprovalError({ reason: 'account is invalid' });
69
+ if (!Hash.validate(hash))
70
+ throw new InvalidApprovalError({ reason: 'hash is invalid' });
71
+ return selectApprovals_internal({
72
+ account,
73
+ approvals,
74
+ config: MultisigConfig.from(options.config),
75
+ hash,
76
+ resolveConfig,
77
+ }, [account.toLowerCase()]);
78
+ }
79
+ /**
80
+ * Serializes a multisig transaction operation with selected owner approvals.
81
+ *
82
+ * @example
83
+ * ```ts twoslash
84
+ * // @noErrors
85
+ * import { MultisigOperation } from 'ox/tempo'
86
+ *
87
+ * const transaction = MultisigOperation.serializeTransaction(operation, {
88
+ * approvals: selection.selectedApprovals,
89
+ * })
90
+ * ```
91
+ *
92
+ * @param operation - Multisig transaction operation.
93
+ * @param options - Transaction serialization options.
94
+ * @returns The signed serialized Tempo transaction.
95
+ */
96
+ export function serializeTransaction(operation, options) {
97
+ const value = from(operation);
98
+ const envelope = TxEnvelopeTempo.deserialize(value.transaction);
99
+ const approvals = options.approvals.map((approval) => SignatureEnvelope.from(approval));
100
+ assertRetainedApprovals(value, approvals);
101
+ const signatures = SignatureEnvelope.sortMultisigApprovals({
102
+ account: value.account,
103
+ payload: TxEnvelopeTempo.getSignPayload(envelope),
104
+ signatures: approvals,
105
+ version: value.configVersion,
106
+ });
107
+ const signature = value.init
108
+ ? SignatureEnvelope.from({
109
+ init: true,
110
+ initialConfig: value.config,
111
+ signatures,
112
+ })
113
+ : SignatureEnvelope.from({
114
+ account: value.account,
115
+ signatures,
116
+ });
117
+ return TxEnvelopeTempo.serialize(envelope, value.transaction.startsWith(TxEnvelopeTempo.feePayerMagic)
118
+ ? {
119
+ format: 'feePayer',
120
+ sender: envelope.from,
121
+ signature,
122
+ }
123
+ : { signature });
124
+ }
11
125
  /**
12
126
  * Validates and normalizes a multisig operation.
13
127
  *
@@ -100,6 +214,155 @@ export function toRpc(operation) {
100
214
  configVersion: Hex.fromNumber(value.configVersion),
101
215
  };
102
216
  }
217
+ /**
218
+ * Validates and selects approvals recursively.
219
+ *
220
+ * @internal
221
+ */
222
+ async function selectApprovals_internal(options, path) {
223
+ const owners = new Map(options.config.owners.map((owner) => [
224
+ owner.owner.toLowerCase(),
225
+ { address: owner.owner, weight: Number(owner.weight) },
226
+ ]));
227
+ const groups = new Map();
228
+ for (const serialized of options.approvals) {
229
+ const signature = SignatureEnvelope.from(serialized);
230
+ if (signature.type === 'keychain')
231
+ throw new InvalidApprovalError({
232
+ reason: 'keychain signatures cannot approve a multisig operation',
233
+ });
234
+ const address = signature.type === 'multisig'
235
+ ? signature.account
236
+ : SignatureEnvelope.extractAddress({
237
+ payload: options.hash,
238
+ signature,
239
+ });
240
+ const owner = owners.get(address.toLowerCase());
241
+ if (!owner)
242
+ throw new InvalidApprovalError({
243
+ reason: `signature is from non-owner ${address}`,
244
+ });
245
+ const key = address.toLowerCase();
246
+ const group = groups.get(key);
247
+ if (group)
248
+ group.signatures.push(signature);
249
+ else
250
+ groups.set(key, {
251
+ address: owner.address,
252
+ signatures: [signature],
253
+ weight: owner.weight,
254
+ });
255
+ }
256
+ const valid = [];
257
+ const retained = [];
258
+ for (const group of groups.values()) {
259
+ const nested = group.signatures.filter((signature) => signature.type === 'multisig');
260
+ if (nested.length > 0) {
261
+ if (nested.length !== group.signatures.length)
262
+ throw new InvalidApprovalError({
263
+ reason: `owner ${group.address} has conflicting signature types`,
264
+ });
265
+ if (nested.some((signature) => signature.init))
266
+ throw new InvalidApprovalError({
267
+ reason: `nested multisig owner ${group.address} cannot carry init`,
268
+ });
269
+ if (path.length >= MultisigConfig.maxNestingDepth ||
270
+ path.includes(group.address.toLowerCase()))
271
+ throw new InvalidApprovalError({
272
+ reason: `nested multisig owner ${group.address} is invalid`,
273
+ });
274
+ if (!options.resolveConfig)
275
+ throw new InvalidApprovalError({
276
+ reason: `nested multisig owner ${group.address} requires a config resolver`,
277
+ });
278
+ const resolved = await options.resolveConfig({ account: group.address });
279
+ const selected = await selectApprovals_internal({
280
+ account: group.address,
281
+ approvals: nested.flatMap((signature) => signature.signatures.map((approval) => SignatureEnvelope.serialize(approval))),
282
+ config: MultisigConfig.from(resolved.config),
283
+ hash: MultisigConfig.getSignPayload({
284
+ account: group.address,
285
+ payload: options.hash,
286
+ version: resolved.version,
287
+ }),
288
+ resolveConfig: options.resolveConfig,
289
+ }, [...path, group.address.toLowerCase()]);
290
+ retained.push({
291
+ address: group.address,
292
+ signature: SignatureEnvelope.serialize(SignatureEnvelope.from({
293
+ account: group.address,
294
+ signatures: selected.approvals.map((approval) => SignatureEnvelope.from(approval)),
295
+ })),
296
+ });
297
+ if (selected.weight >= selected.threshold)
298
+ valid.push({
299
+ address: group.address,
300
+ signature: SignatureEnvelope.serialize(SignatureEnvelope.from({
301
+ account: group.address,
302
+ signatures: selected.selectedApprovals.map((approval) => SignatureEnvelope.from(approval)),
303
+ })),
304
+ weight: group.weight,
305
+ });
306
+ continue;
307
+ }
308
+ const signatures = group.signatures.map((signature) => {
309
+ if (!SignatureEnvelope.verify(signature, {
310
+ address: group.address,
311
+ payload: options.hash,
312
+ }))
313
+ throw new InvalidApprovalError({
314
+ reason: `signature from owner ${group.address} is invalid`,
315
+ });
316
+ return SignatureEnvelope.serialize(signature);
317
+ });
318
+ const signature = signatures.sort(compareHex)[0];
319
+ valid.push({
320
+ address: group.address,
321
+ signature,
322
+ weight: group.weight,
323
+ });
324
+ retained.push({ address: group.address, signature });
325
+ }
326
+ const ranked = valid.sort((a, b) => b.weight - a.weight || compareApprovalAddress(a, b));
327
+ const selected = [];
328
+ let weight = 0;
329
+ for (const approval of ranked.slice(0, MultisigConfig.maxSignatures)) {
330
+ if (weight >= Number(options.config.threshold))
331
+ break;
332
+ selected.push(approval);
333
+ weight += approval.weight;
334
+ }
335
+ selected.sort(compareApprovalAddress);
336
+ return {
337
+ approvals: retained
338
+ .sort(compareApprovalAddress)
339
+ .map((approval) => approval.signature),
340
+ selectedApprovals: selected.map((approval) => approval.signature),
341
+ signatureCount: selected.length,
342
+ threshold: Number(options.config.threshold),
343
+ weight,
344
+ };
345
+ }
346
+ /**
347
+ * Orders approval records by owner address.
348
+ *
349
+ * @internal
350
+ */
351
+ function compareApprovalAddress(a, b) {
352
+ const addressA = Hex.toBigInt(a.address);
353
+ const addressB = Hex.toBigInt(b.address);
354
+ return addressA < addressB ? -1 : addressA > addressB ? 1 : 0;
355
+ }
356
+ /**
357
+ * Orders hexadecimal data bytewise.
358
+ *
359
+ * @internal
360
+ */
361
+ function compareHex(a, b) {
362
+ const hexA = a.toLowerCase();
363
+ const hexB = b.toLowerCase();
364
+ return hexA < hexB ? -1 : hexA > hexB ? 1 : 0;
365
+ }
103
366
  /**
104
367
  * Validates fields shared by every operation.
105
368
  *
@@ -356,6 +619,22 @@ function assertApproval(account, serialized) {
356
619
  throw new InvalidOperationError({ reason: 'approval is not canonical' });
357
620
  return approval;
358
621
  }
622
+ /**
623
+ * Checks that selected transaction approvals are retained by the operation.
624
+ *
625
+ * @internal
626
+ */
627
+ function assertRetainedApprovals(operation, selected) {
628
+ const retained = operation.approvals.map((approval) => SignatureEnvelope.deserialize(approval));
629
+ for (const approval of selected) {
630
+ const index = retained.findIndex((candidate) => includesApproval(candidate, approval));
631
+ if (index === -1)
632
+ throw new InvalidOperationError({
633
+ reason: 'transaction signature is not a retained approval',
634
+ });
635
+ retained.splice(index, 1);
636
+ }
637
+ }
359
638
  /**
360
639
  * Checks that a successful key authorization uses retained approvals in canonical order.
361
640
  *
@@ -471,6 +750,34 @@ function sameConfig(a, b) {
471
750
  owner.weight === other.weight);
472
751
  }));
473
752
  }
753
+ /** Thrown when a multisig owner approval is invalid. */
754
+ export class InvalidApprovalError extends Errors.BaseError {
755
+ /**
756
+ * Creates an invalid multisig approval error.
757
+ *
758
+ * @example
759
+ * ```ts twoslash
760
+ * import { MultisigOperation } from 'ox/tempo'
761
+ *
762
+ * throw new MultisigOperation.InvalidApprovalError({
763
+ * reason: 'signature is from a non-owner',
764
+ * })
765
+ * ```
766
+ *
767
+ * @param options - Error options.
768
+ */
769
+ constructor(options = {}) {
770
+ super(options.reason
771
+ ? `Invalid multisig approval: ${options.reason}.`
772
+ : 'Invalid multisig approval.', { cause: options.cause });
773
+ Object.defineProperty(this, "name", {
774
+ enumerable: true,
775
+ configurable: true,
776
+ writable: true,
777
+ value: 'MultisigOperation.InvalidApprovalError'
778
+ });
779
+ }
780
+ }
474
781
  /** Thrown when a multisig operation is malformed or internally inconsistent. */
475
782
  export class InvalidOperationError extends Errors.BaseError {
476
783
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"MultisigOperation.js","sourceRoot":"","sources":["../../tempo/MultisigOperation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MultisigOperation.js","sourceRoot":"","sources":["../../tempo/MultisigOperation.ts"],"names":[],"mappings":"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"}
@@ -149,8 +149,8 @@ export * as MultisigConfig from './MultisigConfig.js';
149
149
  /**
150
150
  * Offchain multisig transaction and key authorization operation utilities.
151
151
  *
152
- * Validates operation state, serialized payloads, and deterministic operation
153
- * hashes, and converts between domain and JSON-RPC representations.
152
+ * Derives operation hashes, selects owner approvals, serializes transactions,
153
+ * validates operation state, and converts JSON-RPC representations.
154
154
  *
155
155
  * @category Reference
156
156
  */
package/_esm/version.js CHANGED
@@ -1,3 +1,3 @@
1
1
  /** @internal */
2
- export const version = '0.14.37';
2
+ export const version = '0.14.38';
3
3
  //# sourceMappingURL=version.js.map
@@ -1,7 +1,10 @@
1
1
  import * as Address from '../core/Address.js';
2
2
  import * as Errors from '../core/Errors.js';
3
3
  import * as Hex from '../core/Hex.js';
4
+ import * as KeyAuthorization_ from './KeyAuthorization.js';
4
5
  import * as MultisigConfig from './MultisigConfig.js';
6
+ import * as SignatureEnvelope from './SignatureEnvelope.js';
7
+ import * as TxEnvelopeTempo from './TxEnvelopeTempo.js';
5
8
  /** Fields shared by every multisig operation. */
6
9
  export type Base<quantity = bigint> = {
7
10
  /** Root multisig account. */
@@ -59,6 +62,143 @@ export type TransactionRpc = TransactionOperation<Hex.Hex>;
59
62
  export type KeyAuthorizationRpc = KeyAuthorizationOperation<Hex.Hex>;
60
63
  /** JSON-RPC multisig operation. */
61
64
  export type Rpc = Operation<Hex.Hex>;
65
+ /**
66
+ * Derives the deterministic hash for a multisig operation.
67
+ *
68
+ * @example
69
+ * ```ts twoslash
70
+ * // @noErrors
71
+ * import { MultisigOperation } from 'ox/tempo'
72
+ *
73
+ * const hash = MultisigOperation.getHash({
74
+ * account,
75
+ * configVersion: 1n,
76
+ * transaction,
77
+ * type: 'transaction',
78
+ * })
79
+ * ```
80
+ *
81
+ * @param options - Operation payload and multisig identity.
82
+ * @returns The operation hash signed by each owner.
83
+ */
84
+ export declare function getHash(options: getHash.Options): Hex.Hex;
85
+ export declare namespace getHash {
86
+ /** Parameters for `getHash`. */
87
+ type Options = {
88
+ /** Root multisig account. */
89
+ account: Address.Address;
90
+ /** Root configuration version. */
91
+ configVersion: bigint;
92
+ } & ({
93
+ /** Canonical serialized key authorization. */
94
+ keyAuthorization: Hex.Hex;
95
+ /** Operation kind. */
96
+ type: 'keyAuthorization';
97
+ } | {
98
+ /** Canonical serialized Tempo envelope without its outer sender signature. */
99
+ transaction: Hex.Hex;
100
+ /** Operation kind. */
101
+ type: 'transaction';
102
+ });
103
+ /** Error type for `getHash`. */
104
+ type ErrorType = KeyAuthorization_.deserialize.ErrorType | KeyAuthorization_.getSignPayload.ErrorType | MultisigConfig.getSignPayload.ErrorType | TxEnvelopeTempo.deserialize.ErrorType | TxEnvelopeTempo.getSignPayload.ErrorType | Errors.GlobalErrorType;
105
+ }
106
+ /**
107
+ * Validates, deduplicates, and selects owner approvals for an operation.
108
+ *
109
+ * The function retains one canonical approval per owner. It selects the
110
+ * smallest deterministic quorum by owner weight, then orders the selected
111
+ * approvals by owner address for serialization.
112
+ *
113
+ * @example
114
+ * ```ts twoslash
115
+ * // @noErrors
116
+ * import { MultisigOperation } from 'ox/tempo'
117
+ *
118
+ * const selection = await MultisigOperation.selectApprovals({
119
+ * account,
120
+ * approvals,
121
+ * config,
122
+ * hash,
123
+ * resolveConfig,
124
+ * })
125
+ * ```
126
+ *
127
+ * @param options - Approval selection parameters.
128
+ * @returns The retained approvals and deterministic quorum selection.
129
+ */
130
+ export declare function selectApprovals(options: selectApprovals.Options): Promise<selectApprovals.ReturnValue>;
131
+ export declare namespace selectApprovals {
132
+ /** Parameters for `selectApprovals`. */
133
+ type Options = {
134
+ /** Root multisig account. */
135
+ account: Address.Address;
136
+ /** Serialized primitive or nested owner approvals. */
137
+ approvals: readonly SignatureEnvelope.Serialized[];
138
+ /** Current root multisig configuration. */
139
+ config: MultisigConfig.Config;
140
+ /** Deterministic operation hash approved by root owners. */
141
+ hash: Hex.Hex;
142
+ /** Resolves the current configuration of a nested multisig owner. */
143
+ resolveConfig?: ResolveConfig | undefined;
144
+ };
145
+ /** Resolves an initialized nested multisig configuration. */
146
+ type ResolveConfig = (options: ResolveConfigOptions) => ResolvedConfig | Promise<ResolvedConfig>;
147
+ /** Nested multisig configuration lookup parameters. */
148
+ type ResolveConfigOptions = {
149
+ /** Nested multisig account. */
150
+ account: Address.Address;
151
+ };
152
+ /** Resolved nested multisig configuration. */
153
+ type ResolvedConfig = {
154
+ /** Current nested multisig configuration. */
155
+ config: MultisigConfig.Config;
156
+ /** Current nested multisig configuration version. */
157
+ version: bigint;
158
+ };
159
+ /** Result of validating and selecting approvals. */
160
+ type ReturnValue = {
161
+ /** Every retained approval, ordered by owner address. */
162
+ approvals: readonly SignatureEnvelope.Serialized[];
163
+ /** Number of approvals selected for quorum evaluation. */
164
+ signatureCount: number;
165
+ /** Approvals selected for serialization, ordered by owner address. */
166
+ selectedApprovals: readonly SignatureEnvelope.Serialized[];
167
+ /** Required owner weight. */
168
+ threshold: number;
169
+ /** Owner weight reached by the selected approvals. */
170
+ weight: number;
171
+ };
172
+ /** Error type for `selectApprovals`. */
173
+ type ErrorType = InvalidApprovalError | MultisigConfig.assert.ErrorType | MultisigConfig.getSignPayload.ErrorType | SignatureEnvelope.CoercionError | SignatureEnvelope.extractAddress.ErrorType | SignatureEnvelope.serialize.ErrorType | SignatureEnvelope.VerificationError | Errors.GlobalErrorType;
174
+ }
175
+ /**
176
+ * Serializes a multisig transaction operation with selected owner approvals.
177
+ *
178
+ * @example
179
+ * ```ts twoslash
180
+ * // @noErrors
181
+ * import { MultisigOperation } from 'ox/tempo'
182
+ *
183
+ * const transaction = MultisigOperation.serializeTransaction(operation, {
184
+ * approvals: selection.selectedApprovals,
185
+ * })
186
+ * ```
187
+ *
188
+ * @param operation - Multisig transaction operation.
189
+ * @param options - Transaction serialization options.
190
+ * @returns The signed serialized Tempo transaction.
191
+ */
192
+ export declare function serializeTransaction(operation: TransactionOperation, options: serializeTransaction.Options): TxEnvelopeTempo.Serialized;
193
+ export declare namespace serializeTransaction {
194
+ /** Options for `serializeTransaction`. */
195
+ type Options = {
196
+ /** Selected retained approvals to attach to the transaction. */
197
+ approvals: readonly SignatureEnvelope.Serialized[];
198
+ };
199
+ /** Error type for `serializeTransaction`. */
200
+ type ErrorType = from.ErrorType | InvalidOperationError | SignatureEnvelope.sortMultisigApprovals.ErrorType | TxEnvelopeTempo.deserialize.ErrorType | TxEnvelopeTempo.getSignPayload.ErrorType | TxEnvelopeTempo.serialize.ErrorType | Errors.GlobalErrorType;
201
+ }
62
202
  /**
63
203
  * Validates and normalizes a multisig operation.
64
204
  *
@@ -122,6 +262,34 @@ export declare namespace toRpc {
122
262
  /** Error type for `toRpc`. */
123
263
  type ErrorType = from.ErrorType | Hex.fromNumber.ErrorType;
124
264
  }
265
+ /** Thrown when a multisig owner approval is invalid. */
266
+ export declare class InvalidApprovalError extends Errors.BaseError<Error | undefined> {
267
+ readonly name = "MultisigOperation.InvalidApprovalError";
268
+ /**
269
+ * Creates an invalid multisig approval error.
270
+ *
271
+ * @example
272
+ * ```ts twoslash
273
+ * import { MultisigOperation } from 'ox/tempo'
274
+ *
275
+ * throw new MultisigOperation.InvalidApprovalError({
276
+ * reason: 'signature is from a non-owner',
277
+ * })
278
+ * ```
279
+ *
280
+ * @param options - Error options.
281
+ */
282
+ constructor(options?: InvalidApprovalError.Options);
283
+ }
284
+ export declare namespace InvalidApprovalError {
285
+ /** Error construction options. */
286
+ type Options = {
287
+ /** Underlying error. */
288
+ cause?: unknown | undefined;
289
+ /** Validation failure. */
290
+ reason?: string | undefined;
291
+ };
292
+ }
125
293
  /** Thrown when a multisig operation is malformed or internally inconsistent. */
126
294
  export declare class InvalidOperationError extends Errors.BaseError<Error | undefined> {
127
295
  readonly name = "MultisigOperation.InvalidOperationError";
@@ -1 +1 @@
1
- {"version":3,"file":"MultisigOperation.d.ts","sourceRoot":"","sources":["../../tempo/MultisigOperation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MultisigOperation.d.ts","sourceRoot":"","sources":["../../tempo/MultisigOperation.ts"],"names":[],"mappings":"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"}
@@ -151,8 +151,8 @@ export * as MultisigConfig from './MultisigConfig.js';
151
151
  /**
152
152
  * Offchain multisig transaction and key authorization operation utilities.
153
153
  *
154
- * Validates operation state, serialized payloads, and deterministic operation
155
- * hashes, and converts between domain and JSON-RPC representations.
154
+ * Derives operation hashes, selects owner approvals, serializes transactions,
155
+ * validates operation state, and converts JSON-RPC representations.
156
156
  *
157
157
  * @category Reference
158
158
  */
@@ -1,3 +1,3 @@
1
1
  /** @internal */
2
- export declare const version = "0.14.37";
2
+ export declare const version = "0.14.38";
3
3
  //# sourceMappingURL=version.d.ts.map