@aztec/bot 0.0.1-commit.d3ec352c → 0.0.1-commit.fcb71a6
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/config.d.ts +4 -5
- package/dest/config.d.ts.map +1 -1
- package/dest/config.js +4 -4
- package/dest/factory.d.ts +1 -1
- package/dest/factory.d.ts.map +1 -1
- package/dest/factory.js +13 -4
- package/dest/store/bot_store.js +1 -1
- package/package.json +13 -13
- package/src/config.ts +48 -46
- package/src/factory.ts +15 -4
- package/src/store/bot_store.ts +1 -1
package/dest/config.d.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { type ConfigMappingsType, SecretValue } from '@aztec/foundation/config';
|
|
2
|
-
import { Fr } from '@aztec/foundation/
|
|
2
|
+
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
3
3
|
import { type DataStoreConfig } from '@aztec/kv-store/config';
|
|
4
|
-
import { type ZodFor } from '@aztec/stdlib/schemas';
|
|
5
4
|
import type { ComponentsVersions } from '@aztec/stdlib/versioning';
|
|
6
5
|
import { z } from 'zod';
|
|
7
6
|
declare const BotFollowChain: readonly ["NONE", "PENDING", "PROVEN"];
|
|
@@ -70,8 +69,8 @@ export declare const BotConfigSchema: z.ZodEffects<z.ZodObject<{
|
|
|
70
69
|
l1PrivateKey: z.ZodOptional<z.ZodType<SecretValue<string>, any, any>>;
|
|
71
70
|
l1ToL2MessageTimeoutSeconds: z.ZodNumber;
|
|
72
71
|
senderPrivateKey: z.ZodOptional<z.ZodType<SecretValue<Fr>, any, any>>;
|
|
73
|
-
senderSalt: z.ZodOptional<ZodFor<Fr>>;
|
|
74
|
-
tokenSalt: ZodFor<Fr>;
|
|
72
|
+
senderSalt: z.ZodOptional<import("@aztec/stdlib/schemas").ZodFor<Fr>>;
|
|
73
|
+
tokenSalt: import("@aztec/stdlib/schemas").ZodFor<Fr>;
|
|
75
74
|
txIntervalSeconds: z.ZodNumber;
|
|
76
75
|
privateTransfersPerTx: z.ZodNumber;
|
|
77
76
|
publicTransfersPerTx: z.ZodNumber;
|
|
@@ -208,4 +207,4 @@ export declare function getBotConfigFromEnv(): BotConfig;
|
|
|
208
207
|
export declare function getBotDefaultConfig(): BotConfig;
|
|
209
208
|
export declare function getVersions(): Partial<ComponentsVersions>;
|
|
210
209
|
export {};
|
|
211
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
210
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxLQUFLLGtCQUFrQixFQUN2QixXQUFXLEVBU1osTUFBTSwwQkFBMEIsQ0FBQztBQUNsQyxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEQsT0FBTyxFQUFFLEtBQUssZUFBZSxFQUFzQixNQUFNLHdCQUF3QixDQUFDO0FBSWxGLE9BQU8sS0FBSyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFbkUsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUV4QixRQUFBLE1BQU0sY0FBYyx3Q0FBeUMsQ0FBQztBQUM5RCxLQUFLLGNBQWMsR0FBRyxDQUFDLE9BQU8sY0FBYyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUM7QUFFdEQsb0JBQVksdUJBQXVCO0lBQ2pDLGFBQWEsa0JBQWtCO0lBQy9CLG9CQUFvQix5QkFBeUI7Q0FDOUM7QUFFRCxNQUFNLE1BQU0sU0FBUyxHQUFHO0lBQ3RCLDZEQUE2RDtJQUM3RCxPQUFPLEVBQUUsTUFBTSxHQUFHLFNBQVMsQ0FBQztJQUM1Qiw0RUFBNEU7SUFDNUUsWUFBWSxFQUFFLE1BQU0sR0FBRyxTQUFTLENBQUM7SUFDakMsZ0NBQWdDO0lBQ2hDLFNBQVMsRUFBRSxNQUFNLEVBQUUsR0FBRyxTQUFTLENBQUM7SUFDaEMsZ0VBQWdFO0lBQ2hFLFVBQVUsRUFBRSxXQUFXLENBQUMsTUFBTSxDQUFDLEdBQUcsU0FBUyxDQUFDO0lBQzVDLG1FQUFtRTtJQUNuRSxZQUFZLEVBQUUsV0FBVyxDQUFDLE1BQU0sQ0FBQyxHQUFHLFNBQVMsQ0FBQztJQUM5Qyx1RUFBdUU7SUFDdkUsMkJBQTJCLEVBQUUsTUFBTSxDQUFDO0lBQ3BDLGtEQUFrRDtJQUNsRCxnQkFBZ0IsRUFBRSxXQUFXLENBQUMsRUFBRSxDQUFDLEdBQUcsU0FBUyxDQUFDO0lBQzlDLDZEQUE2RDtJQUM3RCxVQUFVLEVBQUUsRUFBRSxHQUFHLFNBQVMsQ0FBQztJQUMzQixpREFBaUQ7SUFDakQsU0FBUyxFQUFFLEVBQUUsQ0FBQztJQUNkLHNEQUFzRDtJQUN0RCxpQkFBaUIsRUFBRSxNQUFNLENBQUM7SUFDMUIsNERBQTREO0lBQzVELHFCQUFxQixFQUFFLE1BQU0sQ0FBQztJQUM5QiwyREFBMkQ7SUFDM0Qsb0JBQW9CLEVBQUUsTUFBTSxDQUFDO0lBQzdCLGtDQUFrQztJQUNsQyxnQkFBZ0IsRUFBRSxXQUFXLENBQUM7SUFDOUIsd0VBQXdFO0lBQ3hFLGNBQWMsRUFBRSxNQUFNLENBQUM7SUFDdkIsMEVBQTBFO0lBQzFFLE9BQU8sRUFBRSxPQUFPLENBQUM7SUFDakIsdUVBQXVFO0lBQ3ZFLGtCQUFrQixFQUFFLE1BQU0sQ0FBQztJQUMzQiw0RUFBNEU7SUFDNUUsV0FBVyxFQUFFLGNBQWMsQ0FBQztJQUM1QixnRkFBZ0Y7SUFDaEYsYUFBYSxFQUFFLE1BQU0sQ0FBQztJQUN0Qiw4REFBOEQ7SUFDOUQsc0JBQXNCLEVBQUUsT0FBTyxDQUFDO0lBQ2hDLCtFQUErRTtJQUMvRSxVQUFVLEVBQUUsTUFBTSxHQUFHLFNBQVMsQ0FBQztJQUMvQiwrRUFBK0U7SUFDL0UsVUFBVSxFQUFFLE1BQU0sR0FBRyxTQUFTLENBQUM7SUFDL0IsNEJBQTRCO0lBQzVCLFFBQVEsRUFBRSx1QkFBdUIsQ0FBQztJQUNsQyx5RUFBeUU7SUFDekUsb0JBQW9CLEVBQUUsTUFBTSxDQUFDO0lBQzdCLGlEQUFpRDtJQUNqRCxpQkFBaUIsRUFBRSxPQUFPLENBQUM7SUFDM0IsK0RBQStEO0lBQy9ELE1BQU0sRUFBRSxPQUFPLENBQUM7Q0FDakIsR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFFLGVBQWUsR0FBRyxvQkFBb0IsQ0FBQyxDQUFDO0FBRWxFLGVBQU8sTUFBTSxlQUFlOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQTZDM0IsQ0FBQztBQUVGLGVBQU8sTUFBTSxpQkFBaUIsRUFBRSxrQkFBa0IsQ0FBQyxTQUFTLENBK0kzRCxDQUFDO0FBRUYsd0JBQWdCLG1CQUFtQixJQUFJLFNBQVMsQ0FFL0M7QUFFRCx3QkFBZ0IsbUJBQW1CLElBQUksU0FBUyxDQUUvQztBQUVELHdCQUFnQixXQUFXLElBQUksT0FBTyxDQUFDLGtCQUFrQixDQUFDLENBS3pEIn0=
|
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,
|
|
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;AACpD,OAAO,EAAE,KAAK,eAAe,EAAsB,MAAM,wBAAwB,CAAC;AAIlF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAEnE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,QAAA,MAAM,cAAc,wCAAyC,CAAC;AAC9D,KAAK,cAAc,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAEtD,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,wEAAwE;IACxE,cAAc,EAAE,MAAM,CAAC;IACvB,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,+EAA+E;IAC/E,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,+EAA+E;IAC/E,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,+DAA+D;IAC/D,MAAM,EAAE,OAAO,CAAC;CACjB,GAAG,IAAI,CAAC,eAAe,EAAE,eAAe,GAAG,oBAAoB,CAAC,CAAC;AAElE,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6C3B,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,kBAAkB,CAAC,SAAS,CA+I3D,CAAC;AAEF,wBAAgB,mBAAmB,IAAI,SAAS,CAE/C;AAED,wBAAgB,mBAAmB,IAAI,SAAS,CAE/C;AAED,wBAAgB,WAAW,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAKzD"}
|
package/dest/config.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { booleanConfigHelper, getConfigFromMappings, getDefaultConfig, numberConfigHelper, optionalNumberConfigHelper, pickConfigMappings, secretFrConfigHelper, secretStringConfigHelper } from '@aztec/foundation/config';
|
|
2
|
-
import { Fr } from '@aztec/foundation/
|
|
2
|
+
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
3
3
|
import { dataConfigMappings } from '@aztec/kv-store/config';
|
|
4
4
|
import { getVKTreeRoot } from '@aztec/noir-protocol-circuits-types/vk-tree';
|
|
5
5
|
import { protocolContractsHash } from '@aztec/protocol-contracts';
|
|
6
|
-
import { schemas } from '@aztec/stdlib/schemas';
|
|
6
|
+
import { schemas, zodFor } from '@aztec/stdlib/schemas';
|
|
7
7
|
import { z } from 'zod';
|
|
8
8
|
const BotFollowChain = [
|
|
9
9
|
'NONE',
|
|
@@ -15,7 +15,7 @@ export var SupportedTokenContracts = /*#__PURE__*/ function(SupportedTokenContra
|
|
|
15
15
|
SupportedTokenContracts["PrivateTokenContract"] = "PrivateTokenContract";
|
|
16
16
|
return SupportedTokenContracts;
|
|
17
17
|
}({});
|
|
18
|
-
export const BotConfigSchema = z.object({
|
|
18
|
+
export const BotConfigSchema = zodFor()(z.object({
|
|
19
19
|
nodeUrl: z.string().optional(),
|
|
20
20
|
nodeAdminUrl: z.string().optional(),
|
|
21
21
|
l1RpcUrls: z.array(z.string()).optional(),
|
|
@@ -56,7 +56,7 @@ export const BotConfigSchema = z.object({
|
|
|
56
56
|
dataDirectory: undefined,
|
|
57
57
|
dataStoreMapSizeKb: 1_024 * 1_024,
|
|
58
58
|
...config
|
|
59
|
-
}));
|
|
59
|
+
})));
|
|
60
60
|
export const botConfigMappings = {
|
|
61
61
|
nodeUrl: {
|
|
62
62
|
env: 'AZTEC_NODE_URL',
|
package/dest/factory.d.ts
CHANGED
|
@@ -51,4 +51,4 @@ export declare class BotFactory {
|
|
|
51
51
|
private bridgeL1FeeJuice;
|
|
52
52
|
private withNoMinTxsPerBlock;
|
|
53
53
|
}
|
|
54
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFjdG9yeS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2ZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBa0J6RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDM0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDN0UsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRy9ELE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUVqRixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFdkQsT0FBTyxFQUFFLEtBQUssU0FBUyxFQUEyQixNQUFNLGFBQWEsQ0FBQztBQUN0RSxPQUFPLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQU1qRCxxQkFBYSxVQUFVO0lBSW5CLE9BQU8sQ0FBQyxRQUFRLENBQUMsTUFBTTtJQUN2QixPQUFPLENBQUMsUUFBUSxDQUFDLE1BQU07SUFDdkIsT0FBTyxDQUFDLFFBQVEsQ0FBQyxLQUFLO0lBQ3RCLE9BQU8sQ0FBQyxRQUFRLENBQUMsU0FBUztJQUMxQixPQUFPLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQztJQVBsQyxPQUFPLENBQUMsR0FBRyxDQUF1QjtJQUVsQyxZQUNtQixNQUFNLEVBQUUsU0FBUyxFQUNqQixNQUFNLEVBQUUsVUFBVSxFQUNsQixLQUFLLEVBQUUsUUFBUSxFQUNmLFNBQVMsRUFBRSxTQUFTLEVBQ3BCLGNBQWMsQ0FBQyw0QkFBZ0IsRUFDOUM7SUFFSjs7O09BR0c7SUFDVSxLQUFLLElBQUksT0FBTyxDQUFDO1FBQzVCLE1BQU0sRUFBRSxVQUFVLENBQUM7UUFDbkIscUJBQXFCLEVBQUUsWUFBWSxDQUFDO1FBQ3BDLEtBQUssRUFBRSxhQUFhLEdBQUcsb0JBQW9CLENBQUM7UUFDNUMsSUFBSSxFQUFFLFNBQVMsQ0FBQztRQUNoQixTQUFTLEVBQUUsWUFBWSxDQUFDO0tBQ3pCLENBQUMsQ0FNRDtJQUVZLFFBQVEsSUFBSSxPQUFPLENBQUM7UUFDL0IsTUFBTSxFQUFFLFVBQVUsQ0FBQztRQUNuQixxQkFBcUIsRUFBRSxZQUFZLENBQUM7UUFDcEMsR0FBRyxFQUFFLFdBQVcsQ0FBQztRQUNqQixNQUFNLEVBQUUsYUFBYSxDQUFDO1FBQ3RCLE1BQU0sRUFBRSxhQUFhLENBQUM7UUFDdEIsSUFBSSxFQUFFLFNBQVMsQ0FBQztLQUNqQixDQUFDLENBc0JEO1lBTWEsWUFBWTtZQVdaLDBCQUEwQjtZQXdDMUIsZ0JBQWdCO1lBZ0JoQixVQUFVO0lBdUN4Qjs7OztPQUlHO0lBQ0gsT0FBTyxDQUFDLGtCQUFrQjtZQVlaLGdCQUFnQjtZQW9CaEIsT0FBTztZQThFUCx3QkFBd0I7WUFzQnhCLFVBQVU7WUF3Q1Ysc0JBQXNCO1lBNEJ0QixnQkFBZ0I7WUFnQ2hCLG9CQUFvQjtDQWVuQyJ9
|
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;
|
|
1
|
+
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAkBzD,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAG/D,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAEjF,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAEvD,OAAO,EAAE,KAAK,SAAS,EAA2B,MAAM,aAAa,CAAC;AACtE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAMjD,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,UAAU,EAClB,KAAK,EAAE,QAAQ,EACf,SAAS,EAAE,SAAS,EACpB,cAAc,CAAC,4BAAgB,EAC9C;IAEJ;;;OAGG;IACU,KAAK,IAAI,OAAO,CAAC;QAC5B,MAAM,EAAE,UAAU,CAAC;QACnB,qBAAqB,EAAE,YAAY,CAAC;QACpC,KAAK,EAAE,aAAa,GAAG,oBAAoB,CAAC;QAC5C,IAAI,EAAE,SAAS,CAAC;QAChB,SAAS,EAAE,YAAY,CAAC;KACzB,CAAC,CAMD;IAEY,QAAQ,IAAI,OAAO,CAAC;QAC/B,MAAM,EAAE,UAAU,CAAC;QACnB,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,CAsBD;YAMa,YAAY;YAWZ,0BAA0B;YAwC1B,gBAAgB;YAgBhB,UAAU;IAuCxB;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;YAYZ,gBAAgB;YAoBhB,OAAO;YA8EP,wBAAwB;YAsBxB,UAAU;YAwCV,sBAAsB;YA4BtB,gBAAgB;YAgChB,oBAAoB;CAenC"}
|
package/dest/factory.js
CHANGED
|
@@ -4,10 +4,12 @@ import { AztecAddress } from '@aztec/aztec.js/addresses';
|
|
|
4
4
|
import { BatchCall } from '@aztec/aztec.js/contracts';
|
|
5
5
|
import { L1FeeJuicePortalManager } from '@aztec/aztec.js/ethereum';
|
|
6
6
|
import { FeeJuicePaymentMethodWithClaim } from '@aztec/aztec.js/fee';
|
|
7
|
+
import { deriveKeys } from '@aztec/aztec.js/keys';
|
|
7
8
|
import { createLogger } from '@aztec/aztec.js/log';
|
|
8
9
|
import { waitForL1ToL2MessageReady } from '@aztec/aztec.js/messaging';
|
|
9
|
-
import { createEthereumChain
|
|
10
|
-
import {
|
|
10
|
+
import { createEthereumChain } from '@aztec/ethereum/chain';
|
|
11
|
+
import { createExtendedL1Client } from '@aztec/ethereum/client';
|
|
12
|
+
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
11
13
|
import { Timer } from '@aztec/foundation/timer';
|
|
12
14
|
import { AMMContract } from '@aztec/noir-contracts.js/AMM';
|
|
13
15
|
import { PrivateTokenContract } from '@aztec/noir-contracts.js/PrivateToken';
|
|
@@ -140,6 +142,7 @@ export class BotFactory {
|
|
|
140
142
|
* @returns The TokenContract instance.
|
|
141
143
|
*/ async setupToken(sender) {
|
|
142
144
|
let deploy;
|
|
145
|
+
let tokenInstance;
|
|
143
146
|
const deployOpts = {
|
|
144
147
|
from: sender,
|
|
145
148
|
contractAddressSalt: this.config.tokenSalt,
|
|
@@ -148,14 +151,20 @@ export class BotFactory {
|
|
|
148
151
|
if (this.config.contract === SupportedTokenContracts.TokenContract) {
|
|
149
152
|
deploy = TokenContract.deploy(this.wallet, sender, 'BotToken', 'BOT', 18);
|
|
150
153
|
} else if (this.config.contract === SupportedTokenContracts.PrivateTokenContract) {
|
|
151
|
-
|
|
154
|
+
// Generate keys for the contract since PrivateToken uses SinglePrivateMutable which requires keys
|
|
155
|
+
const tokenSecretKey = Fr.random();
|
|
156
|
+
const tokenPublicKeys = (await deriveKeys(tokenSecretKey)).publicKeys;
|
|
157
|
+
deploy = PrivateTokenContract.deployWithPublicKeys(tokenPublicKeys, this.wallet, MINT_BALANCE, sender);
|
|
152
158
|
deployOpts.skipInstancePublication = true;
|
|
153
159
|
deployOpts.skipClassPublication = true;
|
|
154
160
|
deployOpts.skipInitialization = false;
|
|
161
|
+
// Register the contract with the secret key before deployment
|
|
162
|
+
tokenInstance = await deploy.getInstance(deployOpts);
|
|
163
|
+
await this.wallet.registerContract(tokenInstance, PrivateTokenContract.artifact, tokenSecretKey);
|
|
155
164
|
} else {
|
|
156
165
|
throw new Error(`Unsupported token contract type: ${this.config.contract}`);
|
|
157
166
|
}
|
|
158
|
-
const address = (await deploy.getInstance(deployOpts)).address;
|
|
167
|
+
const address = tokenInstance?.address ?? (await deploy.getInstance(deployOpts)).address;
|
|
159
168
|
if ((await this.wallet.getContractMetadata(address)).isContractPublished) {
|
|
160
169
|
this.log.info(`Token at ${address.toString()} already deployed`);
|
|
161
170
|
return deploy.register();
|
package/dest/store/bot_store.js
CHANGED
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.fcb71a6",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"exports": {
|
|
6
6
|
".": "./dest/index.js",
|
|
@@ -54,18 +54,18 @@
|
|
|
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/noir-contracts.js": "0.0.1-commit.
|
|
64
|
-
"@aztec/noir-protocol-circuits-types": "0.0.1-commit.
|
|
65
|
-
"@aztec/protocol-contracts": "0.0.1-commit.
|
|
66
|
-
"@aztec/stdlib": "0.0.1-commit.
|
|
67
|
-
"@aztec/telemetry-client": "0.0.1-commit.
|
|
68
|
-
"@aztec/test-wallet": "0.0.1-commit.
|
|
57
|
+
"@aztec/accounts": "0.0.1-commit.fcb71a6",
|
|
58
|
+
"@aztec/aztec.js": "0.0.1-commit.fcb71a6",
|
|
59
|
+
"@aztec/entrypoints": "0.0.1-commit.fcb71a6",
|
|
60
|
+
"@aztec/ethereum": "0.0.1-commit.fcb71a6",
|
|
61
|
+
"@aztec/foundation": "0.0.1-commit.fcb71a6",
|
|
62
|
+
"@aztec/kv-store": "0.0.1-commit.fcb71a6",
|
|
63
|
+
"@aztec/noir-contracts.js": "0.0.1-commit.fcb71a6",
|
|
64
|
+
"@aztec/noir-protocol-circuits-types": "0.0.1-commit.fcb71a6",
|
|
65
|
+
"@aztec/protocol-contracts": "0.0.1-commit.fcb71a6",
|
|
66
|
+
"@aztec/stdlib": "0.0.1-commit.fcb71a6",
|
|
67
|
+
"@aztec/telemetry-client": "0.0.1-commit.fcb71a6",
|
|
68
|
+
"@aztec/test-wallet": "0.0.1-commit.fcb71a6",
|
|
69
69
|
"source-map-support": "^0.5.21",
|
|
70
70
|
"tslib": "^2.4.0",
|
|
71
71
|
"zod": "^3.23.8"
|
package/src/config.ts
CHANGED
|
@@ -10,11 +10,11 @@ import {
|
|
|
10
10
|
secretFrConfigHelper,
|
|
11
11
|
secretStringConfigHelper,
|
|
12
12
|
} from '@aztec/foundation/config';
|
|
13
|
-
import { Fr } from '@aztec/foundation/
|
|
13
|
+
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
14
14
|
import { type DataStoreConfig, dataConfigMappings } from '@aztec/kv-store/config';
|
|
15
15
|
import { getVKTreeRoot } from '@aztec/noir-protocol-circuits-types/vk-tree';
|
|
16
16
|
import { protocolContractsHash } from '@aztec/protocol-contracts';
|
|
17
|
-
import {
|
|
17
|
+
import { schemas, zodFor } from '@aztec/stdlib/schemas';
|
|
18
18
|
import type { ComponentsVersions } from '@aztec/stdlib/versioning';
|
|
19
19
|
|
|
20
20
|
import { z } from 'zod';
|
|
@@ -80,50 +80,52 @@ export type BotConfig = {
|
|
|
80
80
|
ammTxs: boolean;
|
|
81
81
|
} & Pick<DataStoreConfig, 'dataDirectory' | 'dataStoreMapSizeKb'>;
|
|
82
82
|
|
|
83
|
-
export const BotConfigSchema =
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
83
|
+
export const BotConfigSchema = zodFor<BotConfig>()(
|
|
84
|
+
z
|
|
85
|
+
.object({
|
|
86
|
+
nodeUrl: z.string().optional(),
|
|
87
|
+
nodeAdminUrl: z.string().optional(),
|
|
88
|
+
l1RpcUrls: z.array(z.string()).optional(),
|
|
89
|
+
l1Mnemonic: schemas.SecretValue(z.string()).optional(),
|
|
90
|
+
l1PrivateKey: schemas.SecretValue(z.string()).optional(),
|
|
91
|
+
l1ToL2MessageTimeoutSeconds: z.number(),
|
|
92
|
+
senderPrivateKey: schemas.SecretValue(schemas.Fr).optional(),
|
|
93
|
+
senderSalt: schemas.Fr.optional(),
|
|
94
|
+
tokenSalt: schemas.Fr,
|
|
95
|
+
txIntervalSeconds: z.number(),
|
|
96
|
+
privateTransfersPerTx: z.number().int().nonnegative(),
|
|
97
|
+
publicTransfersPerTx: z.number().int().nonnegative(),
|
|
98
|
+
feePaymentMethod: z.literal('fee_juice'),
|
|
99
|
+
baseFeePadding: z.number().int().nonnegative(),
|
|
100
|
+
noStart: z.boolean(),
|
|
101
|
+
txMinedWaitSeconds: z.number(),
|
|
102
|
+
followChain: z.enum(BotFollowChain),
|
|
103
|
+
maxPendingTxs: z.number().int().nonnegative(),
|
|
104
|
+
flushSetupTransactions: z.boolean(),
|
|
105
|
+
l2GasLimit: z.number().int().nonnegative().optional(),
|
|
106
|
+
daGasLimit: z.number().int().nonnegative().optional(),
|
|
107
|
+
contract: z.nativeEnum(SupportedTokenContracts),
|
|
108
|
+
maxConsecutiveErrors: z.number().int().nonnegative(),
|
|
109
|
+
stopWhenUnhealthy: z.boolean(),
|
|
110
|
+
ammTxs: z.boolean().default(false),
|
|
111
|
+
dataDirectory: z.string().optional(),
|
|
112
|
+
dataStoreMapSizeKb: z.number().optional(),
|
|
113
|
+
})
|
|
114
|
+
.transform(config => ({
|
|
115
|
+
nodeUrl: undefined,
|
|
116
|
+
nodeAdminUrl: undefined,
|
|
117
|
+
l1RpcUrls: undefined,
|
|
118
|
+
senderSalt: undefined,
|
|
119
|
+
l2GasLimit: undefined,
|
|
120
|
+
daGasLimit: undefined,
|
|
121
|
+
l1Mnemonic: undefined,
|
|
122
|
+
l1PrivateKey: undefined,
|
|
123
|
+
senderPrivateKey: undefined,
|
|
124
|
+
dataDirectory: undefined,
|
|
125
|
+
dataStoreMapSizeKb: 1_024 * 1_024,
|
|
126
|
+
...config,
|
|
127
|
+
})),
|
|
128
|
+
);
|
|
127
129
|
|
|
128
130
|
export const botConfigMappings: ConfigMappingsType<BotConfig> = {
|
|
129
131
|
nodeUrl: {
|
package/src/factory.ts
CHANGED
|
@@ -11,14 +11,17 @@ import {
|
|
|
11
11
|
import { L1FeeJuicePortalManager } from '@aztec/aztec.js/ethereum';
|
|
12
12
|
import type { L2AmountClaim } from '@aztec/aztec.js/ethereum';
|
|
13
13
|
import { FeeJuicePaymentMethodWithClaim } from '@aztec/aztec.js/fee';
|
|
14
|
+
import { deriveKeys } from '@aztec/aztec.js/keys';
|
|
14
15
|
import { createLogger } from '@aztec/aztec.js/log';
|
|
15
16
|
import { waitForL1ToL2MessageReady } from '@aztec/aztec.js/messaging';
|
|
16
|
-
import { createEthereumChain
|
|
17
|
-
import {
|
|
17
|
+
import { createEthereumChain } from '@aztec/ethereum/chain';
|
|
18
|
+
import { createExtendedL1Client } from '@aztec/ethereum/client';
|
|
19
|
+
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
18
20
|
import { Timer } from '@aztec/foundation/timer';
|
|
19
21
|
import { AMMContract } from '@aztec/noir-contracts.js/AMM';
|
|
20
22
|
import { PrivateTokenContract } from '@aztec/noir-contracts.js/PrivateToken';
|
|
21
23
|
import { TokenContract } from '@aztec/noir-contracts.js/Token';
|
|
24
|
+
import type { ContractInstanceWithAddress } from '@aztec/stdlib/contract';
|
|
22
25
|
import { GasSettings } from '@aztec/stdlib/gas';
|
|
23
26
|
import type { AztecNode, AztecNodeAdmin } from '@aztec/stdlib/interfaces/client';
|
|
24
27
|
import { deriveSigningKey } from '@aztec/stdlib/keys';
|
|
@@ -164,6 +167,7 @@ export class BotFactory {
|
|
|
164
167
|
*/
|
|
165
168
|
private async setupToken(sender: AztecAddress): Promise<TokenContract | PrivateTokenContract> {
|
|
166
169
|
let deploy: DeployMethod<TokenContract | PrivateTokenContract>;
|
|
170
|
+
let tokenInstance: ContractInstanceWithAddress | undefined;
|
|
167
171
|
const deployOpts: DeployOptions = {
|
|
168
172
|
from: sender,
|
|
169
173
|
contractAddressSalt: this.config.tokenSalt,
|
|
@@ -172,15 +176,22 @@ export class BotFactory {
|
|
|
172
176
|
if (this.config.contract === SupportedTokenContracts.TokenContract) {
|
|
173
177
|
deploy = TokenContract.deploy(this.wallet, sender, 'BotToken', 'BOT', 18);
|
|
174
178
|
} else if (this.config.contract === SupportedTokenContracts.PrivateTokenContract) {
|
|
175
|
-
|
|
179
|
+
// Generate keys for the contract since PrivateToken uses SinglePrivateMutable which requires keys
|
|
180
|
+
const tokenSecretKey = Fr.random();
|
|
181
|
+
const tokenPublicKeys = (await deriveKeys(tokenSecretKey)).publicKeys;
|
|
182
|
+
deploy = PrivateTokenContract.deployWithPublicKeys(tokenPublicKeys, this.wallet, MINT_BALANCE, sender);
|
|
176
183
|
deployOpts.skipInstancePublication = true;
|
|
177
184
|
deployOpts.skipClassPublication = true;
|
|
178
185
|
deployOpts.skipInitialization = false;
|
|
186
|
+
|
|
187
|
+
// Register the contract with the secret key before deployment
|
|
188
|
+
tokenInstance = await deploy.getInstance(deployOpts);
|
|
189
|
+
await this.wallet.registerContract(tokenInstance, PrivateTokenContract.artifact, tokenSecretKey);
|
|
179
190
|
} else {
|
|
180
191
|
throw new Error(`Unsupported token contract type: ${this.config.contract}`);
|
|
181
192
|
}
|
|
182
193
|
|
|
183
|
-
const address = (await deploy.getInstance(deployOpts)).address;
|
|
194
|
+
const address = tokenInstance?.address ?? (await deploy.getInstance(deployOpts)).address;
|
|
184
195
|
if ((await this.wallet.getContractMetadata(address)).isContractPublished) {
|
|
185
196
|
this.log.info(`Token at ${address.toString()} already deployed`);
|
|
186
197
|
return deploy.register();
|
package/src/store/bot_store.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { AztecAddress } from '@aztec/aztec.js/addresses';
|
|
2
2
|
import type { L2AmountClaim } from '@aztec/aztec.js/ethereum';
|
|
3
|
-
import { Fr } from '@aztec/foundation/
|
|
3
|
+
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
4
4
|
import { type Logger, createLogger } from '@aztec/foundation/log';
|
|
5
5
|
import type { AztecAsyncKVStore, AztecAsyncMap } from '@aztec/kv-store';
|
|
6
6
|
|