@sidhujag/sysweb3-keyring 2.1.9 → 2.1.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/README.md +8 -5
  3. package/cjs/hardware-signing-data.js +85 -0
  4. package/cjs/hardware-signing-data.js.map +1 -0
  5. package/cjs/hardware-wallet-manager.js +36 -13
  6. package/cjs/hardware-wallet-manager.js.map +1 -1
  7. package/cjs/ledger/index.js +41 -51
  8. package/cjs/ledger/index.js.map +1 -1
  9. package/cjs/transactions/ethereum.js +92 -70
  10. package/cjs/transactions/ethereum.js.map +1 -1
  11. package/cjs/transactions/prepared-evm.js.map +1 -1
  12. package/cjs/trezor/connect.js +155 -50
  13. package/cjs/trezor/connect.js.map +1 -1
  14. package/cjs/trezor/index.js +159 -138
  15. package/cjs/trezor/index.js.map +1 -1
  16. package/cjs/types.js.map +1 -1
  17. package/esm/hardware-signing-data.js +82 -0
  18. package/esm/hardware-signing-data.js.map +1 -0
  19. package/esm/hardware-wallet-manager.js +36 -13
  20. package/esm/hardware-wallet-manager.js.map +1 -1
  21. package/esm/ledger/dmk-evm.js +13 -48
  22. package/esm/ledger/dmk-evm.js.map +1 -1
  23. package/esm/ledger/dmk-utxo.js +9 -6
  24. package/esm/ledger/dmk-utxo.js.map +1 -1
  25. package/esm/ledger/index.js +41 -51
  26. package/esm/ledger/index.js.map +1 -1
  27. package/esm/transactions/ethereum.js +92 -70
  28. package/esm/transactions/ethereum.js.map +1 -1
  29. package/esm/transactions/prepared-evm.js.map +1 -1
  30. package/esm/trezor/connect.js +155 -50
  31. package/esm/trezor/connect.js.map +1 -1
  32. package/esm/trezor/index.js +160 -139
  33. package/esm/trezor/index.js.map +1 -1
  34. package/esm/types.js.map +1 -1
  35. package/package.json +1 -1
  36. package/types/hardware-signing-data.d.ts +2 -0
  37. package/types/hardware-wallet-manager.d.ts +3 -1
  38. package/types/ledger/host-types.d.ts +3 -3
  39. package/types/ledger/index.d.ts +2 -1
  40. package/types/ledger/types.d.ts +4 -4
  41. package/types/transactions/ethereum.d.ts +4 -2
  42. package/types/transactions/prepared-evm.d.ts +1 -0
  43. package/types/trezor/connect.d.ts +10 -1
  44. package/types/trezor/index.d.ts +21 -11
  45. package/types/types.d.ts +2 -2
@@ -1,4 +1,5 @@
1
1
  import { EventEmitter } from 'events';
2
+ import { assertHardwareOperationCurrent } from './hardware-transaction-authority';
2
3
  import { ConnectionStatus, HardwareWalletType } from './hardware-wallet-types';
3
4
  import { ledgerCancelledError, ledgerHostError } from './ledger/host-types';
4
5
  /**
@@ -122,6 +123,15 @@ export class HardwareWalletManager extends EventEmitter {
122
123
  * Initialize Trezor with retry logic
123
124
  */
124
125
  async initializeTrezor() {
126
+ return this.initializeTrezorInternal();
127
+ }
128
+ async initializeTrezorOwned(session, assertCurrent) {
129
+ assertHardwareOperationCurrent(assertCurrent);
130
+ return this.initializeTrezorInternal(Object.freeze({ session, assertCurrent }));
131
+ }
132
+ async initializeTrezorInternal(owned) {
133
+ if (owned)
134
+ assertHardwareOperationCurrent(owned.assertCurrent);
125
135
  this.requireTrezor();
126
136
  if (this.destruction) {
127
137
  throw Object.assign(new Error('Trezor connection is closing'), {
@@ -143,6 +153,8 @@ export class HardwareWalletManager extends EventEmitter {
143
153
  console.log('[HardwareWalletManager] Trezor connection already in progress');
144
154
  // Wait a bit and check again
145
155
  await this.delay(1000);
156
+ if (owned)
157
+ assertHardwareOperationCurrent(owned.assertCurrent);
146
158
  if (generation !== this.lifecycleGeneration || this.destruction)
147
159
  return false;
148
160
  const updated = this.connectionPool.get(key);
@@ -151,27 +163,38 @@ export class HardwareWalletManager extends EventEmitter {
151
163
  const owner = {};
152
164
  this.trezorInitialization = owner;
153
165
  try {
154
- return await this.initializeTrezorWithRetry(key, owner, generation);
166
+ return await this.initializeTrezorWithRetry(key, owner, generation, owned);
155
167
  }
156
168
  finally {
157
- if (this.trezorInitialization === owner)
169
+ if (this.trezorInitialization === owner) {
170
+ // A revoked authority may throw before the retry path can mark failure.
171
+ // Retire only this attempt; a late completion must not remove a successor.
172
+ if (generation === this.lifecycleGeneration &&
173
+ this.connectionPool.get(key)?.status === ConnectionStatus.CONNECTING)
174
+ this.connectionPool.delete(key);
158
175
  this.trezorInitialization = undefined;
176
+ }
159
177
  }
160
178
  }
161
179
  /**
162
180
  * Initialize Trezor with exponential backoff retry
163
181
  */
164
- async initializeTrezorWithRetry(key, owner, generation) {
182
+ async initializeTrezorWithRetry(key, owner, generation, owned) {
165
183
  const entry = {
166
184
  status: ConnectionStatus.CONNECTING,
167
185
  lastActivity: Date.now(),
168
186
  retryCount: 0,
169
187
  };
170
188
  this.connectionPool.set(key, entry);
171
- const isCurrent = () => generation === this.lifecycleGeneration &&
172
- this.trezorInitialization === owner &&
173
- this.connectionPool.get(key) === entry &&
174
- !this.destruction;
189
+ const isCurrent = () => {
190
+ if (owned)
191
+ assertHardwareOperationCurrent(owned.assertCurrent);
192
+ return (generation === this.lifecycleGeneration &&
193
+ this.trezorInitialization === owner &&
194
+ this.connectionPool.get(key) === entry &&
195
+ !this.destruction);
196
+ };
197
+ const connection = owned?.session ?? this.requireTrezor();
175
198
  let lastError;
176
199
  // Reduce retry attempts for Trezor to prevent repeated popups
177
200
  const trezorRetryConfig = {
@@ -191,14 +214,14 @@ export class HardwareWalletManager extends EventEmitter {
191
214
  return false;
192
215
  // Dispose the previous Suite connection before initialization
193
216
  try {
194
- await this.requireTrezor().dispose();
217
+ await connection.dispose();
195
218
  }
196
219
  catch (disposeError) {
197
220
  console.log('[HardwareWalletManager] Dispose error (safe to ignore):', disposeError);
198
221
  }
199
222
  if (!isCurrent())
200
223
  return false;
201
- await this.requireTrezor().init();
224
+ await connection.init();
202
225
  if (!isCurrent())
203
226
  return false;
204
227
  entry.status = ConnectionStatus.CONNECTED;
@@ -229,7 +252,7 @@ export class HardwareWalletManager extends EventEmitter {
229
252
  // Instead of just marking as connected, verify the connection
230
253
  try {
231
254
  // Test the connection with a simple call
232
- const testResponse = await this.requireTrezor().getFeatures();
255
+ const testResponse = await connection.getFeatures();
233
256
  if (!isCurrent())
234
257
  return false;
235
258
  if (testResponse.success) {
@@ -247,7 +270,7 @@ export class HardwareWalletManager extends EventEmitter {
247
270
  return false;
248
271
  // If test failed, dispose and retry
249
272
  try {
250
- await this.requireTrezor().dispose();
273
+ await connection.dispose();
251
274
  if (!isCurrent())
252
275
  return false;
253
276
  await this.delay(500);
@@ -266,7 +289,7 @@ export class HardwareWalletManager extends EventEmitter {
266
289
  console.log('[HardwareWalletManager] Trezor device is in use by another application');
267
290
  // Try to dispose and reinitialize
268
291
  try {
269
- await this.requireTrezor().dispose();
292
+ await connection.dispose();
270
293
  if (!isCurrent())
271
294
  return false;
272
295
  await this.delay(2000); // Wait 2 seconds before retry
@@ -307,7 +330,7 @@ export class HardwareWalletManager extends EventEmitter {
307
330
  return false;
308
331
  // Clean up on failure
309
332
  try {
310
- await this.requireTrezor().dispose();
333
+ await connection.dispose();
311
334
  }
312
335
  catch (disposeError) {
313
336
  console.log('[HardwareWalletManager] Failed to dispose on error:', disposeError);
@@ -1 +1 @@
1
- {"version":3,"file":"hardware-wallet-manager.js","sourceRoot":"","sources":["../../src/hardware-wallet-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hardware-wallet-manager.js","sourceRoot":"","sources":["../../src/hardware-wallet-manager.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,8 @@ import { ClearSignContextType, } from '@ledgerhq/context-module';
2
2
  import { SignerEthBuilder, } from '@ledgerhq/device-signer-kit-ethereum';
3
3
  import { TypedDataUtils } from '@metamask/eth-sig-util';
4
4
  import { computeAddress, getAddress, hashMessage, recoverAddress, Signature, Transaction, } from 'ethers';
5
+ import { captureHardwareSigningData } from '../hardware-signing-data';
6
+ import { captureHardwareTransactionAuthority } from '../hardware-transaction-authority';
5
7
  import { ledgerHostError, } from './host-types';
6
8
  const invalid = (message) => ledgerHostError('LEDGER_INVALID_REQUEST', message);
7
9
  const unavailable = () => ledgerHostError('HARDWARE_CLEAR_SIGNING_UNAVAILABLE', 'This Ledger operation requires explicit approval because clear signing is not guaranteed');
@@ -41,47 +43,6 @@ const expectedAddress = (value) => {
41
43
  throw invalid('Invalid expected Ledger address');
42
44
  }
43
45
  };
44
- function copyTypedValue(value, seen = new WeakSet(), depth = 0) {
45
- if (depth > 64)
46
- throw invalid('Typed data nesting is too deep');
47
- if (typeof value === 'bigint')
48
- return value.toString();
49
- if (value === null || typeof value === 'string' || typeof value === 'boolean')
50
- return value;
51
- if (typeof value === 'number') {
52
- if (!Number.isFinite(value))
53
- throw invalid('Invalid typed data number');
54
- return value;
55
- }
56
- if (value instanceof Uint8Array)
57
- return `0x${Buffer.from(value).toString('hex')}`;
58
- if (typeof value !== 'object' || value === undefined)
59
- throw invalid('Invalid typed data value');
60
- if (seen.has(value))
61
- throw invalid('Circular typed data');
62
- const prototype = Object.getPrototypeOf(value);
63
- if (!Array.isArray(value) &&
64
- prototype !== Object.prototype &&
65
- prototype !== null)
66
- throw invalid('Invalid typed data object');
67
- seen.add(value);
68
- try {
69
- if (Array.isArray(value))
70
- return value.map((item) => copyTypedValue(item, seen, depth + 1));
71
- const result = Object.create(null);
72
- for (const key of Object.keys(value)) {
73
- const descriptor = Object.getOwnPropertyDescriptor(value, key);
74
- if (!('value' in descriptor))
75
- throw invalid('Typed data accessors are not supported');
76
- if (descriptor.value !== undefined)
77
- result[key] = copyTypedValue(descriptor.value, seen, depth + 1);
78
- }
79
- return result;
80
- }
81
- finally {
82
- seen.delete(value);
83
- }
84
- }
85
46
  function freezeDeep(value) {
86
47
  if (value && typeof value === 'object') {
87
48
  for (const child of Object.values(value))
@@ -205,6 +166,7 @@ export function createLedgerEvmAdapter(session, config = {}) {
205
166
  }, options);
206
167
  },
207
168
  async signPersonalMessage(request, options) {
169
+ const owner = captureHardwareTransactionAuthority(options);
208
170
  const path = accountPath(request.accountIndex);
209
171
  const address = expectedAddress(request.expectedAddress);
210
172
  const bytes = hexBytes(request.messageHex, 'personal message');
@@ -215,10 +177,12 @@ export function createLedgerEvmAdapter(session, config = {}) {
215
177
  // Strings in the DSK use ASCII encoding; pass the reviewed bytes directly.
216
178
  const output = await operation.runAction(() => signer.signMessage(path, bytes));
217
179
  operation.assertCurrent();
218
- return normalizeSignature(output, digest, address).signature.serialized;
219
- }, options);
180
+ return normalizeSignature(output, digest, address).signature
181
+ .serialized;
182
+ }, { ...options, ...owner });
220
183
  },
221
184
  async signTypedData(request, options) {
185
+ const owner = captureHardwareTransactionAuthority(options);
222
186
  if (!policy.confirmBlindSigning)
223
187
  throw unavailable();
224
188
  const path = accountPath(request.accountIndex);
@@ -227,7 +191,7 @@ export function createLedgerEvmAdapter(session, config = {}) {
227
191
  throw invalid('Ledger supports typed data V3 and V4 only');
228
192
  let data, digest;
229
193
  try {
230
- data = copyTypedValue(request.data);
194
+ data = captureHardwareSigningData(request.data, () => invalid('Invalid Ledger typed data'));
231
195
  digest = `0x${TypedDataUtils.eip712Hash(data, request.version).toString('hex')}`;
232
196
  }
233
197
  catch {
@@ -239,7 +203,7 @@ export function createLedgerEvmAdapter(session, config = {}) {
239
203
  derivationPath: path,
240
204
  expectedAddress: address,
241
205
  version: request.version,
242
- data: copyTypedValue(data),
206
+ data,
243
207
  digest,
244
208
  };
245
209
  return session.runExclusive(async (operation) => {
@@ -247,11 +211,12 @@ export function createLedgerEvmAdapter(session, config = {}) {
247
211
  await verifySigner(operation, signer, path, address);
248
212
  await approveBlindCapability(operation, policy, intent);
249
213
  // The DSK parser may add EIP712Domain; do not expose that mutation to callers or approval UI.
250
- const deviceData = copyTypedValue(data);
214
+ const deviceData = JSON.parse(JSON.stringify(data));
251
215
  const output = await operation.runAction(() => signer.signTypedData(path, deviceData));
252
216
  operation.assertCurrent();
253
- return normalizeSignature(output, digest, address).signature.serialized;
254
- }, options);
217
+ return normalizeSignature(output, digest, address).signature
218
+ .serialized;
219
+ }, { ...options, ...owner });
255
220
  },
256
221
  };
257
222
  }
@@ -1 +1 @@
1
- {"version":3,"file":"dmk-evm.js","sourceRoot":"","sources":["../../../src/ledger/dmk-evm.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dmk-evm.js","sourceRoot":"","sources":["../../../src/ledger/dmk-evm.ts"],"names":[],"mappings":"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"}
@@ -231,12 +231,15 @@ export function createLedgerUtxoAdapter(session) {
231
231
  const address = checkedReceivingAddress(xpub, approved, deviceAddress);
232
232
  return { fingerprint, xpub, address };
233
233
  }, options),
234
- signMessage: (request, options) => run(request, UserInteractionRequired.SignPersonalMessage, async (client, _operation, approved) => {
235
- publicKeyPayload(approved.accountXpub);
236
- await account(client, approved, approved.accountXpub);
237
- childIndex(approved.addressIndex ?? 0);
238
- return client.signMessage(Buffer.from(approved.message), getAddressDerivationPath(approved.currency, approved.slip44, approved.accountIndex, !!approved.change, approved.addressIndex ?? 0));
239
- }, options),
234
+ signMessage: (request, options) => {
235
+ const owner = captureHardwareTransactionAuthority(options);
236
+ return run(request, UserInteractionRequired.SignPersonalMessage, async (client, _operation, approved) => {
237
+ publicKeyPayload(approved.accountXpub);
238
+ await account(client, approved, approved.accountXpub);
239
+ childIndex(approved.addressIndex ?? 0);
240
+ return client.signMessage(Buffer.from(approved.message), getAddressDerivationPath(approved.currency, approved.slip44, approved.accountIndex, !!approved.change, approved.addressIndex ?? 0));
241
+ }, { ...options, ...owner });
242
+ },
240
243
  signPsbt: async (request, authority) => {
241
244
  const owner = captureHardwareTransactionAuthority(authority);
242
245
  const options = { ...owner, onProgress: authority.onProgress };
@@ -1 +1 @@
1
- {"version":3,"file":"dmk-utxo.js","sourceRoot":"","sources":["../../../src/ledger/dmk-utxo.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dmk-utxo.js","sourceRoot":"","sources":["../../../src/ledger/dmk-utxo.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { SignTypedDataVersion, TypedDataUtils } from '@metamask/eth-sig-util';
2
2
  import { computeAddress, getAddress, hashMessage, recoverAddress, Signature, Transaction, } from 'ethers';
3
+ import { captureHardwareSigningData } from '../hardware-signing-data';
3
4
  import { assertHardwareOperationCurrent, captureHardwareTransactionAuthority, } from '../hardware-transaction-authority';
4
5
  import { ConnectionStatus, HardwareWalletType } from '../hardware-wallet-types';
5
6
  import { ledgerCancelledError, ledgerHostError } from './host-types';
@@ -51,43 +52,6 @@ const checkedSignature = (value, digest, expected) => {
51
52
  throw invalidSignature();
52
53
  }
53
54
  };
54
- // Detach the approved typed data before connection or host code can await/mutate it.
55
- const copyTypedData = (value, seen = new WeakSet(), depth = 0) => {
56
- if (depth > 64)
57
- throw invalidRequest();
58
- if (value === null || typeof value === 'string' || typeof value === 'boolean')
59
- return value;
60
- if (typeof value === 'bigint')
61
- return value.toString();
62
- if (typeof value === 'number') {
63
- if (!Number.isFinite(value))
64
- throw invalidRequest();
65
- return value;
66
- }
67
- if (value instanceof Uint8Array)
68
- return `0x${Buffer.from(value).toString('hex')}`;
69
- if (!value || typeof value !== 'object' || seen.has(value))
70
- throw invalidRequest();
71
- const array = Array.isArray(value);
72
- const prototype = Object.getPrototypeOf(value);
73
- if (!array && prototype !== Object.prototype && prototype !== null)
74
- throw invalidRequest();
75
- seen.add(value);
76
- try {
77
- const result = array ? [] : Object.create(null);
78
- for (const key of Object.keys(value)) {
79
- const descriptor = Object.getOwnPropertyDescriptor(value, key);
80
- if (!('value' in descriptor))
81
- throw invalidRequest();
82
- if (descriptor.value !== undefined)
83
- result[key] = copyTypedData(descriptor.value, seen, depth + 1);
84
- }
85
- return Object.freeze(result);
86
- }
87
- finally {
88
- seen.delete(value);
89
- }
90
- };
91
55
  /** Small authority-side facade. Device SDKs belong exclusively in ledger-host. */
92
56
  export class LedgerKeyring {
93
57
  // Retain the first constructor position for existing shared-manager callers.
@@ -103,7 +67,8 @@ export class LedgerKeyring {
103
67
  slip44,
104
68
  checkOnDevice: true,
105
69
  }));
106
- this.signUtxoMessage = (request) => {
70
+ this.signUtxoMessage = (request, authority) => {
71
+ const owner = captureHardwareTransactionAuthority(authority);
107
72
  const approved = Object.freeze({
108
73
  currency: request.currency,
109
74
  slip44: request.slip44,
@@ -113,7 +78,7 @@ export class LedgerKeyring {
113
78
  change: request.change,
114
79
  accountXpub: request.accountXpub,
115
80
  });
116
- return this.run((host) => host.utxo.signMessage(approved));
81
+ return this.run((host, assertCurrent) => host.utxo.signMessage(approved, { ...owner, assertCurrent }), owner);
117
82
  };
118
83
  this.signPsbt = async (request, authority) => {
119
84
  const owner = captureHardwareTransactionAuthority(authority);
@@ -197,7 +162,8 @@ export class LedgerKeyring {
197
162
  throw error;
198
163
  }
199
164
  },
200
- signPersonalMessage: async (request) => {
165
+ signPersonalMessage: async (request, authority) => {
166
+ const owner = captureHardwareTransactionAuthority(authority);
201
167
  const expected = approvedAddress(request.expectedAddress);
202
168
  const messageHex = Buffer.from(hexBytes(request.message)).toString('hex');
203
169
  const digest = hashMessage(hexBytes(messageHex));
@@ -206,9 +172,17 @@ export class LedgerKeyring {
206
172
  expectedAddress: expected,
207
173
  messageHex,
208
174
  };
209
- return this.run(async (host) => checkedSignature(await host.evm.signPersonalMessage(approved), digest, expected).serialized);
175
+ return this.run(async (host, assertCurrent) => {
176
+ const result = await host.evm.signPersonalMessage(approved, {
177
+ ...owner,
178
+ assertCurrent,
179
+ });
180
+ assertCurrent();
181
+ return checkedSignature(result, digest, expected).serialized;
182
+ }, owner);
210
183
  },
211
- signTypedData: async (request) => {
184
+ signTypedData: async (request, authority) => {
185
+ const owner = captureHardwareTransactionAuthority(authority);
212
186
  const { version } = request;
213
187
  if (version !== SignTypedDataVersion.V3 &&
214
188
  version !== SignTypedDataVersion.V4)
@@ -217,7 +191,7 @@ export class LedgerKeyring {
217
191
  const index = accountIndex(request.accountIndex);
218
192
  let data, digest;
219
193
  try {
220
- data = copyTypedData(request.data);
194
+ data = captureHardwareSigningData(request.data, invalidRequest);
221
195
  digest = `0x${TypedDataUtils.eip712Hash(data, version).toString('hex')}`;
222
196
  }
223
197
  catch {
@@ -229,7 +203,14 @@ export class LedgerKeyring {
229
203
  data,
230
204
  version,
231
205
  };
232
- return this.run(async (host) => checkedSignature(await host.evm.signTypedData(approved), digest, expected).serialized);
206
+ return this.run(async (host, assertCurrent) => {
207
+ const result = await host.evm.signTypedData(approved, {
208
+ ...owner,
209
+ assertCurrent,
210
+ });
211
+ assertCurrent();
212
+ return checkedSignature(result, digest, expected).serialized;
213
+ }, owner);
233
214
  },
234
215
  };
235
216
  this.utxo = {
@@ -253,18 +234,27 @@ export class LedgerKeyring {
253
234
  async run(operation, options) {
254
235
  const generation = this.generation;
255
236
  const host = this.requireHost();
256
- hostActivity.set(host, (hostActivity.get(host) ?? 0) + 1);
257
- // A visible platform host owns discovery, permission and device selection.
258
- if (!host.getStatus().connected) {
259
- const request = { useGrantedDevices: true };
260
- await (options ? host.connect(request, options) : host.connect(request));
261
- }
262
237
  const assertCurrent = () => {
263
- if (generation !== this.generation)
238
+ if (generation !== this.generation || options?.signal?.aborted)
239
+ throw ledgerCancelledError();
240
+ if (options?.assertCurrent)
241
+ assertHardwareOperationCurrent(options.assertCurrent);
242
+ if (generation !== this.generation || options?.signal?.aborted)
264
243
  throw ledgerCancelledError();
265
244
  };
266
245
  assertCurrent();
246
+ hostActivity.set(host, (hostActivity.get(host) ?? 0) + 1);
267
247
  try {
248
+ // A visible platform host owns discovery, permission and device selection.
249
+ if (!host.getStatus().connected) {
250
+ assertCurrent();
251
+ const request = { useGrantedDevices: true };
252
+ await (options
253
+ ? host.connect(request, { ...options, assertCurrent })
254
+ : host.connect(request));
255
+ assertCurrent();
256
+ }
257
+ assertCurrent();
268
258
  const result = await operation(host, assertCurrent);
269
259
  assertCurrent();
270
260
  return result;