mppx 0.6.22 → 0.6.23
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/CHANGELOG.md +6 -0
- package/dist/tempo/server/Subscription.d.ts +7 -0
- package/dist/tempo/server/Subscription.d.ts.map +1 -1
- package/dist/tempo/server/Subscription.js +47 -6
- package/dist/tempo/server/Subscription.js.map +1 -1
- package/package.json +1 -1
- package/src/tempo/server/Subscription.ts +62 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
# mppx
|
|
2
2
|
|
|
3
|
+
## 0.6.23
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- c370c93: Added fee payer support and an optional `feePayerPolicy` parameter to `tempo.subscription` so activation and renewal payments can be sponsored without consuming the access key's spending limit.
|
|
8
|
+
|
|
3
9
|
## 0.6.22
|
|
4
10
|
|
|
5
11
|
### Patch Changes
|
|
@@ -4,6 +4,7 @@ import * as Method from '../../Method.js';
|
|
|
4
4
|
import * as Store from '../../Store.js';
|
|
5
5
|
import type * as Client from '../../viem/Client.js';
|
|
6
6
|
import * as Account from '../internal/account.js';
|
|
7
|
+
import * as FeePayer from '../internal/fee-payer.js';
|
|
7
8
|
import type * as types from '../internal/types.js';
|
|
8
9
|
import * as Methods from '../Methods.js';
|
|
9
10
|
import type { SubscriptionAccessKey, SubscriptionCredentialPayload, SubscriptionLookup, SubscriptionPeriodUnit, SubscriptionRecord, SubscriptionReceipt as SubscriptionReceiptValue } from '../subscription/Types.js';
|
|
@@ -164,6 +165,12 @@ export declare namespace subscription {
|
|
|
164
165
|
* Keeps concurrent renewal safe while allowing recovery from abandoned attempts.
|
|
165
166
|
*/
|
|
166
167
|
renewalTimeoutMs?: number | undefined;
|
|
168
|
+
/**
|
|
169
|
+
* Override the fee-payer policy for sponsored subscription payments.
|
|
170
|
+
* Useful when the access key + key authorization tx requires more gas
|
|
171
|
+
* than the default policy allows.
|
|
172
|
+
*/
|
|
173
|
+
feePayerPolicy?: Partial<FeePayer.Policy> | undefined;
|
|
167
174
|
activate?: ((parameters: {
|
|
168
175
|
/** Custom activation must verify this access key matches the resolved subscription. */
|
|
169
176
|
accessKey: SubscriptionAccessKey;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Subscription.d.ts","sourceRoot":"","sources":["../../../src/tempo/server/Subscription.ts"],"names":[],"mappings":"AAEA,OAAO,EAAsC,KAAK,OAAO,EAA6B,MAAM,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"Subscription.d.ts","sourceRoot":"","sources":["../../../src/tempo/server/Subscription.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Base64 } from 'ox';
|
|
2
2
|
import { KeyAuthorization } from 'ox/tempo';
|
|
3
3
|
import { encodeFunctionData, isAddressEqual } from 'viem';
|
|
4
|
-
import { call as viem_call, sendRawTransaction, sendRawTransactionSync, signTransaction, } from 'viem/actions';
|
|
4
|
+
import { call as viem_call, prepareTransactionRequest, sendRawTransaction, sendRawTransactionSync, signTransaction, } from 'viem/actions';
|
|
5
5
|
import { tempo as tempo_chain } from 'viem/chains';
|
|
6
6
|
import { Abis, Account as TempoAccount, Transaction } from 'viem/tempo';
|
|
7
7
|
import { VerificationFailedError } from '../../Errors.js';
|
|
@@ -11,6 +11,7 @@ import * as ClientResolver from '../../viem/Client.js';
|
|
|
11
11
|
import * as Attribution from '../Attribution.js';
|
|
12
12
|
import * as Account from '../internal/account.js';
|
|
13
13
|
import * as defaults from '../internal/defaults.js';
|
|
14
|
+
import * as FeePayer from '../internal/fee-payer.js';
|
|
14
15
|
import * as Proof from '../internal/proof.js';
|
|
15
16
|
import * as Methods from '../Methods.js';
|
|
16
17
|
import { assertSubscriptionTiming, toSubscriptionPeriodSeconds, verifySubscriptionKeyAuthorization, } from '../subscription/KeyAuthorization.js';
|
|
@@ -33,7 +34,7 @@ export function subscription(p) {
|
|
|
33
34
|
activationTimeoutMs: parameters.activationTimeoutMs,
|
|
34
35
|
renewalTimeoutMs: parameters.renewalTimeoutMs,
|
|
35
36
|
});
|
|
36
|
-
const { recipient } = Account.resolve(parameters);
|
|
37
|
+
const { feePayer, recipient } = Account.resolve(parameters);
|
|
37
38
|
const getClient = ClientResolver.getResolver({
|
|
38
39
|
chain: tempo_chain,
|
|
39
40
|
getClient: parameters.getClient,
|
|
@@ -63,6 +64,8 @@ export function subscription(p) {
|
|
|
63
64
|
const periodIndex = getPeriodIndex(subscription);
|
|
64
65
|
if (periodIndex > subscription.lastChargedPeriod) {
|
|
65
66
|
const renew = resolveRenewalHandler({
|
|
67
|
+
feePayer,
|
|
68
|
+
feePayerPolicy: parameters.feePayerPolicy,
|
|
66
69
|
getClient,
|
|
67
70
|
parameters,
|
|
68
71
|
store,
|
|
@@ -182,6 +185,8 @@ export function subscription(p) {
|
|
|
182
185
|
accessKey,
|
|
183
186
|
auto: {
|
|
184
187
|
challengeId: credential.challenge.id,
|
|
188
|
+
feePayer,
|
|
189
|
+
feePayerPolicy: parameters.feePayerPolicy,
|
|
185
190
|
getClient,
|
|
186
191
|
keyAuthorization: credential.payload.signature,
|
|
187
192
|
realm: credential.challenge.realm,
|
|
@@ -278,6 +283,8 @@ async function activateSubscription(parameters) {
|
|
|
278
283
|
// billing authority needed for request-path and background renewals.
|
|
279
284
|
const reference = await submitSubscriptionPayment({
|
|
280
285
|
accessKey,
|
|
286
|
+
feePayer: auto.feePayer,
|
|
287
|
+
feePayerPolicy: auto.feePayerPolicy,
|
|
281
288
|
getClient: auto.getClient,
|
|
282
289
|
keyAuthorization: auto.keyAuthorization,
|
|
283
290
|
lookupKey: resolved.key,
|
|
@@ -497,7 +504,7 @@ function subscriptionBinding(request) {
|
|
|
497
504
|
};
|
|
498
505
|
}
|
|
499
506
|
function resolveRenewalHandler(parameters) {
|
|
500
|
-
const { getClient, parameters: subscriptionParameters, store, subscription, waitForConfirmation, } = parameters;
|
|
507
|
+
const { feePayer, feePayerPolicy, getClient, parameters: subscriptionParameters, store, subscription, waitForConfirmation, } = parameters;
|
|
501
508
|
if (subscriptionParameters.renew)
|
|
502
509
|
return subscriptionParameters.renew;
|
|
503
510
|
if (!subscription.accessKey || !subscription.payer)
|
|
@@ -505,6 +512,8 @@ function resolveRenewalHandler(parameters) {
|
|
|
505
512
|
return async ({ inFlightReference, periodIndex, subscription }) => {
|
|
506
513
|
const reference = await submitSubscriptionPayment({
|
|
507
514
|
accessKey: subscription.accessKey,
|
|
515
|
+
feePayer,
|
|
516
|
+
feePayerPolicy,
|
|
508
517
|
getClient,
|
|
509
518
|
lookupKey: subscription.lookupKey,
|
|
510
519
|
request: subscription,
|
|
@@ -526,7 +535,7 @@ function resolveRenewalHandler(parameters) {
|
|
|
526
535
|
};
|
|
527
536
|
}
|
|
528
537
|
async function submitSubscriptionPayment(parameters) {
|
|
529
|
-
const { accessKey, getClient, keyAuthorization, lookupKey, request, settlementReference, source, store, waitForConfirmation, } = parameters;
|
|
538
|
+
const { accessKey, feePayer, feePayerPolicy, getClient, keyAuthorization, lookupKey, request, settlementReference, source, store, waitForConfirmation, } = parameters;
|
|
530
539
|
const stored = await store.getAccessKey(lookupKey);
|
|
531
540
|
if (!stored) {
|
|
532
541
|
throw new VerificationFailedError({ reason: 'subscription access key is missing' });
|
|
@@ -546,7 +555,7 @@ async function submitSubscriptionPayment(parameters) {
|
|
|
546
555
|
challengeId: settlementReference,
|
|
547
556
|
serverId: lookupKey,
|
|
548
557
|
});
|
|
549
|
-
const
|
|
558
|
+
const baseTransaction = {
|
|
550
559
|
account,
|
|
551
560
|
calls: [
|
|
552
561
|
{
|
|
@@ -562,12 +571,44 @@ async function submitSubscriptionPayment(parameters) {
|
|
|
562
571
|
...(keyAuthorization
|
|
563
572
|
? { keyAuthorization: KeyAuthorization.deserialize(keyAuthorization) }
|
|
564
573
|
: {}),
|
|
565
|
-
}
|
|
574
|
+
};
|
|
575
|
+
const serializedTransaction = await (async () => {
|
|
576
|
+
if (!feePayer)
|
|
577
|
+
return await signTransaction(client, baseTransaction);
|
|
578
|
+
// For sponsored payments, prepare the tx via `prepareTransactionRequest`
|
|
579
|
+
// (without `feePayer: true`) so viem returns the chain's full
|
|
580
|
+
// proof-inclusive gas estimate. With `feePayer: true` viem sets a
|
|
581
|
+
// dummy sig + null feePayerSignature, dropping signature and key
|
|
582
|
+
// authorization verification costs — see chainConfig.js FIXME. We add
|
|
583
|
+
// a small buffer for fee-payer overhead, then flip `feePayer = true`
|
|
584
|
+
// and re-sign with the fee-payer-sponsored envelope.
|
|
585
|
+
const prepared = await prepareTransactionRequest(client, {
|
|
586
|
+
...baseTransaction,
|
|
587
|
+
nonceKey: 'expiring',
|
|
588
|
+
});
|
|
589
|
+
prepared.gas = (prepared.gas ?? 0n) + 5000n;
|
|
590
|
+
prepared.feePayer = true;
|
|
591
|
+
const userSerialized = await signTransaction(client, prepared);
|
|
592
|
+
const userTransaction = Transaction.deserialize(userSerialized);
|
|
593
|
+
const sponsored = FeePayer.prepareSponsoredTransaction({
|
|
594
|
+
account: feePayer,
|
|
595
|
+
chainId: chainId ?? client.chain.id,
|
|
596
|
+
details: {
|
|
597
|
+
amount: String(request.amount),
|
|
598
|
+
currency: String(request.currency),
|
|
599
|
+
recipient: String(request.recipient),
|
|
600
|
+
},
|
|
601
|
+
...(feePayerPolicy ? { policy: feePayerPolicy } : {}),
|
|
602
|
+
transaction: userTransaction,
|
|
603
|
+
});
|
|
604
|
+
return await signTransaction(client, sponsored);
|
|
605
|
+
})();
|
|
566
606
|
const transaction = Transaction.deserialize(serializedTransaction);
|
|
567
607
|
await viem_call(client, {
|
|
568
608
|
...transaction,
|
|
569
609
|
account: transaction.from,
|
|
570
610
|
calls: transaction.calls,
|
|
611
|
+
feePayerSignature: undefined,
|
|
571
612
|
});
|
|
572
613
|
if (!waitForConfirmation) {
|
|
573
614
|
return sendRawTransaction(client, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Subscription.js","sourceRoot":"","sources":["../../../src/tempo/server/Subscription.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Subscription.js","sourceRoot":"","sources":["../../../src/tempo/server/Subscription.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -3,6 +3,7 @@ import { KeyAuthorization } from 'ox/tempo'
|
|
|
3
3
|
import { encodeFunctionData, isAddressEqual, type Address, type Client as ViemClient } from 'viem'
|
|
4
4
|
import {
|
|
5
5
|
call as viem_call,
|
|
6
|
+
prepareTransactionRequest,
|
|
6
7
|
sendRawTransaction,
|
|
7
8
|
sendRawTransactionSync,
|
|
8
9
|
signTransaction,
|
|
@@ -19,6 +20,7 @@ import * as ClientResolver from '../../viem/Client.js'
|
|
|
19
20
|
import * as Attribution from '../Attribution.js'
|
|
20
21
|
import * as Account from '../internal/account.js'
|
|
21
22
|
import * as defaults from '../internal/defaults.js'
|
|
23
|
+
import * as FeePayer from '../internal/fee-payer.js'
|
|
22
24
|
import * as Proof from '../internal/proof.js'
|
|
23
25
|
import type * as types from '../internal/types.js'
|
|
24
26
|
import * as Methods from '../Methods.js'
|
|
@@ -72,7 +74,7 @@ export function subscription<const parameters extends subscription.Parameters>(
|
|
|
72
74
|
activationTimeoutMs: parameters.activationTimeoutMs,
|
|
73
75
|
renewalTimeoutMs: parameters.renewalTimeoutMs,
|
|
74
76
|
})
|
|
75
|
-
const { recipient } = Account.resolve(parameters)
|
|
77
|
+
const { feePayer, recipient } = Account.resolve(parameters)
|
|
76
78
|
const getClient = ClientResolver.getResolver({
|
|
77
79
|
chain: tempo_chain,
|
|
78
80
|
getClient: parameters.getClient,
|
|
@@ -104,6 +106,8 @@ export function subscription<const parameters extends subscription.Parameters>(
|
|
|
104
106
|
const periodIndex = getPeriodIndex(subscription)
|
|
105
107
|
if (periodIndex > subscription.lastChargedPeriod) {
|
|
106
108
|
const renew = resolveRenewalHandler({
|
|
109
|
+
feePayer,
|
|
110
|
+
feePayerPolicy: parameters.feePayerPolicy,
|
|
107
111
|
getClient,
|
|
108
112
|
parameters,
|
|
109
113
|
store,
|
|
@@ -235,6 +239,8 @@ export function subscription<const parameters extends subscription.Parameters>(
|
|
|
235
239
|
accessKey,
|
|
236
240
|
auto: {
|
|
237
241
|
challengeId: credential.challenge.id,
|
|
242
|
+
feePayer,
|
|
243
|
+
feePayerPolicy: parameters.feePayerPolicy,
|
|
238
244
|
getClient,
|
|
239
245
|
keyAuthorization: (credential.payload as SubscriptionCredentialPayload).signature,
|
|
240
246
|
realm: credential.challenge.realm,
|
|
@@ -346,6 +352,8 @@ async function activateSubscription(parameters: {
|
|
|
346
352
|
accessKey: SubscriptionAccessKey
|
|
347
353
|
auto: {
|
|
348
354
|
challengeId: string
|
|
355
|
+
feePayer?: ReturnType<typeof Account.resolve>['feePayer'] | undefined
|
|
356
|
+
feePayerPolicy?: Partial<FeePayer.Policy> | undefined
|
|
349
357
|
getClient: (parameters: { chainId?: number | undefined }) => MaybePromise<ViemClient>
|
|
350
358
|
keyAuthorization: `0x${string}`
|
|
351
359
|
realm: string
|
|
@@ -391,6 +399,8 @@ async function activateSubscription(parameters: {
|
|
|
391
399
|
// billing authority needed for request-path and background renewals.
|
|
392
400
|
const reference = await submitSubscriptionPayment({
|
|
393
401
|
accessKey,
|
|
402
|
+
feePayer: auto.feePayer,
|
|
403
|
+
feePayerPolicy: auto.feePayerPolicy,
|
|
394
404
|
getClient: auto.getClient,
|
|
395
405
|
keyAuthorization: auto.keyAuthorization,
|
|
396
406
|
lookupKey: resolved.key,
|
|
@@ -689,6 +699,8 @@ function subscriptionBinding(request: SubscriptionRequest) {
|
|
|
689
699
|
}
|
|
690
700
|
|
|
691
701
|
function resolveRenewalHandler(parameters: {
|
|
702
|
+
feePayer?: ReturnType<typeof Account.resolve>['feePayer'] | undefined
|
|
703
|
+
feePayerPolicy?: Partial<FeePayer.Policy> | undefined
|
|
692
704
|
getClient: (parameters: { chainId?: number | undefined }) => MaybePromise<ViemClient>
|
|
693
705
|
parameters: {
|
|
694
706
|
renew?:
|
|
@@ -710,6 +722,8 @@ function resolveRenewalHandler(parameters: {
|
|
|
710
722
|
}) => Promise<subscription.RenewalResult>)
|
|
711
723
|
| undefined {
|
|
712
724
|
const {
|
|
725
|
+
feePayer,
|
|
726
|
+
feePayerPolicy,
|
|
713
727
|
getClient,
|
|
714
728
|
parameters: subscriptionParameters,
|
|
715
729
|
store,
|
|
@@ -721,6 +735,8 @@ function resolveRenewalHandler(parameters: {
|
|
|
721
735
|
return async ({ inFlightReference, periodIndex, subscription }) => {
|
|
722
736
|
const reference = await submitSubscriptionPayment({
|
|
723
737
|
accessKey: subscription.accessKey!,
|
|
738
|
+
feePayer,
|
|
739
|
+
feePayerPolicy,
|
|
724
740
|
getClient,
|
|
725
741
|
lookupKey: subscription.lookupKey,
|
|
726
742
|
request: subscription,
|
|
@@ -744,6 +760,8 @@ function resolveRenewalHandler(parameters: {
|
|
|
744
760
|
|
|
745
761
|
async function submitSubscriptionPayment(parameters: {
|
|
746
762
|
accessKey: SubscriptionAccessKey
|
|
763
|
+
feePayer?: ReturnType<typeof Account.resolve>['feePayer'] | undefined
|
|
764
|
+
feePayerPolicy?: Partial<FeePayer.Policy> | undefined
|
|
747
765
|
getClient: (parameters: { chainId?: number | undefined }) => MaybePromise<ViemClient>
|
|
748
766
|
keyAuthorization?: `0x${string}` | undefined
|
|
749
767
|
lookupKey: string
|
|
@@ -757,6 +775,8 @@ async function submitSubscriptionPayment(parameters: {
|
|
|
757
775
|
}) {
|
|
758
776
|
const {
|
|
759
777
|
accessKey,
|
|
778
|
+
feePayer,
|
|
779
|
+
feePayerPolicy,
|
|
760
780
|
getClient,
|
|
761
781
|
keyAuthorization,
|
|
762
782
|
lookupKey,
|
|
@@ -786,7 +806,7 @@ async function submitSubscriptionPayment(parameters: {
|
|
|
786
806
|
challengeId: settlementReference,
|
|
787
807
|
serverId: lookupKey,
|
|
788
808
|
})
|
|
789
|
-
const
|
|
809
|
+
const baseTransaction = {
|
|
790
810
|
account,
|
|
791
811
|
calls: [
|
|
792
812
|
{
|
|
@@ -802,7 +822,39 @@ async function submitSubscriptionPayment(parameters: {
|
|
|
802
822
|
...(keyAuthorization
|
|
803
823
|
? { keyAuthorization: KeyAuthorization.deserialize(keyAuthorization) }
|
|
804
824
|
: {}),
|
|
805
|
-
}
|
|
825
|
+
}
|
|
826
|
+
const serializedTransaction = await (async () => {
|
|
827
|
+
if (!feePayer) return await signTransaction(client, baseTransaction as never)
|
|
828
|
+
// For sponsored payments, prepare the tx via `prepareTransactionRequest`
|
|
829
|
+
// (without `feePayer: true`) so viem returns the chain's full
|
|
830
|
+
// proof-inclusive gas estimate. With `feePayer: true` viem sets a
|
|
831
|
+
// dummy sig + null feePayerSignature, dropping signature and key
|
|
832
|
+
// authorization verification costs — see chainConfig.js FIXME. We add
|
|
833
|
+
// a small buffer for fee-payer overhead, then flip `feePayer = true`
|
|
834
|
+
// and re-sign with the fee-payer-sponsored envelope.
|
|
835
|
+
const prepared = await prepareTransactionRequest(client, {
|
|
836
|
+
...baseTransaction,
|
|
837
|
+
nonceKey: 'expiring',
|
|
838
|
+
} as never)
|
|
839
|
+
prepared.gas = (prepared.gas ?? 0n) + 5_000n
|
|
840
|
+
;(prepared as Record<string, unknown>).feePayer = true
|
|
841
|
+
const userSerialized = await signTransaction(client, prepared as never)
|
|
842
|
+
const userTransaction = Transaction.deserialize(
|
|
843
|
+
userSerialized as Transaction.TransactionSerializedTempo,
|
|
844
|
+
)
|
|
845
|
+
const sponsored = FeePayer.prepareSponsoredTransaction({
|
|
846
|
+
account: feePayer,
|
|
847
|
+
chainId: chainId ?? client.chain!.id,
|
|
848
|
+
details: {
|
|
849
|
+
amount: String(request.amount),
|
|
850
|
+
currency: String(request.currency),
|
|
851
|
+
recipient: String(request.recipient),
|
|
852
|
+
},
|
|
853
|
+
...(feePayerPolicy ? { policy: feePayerPolicy } : {}),
|
|
854
|
+
transaction: userTransaction as never,
|
|
855
|
+
})
|
|
856
|
+
return await signTransaction(client, sponsored as never)
|
|
857
|
+
})()
|
|
806
858
|
const transaction = Transaction.deserialize(
|
|
807
859
|
serializedTransaction as Transaction.TransactionSerializedTempo,
|
|
808
860
|
)
|
|
@@ -810,6 +862,7 @@ async function submitSubscriptionPayment(parameters: {
|
|
|
810
862
|
...transaction,
|
|
811
863
|
account: transaction.from,
|
|
812
864
|
calls: transaction.calls,
|
|
865
|
+
feePayerSignature: undefined,
|
|
813
866
|
} as never)
|
|
814
867
|
|
|
815
868
|
if (!waitForConfirmation) {
|
|
@@ -950,6 +1003,12 @@ export declare namespace subscription {
|
|
|
950
1003
|
* Keeps concurrent renewal safe while allowing recovery from abandoned attempts.
|
|
951
1004
|
*/
|
|
952
1005
|
renewalTimeoutMs?: number | undefined
|
|
1006
|
+
/**
|
|
1007
|
+
* Override the fee-payer policy for sponsored subscription payments.
|
|
1008
|
+
* Useful when the access key + key authorization tx requires more gas
|
|
1009
|
+
* than the default policy allows.
|
|
1010
|
+
*/
|
|
1011
|
+
feePayerPolicy?: Partial<FeePayer.Policy> | undefined
|
|
953
1012
|
activate?:
|
|
954
1013
|
| ((parameters: {
|
|
955
1014
|
/** Custom activation must verify this access key matches the resolved subscription. */
|