@lifi/perps-sdk 0.0.0-preview-2ac7198 → 0.0.0-preview-9c62621

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 (99) hide show
  1. package/README.md +69 -3
  2. package/dist/cjs/client/PerpsClient.d.ts +5 -5
  3. package/dist/cjs/client/PerpsClient.d.ts.map +1 -1
  4. package/dist/cjs/client/PerpsClient.js +105 -88
  5. package/dist/cjs/client/PerpsClient.js.map +1 -1
  6. package/dist/cjs/errors/PerpsExecutionError.d.ts +9 -0
  7. package/dist/cjs/errors/PerpsExecutionError.d.ts.map +1 -0
  8. package/dist/cjs/errors/PerpsExecutionError.js +29 -0
  9. package/dist/cjs/errors/PerpsExecutionError.js.map +1 -0
  10. package/dist/cjs/index.d.ts +6 -4
  11. package/dist/cjs/index.d.ts.map +1 -1
  12. package/dist/cjs/index.js +16 -12
  13. package/dist/cjs/index.js.map +1 -1
  14. package/dist/cjs/math/fills.d.ts +0 -1
  15. package/dist/cjs/math/fills.d.ts.map +1 -1
  16. package/dist/cjs/math/fills.js +0 -18
  17. package/dist/cjs/math/fills.js.map +1 -1
  18. package/dist/cjs/math/order.d.ts +5 -5
  19. package/dist/cjs/math/order.d.ts.map +1 -1
  20. package/dist/cjs/math/order.js +10 -10
  21. package/dist/cjs/math/order.js.map +1 -1
  22. package/dist/cjs/math/position.d.ts +2 -2
  23. package/dist/cjs/math/position.d.ts.map +1 -1
  24. package/dist/cjs/math/position.js +5 -5
  25. package/dist/cjs/math/position.js.map +1 -1
  26. package/dist/cjs/types/api.d.ts +1 -10
  27. package/dist/cjs/types/api.d.ts.map +1 -1
  28. package/dist/cjs/types/provider.d.ts +5 -1
  29. package/dist/cjs/types/provider.d.ts.map +1 -1
  30. package/dist/cjs/utils/actionResult.d.ts +3 -0
  31. package/dist/cjs/utils/actionResult.d.ts.map +1 -0
  32. package/dist/cjs/utils/actionResult.js +9 -0
  33. package/dist/cjs/utils/actionResult.js.map +1 -0
  34. package/dist/cjs/version.d.ts +1 -1
  35. package/dist/cjs/version.js +1 -1
  36. package/dist/esm/client/PerpsClient.d.ts +71 -50
  37. package/dist/esm/client/PerpsClient.d.ts.map +1 -1
  38. package/dist/esm/client/PerpsClient.js +174 -144
  39. package/dist/esm/client/PerpsClient.js.map +1 -1
  40. package/dist/esm/errors/PerpsExecutionError.d.ts +24 -0
  41. package/dist/esm/errors/PerpsExecutionError.d.ts.map +1 -0
  42. package/dist/esm/errors/PerpsExecutionError.js +39 -0
  43. package/dist/esm/errors/PerpsExecutionError.js.map +1 -0
  44. package/dist/esm/index.d.ts +6 -4
  45. package/dist/esm/index.d.ts.map +1 -1
  46. package/dist/esm/index.js +5 -3
  47. package/dist/esm/index.js.map +1 -1
  48. package/dist/esm/math/fills.d.ts +0 -9
  49. package/dist/esm/math/fills.d.ts.map +1 -1
  50. package/dist/esm/math/fills.js +0 -25
  51. package/dist/esm/math/fills.js.map +1 -1
  52. package/dist/esm/math/order.d.ts +6 -6
  53. package/dist/esm/math/order.d.ts.map +1 -1
  54. package/dist/esm/math/order.js +6 -6
  55. package/dist/esm/math/order.js.map +1 -1
  56. package/dist/esm/math/position.d.ts +2 -2
  57. package/dist/esm/math/position.d.ts.map +1 -1
  58. package/dist/esm/math/position.js +3 -3
  59. package/dist/esm/math/position.js.map +1 -1
  60. package/dist/esm/types/api.d.ts +1 -18
  61. package/dist/esm/types/api.d.ts.map +1 -1
  62. package/dist/esm/types/provider.d.ts +21 -4
  63. package/dist/esm/types/provider.d.ts.map +1 -1
  64. package/dist/esm/utils/actionResult.d.ts +4 -0
  65. package/dist/esm/utils/actionResult.d.ts.map +1 -0
  66. package/dist/esm/utils/actionResult.js +7 -0
  67. package/dist/esm/utils/actionResult.js.map +1 -0
  68. package/dist/esm/version.d.ts +1 -1
  69. package/dist/esm/version.js +1 -1
  70. package/dist/types/client/PerpsClient.d.ts +71 -50
  71. package/dist/types/client/PerpsClient.d.ts.map +1 -1
  72. package/dist/types/errors/PerpsExecutionError.d.ts +24 -0
  73. package/dist/types/errors/PerpsExecutionError.d.ts.map +1 -0
  74. package/dist/types/index.d.ts +6 -4
  75. package/dist/types/index.d.ts.map +1 -1
  76. package/dist/types/math/fills.d.ts +0 -9
  77. package/dist/types/math/fills.d.ts.map +1 -1
  78. package/dist/types/math/order.d.ts +6 -6
  79. package/dist/types/math/order.d.ts.map +1 -1
  80. package/dist/types/math/position.d.ts +2 -2
  81. package/dist/types/math/position.d.ts.map +1 -1
  82. package/dist/types/types/api.d.ts +1 -18
  83. package/dist/types/types/api.d.ts.map +1 -1
  84. package/dist/types/types/provider.d.ts +21 -4
  85. package/dist/types/types/provider.d.ts.map +1 -1
  86. package/dist/types/utils/actionResult.d.ts +4 -0
  87. package/dist/types/utils/actionResult.d.ts.map +1 -0
  88. package/dist/types/version.d.ts +1 -1
  89. package/package.json +2 -2
  90. package/src/client/PerpsClient.ts +222 -188
  91. package/src/errors/PerpsExecutionError.ts +54 -0
  92. package/src/index.ts +13 -8
  93. package/src/math/fills.ts +0 -29
  94. package/src/math/order.ts +11 -11
  95. package/src/math/position.ts +3 -3
  96. package/src/types/api.ts +0 -21
  97. package/src/types/provider.ts +22 -4
  98. package/src/utils/actionResult.ts +10 -0
  99. package/src/version.ts +1 -1
@@ -2,6 +2,7 @@ import { ActionRelay, ActionType, META_PROVIDER, PerpsErrorCode, PerpsSigner, Si
2
2
  import { isDecimalStringGreaterThan } from '../decimal/compare.js';
3
3
  import { unknownToDecimalString } from '../decimal/parse.js';
4
4
  import { PerpsError } from '../errors/PerpsError.js';
5
+ import { rethrowWithKnownResults } from '../errors/PerpsExecutionError.js';
5
6
  import { getAssetRegistry, toAssetDisplay } from '../registry/assetRegistry.js';
6
7
  import { getMarketRegistry } from '../registry/marketRegistry.js';
7
8
  import { createAction } from '../services/createAction.js';
@@ -10,6 +11,7 @@ import { getAccount as fetchAccount } from '../services/getAccount.js';
10
11
  import { getOrder as fetchOrder, } from '../services/getOrder.js';
11
12
  import { getOrders as fetchOrders, } from '../services/getOrders.js';
12
13
  import { getProviders } from '../services/getProviders.js';
14
+ import { isSubmittedOrAccepted } from '../utils/actionResult.js';
13
15
  import { isUserFacingSetupStep } from '../utils/setupActions.js';
14
16
  import { signTypedDataWithSigner } from '../utils/signTypedData.js';
15
17
  import { eip712DomainChainId, switchSigningChain, userEip712TargetChainId, } from '../utils/switchChain.js';
@@ -92,13 +94,6 @@ function currentChoiceValue(descriptor, settings) {
92
94
  ?.values.find((v) => names.has(v.name))?.value ?? null;
93
95
  return value === null ? null : String(value);
94
96
  }
95
- /** Throw the first per-action failure a 200 OK `/executeAction` carried. */
96
- function assertAllSucceeded(results) {
97
- const failure = results.find((r) => !r.success);
98
- if (failure) {
99
- throw new PerpsError(failure.errorCode ?? PerpsErrorCode.ExchangeRejected, failure.error);
100
- }
101
- }
102
97
  function isNonNegativeDecimal(value) {
103
98
  try {
104
99
  return !isDecimalStringGreaterThan('0', unknownToDecimalString(value, 'withdrawalFee', 'perps-sdk'));
@@ -107,6 +102,18 @@ function isNonNegativeDecimal(value) {
107
102
  return false;
108
103
  }
109
104
  }
105
+ /** @throws {PerpsError} When `asset.minWithdrawalAmount` is not a decimal. */
106
+ function minWithdrawalAmountOf(asset) {
107
+ if (asset.minWithdrawalAmount === undefined) {
108
+ return undefined;
109
+ }
110
+ try {
111
+ return unknownToDecimalString(asset.minWithdrawalAmount, 'minWithdrawalAmount', 'perps-sdk');
112
+ }
113
+ catch {
114
+ throw new PerpsError(PerpsErrorCode.SDKError, `Asset '${asset.id}' field \`minWithdrawalAmount\` is not a valid decimal.`);
115
+ }
116
+ }
110
117
  /**
111
118
  * Look up an action's descriptor in the provider's metadata. Throws if the
112
119
  * action isn't declared — defensive: better to fail loudly than to mis-sign.
@@ -263,27 +270,81 @@ export class PerpsClient {
263
270
  * step with the signer its own descriptor declares; the signed steps come
264
271
  * back in the batch's original order. The plugin owns every signing arm and
265
272
  * branches on `signer` internally, reading the end-user's wallet from the
266
- * {@link SignActionsContext} when an arm signs as the user.
273
+ * {@link SignActionsContext} when an arm signs as the user. Signing stops
274
+ * after the first group that executed a step without an acknowledgement.
267
275
  *
268
276
  * @throws {PerpsError} When a step's action is not declared by the provider,
269
277
  * or the plugin implements no `signActions`.
278
+ * @throws {PerpsExecutionError} When a group throws after an earlier group
279
+ * executed steps.
270
280
  */
271
281
  async delegateSignActions(provider, address, metadata, actions, onProgress) {
272
282
  const plugin = this.requireProvider(provider);
273
- if (typeof plugin.signActions !== 'function') {
283
+ const signActions = plugin.signActions?.bind(plugin);
284
+ if (signActions === undefined) {
274
285
  throw new PerpsError(PerpsErrorCode.SDKError, `Provider '${provider}' does not implement signActions.`);
275
286
  }
276
287
  const signed = [];
288
+ const executed = [];
277
289
  for (const group of groupStepsByDescriptor(metadata, actions)) {
278
- const userWallet = await this.resolveSigningWallet(group.descriptor, group.steps);
279
- signed.push(...(await plugin.signActions(group.descriptor.signingMethod, group.steps, address, this.buildSignActionsContext(group.descriptor, userWallet, onProgress))));
290
+ try {
291
+ const userWallet = await this.resolveSigningWallet(group.descriptor, group.steps);
292
+ const result = await signActions(group.descriptor.signingMethod, group.steps, address, this.buildSignActionsContext(group.descriptor, userWallet, onProgress));
293
+ signed.push(...result.signed);
294
+ executed.push(...result.executed);
295
+ }
296
+ catch (error) {
297
+ rethrowWithKnownResults(executed, error);
298
+ }
299
+ if (!executed.every(isSubmittedOrAccepted)) {
300
+ break;
301
+ }
280
302
  }
281
- return signed;
303
+ return { signed, executed };
282
304
  }
283
305
  /**
284
- * Let the plugin observe `/executeAction` per-step results before the core
285
- * surfaces failures — e.g. to evict a locally stored credential the venue
286
- * rejected.
306
+ * Submit `signed` to `/executeAction` when every step the plugin executed
307
+ * while signing was acknowledged, then resolve explorer links and notify the
308
+ * plugin. Resolves to the full report: `executed`, then the `/executeAction`
309
+ * results. An empty report means nothing executed.
310
+ *
311
+ * @throws {PerpsExecutionError} When the submission or the plugin callback
312
+ * throws after a result is known.
313
+ */
314
+ async submitSignedActions(provider, address, action, signerAddress, { signed, executed }) {
315
+ let results = executed;
316
+ if (signed.length > 0 && executed.every(isSubmittedOrAccepted)) {
317
+ try {
318
+ const response = await executeAction(this.sdkClient, {
319
+ provider,
320
+ address,
321
+ // The submitting account: the plugin-resolved signer (Hyperliquid's
322
+ // agent) when present, else the end-user's address.
323
+ signerAddress: signerAddress ?? address,
324
+ action,
325
+ actions: signed,
326
+ });
327
+ results = [...executed, ...response.results];
328
+ }
329
+ catch (error) {
330
+ rethrowWithKnownResults(executed, error);
331
+ }
332
+ }
333
+ if (results.length === 0) {
334
+ return results;
335
+ }
336
+ try {
337
+ results = this.resolveExplorerLinks(provider, results);
338
+ await this.notifyExecuteResults(provider, address, results);
339
+ }
340
+ catch (error) {
341
+ rethrowWithKnownResults(results, error);
342
+ }
343
+ return results;
344
+ }
345
+ /**
346
+ * Let the plugin observe an execution report before the core returns it —
347
+ * e.g. to evict a locally stored credential the venue refused.
287
348
  */
288
349
  async notifyExecuteResults(provider, address, results) {
289
350
  const plugin = this.requireProvider(provider);
@@ -292,9 +353,10 @@ export class PerpsClient {
292
353
  }
293
354
  }
294
355
  /**
295
- * Attach a provider-built explorer URL to every result the backend returned a
296
- * venue `txHash` on. The provider owns its explorer target, so core only asks
297
- * — a plugin without the hook leaves results untouched.
356
+ * Attach a provider-built explorer URL to every result that carries a venue
357
+ * `txHash`, whatever its status: an unacknowledged hash is what the user
358
+ * inspects. The provider owns its explorer target, so core only asks — a
359
+ * plugin without the hook leaves results untouched.
298
360
  */
299
361
  resolveExplorerLinks(provider, results) {
300
362
  const plugin = this.requireProvider(provider);
@@ -303,7 +365,7 @@ export class PerpsClient {
303
365
  return results;
304
366
  }
305
367
  return results.map((result) => {
306
- if (!result.success || result.txHash === undefined) {
368
+ if (result.txHash === undefined) {
307
369
  return result;
308
370
  }
309
371
  const explorerLink = resolveLink(result.txHash);
@@ -377,21 +439,29 @@ export class PerpsClient {
377
439
  return ctx;
378
440
  }
379
441
  /**
380
- * Sign a single provider setup action step by delegating to the provider
381
- * plugin, which branches on the step's signing scheme internally. Lets
382
- * consumers collect signed setup actions without embedding per-method
383
- * signing logic.
384
- *
385
- * Returns `undefined` when the plugin executed the action entirely
386
- * client-side (e.g. Lighter's token-authenticated venue mutations), leaving
387
- * no backend-bound step to submit.
442
+ * Sign one provider setup step through the provider plugin and submit it.
443
+ * A step the plugin executed client-side (e.g. Lighter's token-authenticated
444
+ * venue mutations) reports the plugin's own result instead of an
445
+ * `/executeAction` result.
388
446
  *
389
- * @throws {PerpsError} When the step's action is not declared by the provider.
447
+ * @throws {PerpsError} When the step's action is not declared by the provider,
448
+ * or signing or submission fails before any result is known.
449
+ * @throws {PerpsExecutionError} When a later stage fails after a result is
450
+ * known.
390
451
  */
391
- async signProviderSetupAction(provider, address, step) {
452
+ async runProviderSetupStep(provider, address, step) {
392
453
  const metadata = await this.getProviderMetadata(provider);
393
- const [signed] = await this.delegateSignActions(provider, address, metadata, [step]);
394
- return signed;
454
+ const descriptor = findActionDescriptor(metadata, step.action);
455
+ const signResult = await this.delegateSignActions(provider, address, metadata, [step]);
456
+ let signerAddress;
457
+ try {
458
+ const request = await this.resolveActionRequest(provider, descriptor, address);
459
+ signerAddress = request.signerAddress;
460
+ }
461
+ catch (error) {
462
+ rethrowWithKnownResults(signResult.executed, error);
463
+ }
464
+ return this.submitSignedActions(provider, address, step.action, signerAddress, signResult);
395
465
  }
396
466
  /**
397
467
  * Build (but do not sign or submit) the unsigned action steps for `action`,
@@ -587,18 +657,10 @@ export class PerpsClient {
587
657
  if (asset === undefined) {
588
658
  return [];
589
659
  }
590
- const minimum = asset.minWithdrawalAmount;
591
- if (minimum !== undefined) {
592
- let floor;
593
- try {
594
- floor = unknownToDecimalString(minimum, 'minWithdrawalAmount', 'perps-sdk');
595
- }
596
- catch {
597
- throw new PerpsError(PerpsErrorCode.SDKError, `Asset '${asset.id}' field \`minWithdrawalAmount\` is not a valid decimal.`);
598
- }
599
- if (isDecimalStringGreaterThan(floor, row.available)) {
600
- return [];
601
- }
660
+ const minimum = minWithdrawalAmountOf(asset);
661
+ if (minimum !== undefined &&
662
+ isDecimalStringGreaterThan(minimum, row.available)) {
663
+ return [];
602
664
  }
603
665
  if (row.withdrawalFee === undefined) {
604
666
  return [
@@ -630,17 +692,37 @@ export class PerpsClient {
630
692
  /**
631
693
  * The withdrawal types `params.address` can choose per holding at
632
694
  * `params.provider`, each with its cap and the `withdrawalOptions` to pass
633
- * unchanged in `WithdrawalParams`.
695
+ * unchanged in `WithdrawalParams`. Every option whose `max` is below the
696
+ * source asset's core `/assets` `minWithdrawalAmount` is removed, since no
697
+ * amount can satisfy both limits; a source asset the provider's registry
698
+ * does not carry keeps its options.
634
699
  *
635
700
  * @returns `undefined` when the registered plugin declares no withdrawal
636
701
  * types read.
637
- * @throws {PerpsError} When the provider plugin is not registered, or when
638
- * the plugin read fails.
702
+ * @throws {PerpsError} When the provider plugin is not registered, when
703
+ * either the plugin read or the asset sync fails, or when a source asset's
704
+ * `minWithdrawalAmount` is not a decimal.
639
705
  * @public
640
706
  */
641
707
  async getWithdrawalTypes(params, options) {
642
708
  const plugin = this.requireProvider(params.provider);
643
- return plugin.getWithdrawalTypes?.({ address: params.address }, options);
709
+ const sources = await plugin.getWithdrawalTypes?.({ address: params.address }, options);
710
+ if (sources === undefined) {
711
+ return undefined;
712
+ }
713
+ const registry = getAssetRegistry(this.sdkClient, params.provider);
714
+ await registry.sync();
715
+ return sources.map((row) => {
716
+ const asset = registry.get(row.source.asset.id);
717
+ const minimum = asset === undefined ? undefined : minWithdrawalAmountOf(asset);
718
+ if (minimum === undefined) {
719
+ return row;
720
+ }
721
+ return {
722
+ ...row,
723
+ options: row.options.filter((option) => !isDecimalStringGreaterThan(minimum, option.max)),
724
+ };
725
+ });
644
726
  }
645
727
  /**
646
728
  * The account's portfolio value and cumulative PnL over `params.range` at
@@ -749,9 +831,9 @@ export class PerpsClient {
749
831
  * deferred while any staged user-facing step with a lower `sequence` is
750
832
  * outstanding — it cannot succeed before its prerequisite (e.g. SET_REFERRAL
751
833
  * authenticates with the credential REGISTER_API_KEY installs) and each
752
- * doomed attempt is venue traffic. A drain failure is swallowed so it never
753
- * blocks setup — the step stays unsatisfied and is retried on a later
754
- * `checkSetup`.
834
+ * doomed attempt is venue traffic. A drain failure, thrown or reported, is
835
+ * swallowed so it never blocks setup — the step stays unsatisfied and is
836
+ * retried on a later `checkSetup`.
755
837
  */
756
838
  async drainSetup(provider, address, drainable, stagedVisible) {
757
839
  for (const descriptor of drainable) {
@@ -766,14 +848,11 @@ export class PerpsClient {
766
848
  descriptor,
767
849
  ]);
768
850
  for (const step of steps) {
769
- const signed = await this.signProviderSetupAction(provider, address, step);
770
- if (signed !== undefined) {
771
- await this.executeProviderSetup({
772
- provider,
773
- address,
774
- setup: [step],
775
- signedActions: [signed],
776
- });
851
+ const results = await this.runProviderSetupStep(provider, address, step);
852
+ const failure = results.find((result) => !isSubmittedOrAccepted(result));
853
+ if (failure !== undefined) {
854
+ console.debug(`[perps-sdk] setup step '${descriptor.type}' for '${provider}' reported '${failure.status}'; will retry on the next checkSetup.`, failure);
855
+ break;
777
856
  }
778
857
  }
779
858
  }
@@ -829,35 +908,6 @@ export class PerpsClient {
829
908
  const actions = await this.buildProviderSetupActions(provider, address, metadata.setup.filter(isStageable));
830
909
  return { actions };
831
910
  }
832
- /**
833
- * Submit the signed setup steps returned by `checkSetup` (and signed by the
834
- * caller / `signProviderSetupAction`). Routes the batch on the first step's
835
- * action and lets the plugin contribute that action's `signerAddress`.
836
- * Throws on any per-step venue rejection.
837
- */
838
- async executeProviderSetup(params) {
839
- const { provider, address, setup, signedActions } = params;
840
- if (signedActions.length === 0) {
841
- return { results: { results: [] } };
842
- }
843
- const action = setup[0]?.action ?? signedActions[0].action;
844
- const metadata = await this.getProviderMetadata(provider);
845
- const descriptor = findActionDescriptor(metadata, action);
846
- const { signerAddress } = await this.resolveActionRequest(provider, descriptor, address);
847
- const response = await executeAction(this.sdkClient, {
848
- provider,
849
- address,
850
- // The submitting account: the plugin-resolved signer (Hyperliquid's
851
- // agent) when present, else the end-user's address.
852
- signerAddress: signerAddress ?? address,
853
- action,
854
- actions: signedActions,
855
- });
856
- const results = this.resolveExplorerLinks(provider, response.results);
857
- await this.notifyExecuteResults(provider, address, results);
858
- assertAllSucceeded(results);
859
- return { results: { results } };
860
- }
861
911
  /**
862
912
  * Sign and submit one pre-staged setup `ActionStep` end-to-end.
863
913
  *
@@ -866,9 +916,15 @@ export class PerpsClient {
866
916
  * prerequisites against that same snapshot, without another `createAction`
867
917
  * round-trip.
868
918
  *
919
+ * Resolves to the execution report. A `Failed` or `Indeterminate` action is
920
+ * a result in the report, not an exception.
921
+ *
869
922
  * @throws {PerpsError} When the step's action is not in the provider's
870
- * `setup` descriptors, or when a lower-`sequence` step on the same
871
- * checklist, a choice included, is still unsatisfied.
923
+ * `setup` descriptors, when a lower-`sequence` step on the same
924
+ * checklist, a choice included, is still unsatisfied, or when signing or
925
+ * submission fails before any result is known.
926
+ * @throws {PerpsExecutionError} When a later stage fails after a result is
927
+ * known; its `response` holds the known results.
872
928
  * @public
873
929
  */
874
930
  async executeProviderSetupAction(params) {
@@ -882,54 +938,41 @@ export class PerpsClient {
882
938
  if (blockingStep) {
883
939
  throw new PerpsError(PerpsErrorCode.SDKError, `Setup step '${step.action}' for '${provider}' is blocked: '${blockingStep.descriptor.type}' runs first and is not satisfied.`);
884
940
  }
885
- const signed = await this.signProviderSetupAction(provider, address, step);
886
- // A client-executed setup action (Lighter SET_REFERRAL) produces no
887
- // backend-bound step — it already ran during signing, so there is nothing
888
- // to submit.
889
- if (signed === undefined) {
890
- return;
891
- }
892
- await this.executeProviderSetup({
893
- provider,
894
- address,
895
- setup: [step],
896
- signedActions: [signed],
897
- });
941
+ return {
942
+ results: await this.runProviderSetupStep(provider, address, step),
943
+ };
898
944
  }
899
945
  /**
900
946
  * Execute one option of a choice setup step (Lighter `ACCOUNT_TYPE`,
901
947
  * Hyperliquid `ACCOUNT_MODE`) end-to-end with its bound `{ type, params }`,
902
- * throwing on a venue rejection.
948
+ * through the same {@link execute} pipeline as a trade.
903
949
  *
904
- * The option runs through the same {@link execute} pipeline as a trade, but
905
- * a per-action `success: false` (returned as a 200 OK) means the user's
906
- * selection was rejected and must surface, not be silently dropped.
950
+ * Resolves to the execution report. Read each result's `status`: a `Failed`
951
+ * or `Indeterminate` selection is a result, not an exception. `Submitted` and
952
+ * `Accepted` mean the selection took effect.
907
953
  *
908
- * @throws {PerpsError} Carrying the venue error when any returned result has
909
- * `success: false`, under that result's `errorCode` when the backend
910
- * classified the failure and `PerpsErrorCode.ExchangeRejected` otherwise;
911
- * also the errors `execute` itself can throw (unregistered provider, no
912
- * signer, signing failure).
954
+ * @throws {PerpsError} The errors {@link execute} throws.
913
955
  * @public
914
956
  */
915
957
  async executeProviderOption(params) {
916
958
  const { provider, address, option } = params;
917
- const { results } = await this.execute({
959
+ return this.execute({
918
960
  provider,
919
961
  address,
920
962
  action: option.type,
921
963
  params: option.params,
922
964
  });
923
- assertAllSucceeded(results);
924
965
  }
925
966
  /**
926
967
  * Undo a satisfied setup step by executing its `revoke` action through
927
968
  * create, sign and execute, signed with that action's `Provider.actions`
928
969
  * descriptor. The step stages again on the next {@link checkSetup}.
929
970
  *
971
+ * Resolves to the execution report.
972
+ *
930
973
  * @throws {PerpsError} `SDKError` when `step.revoke` is `null` or when
931
974
  * `createAction` stages nothing to revoke; otherwise the errors
932
- * {@link executeProviderOption} throws.
975
+ * {@link execute} throws.
933
976
  * @public
934
977
  */
935
978
  async executeProviderRevoke(params) {
@@ -946,7 +989,7 @@ export class PerpsClient {
946
989
  if (staged.length === 0) {
947
990
  throw new PerpsError(PerpsErrorCode.SDKError, `Nothing to revoke for setup step '${step.type}' on '${provider}'.`);
948
991
  }
949
- assertAllSucceeded(results);
992
+ return { results };
950
993
  }
951
994
  /**
952
995
  * Place a market or limit order. Convenience wrapper over {@link execute}
@@ -1086,8 +1129,15 @@ export class PerpsClient {
1086
1129
  * descriptor's scheme and signer internally), and submit. Core stays
1087
1130
  * signer-agnostic — the plugin owns WHO signs and HOW.
1088
1131
  *
1132
+ * Resolves to the execution report: one result per executed step, in
1133
+ * execution order, each with its own `status`. An empty report means
1134
+ * nothing executed.
1135
+ *
1089
1136
  * @throws {PerpsError} When the action is not declared by the provider,
1090
- * the plugin cannot sign it, or submission fails.
1137
+ * the plugin cannot sign it, or submission fails before any result is
1138
+ * known.
1139
+ * @throws {PerpsExecutionError} When a later stage fails after a result is
1140
+ * known; its `response` holds the known results.
1091
1141
  * @public
1092
1142
  */
1093
1143
  async execute(params) {
@@ -1110,24 +1160,8 @@ export class PerpsClient {
1110
1160
  ...signerParams,
1111
1161
  },
1112
1162
  });
1113
- const signedActions = await this.delegateSignActions(provider, address, metadata, actions, onProgress);
1114
- // A plugin may execute an action entirely client-side (e.g. Lighter's
1115
- // token-authenticated venue mutations), leaving no backend-bound step. With
1116
- // nothing to submit, skip the `/executeAction` hop.
1117
- if (signedActions.length === 0) {
1118
- return { staged: actions, results: [] };
1119
- }
1120
- const response = await executeAction(this.sdkClient, {
1121
- provider,
1122
- address,
1123
- // The submitting account: the plugin-resolved signer (Hyperliquid's
1124
- // agent) when present, else the end-user's address.
1125
- signerAddress: signerAddress ?? address,
1126
- action,
1127
- actions: signedActions,
1128
- });
1129
- const results = this.resolveExplorerLinks(provider, response.results);
1130
- await this.notifyExecuteResults(provider, address, results);
1163
+ const signResult = await this.delegateSignActions(provider, address, metadata, actions, onProgress);
1164
+ const results = await this.submitSignedActions(provider, address, action, signerAddress, signResult);
1131
1165
  return { staged: actions, results };
1132
1166
  }
1133
1167
  /**
@@ -1176,12 +1210,13 @@ export class PerpsClient {
1176
1210
  * typed data with the configured user wallet.
1177
1211
  *
1178
1212
  * The backend returns at most one step. Resolves to `{ results: [] }` when it
1179
- * returns none, meaning no consent is outstanding for this address.
1213
+ * returns none, meaning no consent is outstanding for this address. Else it
1214
+ * resolves to the backend's execution report; read each result's `status`.
1180
1215
  *
1181
1216
  * @throws {PerpsError} When no user wallet is configured, the backend returns
1182
- * more than one step or a non-EIP-712 step, or the submitted step reports a
1183
- * failed result. A signature refusal from the wallet client propagates as
1184
- * the wallet's own error.
1217
+ * more than one step or a non-EIP-712 step, or the submission fails. A
1218
+ * signature refusal from the wallet client propagates as the wallet's own
1219
+ * error.
1185
1220
  * @public
1186
1221
  */
1187
1222
  async executeMetaAction(params) {
@@ -1204,17 +1239,12 @@ export class PerpsClient {
1204
1239
  }
1205
1240
  const wallet = await this.resolveMetaSigningWallet(actions);
1206
1241
  const signature = await signTypedDataWithSigner(wallet, step.typedData);
1207
- const response = await executeAction(this.sdkClient, {
1242
+ return executeAction(this.sdkClient, {
1208
1243
  provider: META_PROVIDER,
1209
1244
  address,
1210
1245
  action,
1211
1246
  actions: [{ ...step, signature }],
1212
1247
  });
1213
- const failure = response.results.find((r) => !r.success);
1214
- if (failure) {
1215
- throw new PerpsError(failure.errorCode ?? PerpsErrorCode.ExchangeRejected, failure.error);
1216
- }
1217
- return response;
1218
1248
  }
1219
1249
  }
1220
1250
  //# sourceMappingURL=PerpsClient.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PerpsClient.js","sourceRoot":"","sources":["../../../src/client/PerpsClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PerpsClient.js","sourceRoot":"","sources":["../../../src/client/PerpsClient.ts"],"names":[],"mappings":"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"}