@aztec/bot 0.0.1-commit.b2a5d0dd1 → 0.0.1-commit.b3d3157a
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/dest/amm_bot.d.ts +2 -2
- package/dest/amm_bot.d.ts.map +1 -1
- package/dest/base_bot.d.ts +2 -2
- package/dest/base_bot.d.ts.map +1 -1
- package/dest/config.d.ts +28 -79
- package/dest/config.d.ts.map +1 -1
- package/dest/cross_chain_bot.d.ts +2 -2
- package/dest/cross_chain_bot.d.ts.map +1 -1
- package/dest/cross_chain_bot.js +6 -3
- package/dest/factory.d.ts +1 -1
- package/dest/factory.d.ts.map +1 -1
- package/dest/factory.js +48 -43
- package/dest/interface.d.ts +2 -6
- package/dest/interface.d.ts.map +1 -1
- package/dest/interface.js +30 -7
- package/package.json +16 -16
- package/src/amm_bot.ts +1 -1
- package/src/base_bot.ts +2 -1
- package/src/cross_chain_bot.ts +5 -4
- package/src/factory.ts +34 -40
- package/src/interface.ts +7 -7
package/dest/amm_bot.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { AztecAddress } from '@aztec/aztec.js/addresses';
|
|
2
|
-
import { TxHash, TxReceipt } from '@aztec/aztec.js/tx';
|
|
2
|
+
import type { TxHash, TxReceipt } from '@aztec/aztec.js/tx';
|
|
3
3
|
import type { AMMContract } from '@aztec/noir-contracts.js/AMM';
|
|
4
4
|
import type { TokenContract } from '@aztec/noir-contracts.js/Token';
|
|
5
5
|
import type { AztecNode, AztecNodeAdmin } from '@aztec/stdlib/interfaces/client';
|
|
@@ -29,4 +29,4 @@ export declare class AmmBot extends BaseBot {
|
|
|
29
29
|
private getPrivateBalanceFor;
|
|
30
30
|
}
|
|
31
31
|
export {};
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW1tX2JvdC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2FtbV9ib3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBR3pELE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUU1RCxPQUFPLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNoRSxPQUFPLEtBQUssRUFBRSxhQUFhLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRSxPQUFPLEtBQUssRUFBRSxTQUFTLEVBQUUsY0FBYyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDakYsT0FBTyxLQUFLLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFOUQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4QyxPQUFPLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFN0MsT0FBTyxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFLakQsS0FBSyxRQUFRLEdBQUc7SUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDO0lBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQTtDQUFFLENBQUM7QUFFbkQscUJBQWEsTUFBTyxTQUFRLE9BQU87YUFLZixHQUFHLEVBQUUsV0FBVzthQUNoQixNQUFNLEVBQUUsYUFBYTthQUNyQixNQUFNLEVBQUUsYUFBYTtJQU52QyxTQUFTLGFBQ1AsSUFBSSxFQUFFLFNBQVMsRUFDZixNQUFNLEVBQUUsY0FBYyxFQUN0QixxQkFBcUIsRUFBRSxZQUFZLEVBQ25CLEdBQUcsRUFBRSxXQUFXLEVBQ2hCLE1BQU0sRUFBRSxhQUFhLEVBQ3JCLE1BQU0sRUFBRSxhQUFhLEVBQ3JDLE1BQU0sRUFBRSxTQUFTLEVBR2xCO0lBRUQsT0FBYSxNQUFNLENBQ2pCLE1BQU0sRUFBRSxTQUFTLEVBQ2pCLE1BQU0sRUFBRSxjQUFjLEVBQ3RCLFNBQVMsRUFBRSxTQUFTLEVBQ3BCLGNBQWMsRUFBRSxjQUFjLEdBQUcsU0FBUyxFQUMxQyxLQUFLLEVBQUUsUUFBUSxHQUNkLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FTakI7SUFFRCxVQUFnQixlQUFlLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLENBNkMvRDtJQUVELFVBQXlCLFNBQVMsQ0FBQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUdwRjtJQUVNLGNBQWMsSUFBSSxPQUFPLENBQUMsUUFBUSxDQUFDLENBRXpDO0lBRVksV0FBVyxJQUFJLE9BQU8sQ0FBQztRQUFFLFlBQVksRUFBRSxRQUFRLENBQUM7UUFBQyxhQUFhLEVBQUUsUUFBUSxDQUFDO1FBQUMsR0FBRyxFQUFFLFFBQVEsQ0FBQTtLQUFFLENBQUMsQ0FNdEc7WUFFYSxtQkFBbUI7WUFLbkIsb0JBQW9CO0NBU25DIn0=
|
package/dest/amm_bot.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"amm_bot.d.ts","sourceRoot":"","sources":["../src/amm_bot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAGzD,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"amm_bot.d.ts","sourceRoot":"","sources":["../src/amm_bot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAGzD,OAAO,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAE9D,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAKjD,KAAK,QAAQ,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAEnD,qBAAa,MAAO,SAAQ,OAAO;aAKf,GAAG,EAAE,WAAW;aAChB,MAAM,EAAE,aAAa;aACrB,MAAM,EAAE,aAAa;IANvC,SAAS,aACP,IAAI,EAAE,SAAS,EACf,MAAM,EAAE,cAAc,EACtB,qBAAqB,EAAE,YAAY,EACnB,GAAG,EAAE,WAAW,EAChB,MAAM,EAAE,aAAa,EACrB,MAAM,EAAE,aAAa,EACrC,MAAM,EAAE,SAAS,EAGlB;IAED,OAAa,MAAM,CACjB,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,cAAc,EACtB,SAAS,EAAE,SAAS,EACpB,cAAc,EAAE,cAAc,GAAG,SAAS,EAC1C,KAAK,EAAE,QAAQ,GACd,OAAO,CAAC,MAAM,CAAC,CASjB;IAED,UAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA6C/D;IAED,UAAyB,SAAS,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAGpF;IAEM,cAAc,IAAI,OAAO,CAAC,QAAQ,CAAC,CAEzC;IAEY,WAAW,IAAI,OAAO,CAAC;QAAE,YAAY,EAAE,QAAQ,CAAC;QAAC,aAAa,EAAE,QAAQ,CAAC;QAAC,GAAG,EAAE,QAAQ,CAAA;KAAE,CAAC,CAMtG;YAEa,mBAAmB;YAKnB,oBAAoB;CASnC"}
|
package/dest/base_bot.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { AztecAddress } from '@aztec/aztec.js/addresses';
|
|
2
2
|
import type { SendInteractionOptions } from '@aztec/aztec.js/contracts';
|
|
3
|
-
import { TxHash, TxReceipt } from '@aztec/aztec.js/tx';
|
|
3
|
+
import type { TxHash, TxReceipt } from '@aztec/aztec.js/tx';
|
|
4
4
|
import type { AztecNode } from '@aztec/stdlib/interfaces/client';
|
|
5
5
|
import type { EmbeddedWallet } from '@aztec/wallets/embedded';
|
|
6
6
|
import type { BotConfig } from './config.js';
|
|
@@ -18,4 +18,4 @@ export declare abstract class BaseBot {
|
|
|
18
18
|
protected onTxMined(_receipt: TxReceipt, _logCtx: object): Promise<void>;
|
|
19
19
|
protected getSendMethodOpts(): SendInteractionOptions;
|
|
20
20
|
}
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZV9ib3QuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9iYXNlX2JvdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDekQsT0FBTyxLQUFLLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUl4RSxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFNUQsT0FBTyxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDakUsT0FBTyxLQUFLLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFOUQsT0FBTyxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRTdDLDhCQUFzQixPQUFPO2FBT1QsSUFBSSxFQUFFLFNBQVM7YUFDZixNQUFNLEVBQUUsY0FBYzthQUN0QixxQkFBcUIsRUFBRSxZQUFZO0lBQzVDLE1BQU0sRUFBRSxTQUFTO0lBVDFCLFNBQVMsQ0FBQyxHQUFHLHVDQUF1QjtJQUVwQyxTQUFTLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBSztJQUMvQixTQUFTLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBSztJQUVoQyxTQUFTLGFBQ1MsSUFBSSxFQUFFLFNBQVMsRUFDZixNQUFNLEVBQUUsY0FBYyxFQUN0QixxQkFBcUIsRUFBRSxZQUFZLEVBQzVDLE1BQU0sRUFBRSxTQUFTLEVBQ3RCO0lBRVMsR0FBRyxJQUFJLE9BQU8sQ0FBQyxTQUFTLEdBQUcsTUFBTSxDQUFDLENBeUI5QztJQUVELFNBQVMsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBRXBFLFNBQVMsQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsTUFBTSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FHdkU7SUFFRCxTQUFTLENBQUMsaUJBQWlCLElBQUksc0JBQXNCLENBY3BEO0NBQ0YifQ==
|
package/dest/base_bot.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base_bot.d.ts","sourceRoot":"","sources":["../src/base_bot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"base_bot.d.ts","sourceRoot":"","sources":["../src/base_bot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAIxE,OAAO,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE5D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAE9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,8BAAsB,OAAO;aAOT,IAAI,EAAE,SAAS;aACf,MAAM,EAAE,cAAc;aACtB,qBAAqB,EAAE,YAAY;IAC5C,MAAM,EAAE,SAAS;IAT1B,SAAS,CAAC,GAAG,uCAAuB;IAEpC,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAK;IAC/B,SAAS,CAAC,SAAS,EAAE,MAAM,CAAK;IAEhC,SAAS,aACS,IAAI,EAAE,SAAS,EACf,MAAM,EAAE,cAAc,EACtB,qBAAqB,EAAE,YAAY,EAC5C,MAAM,EAAE,SAAS,EACtB;IAES,GAAG,IAAI,OAAO,CAAC,SAAS,GAAG,MAAM,CAAC,CAyB9C;IAED,SAAS,CAAC,QAAQ,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAEpE,SAAS,CAAC,SAAS,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAGvE;IAED,SAAS,CAAC,iBAAiB,IAAI,sBAAsB,CAcpD;CACF"}
|
package/dest/config.d.ts
CHANGED
|
@@ -67,14 +67,14 @@ export type BotConfig = {
|
|
|
67
67
|
/** Max L1→L2 messages to keep in-flight (crosschain mode). */
|
|
68
68
|
l1ToL2SeedCount: number;
|
|
69
69
|
} & Pick<DataStoreConfig, 'dataDirectory' | 'dataStoreMapSizeKb'>;
|
|
70
|
-
export declare const BotConfigSchema: z.
|
|
70
|
+
export declare const BotConfigSchema: z.ZodPipe<z.ZodObject<{
|
|
71
71
|
nodeUrl: z.ZodOptional<z.ZodString>;
|
|
72
72
|
nodeAdminUrl: z.ZodOptional<z.ZodString>;
|
|
73
|
-
l1RpcUrls: z.ZodOptional<z.ZodArray<z.ZodString
|
|
74
|
-
l1Mnemonic: z.ZodOptional<z.ZodType<SecretValue<string>, any, any
|
|
75
|
-
l1PrivateKey: z.ZodOptional<z.ZodType<SecretValue<string>, any, any
|
|
73
|
+
l1RpcUrls: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
74
|
+
l1Mnemonic: z.ZodOptional<z.ZodType<SecretValue<string>, any, z.core.$ZodTypeInternals<SecretValue<string>, any>>>;
|
|
75
|
+
l1PrivateKey: z.ZodOptional<z.ZodType<SecretValue<string>, any, z.core.$ZodTypeInternals<SecretValue<string>, any>>>;
|
|
76
76
|
l1ToL2MessageTimeoutSeconds: z.ZodNumber;
|
|
77
|
-
senderPrivateKey: z.ZodOptional<z.ZodType<SecretValue<Fr>, any, any
|
|
77
|
+
senderPrivateKey: z.ZodOptional<z.ZodType<SecretValue<Fr>, any, z.core.$ZodTypeInternals<SecretValue<Fr>, any>>>;
|
|
78
78
|
senderSalt: z.ZodOptional<import("@aztec/stdlib/schemas").ZodFor<Fr>>;
|
|
79
79
|
tokenSalt: import("@aztec/stdlib/schemas").ZodFor<Fr>;
|
|
80
80
|
txIntervalSeconds: z.ZodNumber;
|
|
@@ -84,80 +84,29 @@ export declare const BotConfigSchema: z.ZodEffects<z.ZodObject<{
|
|
|
84
84
|
minFeePadding: z.ZodNumber;
|
|
85
85
|
noStart: z.ZodBoolean;
|
|
86
86
|
txMinedWaitSeconds: z.ZodNumber;
|
|
87
|
-
followChain: z.ZodEnum<
|
|
87
|
+
followChain: z.ZodEnum<{
|
|
88
|
+
CHECKPOINTED: "CHECKPOINTED";
|
|
89
|
+
NONE: "NONE";
|
|
90
|
+
PROPOSED: "PROPOSED";
|
|
91
|
+
PROVEN: "PROVEN";
|
|
92
|
+
}>;
|
|
88
93
|
maxPendingTxs: z.ZodNumber;
|
|
89
94
|
flushSetupTransactions: z.ZodBoolean;
|
|
90
95
|
l2GasLimit: z.ZodOptional<z.ZodNumber>;
|
|
91
96
|
daGasLimit: z.ZodOptional<z.ZodNumber>;
|
|
92
|
-
contract: z.
|
|
97
|
+
contract: z.ZodEnum<typeof SupportedTokenContracts>;
|
|
93
98
|
maxConsecutiveErrors: z.ZodNumber;
|
|
94
99
|
stopWhenUnhealthy: z.ZodBoolean;
|
|
95
|
-
botMode: z.ZodDefault<z.ZodEnum<
|
|
100
|
+
botMode: z.ZodDefault<z.ZodEnum<{
|
|
101
|
+
amm: "amm";
|
|
102
|
+
crosschain: "crosschain";
|
|
103
|
+
transfer: "transfer";
|
|
104
|
+
}>>;
|
|
96
105
|
l2ToL1MessagesPerTx: z.ZodDefault<z.ZodNumber>;
|
|
97
106
|
l1ToL2SeedCount: z.ZodDefault<z.ZodNumber>;
|
|
98
107
|
dataDirectory: z.ZodOptional<z.ZodString>;
|
|
99
108
|
dataStoreMapSizeKb: z.ZodOptional<z.ZodNumber>;
|
|
100
|
-
},
|
|
101
|
-
nodeUrl?: string | undefined;
|
|
102
|
-
nodeAdminUrl?: string | undefined;
|
|
103
|
-
l1RpcUrls?: string[] | undefined;
|
|
104
|
-
l1Mnemonic?: SecretValue<string> | undefined;
|
|
105
|
-
l1PrivateKey?: SecretValue<string> | undefined;
|
|
106
|
-
l1ToL2MessageTimeoutSeconds: number;
|
|
107
|
-
senderPrivateKey?: SecretValue<Fr> | undefined;
|
|
108
|
-
senderSalt?: Fr | undefined;
|
|
109
|
-
tokenSalt: Fr;
|
|
110
|
-
txIntervalSeconds: number;
|
|
111
|
-
privateTransfersPerTx: number;
|
|
112
|
-
publicTransfersPerTx: number;
|
|
113
|
-
feePaymentMethod: "fee_juice";
|
|
114
|
-
minFeePadding: number;
|
|
115
|
-
noStart: boolean;
|
|
116
|
-
txMinedWaitSeconds: number;
|
|
117
|
-
followChain: "CHECKPOINTED" | "NONE" | "PROPOSED" | "PROVEN";
|
|
118
|
-
maxPendingTxs: number;
|
|
119
|
-
flushSetupTransactions: boolean;
|
|
120
|
-
l2GasLimit?: number | undefined;
|
|
121
|
-
daGasLimit?: number | undefined;
|
|
122
|
-
contract: SupportedTokenContracts;
|
|
123
|
-
maxConsecutiveErrors: number;
|
|
124
|
-
stopWhenUnhealthy: boolean;
|
|
125
|
-
botMode: "amm" | "crosschain" | "transfer";
|
|
126
|
-
l2ToL1MessagesPerTx: number;
|
|
127
|
-
l1ToL2SeedCount: number;
|
|
128
|
-
dataDirectory?: string | undefined;
|
|
129
|
-
dataStoreMapSizeKb?: number | undefined;
|
|
130
|
-
}, {
|
|
131
|
-
nodeUrl?: string | undefined;
|
|
132
|
-
nodeAdminUrl?: string | undefined;
|
|
133
|
-
l1RpcUrls?: string[] | undefined;
|
|
134
|
-
l1Mnemonic?: any;
|
|
135
|
-
l1PrivateKey?: any;
|
|
136
|
-
l1ToL2MessageTimeoutSeconds: number;
|
|
137
|
-
senderPrivateKey?: any;
|
|
138
|
-
senderSalt?: any;
|
|
139
|
-
tokenSalt?: any;
|
|
140
|
-
txIntervalSeconds: number;
|
|
141
|
-
privateTransfersPerTx: number;
|
|
142
|
-
publicTransfersPerTx: number;
|
|
143
|
-
feePaymentMethod: "fee_juice";
|
|
144
|
-
minFeePadding: number;
|
|
145
|
-
noStart: boolean;
|
|
146
|
-
txMinedWaitSeconds: number;
|
|
147
|
-
followChain: "CHECKPOINTED" | "NONE" | "PROPOSED" | "PROVEN";
|
|
148
|
-
maxPendingTxs: number;
|
|
149
|
-
flushSetupTransactions: boolean;
|
|
150
|
-
l2GasLimit?: number | undefined;
|
|
151
|
-
daGasLimit?: number | undefined;
|
|
152
|
-
contract: SupportedTokenContracts;
|
|
153
|
-
maxConsecutiveErrors: number;
|
|
154
|
-
stopWhenUnhealthy: boolean;
|
|
155
|
-
botMode?: "amm" | "crosschain" | "transfer" | undefined;
|
|
156
|
-
l2ToL1MessagesPerTx?: number | undefined;
|
|
157
|
-
l1ToL2SeedCount?: number | undefined;
|
|
158
|
-
dataDirectory?: string | undefined;
|
|
159
|
-
dataStoreMapSizeKb?: number | undefined;
|
|
160
|
-
}>, {
|
|
109
|
+
}, z.core.$strip>, z.ZodTransform<{
|
|
161
110
|
l1ToL2MessageTimeoutSeconds: number;
|
|
162
111
|
tokenSalt: Fr;
|
|
163
112
|
txIntervalSeconds: number;
|
|
@@ -191,12 +140,12 @@ export declare const BotConfigSchema: z.ZodEffects<z.ZodObject<{
|
|
|
191
140
|
nodeUrl?: string | undefined;
|
|
192
141
|
nodeAdminUrl?: string | undefined;
|
|
193
142
|
l1RpcUrls?: string[] | undefined;
|
|
194
|
-
l1Mnemonic?:
|
|
195
|
-
l1PrivateKey?:
|
|
143
|
+
l1Mnemonic?: SecretValue<string> | undefined;
|
|
144
|
+
l1PrivateKey?: SecretValue<string> | undefined;
|
|
196
145
|
l1ToL2MessageTimeoutSeconds: number;
|
|
197
|
-
senderPrivateKey?:
|
|
198
|
-
senderSalt?:
|
|
199
|
-
tokenSalt
|
|
146
|
+
senderPrivateKey?: SecretValue<Fr> | undefined;
|
|
147
|
+
senderSalt?: Fr | undefined;
|
|
148
|
+
tokenSalt: Fr;
|
|
200
149
|
txIntervalSeconds: number;
|
|
201
150
|
privateTransfersPerTx: number;
|
|
202
151
|
publicTransfersPerTx: number;
|
|
@@ -212,15 +161,15 @@ export declare const BotConfigSchema: z.ZodEffects<z.ZodObject<{
|
|
|
212
161
|
contract: SupportedTokenContracts;
|
|
213
162
|
maxConsecutiveErrors: number;
|
|
214
163
|
stopWhenUnhealthy: boolean;
|
|
215
|
-
botMode
|
|
216
|
-
l2ToL1MessagesPerTx
|
|
217
|
-
l1ToL2SeedCount
|
|
164
|
+
botMode: "amm" | "crosschain" | "transfer";
|
|
165
|
+
l2ToL1MessagesPerTx: number;
|
|
166
|
+
l1ToL2SeedCount: number;
|
|
218
167
|
dataDirectory?: string | undefined;
|
|
219
168
|
dataStoreMapSizeKb?: number | undefined;
|
|
220
|
-
}
|
|
169
|
+
}>>;
|
|
221
170
|
export declare const botConfigMappings: ConfigMappingsType<BotConfig>;
|
|
222
171
|
export declare function getBotConfigFromEnv(): BotConfig;
|
|
223
172
|
export declare function getBotDefaultConfig(): BotConfig;
|
|
224
173
|
export declare function getVersions(): Partial<ComponentsVersions>;
|
|
225
174
|
export {};
|
|
226
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
175
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxLQUFLLGtCQUFrQixFQUN2QixXQUFXLEVBU1osTUFBTSwwQkFBMEIsQ0FBQztBQUNsQyxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFHcEQsT0FBTyxFQUFFLEtBQUssZUFBZSxFQUFzQixNQUFNLHdCQUF3QixDQUFDO0FBRWxGLE9BQU8sS0FBSyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFbkUsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUV4QixRQUFBLE1BQU0sY0FBYyx5REFBMEQsQ0FBQztBQUMvRSxLQUFLLGNBQWMsR0FBRyxDQUFDLE9BQU8sY0FBYyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUM7QUFFdEQsUUFBQSxNQUFNLE9BQU8sNENBQTZDLENBQUM7QUFDM0QsS0FBSyxPQUFPLEdBQUcsQ0FBQyxPQUFPLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBRXhDLG9CQUFZLHVCQUF1QjtJQUNqQyxhQUFhLGtCQUFrQjtJQUMvQixvQkFBb0IseUJBQXlCO0NBQzlDO0FBRUQsTUFBTSxNQUFNLFNBQVMsR0FBRztJQUN0Qiw2REFBNkQ7SUFDN0QsT0FBTyxFQUFFLE1BQU0sR0FBRyxTQUFTLENBQUM7SUFDNUIsNEVBQTRFO0lBQzVFLFlBQVksRUFBRSxNQUFNLEdBQUcsU0FBUyxDQUFDO0lBQ2pDLGdDQUFnQztJQUNoQyxTQUFTLEVBQUUsTUFBTSxFQUFFLEdBQUcsU0FBUyxDQUFDO0lBQ2hDLGdFQUFnRTtJQUNoRSxVQUFVLEVBQUUsV0FBVyxDQUFDLE1BQU0sQ0FBQyxHQUFHLFNBQVMsQ0FBQztJQUM1QyxtRUFBbUU7SUFDbkUsWUFBWSxFQUFFLFdBQVcsQ0FBQyxNQUFNLENBQUMsR0FBRyxTQUFTLENBQUM7SUFDOUMsdUVBQXVFO0lBQ3ZFLDJCQUEyQixFQUFFLE1BQU0sQ0FBQztJQUNwQyxrREFBa0Q7SUFDbEQsZ0JBQWdCLEVBQUUsV0FBVyxDQUFDLEVBQUUsQ0FBQyxHQUFHLFNBQVMsQ0FBQztJQUM5Qyw2REFBNkQ7SUFDN0QsVUFBVSxFQUFFLEVBQUUsR0FBRyxTQUFTLENBQUM7SUFDM0IsaURBQWlEO0lBQ2pELFNBQVMsRUFBRSxFQUFFLENBQUM7SUFDZCxzREFBc0Q7SUFDdEQsaUJBQWlCLEVBQUUsTUFBTSxDQUFDO0lBQzFCLDREQUE0RDtJQUM1RCxxQkFBcUIsRUFBRSxNQUFNLENBQUM7SUFDOUIsMkRBQTJEO0lBQzNELG9CQUFvQixFQUFFLE1BQU0sQ0FBQztJQUM3QixrQ0FBa0M7SUFDbEMsZ0JBQWdCLEVBQUUsV0FBVyxDQUFDO0lBQzlCLHVFQUF1RTtJQUN2RSxhQUFhLEVBQUUsTUFBTSxDQUFDO0lBQ3RCLDBFQUEwRTtJQUMxRSxPQUFPLEVBQUUsT0FBTyxDQUFDO0lBQ2pCLHVFQUF1RTtJQUN2RSxrQkFBa0IsRUFBRSxNQUFNLENBQUM7SUFDM0IsNEVBQTRFO0lBQzVFLFdBQVcsRUFBRSxjQUFjLENBQUM7SUFDNUIsZ0ZBQWdGO0lBQ2hGLGFBQWEsRUFBRSxNQUFNLENBQUM7SUFDdEIsOERBQThEO0lBQzlELHNCQUFzQixFQUFFLE9BQU8sQ0FBQztJQUNoQyx3RUFBd0U7SUFDeEUsVUFBVSxFQUFFLE1BQU0sR0FBRyxTQUFTLENBQUM7SUFDL0Isd0VBQXdFO0lBQ3hFLFVBQVUsRUFBRSxNQUFNLEdBQUcsU0FBUyxDQUFDO0lBQy9CLDRCQUE0QjtJQUM1QixRQUFRLEVBQUUsdUJBQXVCLENBQUM7SUFDbEMseUVBQXlFO0lBQ3pFLG9CQUFvQixFQUFFLE1BQU0sQ0FBQztJQUM3QixpREFBaUQ7SUFDakQsaUJBQWlCLEVBQUUsT0FBTyxDQUFDO0lBQzNCLDhDQUE4QztJQUM5QyxPQUFPLEVBQUUsT0FBTyxDQUFDO0lBQ2pCLDJEQUF5RDtJQUN6RCxtQkFBbUIsRUFBRSxNQUFNLENBQUM7SUFDNUIsZ0VBQThEO0lBQzlELGVBQWUsRUFBRSxNQUFNLENBQUM7Q0FDekIsR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFFLGVBQWUsR0FBRyxvQkFBb0IsQ0FBQyxDQUFDO0FBRWxFLGVBQU8sTUFBTSxlQUFlOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E4QzNCLENBQUM7QUFFRixlQUFPLE1BQU0saUJBQWlCLEVBQUUsa0JBQWtCLENBQUMsU0FBUyxDQW1LM0QsQ0FBQztBQUVGLHdCQUFnQixtQkFBbUIsSUFBSSxTQUFTLENBRS9DO0FBRUQsd0JBQWdCLG1CQUFtQixJQUFJLFNBQVMsQ0FFL0M7QUFFRCx3QkFBZ0IsV0FBVyxJQUFJLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxDQUt6RCJ9
|
package/dest/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,kBAAkB,EACvB,WAAW,EASZ,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAGpD,OAAO,EAAE,KAAK,eAAe,EAAsB,MAAM,wBAAwB,CAAC;AAElF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAEnE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,QAAA,MAAM,cAAc,yDAA0D,CAAC;AAC/E,KAAK,cAAc,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAEtD,QAAA,MAAM,OAAO,4CAA6C,CAAC;AAC3D,KAAK,OAAO,GAAG,CAAC,OAAO,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;AAExC,oBAAY,uBAAuB;IACjC,aAAa,kBAAkB;IAC/B,oBAAoB,yBAAyB;CAC9C;AAED,MAAM,MAAM,SAAS,GAAG;IACtB,6DAA6D;IAC7D,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,4EAA4E;IAC5E,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,gCAAgC;IAChC,SAAS,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAChC,gEAAgE;IAChE,UAAU,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;IAC5C,mEAAmE;IACnE,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;IAC9C,uEAAuE;IACvE,2BAA2B,EAAE,MAAM,CAAC;IACpC,kDAAkD;IAClD,gBAAgB,EAAE,WAAW,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC;IAC9C,6DAA6D;IAC7D,UAAU,EAAE,EAAE,GAAG,SAAS,CAAC;IAC3B,iDAAiD;IACjD,SAAS,EAAE,EAAE,CAAC;IACd,sDAAsD;IACtD,iBAAiB,EAAE,MAAM,CAAC;IAC1B,4DAA4D;IAC5D,qBAAqB,EAAE,MAAM,CAAC;IAC9B,2DAA2D;IAC3D,oBAAoB,EAAE,MAAM,CAAC;IAC7B,kCAAkC;IAClC,gBAAgB,EAAE,WAAW,CAAC;IAC9B,uEAAuE;IACvE,aAAa,EAAE,MAAM,CAAC;IACtB,0EAA0E;IAC1E,OAAO,EAAE,OAAO,CAAC;IACjB,uEAAuE;IACvE,kBAAkB,EAAE,MAAM,CAAC;IAC3B,4EAA4E;IAC5E,WAAW,EAAE,cAAc,CAAC;IAC5B,gFAAgF;IAChF,aAAa,EAAE,MAAM,CAAC;IACtB,8DAA8D;IAC9D,sBAAsB,EAAE,OAAO,CAAC;IAChC,wEAAwE;IACxE,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,wEAAwE;IACxE,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,4BAA4B;IAC5B,QAAQ,EAAE,uBAAuB,CAAC;IAClC,yEAAyE;IACzE,oBAAoB,EAAE,MAAM,CAAC;IAC7B,iDAAiD;IACjD,iBAAiB,EAAE,OAAO,CAAC;IAC3B,8CAA8C;IAC9C,OAAO,EAAE,OAAO,CAAC;IACjB,2DAAyD;IACzD,mBAAmB,EAAE,MAAM,CAAC;IAC5B,gEAA8D;IAC9D,eAAe,EAAE,MAAM,CAAC;CACzB,GAAG,IAAI,CAAC,eAAe,EAAE,eAAe,GAAG,oBAAoB,CAAC,CAAC;AAElE,eAAO,MAAM,eAAe
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,kBAAkB,EACvB,WAAW,EASZ,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAGpD,OAAO,EAAE,KAAK,eAAe,EAAsB,MAAM,wBAAwB,CAAC;AAElF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAEnE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,QAAA,MAAM,cAAc,yDAA0D,CAAC;AAC/E,KAAK,cAAc,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAEtD,QAAA,MAAM,OAAO,4CAA6C,CAAC;AAC3D,KAAK,OAAO,GAAG,CAAC,OAAO,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;AAExC,oBAAY,uBAAuB;IACjC,aAAa,kBAAkB;IAC/B,oBAAoB,yBAAyB;CAC9C;AAED,MAAM,MAAM,SAAS,GAAG;IACtB,6DAA6D;IAC7D,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,4EAA4E;IAC5E,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,gCAAgC;IAChC,SAAS,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAChC,gEAAgE;IAChE,UAAU,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;IAC5C,mEAAmE;IACnE,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;IAC9C,uEAAuE;IACvE,2BAA2B,EAAE,MAAM,CAAC;IACpC,kDAAkD;IAClD,gBAAgB,EAAE,WAAW,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC;IAC9C,6DAA6D;IAC7D,UAAU,EAAE,EAAE,GAAG,SAAS,CAAC;IAC3B,iDAAiD;IACjD,SAAS,EAAE,EAAE,CAAC;IACd,sDAAsD;IACtD,iBAAiB,EAAE,MAAM,CAAC;IAC1B,4DAA4D;IAC5D,qBAAqB,EAAE,MAAM,CAAC;IAC9B,2DAA2D;IAC3D,oBAAoB,EAAE,MAAM,CAAC;IAC7B,kCAAkC;IAClC,gBAAgB,EAAE,WAAW,CAAC;IAC9B,uEAAuE;IACvE,aAAa,EAAE,MAAM,CAAC;IACtB,0EAA0E;IAC1E,OAAO,EAAE,OAAO,CAAC;IACjB,uEAAuE;IACvE,kBAAkB,EAAE,MAAM,CAAC;IAC3B,4EAA4E;IAC5E,WAAW,EAAE,cAAc,CAAC;IAC5B,gFAAgF;IAChF,aAAa,EAAE,MAAM,CAAC;IACtB,8DAA8D;IAC9D,sBAAsB,EAAE,OAAO,CAAC;IAChC,wEAAwE;IACxE,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,wEAAwE;IACxE,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,4BAA4B;IAC5B,QAAQ,EAAE,uBAAuB,CAAC;IAClC,yEAAyE;IACzE,oBAAoB,EAAE,MAAM,CAAC;IAC7B,iDAAiD;IACjD,iBAAiB,EAAE,OAAO,CAAC;IAC3B,8CAA8C;IAC9C,OAAO,EAAE,OAAO,CAAC;IACjB,2DAAyD;IACzD,mBAAmB,EAAE,MAAM,CAAC;IAC5B,gEAA8D;IAC9D,eAAe,EAAE,MAAM,CAAC;CACzB,GAAG,IAAI,CAAC,eAAe,EAAE,eAAe,GAAG,oBAAoB,CAAC,CAAC;AAElE,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8C3B,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,kBAAkB,CAAC,SAAS,CAmK3D,CAAC;AAEF,wBAAgB,mBAAmB,IAAI,SAAS,CAE/C;AAED,wBAAgB,mBAAmB,IAAI,SAAS,CAE/C;AAED,wBAAgB,WAAW,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAKzD"}
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
*
|
|
25
25
|
*/
|
|
26
26
|
import { AztecAddress } from '@aztec/aztec.js/addresses';
|
|
27
|
-
import { TxHash, TxReceipt } from '@aztec/aztec.js/tx';
|
|
27
|
+
import type { TxHash, TxReceipt } from '@aztec/aztec.js/tx';
|
|
28
28
|
import type { ExtendedViemWalletClient } from '@aztec/ethereum/types';
|
|
29
29
|
import { EthAddress } from '@aztec/foundation/eth-address';
|
|
30
30
|
import type { TestContract } from '@aztec/noir-test-contracts.js/Test';
|
|
@@ -51,4 +51,4 @@ export declare class CrossChainBot extends BaseBot {
|
|
|
51
51
|
private getReadyL1ToL2Message;
|
|
52
52
|
private seedNewL1ToL2Message;
|
|
53
53
|
}
|
|
54
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3Jvc3NfY2hhaW5fYm90LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvY3Jvc3NfY2hhaW5fYm90LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F3Qkc7QUFDSCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFHekQsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzVELE9BQU8sS0FBSyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFdEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzNELE9BQU8sS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3ZFLE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNqRixPQUFPLEtBQUssRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUU5RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hDLE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUc3QyxPQUFPLEtBQUssRUFBRSxRQUFRLEVBQXdCLE1BQU0sa0JBQWtCLENBQUM7QUFLdkUseUVBQXFFO0FBQ3JFLHFCQUFhLGFBQWMsU0FBUSxPQUFPO0lBU3RDLE9BQU8sQ0FBQyxRQUFRLENBQUMsUUFBUTtJQUN6QixPQUFPLENBQUMsUUFBUSxDQUFDLFFBQVE7SUFDekIsT0FBTyxDQUFDLFFBQVEsQ0FBQyxXQUFXO0lBQzVCLE9BQU8sQ0FBQyxRQUFRLENBQUMsWUFBWTtJQUM3QixPQUFPLENBQUMsUUFBUSxDQUFDLGFBQWE7SUFDOUIsT0FBTyxDQUFDLFFBQVEsQ0FBQyxLQUFLO0lBYnhCLE9BQU8sQ0FBQyxVQUFVLENBQUs7SUFDdkIsT0FBTyxDQUFDLGNBQWMsQ0FBSztJQUMzQixPQUFPLENBQUMsa0JBQWtCLENBQTRCO0lBRXRELFNBQVMsYUFDUCxJQUFJLEVBQUUsU0FBUyxFQUNmLE1BQU0sRUFBRSxjQUFjLEVBQ3RCLHFCQUFxQixFQUFFLFlBQVksRUFDbEIsUUFBUSxFQUFFLFlBQVksRUFDdEIsUUFBUSxFQUFFLHdCQUF3QixFQUNsQyxXQUFXLEVBQUUsVUFBVSxFQUN2QixZQUFZLEVBQUUsVUFBVSxFQUN4QixhQUFhLEVBQUUsTUFBTSxFQUNyQixLQUFLLEVBQUUsUUFBUSxFQUNoQyxNQUFNLEVBQUUsU0FBUyxFQUdsQjtJQUVELE9BQWEsTUFBTSxDQUNqQixNQUFNLEVBQUUsU0FBUyxFQUNqQixNQUFNLEVBQUUsY0FBYyxFQUN0QixTQUFTLEVBQUUsU0FBUyxFQUNwQixjQUFjLEVBQUUsY0FBYyxHQUFHLFNBQVMsRUFDMUMsS0FBSyxFQUFFLFFBQVEsR0FDZCxPQUFPLENBQUMsYUFBYSxDQUFDLENBcUJ4QjtJQUVELFVBQWdCLGVBQWUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FpRC9EO0lBRUQsVUFBeUIsU0FBUyxDQUFDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBd0JwRjtZQUdhLHFCQUFxQjtZQW9CckIsb0JBQW9CO0NBVW5DIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cross_chain_bot.d.ts","sourceRoot":"","sources":["../src/cross_chain_bot.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAGzD,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"cross_chain_bot.d.ts","sourceRoot":"","sources":["../src/cross_chain_bot.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAGzD,OAAO,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAEtE,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAE9D,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAG7C,OAAO,KAAK,EAAE,QAAQ,EAAwB,MAAM,kBAAkB,CAAC;AAKvE,yEAAqE;AACrE,qBAAa,aAAc,SAAQ,OAAO;IAStC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,KAAK;IAbxB,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,kBAAkB,CAA4B;IAEtD,SAAS,aACP,IAAI,EAAE,SAAS,EACf,MAAM,EAAE,cAAc,EACtB,qBAAqB,EAAE,YAAY,EAClB,QAAQ,EAAE,YAAY,EACtB,QAAQ,EAAE,wBAAwB,EAClC,WAAW,EAAE,UAAU,EACvB,YAAY,EAAE,UAAU,EACxB,aAAa,EAAE,MAAM,EACrB,KAAK,EAAE,QAAQ,EAChC,MAAM,EAAE,SAAS,EAGlB;IAED,OAAa,MAAM,CACjB,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,cAAc,EACtB,SAAS,EAAE,SAAS,EACpB,cAAc,EAAE,cAAc,GAAG,SAAS,EAC1C,KAAK,EAAE,QAAQ,GACd,OAAO,CAAC,aAAa,CAAC,CAqBxB;IAED,UAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAiD/D;IAED,UAAyB,SAAS,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAwBpF;YAGa,qBAAqB;YAoBrB,oBAAoB;CAUnC"}
|
package/dest/cross_chain_bot.js
CHANGED
|
@@ -92,9 +92,12 @@ import { seedL1ToL2Message } from './l1_to_l2_seeding.js';
|
|
|
92
92
|
}
|
|
93
93
|
async onTxMined(receipt, logCtx) {
|
|
94
94
|
// Verify L2→L1 messages appeared in this tx's effects
|
|
95
|
-
const
|
|
96
|
-
|
|
97
|
-
|
|
95
|
+
const minedReceipt = await this.node.getTxReceipt(receipt.txHash, {
|
|
96
|
+
includeTxEffect: true
|
|
97
|
+
});
|
|
98
|
+
const l2ToL1MsgsRaw = minedReceipt.txEffect?.l2ToL1Msgs;
|
|
99
|
+
if (l2ToL1MsgsRaw) {
|
|
100
|
+
const l2ToL1Msgs = l2ToL1MsgsRaw.filter((m)=>!m.isZero());
|
|
98
101
|
if (l2ToL1Msgs.length >= this.config.l2ToL1MessagesPerTx) {
|
|
99
102
|
this.l2ToL1Sent += l2ToL1Msgs.length;
|
|
100
103
|
} else {
|
package/dest/factory.d.ts
CHANGED
|
@@ -66,4 +66,4 @@ export declare class BotFactory {
|
|
|
66
66
|
private getMinFees;
|
|
67
67
|
private withNoMinTxsPerBlock;
|
|
68
68
|
}
|
|
69
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
69
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFjdG9yeS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2ZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBcUJ6RCxPQUFPLEtBQUssRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBSXRFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDL0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBR2xFLE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUVqRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFekQsT0FBTyxFQUFFLEtBQUssU0FBUyxFQUEyQixNQUFNLGFBQWEsQ0FBQztBQUV0RSxPQUFPLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQVFqRCxxQkFBYSxVQUFVO0lBSW5CLE9BQU8sQ0FBQyxRQUFRLENBQUMsTUFBTTtJQUN2QixPQUFPLENBQUMsUUFBUSxDQUFDLE1BQU07SUFDdkIsT0FBTyxDQUFDLFFBQVEsQ0FBQyxLQUFLO0lBQ3RCLE9BQU8sQ0FBQyxRQUFRLENBQUMsU0FBUztJQUMxQixPQUFPLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQztJQVBsQyxPQUFPLENBQUMsR0FBRyxDQUF1QjtJQUVsQyxZQUNtQixNQUFNLEVBQUUsU0FBUyxFQUNqQixNQUFNLEVBQUUsY0FBYyxFQUN0QixLQUFLLEVBQUUsUUFBUSxFQUNmLFNBQVMsRUFBRSxTQUFTLEVBQ3BCLGNBQWMsQ0FBQyw0QkFBZ0IsRUFLakQ7SUFFRDs7O09BR0c7SUFDVSxLQUFLLElBQUksT0FBTyxDQUFDO1FBQzVCLE1BQU0sRUFBRSxjQUFjLENBQUM7UUFDdkIscUJBQXFCLEVBQUUsWUFBWSxDQUFDO1FBQ3BDLEtBQUssRUFBRSxhQUFhLEdBQUcsb0JBQW9CLENBQUM7UUFDNUMsSUFBSSxFQUFFLFNBQVMsQ0FBQztRQUNoQixTQUFTLEVBQUUsWUFBWSxDQUFDO0tBQ3pCLENBQUMsQ0FPRDtJQUVZLFFBQVEsSUFBSSxPQUFPLENBQUM7UUFDL0IsTUFBTSxFQUFFLGNBQWMsQ0FBQztRQUN2QixxQkFBcUIsRUFBRSxZQUFZLENBQUM7UUFDcEMsR0FBRyxFQUFFLFdBQVcsQ0FBQztRQUNqQixNQUFNLEVBQUUsYUFBYSxDQUFDO1FBQ3RCLE1BQU0sRUFBRSxhQUFhLENBQUM7UUFDdEIsSUFBSSxFQUFFLFNBQVMsQ0FBQztLQUNqQixDQUFDLENBNEJEO0lBRUQ7OztPQUdHO0lBQ1UsZUFBZSxJQUFJLE9BQU8sQ0FBQztRQUN0QyxNQUFNLEVBQUUsY0FBYyxDQUFDO1FBQ3ZCLHFCQUFxQixFQUFFLFlBQVksQ0FBQztRQUNwQyxRQUFRLEVBQUUsWUFBWSxDQUFDO1FBQ3ZCLElBQUksRUFBRSxTQUFTLENBQUM7UUFDaEIsUUFBUSxFQUFFLHdCQUF3QixDQUFDO1FBQ25DLGFBQWEsRUFBRSxNQUFNLENBQUM7S0FDdkIsQ0FBQyxDQTJERDtZQUVhLGlCQUFpQjtZQVdqQixZQUFZO1lBV1osMEJBQTBCO1lBdUMxQixnQkFBZ0I7WUFlaEIsaUNBQWlDO1lBY2pDLHlDQUF5QztZQWtCekMsZ0JBQWdCO1lBNEJoQixVQUFVO1lBeUNWLGtCQUFrQjtZQWFsQixnQkFBZ0I7WUEyQmhCLE9BQU87WUErRlAsd0JBQXdCO1lBNkR4QixxQkFBcUI7WUF1RHJCLFVBQVU7WUFpRFYsc0JBQXNCO1lBMkJ0QixnQkFBZ0I7WUFnQ2hCLFVBQVU7WUFZVixvQkFBb0I7Q0FlbkMifQ==
|
package/dest/factory.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAqBzD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAItE,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAGlE,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAEjF,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,OAAO,EAAE,KAAK,SAAS,EAA2B,MAAM,aAAa,CAAC;AAEtE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAQjD,qBAAa,UAAU;IAInB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC;IAPlC,OAAO,CAAC,GAAG,CAAuB;IAElC,YACmB,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,cAAc,EACtB,KAAK,EAAE,QAAQ,EACf,SAAS,EAAE,SAAS,EACpB,cAAc,CAAC,4BAAgB,EAKjD;IAED;;;OAGG;IACU,KAAK,IAAI,OAAO,CAAC;QAC5B,MAAM,EAAE,cAAc,CAAC;QACvB,qBAAqB,EAAE,YAAY,CAAC;QACpC,KAAK,EAAE,aAAa,GAAG,oBAAoB,CAAC;QAC5C,IAAI,EAAE,SAAS,CAAC;QAChB,SAAS,EAAE,YAAY,CAAC;KACzB,CAAC,CAOD;IAEY,QAAQ,IAAI,OAAO,CAAC;QAC/B,MAAM,EAAE,cAAc,CAAC;QACvB,qBAAqB,EAAE,YAAY,CAAC;QACpC,GAAG,EAAE,WAAW,CAAC;QACjB,MAAM,EAAE,aAAa,CAAC;QACtB,MAAM,EAAE,aAAa,CAAC;QACtB,IAAI,EAAE,SAAS,CAAC;KACjB,CAAC,CA4BD;IAED;;;OAGG;IACU,eAAe,IAAI,OAAO,CAAC;QACtC,MAAM,EAAE,cAAc,CAAC;QACvB,qBAAqB,EAAE,YAAY,CAAC;QACpC,QAAQ,EAAE,YAAY,CAAC;QACvB,IAAI,EAAE,SAAS,CAAC;QAChB,QAAQ,EAAE,wBAAwB,CAAC;QACnC,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC,CA2DD;YAEa,iBAAiB;
|
|
1
|
+
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAqBzD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAItE,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAGlE,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAEjF,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,OAAO,EAAE,KAAK,SAAS,EAA2B,MAAM,aAAa,CAAC;AAEtE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAQjD,qBAAa,UAAU;IAInB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC;IAPlC,OAAO,CAAC,GAAG,CAAuB;IAElC,YACmB,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,cAAc,EACtB,KAAK,EAAE,QAAQ,EACf,SAAS,EAAE,SAAS,EACpB,cAAc,CAAC,4BAAgB,EAKjD;IAED;;;OAGG;IACU,KAAK,IAAI,OAAO,CAAC;QAC5B,MAAM,EAAE,cAAc,CAAC;QACvB,qBAAqB,EAAE,YAAY,CAAC;QACpC,KAAK,EAAE,aAAa,GAAG,oBAAoB,CAAC;QAC5C,IAAI,EAAE,SAAS,CAAC;QAChB,SAAS,EAAE,YAAY,CAAC;KACzB,CAAC,CAOD;IAEY,QAAQ,IAAI,OAAO,CAAC;QAC/B,MAAM,EAAE,cAAc,CAAC;QACvB,qBAAqB,EAAE,YAAY,CAAC;QACpC,GAAG,EAAE,WAAW,CAAC;QACjB,MAAM,EAAE,aAAa,CAAC;QACtB,MAAM,EAAE,aAAa,CAAC;QACtB,IAAI,EAAE,SAAS,CAAC;KACjB,CAAC,CA4BD;IAED;;;OAGG;IACU,eAAe,IAAI,OAAO,CAAC;QACtC,MAAM,EAAE,cAAc,CAAC;QACvB,qBAAqB,EAAE,YAAY,CAAC;QACpC,QAAQ,EAAE,YAAY,CAAC;QACvB,IAAI,EAAE,SAAS,CAAC;QAChB,QAAQ,EAAE,wBAAwB,CAAC;QACnC,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC,CA2DD;YAEa,iBAAiB;YAWjB,YAAY;YAWZ,0BAA0B;YAuC1B,gBAAgB;YAehB,iCAAiC;YAcjC,yCAAyC;YAkBzC,gBAAgB;YA4BhB,UAAU;YAyCV,kBAAkB;YAalB,gBAAgB;YA2BhB,OAAO;YA+FP,wBAAwB;YA6DxB,qBAAqB;YAuDrB,UAAU;YAiDV,sBAAsB;YA2BtB,gBAAgB;YAgChB,UAAU;YAYV,oBAAoB;CAenC"}
|
package/dest/factory.js
CHANGED
|
@@ -132,11 +132,12 @@ export class BotFactory {
|
|
|
132
132
|
}
|
|
133
133
|
async setupTestContract(deployer) {
|
|
134
134
|
const deployOpts = {
|
|
135
|
-
from: deployer
|
|
136
|
-
contractAddressSalt: this.config.tokenSalt,
|
|
137
|
-
universalDeploy: true
|
|
135
|
+
from: deployer
|
|
138
136
|
};
|
|
139
|
-
const deploy = TestContract.deploy(this.wallet
|
|
137
|
+
const deploy = TestContract.deploy(this.wallet, {
|
|
138
|
+
salt: this.config.tokenSalt,
|
|
139
|
+
universalDeploy: true
|
|
140
|
+
});
|
|
140
141
|
const instance = await this.registerOrDeployContract('TestContract', deploy, deployOpts);
|
|
141
142
|
return TestContract.at(instance.address, this.wallet);
|
|
142
143
|
}
|
|
@@ -211,43 +212,39 @@ export class BotFactory {
|
|
|
211
212
|
}
|
|
212
213
|
/**
|
|
213
214
|
* Setup token0 for AMM with refuel-first behaviour when token already exists.
|
|
214
|
-
*/ async setupTokenContractWithOptionalEarlyRefuel(deployer,
|
|
215
|
-
const
|
|
216
|
-
|
|
217
|
-
contractAddressSalt,
|
|
215
|
+
*/ async setupTokenContractWithOptionalEarlyRefuel(deployer, salt, name, ticker, decimals = 18) {
|
|
216
|
+
const deploy = TokenContract.deploy(this.wallet, deployer, name, ticker, decimals, {
|
|
217
|
+
salt,
|
|
218
218
|
universalDeploy: true
|
|
219
|
-
};
|
|
220
|
-
const
|
|
221
|
-
const instance = await deploy.getInstance(deployOpts);
|
|
219
|
+
});
|
|
220
|
+
const instance = await deploy.getInstance();
|
|
222
221
|
const metadata = await this.wallet.getContractMetadata(instance.address);
|
|
223
222
|
if (metadata.isContractPublished) {
|
|
224
223
|
this.log.info(`Token ${name} at ${instance.address.toString()} already deployed, refueling before setup`);
|
|
225
224
|
const token = TokenContract.at(instance.address, this.wallet);
|
|
226
225
|
await this.ensureFeeJuiceBalance(deployer, token);
|
|
227
226
|
}
|
|
228
|
-
return this.setupTokenContract(deployer,
|
|
227
|
+
return this.setupTokenContract(deployer, salt, name, ticker, decimals);
|
|
229
228
|
}
|
|
230
229
|
async getTokenInstance(sender) {
|
|
231
|
-
const
|
|
232
|
-
from: sender,
|
|
233
|
-
contractAddressSalt: this.config.tokenSalt,
|
|
234
|
-
universalDeploy: true
|
|
235
|
-
};
|
|
230
|
+
const salt = this.config.tokenSalt;
|
|
236
231
|
if (this.config.contract === SupportedTokenContracts.TokenContract) {
|
|
237
|
-
const deploy = TokenContract.deploy(this.wallet, sender, 'BotToken', 'BOT', 18
|
|
238
|
-
|
|
232
|
+
const deploy = TokenContract.deploy(this.wallet, sender, 'BotToken', 'BOT', 18, {
|
|
233
|
+
salt,
|
|
234
|
+
universalDeploy: true
|
|
235
|
+
});
|
|
236
|
+
const instance = await deploy.getInstance();
|
|
239
237
|
return TokenContract.at(instance.address, this.wallet);
|
|
240
238
|
}
|
|
241
239
|
if (this.config.contract === SupportedTokenContracts.PrivateTokenContract) {
|
|
242
240
|
const tokenSecretKey = Fr.random();
|
|
243
241
|
const tokenPublicKeys = (await deriveKeys(tokenSecretKey)).publicKeys;
|
|
244
|
-
const deploy = PrivateTokenContract.
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
skipClassPublication: true,
|
|
249
|
-
skipInitialization: false
|
|
242
|
+
const deploy = PrivateTokenContract.deploy(this.wallet, MINT_BALANCE, sender, {
|
|
243
|
+
salt,
|
|
244
|
+
universalDeploy: true,
|
|
245
|
+
publicKeys: tokenPublicKeys
|
|
250
246
|
});
|
|
247
|
+
const instance = await deploy.getInstance();
|
|
251
248
|
return PrivateTokenContract.at(instance.address, this.wallet);
|
|
252
249
|
}
|
|
253
250
|
throw new Error(`Unsupported token contract type: ${this.config.contract}`);
|
|
@@ -260,26 +257,32 @@ export class BotFactory {
|
|
|
260
257
|
* @returns The TokenContract or PrivateTokenContract instance.
|
|
261
258
|
*/ async setupToken(sender) {
|
|
262
259
|
let deploy;
|
|
260
|
+
const salt = this.config.tokenSalt;
|
|
263
261
|
const deployOpts = {
|
|
264
|
-
from: sender
|
|
265
|
-
contractAddressSalt: this.config.tokenSalt,
|
|
266
|
-
universalDeploy: true
|
|
262
|
+
from: sender
|
|
267
263
|
};
|
|
268
264
|
let token;
|
|
269
265
|
if (this.config.contract === SupportedTokenContracts.TokenContract) {
|
|
270
|
-
deploy = TokenContract.deploy(this.wallet, sender, 'BotToken', 'BOT', 18
|
|
271
|
-
|
|
266
|
+
deploy = TokenContract.deploy(this.wallet, sender, 'BotToken', 'BOT', 18, {
|
|
267
|
+
salt,
|
|
268
|
+
universalDeploy: true
|
|
269
|
+
});
|
|
270
|
+
const instance = await deploy.getInstance();
|
|
272
271
|
token = TokenContract.at(instance.address, this.wallet);
|
|
273
272
|
} else if (this.config.contract === SupportedTokenContracts.PrivateTokenContract) {
|
|
274
273
|
// Generate keys for the contract since PrivateToken uses SinglePrivateMutable which requires keys
|
|
275
274
|
const tokenSecretKey = Fr.random();
|
|
276
275
|
const tokenPublicKeys = (await deriveKeys(tokenSecretKey)).publicKeys;
|
|
277
|
-
deploy = PrivateTokenContract.
|
|
276
|
+
deploy = PrivateTokenContract.deploy(this.wallet, MINT_BALANCE, sender, {
|
|
277
|
+
salt,
|
|
278
|
+
universalDeploy: true,
|
|
279
|
+
publicKeys: tokenPublicKeys
|
|
280
|
+
});
|
|
278
281
|
deployOpts.skipInstancePublication = true;
|
|
279
282
|
deployOpts.skipClassPublication = true;
|
|
280
283
|
deployOpts.skipInitialization = false;
|
|
281
284
|
// Register the contract with the secret key before deployment
|
|
282
|
-
const tokenInstance = await deploy.getInstance(
|
|
285
|
+
const tokenInstance = await deploy.getInstance();
|
|
283
286
|
token = PrivateTokenContract.at(tokenInstance.address, this.wallet);
|
|
284
287
|
await this.wallet.registerContract(tokenInstance, PrivateTokenContract.artifact, tokenSecretKey);
|
|
285
288
|
// The contract constructor initializes private storage vars that need the contract's own nullifier key.
|
|
@@ -296,23 +299,25 @@ export class BotFactory {
|
|
|
296
299
|
* Checks if the token contract is deployed and deploys it if necessary.
|
|
297
300
|
* @param wallet - Wallet to deploy the token contract from.
|
|
298
301
|
* @returns The TokenContract instance.
|
|
299
|
-
*/ async setupTokenContract(deployer,
|
|
302
|
+
*/ async setupTokenContract(deployer, salt, name, ticker, decimals = 18) {
|
|
300
303
|
const deployOpts = {
|
|
301
|
-
from: deployer
|
|
302
|
-
contractAddressSalt,
|
|
303
|
-
universalDeploy: true
|
|
304
|
+
from: deployer
|
|
304
305
|
};
|
|
305
|
-
const deploy = TokenContract.deploy(this.wallet, deployer, name, ticker, decimals
|
|
306
|
+
const deploy = TokenContract.deploy(this.wallet, deployer, name, ticker, decimals, {
|
|
307
|
+
salt,
|
|
308
|
+
universalDeploy: true
|
|
309
|
+
});
|
|
306
310
|
const instance = await this.registerOrDeployContract('Token - ' + name, deploy, deployOpts);
|
|
307
311
|
return TokenContract.at(instance.address, this.wallet);
|
|
308
312
|
}
|
|
309
|
-
async setupAmmContract(deployer,
|
|
313
|
+
async setupAmmContract(deployer, salt, token0, token1, lpToken) {
|
|
310
314
|
const deployOpts = {
|
|
311
|
-
from: deployer
|
|
312
|
-
contractAddressSalt,
|
|
313
|
-
universalDeploy: true
|
|
315
|
+
from: deployer
|
|
314
316
|
};
|
|
315
|
-
const deploy = AMMContract.deploy(this.wallet, token0.address, token1.address, lpToken.address
|
|
317
|
+
const deploy = AMMContract.deploy(this.wallet, token0.address, token1.address, lpToken.address, {
|
|
318
|
+
salt,
|
|
319
|
+
universalDeploy: true
|
|
320
|
+
});
|
|
316
321
|
const instance = await this.registerOrDeployContract('AMM', deploy, deployOpts);
|
|
317
322
|
const amm = AMMContract.at(instance.address, this.wallet);
|
|
318
323
|
this.log.info(`AMM deployed at ${amm.address}`);
|
|
@@ -384,7 +389,7 @@ export class BotFactory {
|
|
|
384
389
|
this.log.info(`Updated private balances of ${defaultAccountAddress} after minting and funding AMM: token0=${newT0Bal}, token1=${newT1Bal}, lp=${newLPBal}`);
|
|
385
390
|
}
|
|
386
391
|
async registerOrDeployContract(name, deploy, deployOpts) {
|
|
387
|
-
const instance = await deploy.getInstance(
|
|
392
|
+
const instance = await deploy.getInstance();
|
|
388
393
|
const address = instance.address;
|
|
389
394
|
const metadata = await this.wallet.getContractMetadata(address);
|
|
390
395
|
if (metadata.isContractPublished) {
|
package/dest/interface.d.ts
CHANGED
|
@@ -4,11 +4,7 @@ import { z } from 'zod';
|
|
|
4
4
|
import { type BotConfig } from './config.js';
|
|
5
5
|
export declare const BotInfoSchema: z.ZodObject<{
|
|
6
6
|
botAddress: import("@aztec/stdlib/schemas").ZodFor<AztecAddress>;
|
|
7
|
-
},
|
|
8
|
-
botAddress: AztecAddress;
|
|
9
|
-
}, {
|
|
10
|
-
botAddress?: any;
|
|
11
|
-
}>;
|
|
7
|
+
}, z.core.$strip>;
|
|
12
8
|
export type BotInfo = z.infer<typeof BotInfoSchema>;
|
|
13
9
|
export interface BotRunnerApi {
|
|
14
10
|
start(): Promise<void>;
|
|
@@ -20,4 +16,4 @@ export interface BotRunnerApi {
|
|
|
20
16
|
update(config: BotConfig): Promise<void>;
|
|
21
17
|
}
|
|
22
18
|
export declare const BotRunnerApiSchema: ApiSchemaFor<BotRunnerApi>;
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJmYWNlLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN6RCxPQUFPLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUUxRCxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sS0FBSyxDQUFDO0FBRXhCLE9BQU8sRUFBRSxLQUFLLFNBQVMsRUFBbUIsTUFBTSxhQUFhLENBQUM7QUFFOUQsZUFBTyxNQUFNLGFBQWE7O2lCQUV4QixDQUFDO0FBRUgsTUFBTSxNQUFNLE9BQU8sR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sYUFBYSxDQUFDLENBQUM7QUFFcEQsTUFBTSxXQUFXLFlBQVk7SUFDM0IsS0FBSyxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN2QixJQUFJLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3RCLEdBQUcsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDckIsS0FBSyxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN2QixTQUFTLElBQUksT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ2hDLE9BQU8sSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDNUIsTUFBTSxDQUFDLE1BQU0sRUFBRSxTQUFTLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0NBQzFDO0FBRUQsZUFBTyxNQUFNLGtCQUFrQixFQUFFLFlBQVksQ0FBQyxZQUFZLENBUXpELENBQUMifQ==
|
package/dest/interface.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../src/interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAE1D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,KAAK,SAAS,EAAmB,MAAM,aAAa,CAAC;AAE9D,eAAO,MAAM,aAAa
|
|
1
|
+
{"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../src/interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAE1D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,KAAK,SAAS,EAAmB,MAAM,aAAa,CAAC;AAE9D,eAAO,MAAM,aAAa;;iBAExB,CAAC;AAEH,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAEpD,MAAM,WAAW,YAAY;IAC3B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACrB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC;IAChC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAC5B,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1C;AAED,eAAO,MAAM,kBAAkB,EAAE,YAAY,CAAC,YAAY,CAQzD,CAAC"}
|
package/dest/interface.js
CHANGED
|
@@ -5,11 +5,34 @@ export const BotInfoSchema = z.object({
|
|
|
5
5
|
botAddress: AztecAddress.schema
|
|
6
6
|
});
|
|
7
7
|
export const BotRunnerApiSchema = {
|
|
8
|
-
start: z.function(
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
8
|
+
start: z.function({
|
|
9
|
+
input: z.tuple([]),
|
|
10
|
+
output: z.void()
|
|
11
|
+
}),
|
|
12
|
+
stop: z.function({
|
|
13
|
+
input: z.tuple([]),
|
|
14
|
+
output: z.void()
|
|
15
|
+
}),
|
|
16
|
+
run: z.function({
|
|
17
|
+
input: z.tuple([]),
|
|
18
|
+
output: z.void()
|
|
19
|
+
}),
|
|
20
|
+
setup: z.function({
|
|
21
|
+
input: z.tuple([]),
|
|
22
|
+
output: z.void()
|
|
23
|
+
}),
|
|
24
|
+
getInfo: z.function({
|
|
25
|
+
input: z.tuple([]),
|
|
26
|
+
output: BotInfoSchema
|
|
27
|
+
}),
|
|
28
|
+
getConfig: z.function({
|
|
29
|
+
input: z.tuple([]),
|
|
30
|
+
output: BotConfigSchema
|
|
31
|
+
}),
|
|
32
|
+
update: z.function({
|
|
33
|
+
input: z.tuple([
|
|
34
|
+
BotConfigSchema
|
|
35
|
+
]),
|
|
36
|
+
output: z.void()
|
|
37
|
+
})
|
|
15
38
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aztec/bot",
|
|
3
|
-
"version": "0.0.1-commit.
|
|
3
|
+
"version": "0.0.1-commit.b3d3157a",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"exports": {
|
|
6
6
|
".": "./dest/index.js",
|
|
@@ -54,24 +54,24 @@
|
|
|
54
54
|
]
|
|
55
55
|
},
|
|
56
56
|
"dependencies": {
|
|
57
|
-
"@aztec/accounts": "0.0.1-commit.
|
|
58
|
-
"@aztec/aztec.js": "0.0.1-commit.
|
|
59
|
-
"@aztec/entrypoints": "0.0.1-commit.
|
|
60
|
-
"@aztec/ethereum": "0.0.1-commit.
|
|
61
|
-
"@aztec/foundation": "0.0.1-commit.
|
|
62
|
-
"@aztec/kv-store": "0.0.1-commit.
|
|
63
|
-
"@aztec/l1-artifacts": "0.0.1-commit.
|
|
64
|
-
"@aztec/noir-contracts.js": "0.0.1-commit.
|
|
65
|
-
"@aztec/noir-protocol-circuits-types": "0.0.1-commit.
|
|
66
|
-
"@aztec/noir-test-contracts.js": "0.0.1-commit.
|
|
67
|
-
"@aztec/protocol-contracts": "0.0.1-commit.
|
|
68
|
-
"@aztec/stdlib": "0.0.1-commit.
|
|
69
|
-
"@aztec/telemetry-client": "0.0.1-commit.
|
|
70
|
-
"@aztec/wallets": "0.0.1-commit.
|
|
57
|
+
"@aztec/accounts": "0.0.1-commit.b3d3157a",
|
|
58
|
+
"@aztec/aztec.js": "0.0.1-commit.b3d3157a",
|
|
59
|
+
"@aztec/entrypoints": "0.0.1-commit.b3d3157a",
|
|
60
|
+
"@aztec/ethereum": "0.0.1-commit.b3d3157a",
|
|
61
|
+
"@aztec/foundation": "0.0.1-commit.b3d3157a",
|
|
62
|
+
"@aztec/kv-store": "0.0.1-commit.b3d3157a",
|
|
63
|
+
"@aztec/l1-artifacts": "0.0.1-commit.b3d3157a",
|
|
64
|
+
"@aztec/noir-contracts.js": "0.0.1-commit.b3d3157a",
|
|
65
|
+
"@aztec/noir-protocol-circuits-types": "0.0.1-commit.b3d3157a",
|
|
66
|
+
"@aztec/noir-test-contracts.js": "0.0.1-commit.b3d3157a",
|
|
67
|
+
"@aztec/protocol-contracts": "0.0.1-commit.b3d3157a",
|
|
68
|
+
"@aztec/stdlib": "0.0.1-commit.b3d3157a",
|
|
69
|
+
"@aztec/telemetry-client": "0.0.1-commit.b3d3157a",
|
|
70
|
+
"@aztec/wallets": "0.0.1-commit.b3d3157a",
|
|
71
71
|
"source-map-support": "^0.5.21",
|
|
72
72
|
"tslib": "^2.4.0",
|
|
73
73
|
"viem": "npm:@aztec/viem@2.38.2",
|
|
74
|
-
"zod": "^
|
|
74
|
+
"zod": "^4"
|
|
75
75
|
},
|
|
76
76
|
"devDependencies": {
|
|
77
77
|
"@jest/globals": "^30.0.0",
|
package/src/amm_bot.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { AztecAddress } from '@aztec/aztec.js/addresses';
|
|
2
2
|
import { NO_WAIT } from '@aztec/aztec.js/contracts';
|
|
3
3
|
import { Fr } from '@aztec/aztec.js/fields';
|
|
4
|
-
import { TxHash, TxReceipt } from '@aztec/aztec.js/tx';
|
|
4
|
+
import type { TxHash, TxReceipt } from '@aztec/aztec.js/tx';
|
|
5
5
|
import { jsonStringify } from '@aztec/foundation/json-rpc';
|
|
6
6
|
import type { AMMContract } from '@aztec/noir-contracts.js/AMM';
|
|
7
7
|
import type { TokenContract } from '@aztec/noir-contracts.js/Token';
|
package/src/base_bot.ts
CHANGED
|
@@ -2,7 +2,8 @@ import { AztecAddress } from '@aztec/aztec.js/addresses';
|
|
|
2
2
|
import type { SendInteractionOptions } from '@aztec/aztec.js/contracts';
|
|
3
3
|
import { createLogger } from '@aztec/aztec.js/log';
|
|
4
4
|
import { waitForTx } from '@aztec/aztec.js/node';
|
|
5
|
-
import {
|
|
5
|
+
import { TxStatus } from '@aztec/aztec.js/tx';
|
|
6
|
+
import type { TxHash, TxReceipt } from '@aztec/aztec.js/tx';
|
|
6
7
|
import { Gas } from '@aztec/stdlib/gas';
|
|
7
8
|
import type { AztecNode } from '@aztec/stdlib/interfaces/client';
|
|
8
9
|
import type { EmbeddedWallet } from '@aztec/wallets/embedded';
|
package/src/cross_chain_bot.ts
CHANGED
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
import { AztecAddress } from '@aztec/aztec.js/addresses';
|
|
27
27
|
import { BatchCall, NO_WAIT } from '@aztec/aztec.js/contracts';
|
|
28
28
|
import { isL1ToL2MessageReady } from '@aztec/aztec.js/messaging';
|
|
29
|
-
import { TxHash, TxReceipt } from '@aztec/aztec.js/tx';
|
|
29
|
+
import type { TxHash, TxReceipt } from '@aztec/aztec.js/tx';
|
|
30
30
|
import type { ExtendedViemWalletClient } from '@aztec/ethereum/types';
|
|
31
31
|
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
32
32
|
import { EthAddress } from '@aztec/foundation/eth-address';
|
|
@@ -146,9 +146,10 @@ export class CrossChainBot extends BaseBot {
|
|
|
146
146
|
|
|
147
147
|
protected override async onTxMined(receipt: TxReceipt, logCtx: object): Promise<void> {
|
|
148
148
|
// Verify L2→L1 messages appeared in this tx's effects
|
|
149
|
-
const
|
|
150
|
-
|
|
151
|
-
|
|
149
|
+
const minedReceipt = await this.node.getTxReceipt(receipt.txHash, { includeTxEffect: true });
|
|
150
|
+
const l2ToL1MsgsRaw = minedReceipt.txEffect?.l2ToL1Msgs;
|
|
151
|
+
if (l2ToL1MsgsRaw) {
|
|
152
|
+
const l2ToL1Msgs = l2ToL1MsgsRaw.filter(m => !m.isZero());
|
|
152
153
|
if (l2ToL1Msgs.length >= this.config.l2ToL1MessagesPerTx) {
|
|
153
154
|
this.l2ToL1Sent += l2ToL1Msgs.length;
|
|
154
155
|
} else {
|
package/src/factory.ts
CHANGED
|
@@ -189,12 +189,8 @@ export class BotFactory {
|
|
|
189
189
|
}
|
|
190
190
|
|
|
191
191
|
private async setupTestContract(deployer: AztecAddress): Promise<TestContract> {
|
|
192
|
-
const deployOpts: DeployOptions = {
|
|
193
|
-
|
|
194
|
-
contractAddressSalt: this.config.tokenSalt,
|
|
195
|
-
universalDeploy: true,
|
|
196
|
-
};
|
|
197
|
-
const deploy = TestContract.deploy(this.wallet);
|
|
192
|
+
const deployOpts: DeployOptions = { from: deployer };
|
|
193
|
+
const deploy = TestContract.deploy(this.wallet, { salt: this.config.tokenSalt, universalDeploy: true });
|
|
198
194
|
const instance = await this.registerOrDeployContract('TestContract', deploy, deployOpts);
|
|
199
195
|
return TestContract.at(instance.address, this.wallet);
|
|
200
196
|
}
|
|
@@ -284,44 +280,38 @@ export class BotFactory {
|
|
|
284
280
|
*/
|
|
285
281
|
private async setupTokenContractWithOptionalEarlyRefuel(
|
|
286
282
|
deployer: AztecAddress,
|
|
287
|
-
|
|
283
|
+
salt: Fr,
|
|
288
284
|
name: string,
|
|
289
285
|
ticker: string,
|
|
290
286
|
decimals = 18,
|
|
291
287
|
): Promise<TokenContract> {
|
|
292
|
-
const
|
|
293
|
-
const
|
|
294
|
-
const instance = await deploy.getInstance(deployOpts);
|
|
288
|
+
const deploy = TokenContract.deploy(this.wallet, deployer, name, ticker, decimals, { salt, universalDeploy: true });
|
|
289
|
+
const instance = await deploy.getInstance();
|
|
295
290
|
const metadata = await this.wallet.getContractMetadata(instance.address);
|
|
296
291
|
if (metadata.isContractPublished) {
|
|
297
292
|
this.log.info(`Token ${name} at ${instance.address.toString()} already deployed, refueling before setup`);
|
|
298
293
|
const token = TokenContract.at(instance.address, this.wallet);
|
|
299
294
|
await this.ensureFeeJuiceBalance(deployer, token);
|
|
300
295
|
}
|
|
301
|
-
return this.setupTokenContract(deployer,
|
|
296
|
+
return this.setupTokenContract(deployer, salt, name, ticker, decimals);
|
|
302
297
|
}
|
|
303
298
|
|
|
304
299
|
private async getTokenInstance(sender: AztecAddress): Promise<TokenContract | PrivateTokenContract> {
|
|
305
|
-
const
|
|
306
|
-
from: sender,
|
|
307
|
-
contractAddressSalt: this.config.tokenSalt,
|
|
308
|
-
universalDeploy: true,
|
|
309
|
-
};
|
|
300
|
+
const salt = this.config.tokenSalt;
|
|
310
301
|
if (this.config.contract === SupportedTokenContracts.TokenContract) {
|
|
311
|
-
const deploy = TokenContract.deploy(this.wallet, sender, 'BotToken', 'BOT', 18);
|
|
312
|
-
const instance = await deploy.getInstance(
|
|
302
|
+
const deploy = TokenContract.deploy(this.wallet, sender, 'BotToken', 'BOT', 18, { salt, universalDeploy: true });
|
|
303
|
+
const instance = await deploy.getInstance();
|
|
313
304
|
return TokenContract.at(instance.address, this.wallet);
|
|
314
305
|
}
|
|
315
306
|
if (this.config.contract === SupportedTokenContracts.PrivateTokenContract) {
|
|
316
307
|
const tokenSecretKey = Fr.random();
|
|
317
308
|
const tokenPublicKeys = (await deriveKeys(tokenSecretKey)).publicKeys;
|
|
318
|
-
const deploy = PrivateTokenContract.
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
skipClassPublication: true,
|
|
323
|
-
skipInitialization: false,
|
|
309
|
+
const deploy = PrivateTokenContract.deploy(this.wallet, MINT_BALANCE, sender, {
|
|
310
|
+
salt,
|
|
311
|
+
universalDeploy: true,
|
|
312
|
+
publicKeys: tokenPublicKeys,
|
|
324
313
|
});
|
|
314
|
+
const instance = await deploy.getInstance();
|
|
325
315
|
return PrivateTokenContract.at(instance.address, this.wallet);
|
|
326
316
|
}
|
|
327
317
|
throw new Error(`Unsupported token contract type: ${this.config.contract}`);
|
|
@@ -336,27 +326,28 @@ export class BotFactory {
|
|
|
336
326
|
*/
|
|
337
327
|
private async setupToken(sender: AztecAddress): Promise<TokenContract | PrivateTokenContract> {
|
|
338
328
|
let deploy: DeployMethod<TokenContract | PrivateTokenContract>;
|
|
339
|
-
const
|
|
340
|
-
|
|
341
|
-
contractAddressSalt: this.config.tokenSalt,
|
|
342
|
-
universalDeploy: true,
|
|
343
|
-
};
|
|
329
|
+
const salt = this.config.tokenSalt;
|
|
330
|
+
const deployOpts: DeployOptions = { from: sender };
|
|
344
331
|
let token: TokenContract | PrivateTokenContract;
|
|
345
332
|
if (this.config.contract === SupportedTokenContracts.TokenContract) {
|
|
346
|
-
deploy = TokenContract.deploy(this.wallet, sender, 'BotToken', 'BOT', 18);
|
|
347
|
-
const instance = await deploy.getInstance(
|
|
333
|
+
deploy = TokenContract.deploy(this.wallet, sender, 'BotToken', 'BOT', 18, { salt, universalDeploy: true });
|
|
334
|
+
const instance = await deploy.getInstance();
|
|
348
335
|
token = TokenContract.at(instance.address, this.wallet);
|
|
349
336
|
} else if (this.config.contract === SupportedTokenContracts.PrivateTokenContract) {
|
|
350
337
|
// Generate keys for the contract since PrivateToken uses SinglePrivateMutable which requires keys
|
|
351
338
|
const tokenSecretKey = Fr.random();
|
|
352
339
|
const tokenPublicKeys = (await deriveKeys(tokenSecretKey)).publicKeys;
|
|
353
|
-
deploy = PrivateTokenContract.
|
|
340
|
+
deploy = PrivateTokenContract.deploy(this.wallet, MINT_BALANCE, sender, {
|
|
341
|
+
salt,
|
|
342
|
+
universalDeploy: true,
|
|
343
|
+
publicKeys: tokenPublicKeys,
|
|
344
|
+
});
|
|
354
345
|
deployOpts.skipInstancePublication = true;
|
|
355
346
|
deployOpts.skipClassPublication = true;
|
|
356
347
|
deployOpts.skipInitialization = false;
|
|
357
348
|
|
|
358
349
|
// Register the contract with the secret key before deployment
|
|
359
|
-
const tokenInstance = await deploy.getInstance(
|
|
350
|
+
const tokenInstance = await deploy.getInstance();
|
|
360
351
|
token = PrivateTokenContract.at(tokenInstance.address, this.wallet);
|
|
361
352
|
await this.wallet.registerContract(tokenInstance, PrivateTokenContract.artifact, tokenSecretKey);
|
|
362
353
|
// The contract constructor initializes private storage vars that need the contract's own nullifier key.
|
|
@@ -376,26 +367,29 @@ export class BotFactory {
|
|
|
376
367
|
*/
|
|
377
368
|
private async setupTokenContract(
|
|
378
369
|
deployer: AztecAddress,
|
|
379
|
-
|
|
370
|
+
salt: Fr,
|
|
380
371
|
name: string,
|
|
381
372
|
ticker: string,
|
|
382
373
|
decimals = 18,
|
|
383
374
|
): Promise<TokenContract> {
|
|
384
|
-
const deployOpts: DeployOptions = { from: deployer
|
|
385
|
-
const deploy = TokenContract.deploy(this.wallet, deployer, name, ticker, decimals);
|
|
375
|
+
const deployOpts: DeployOptions = { from: deployer };
|
|
376
|
+
const deploy = TokenContract.deploy(this.wallet, deployer, name, ticker, decimals, { salt, universalDeploy: true });
|
|
386
377
|
const instance = await this.registerOrDeployContract('Token - ' + name, deploy, deployOpts);
|
|
387
378
|
return TokenContract.at(instance.address, this.wallet);
|
|
388
379
|
}
|
|
389
380
|
|
|
390
381
|
private async setupAmmContract(
|
|
391
382
|
deployer: AztecAddress,
|
|
392
|
-
|
|
383
|
+
salt: Fr,
|
|
393
384
|
token0: TokenContract,
|
|
394
385
|
token1: TokenContract,
|
|
395
386
|
lpToken: TokenContract,
|
|
396
387
|
): Promise<AMMContract> {
|
|
397
|
-
const deployOpts: DeployOptions = { from: deployer
|
|
398
|
-
const deploy = AMMContract.deploy(this.wallet, token0.address, token1.address, lpToken.address
|
|
388
|
+
const deployOpts: DeployOptions = { from: deployer };
|
|
389
|
+
const deploy = AMMContract.deploy(this.wallet, token0.address, token1.address, lpToken.address, {
|
|
390
|
+
salt,
|
|
391
|
+
universalDeploy: true,
|
|
392
|
+
});
|
|
399
393
|
const instance = await this.registerOrDeployContract('AMM', deploy, deployOpts);
|
|
400
394
|
const amm = AMMContract.at(instance.address, this.wallet);
|
|
401
395
|
|
|
@@ -511,7 +505,7 @@ export class BotFactory {
|
|
|
511
505
|
deploy: DeployMethod<T>,
|
|
512
506
|
deployOpts: DeployOptions,
|
|
513
507
|
): Promise<ContractInstanceWithAddress> {
|
|
514
|
-
const instance = await deploy.getInstance(
|
|
508
|
+
const instance = await deploy.getInstance();
|
|
515
509
|
const address = instance.address;
|
|
516
510
|
const metadata = await this.wallet.getContractMetadata(address);
|
|
517
511
|
if (metadata.isContractPublished) {
|
package/src/interface.ts
CHANGED
|
@@ -22,11 +22,11 @@ export interface BotRunnerApi {
|
|
|
22
22
|
}
|
|
23
23
|
|
|
24
24
|
export const BotRunnerApiSchema: ApiSchemaFor<BotRunnerApi> = {
|
|
25
|
-
start: z.function(
|
|
26
|
-
stop: z.function(
|
|
27
|
-
run: z.function(
|
|
28
|
-
setup: z.function(
|
|
29
|
-
getInfo: z.function(
|
|
30
|
-
getConfig: z.function(
|
|
31
|
-
update: z.function(
|
|
25
|
+
start: z.function({ input: z.tuple([]), output: z.void() }),
|
|
26
|
+
stop: z.function({ input: z.tuple([]), output: z.void() }),
|
|
27
|
+
run: z.function({ input: z.tuple([]), output: z.void() }),
|
|
28
|
+
setup: z.function({ input: z.tuple([]), output: z.void() }),
|
|
29
|
+
getInfo: z.function({ input: z.tuple([]), output: BotInfoSchema }),
|
|
30
|
+
getConfig: z.function({ input: z.tuple([]), output: BotConfigSchema }),
|
|
31
|
+
update: z.function({ input: z.tuple([BotConfigSchema]), output: z.void() }),
|
|
32
32
|
};
|