@maci-protocol/coordinator 0.0.0-ci.5bca90b → 0.0.0-ci.5dbd2ab
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/README.md +18 -0
- package/build/tests/e2e.deploy.test.js +53 -34
- package/build/tests/e2e.deploy.test.js.map +1 -1
- package/build/tests/utils.d.ts.map +1 -1
- package/build/tests/utils.js.map +1 -1
- package/build/ts/app.module.d.ts.map +1 -1
- package/build/ts/app.module.js +2 -0
- package/build/ts/app.module.js.map +1 -1
- package/build/ts/common/__tests__/common.test.js +6 -16
- package/build/ts/common/__tests__/common.test.js.map +1 -1
- package/build/ts/common/accountAbstraction.js +2 -2
- package/build/ts/common/accountAbstraction.js.map +1 -1
- package/build/ts/common/chain.d.ts +3 -3
- package/build/ts/common/chain.d.ts.map +1 -1
- package/build/ts/common/chain.js +10 -14
- package/build/ts/common/chain.js.map +1 -1
- package/build/ts/common/coordinatorKeypair.d.ts +7 -0
- package/build/ts/common/coordinatorKeypair.d.ts.map +1 -0
- package/build/ts/common/coordinatorKeypair.js +14 -0
- package/build/ts/common/coordinatorKeypair.js.map +1 -0
- package/build/ts/common/errors.d.ts +1 -1
- package/build/ts/common/errors.d.ts.map +1 -1
- package/build/ts/common/errors.js +1 -1
- package/build/ts/common/errors.js.map +1 -1
- package/build/ts/deployer/__tests__/deployer.controller.test.js +7 -7
- package/build/ts/deployer/__tests__/deployer.controller.test.js.map +1 -1
- package/build/ts/deployer/__tests__/deployer.service.test.js +54 -8
- package/build/ts/deployer/__tests__/deployer.service.test.js.map +1 -1
- package/build/ts/deployer/__tests__/utils.d.ts +2 -6
- package/build/ts/deployer/__tests__/utils.d.ts.map +1 -1
- package/build/ts/deployer/__tests__/utils.js +4 -9
- package/build/ts/deployer/__tests__/utils.js.map +1 -1
- package/build/ts/deployer/deployer.service.d.ts +4 -5
- package/build/ts/deployer/deployer.service.d.ts.map +1 -1
- package/build/ts/deployer/deployer.service.js +165 -44
- package/build/ts/deployer/deployer.service.js.map +1 -1
- package/build/ts/deployer/types.d.ts +16 -13
- package/build/ts/deployer/types.d.ts.map +1 -1
- package/build/ts/file/file.service.d.ts +1 -1
- package/build/ts/file/file.service.d.ts.map +1 -1
- package/build/ts/file/file.service.js +2 -2
- package/build/ts/file/file.service.js.map +1 -1
- package/build/ts/health/__tests__/health.controller.test.d.ts +2 -0
- package/build/ts/health/__tests__/health.controller.test.d.ts.map +1 -0
- package/build/ts/health/__tests__/health.controller.test.js +22 -0
- package/build/ts/health/__tests__/health.controller.test.js.map +1 -0
- package/build/ts/health/__tests__/health.service.test.d.ts +2 -0
- package/build/ts/health/__tests__/health.service.test.d.ts.map +1 -0
- package/build/ts/health/__tests__/health.service.test.js +77 -0
- package/build/ts/health/__tests__/health.service.test.js.map +1 -0
- package/build/ts/health/health.controller.d.ts +16 -0
- package/build/ts/health/health.controller.d.ts.map +1 -0
- package/build/ts/health/health.controller.js +43 -0
- package/build/ts/health/health.controller.js.map +1 -0
- package/build/ts/health/health.module.d.ts +3 -0
- package/build/ts/health/health.module.d.ts.map +1 -0
- package/build/ts/health/health.module.js +21 -0
- package/build/ts/health/health.module.js.map +1 -0
- package/build/ts/health/health.service.d.ts +35 -0
- package/build/ts/health/health.service.d.ts.map +1 -0
- package/build/ts/health/health.service.js +169 -0
- package/build/ts/health/health.service.js.map +1 -0
- package/build/ts/health/types.d.ts +79 -0
- package/build/ts/health/types.d.ts.map +1 -0
- package/build/ts/health/types.js +2 -0
- package/build/ts/health/types.js.map +1 -0
- package/build/ts/proof/__tests__/proof.controller.test.js +0 -1
- package/build/ts/proof/__tests__/proof.controller.test.js.map +1 -1
- package/build/ts/proof/__tests__/proof.gateway.test.js +0 -1
- package/build/ts/proof/__tests__/proof.gateway.test.js.map +1 -1
- package/build/ts/proof/__tests__/proof.service.test.js +31 -72
- package/build/ts/proof/__tests__/proof.service.test.js.map +1 -1
- package/build/ts/proof/dto.d.ts +0 -4
- package/build/ts/proof/dto.d.ts.map +1 -1
- package/build/ts/proof/dto.js +1 -16
- package/build/ts/proof/dto.js.map +1 -1
- package/build/ts/proof/proof.controller.d.ts.map +1 -1
- package/build/ts/proof/proof.controller.js +1 -4
- package/build/ts/proof/proof.controller.js.map +1 -1
- package/build/ts/proof/proof.service.d.ts +2 -4
- package/build/ts/proof/proof.service.d.ts.map +1 -1
- package/build/ts/proof/proof.service.js +16 -18
- package/build/ts/proof/proof.service.js.map +1 -1
- package/build/ts/proof/types.d.ts +1 -4
- package/build/ts/proof/types.d.ts.map +1 -1
- package/build/ts/sessionKeys/__tests__/sessionKeys.controller.test.js +2 -2
- package/build/ts/sessionKeys/__tests__/sessionKeys.controller.test.js.map +1 -1
- package/build/ts/subgraph/__tests__/subgraph.service.test.js +2 -3
- package/build/ts/subgraph/__tests__/subgraph.service.test.js.map +1 -1
- package/build/ts/subgraph/subgraph.service.d.ts +4 -0
- package/build/ts/subgraph/subgraph.service.d.ts.map +1 -1
- package/build/ts/subgraph/subgraph.service.js +16 -5
- package/build/ts/subgraph/subgraph.service.js.map +1 -1
- package/build/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +31 -31
- package/build/tests/e2e.aa.test.d.ts +0 -2
- package/build/tests/e2e.aa.test.d.ts.map +0 -1
- package/build/tests/e2e.aa.test.js +0 -98
- package/build/tests/e2e.aa.test.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deployer.controller.test.js","sourceRoot":"","sources":["../../../../ts/deployer/__tests__/deployer.controller.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAO,WAAW,EAAE,MAAM,MAAM,CAAC;AAExC,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAC;AAE7E,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAClC,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,IAAI,kBAAsC,CAAC;IAE3C,MAAM,mBAAmB,GAAG;QAC1B,UAAU,EAAE,IAAI,CAAC,EAAE,EAAE;QACrB,UAAU,EAAE,IAAI,CAAC,EAAE,EAAE;KACtB,CAAC;IAEF,MAAM,uBAAuB,GAAW,WAAW,CAAC;IACpD,MAAM,uBAAuB,GAAG,GAAG,CAAC;IAEpC,MAAM,sBAAsB,GAAG,IAAI,kBAAkB,CACnD,IAAI,eAAe,CAAC,IAAI,kBAAkB,CAAC,IAAI,WAAW,EAAE,CAAC,EAAE,IAAI,WAAW,EAAE,CAAC,CAClF,CAAC;IACF,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;IACtC,MAAM,iBAAiB,GAAG,IAAI,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAE9D,IAAI,QAAgB,CAAC;IACrB,IAAI,iBAAsB,CAAC;IAE3B,SAAS,CAAC,KAAK,IAAI,EAAE;QACnB,
|
|
1
|
+
{"version":3,"file":"deployer.controller.test.js","sourceRoot":"","sources":["../../../../ts/deployer/__tests__/deployer.controller.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAO,WAAW,EAAE,MAAM,MAAM,CAAC;AAExC,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAC;AAE7E,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAClC,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,IAAI,kBAAsC,CAAC;IAE3C,MAAM,mBAAmB,GAAG;QAC1B,UAAU,EAAE,IAAI,CAAC,EAAE,EAAE;QACrB,UAAU,EAAE,IAAI,CAAC,EAAE,EAAE;KACtB,CAAC;IAEF,MAAM,uBAAuB,GAAW,WAAW,CAAC;IACpD,MAAM,uBAAuB,GAAG,GAAG,CAAC;IAEpC,MAAM,sBAAsB,GAAG,IAAI,kBAAkB,CACnD,IAAI,eAAe,CAAC,IAAI,kBAAkB,CAAC,IAAI,WAAW,EAAE,CAAC,EAAE,IAAI,WAAW,EAAE,CAAC,CAClF,CAAC;IACF,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;IACtC,MAAM,iBAAiB,GAAG,IAAI,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAE9D,IAAI,QAAgB,CAAC;IACrB,IAAI,iBAAsB,CAAC;IAE3B,SAAS,CAAC,KAAK,IAAI,EAAE;QACnB,iBAAiB,GAAG,CAAC,MAAM,iBAAiB,CAAC,kBAAkB,EAAE,CAAC,CAAC,iBAAiB,CAAC;QACrF,QAAQ,GAAG,MAAM,gBAAgB,CAAC,iBAAiB,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,UAAU,CAAC,KAAK,IAAI,EAAE;QACpB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC;YACzC,WAAW,EAAE,CAAC,kBAAkB,CAAC;SAClC,CAAC;aACC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;YACnB,IAAI,KAAK,KAAK,eAAe,EAAE,CAAC;gBAC9B,mBAAmB,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,OAAO,EAAE,uBAAuB,EAAE,CAAC,CAAC;gBACvF,mBAAmB,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,MAAM,EAAE,uBAAuB,EAAE,CAAC,CAAC;gBACtF,OAAO,mBAAmB,CAAC;YAC7B,CAAC;YAED,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC;QACnB,CAAC,CAAC;aACD,OAAO,EAAE,CAAC;QAEb,kBAAkB,GAAG,GAAG,CAAC,GAAG,CAAqB,kBAAkB,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;QAC9B,IAAI,CAAC,6BAA6B,EAAE,KAAK,IAAI,EAAE;YAC7C,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,kBAAkB,CAAC,mBAAmB,CAAC;gBAC/D,KAAK,EAAE,kBAAkB,CAAC,gBAAgB;gBAC1C,QAAQ;gBACR,iBAAiB;gBACjB,MAAM,EAAE,wBAAwB;aACjC,CAAC,CAAC;YAEH,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;YACvE,MAAM,MAAM,CACV,sBAAsB,CAAC,mBAAmB,CAAC;gBACzC,KAAK,EAAE,kBAAkB,CAAC,gBAAgB;gBAC1C,QAAQ,EAAE,OAAO;gBACjB,iBAAiB,EAAE,OAAO;gBAC1B,MAAM,EAAE,wBAAwB;aACjC,CAAC,CACH,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,qBAAqB,CAAC,QAAQ,EAAE,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;QAC9B,IAAI,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;YAC1C,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,kBAAkB,CAAC,UAAU,CAAC;gBACrD,KAAK,EAAE,kBAAkB,CAAC,gBAAgB;gBAC1C,QAAQ;gBACR,iBAAiB;gBACjB,MAAM,EAAE,wBAAwB;aACjC,CAAC,CAAC;YAEH,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;YACvE,MAAM,MAAM,CACV,sBAAsB,CAAC,UAAU,CAAC;gBAChC,KAAK,EAAE,kBAAkB,CAAC,gBAAgB;gBAC1C,QAAQ,EAAE,OAAO;gBACjB,iBAAiB,EAAE,OAAO;gBAC1B,MAAM,EAAE,wBAAwB;aACjC,CAAC,CACH,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,qBAAqB,CAAC,QAAQ,EAAE,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ContractStorage, EContracts, EInitialVoiceCreditProxies, EPolicies, MACI__factory as MACIFactory, Verifier__factory as VerifierFactory, } from "@maci-protocol/sdk";
|
|
1
|
+
import { ContractStorage, ECheckerFactories, EContracts, EInitialVoiceCreditProxies, EPolicies, EPolicyFactories, getDeployedPolicyProxyFactories, MACI__factory as MACIFactory, Verifier__factory as VerifierFactory, } from "@maci-protocol/sdk";
|
|
2
2
|
import dotenv from "dotenv";
|
|
3
3
|
import { BaseContract } from "ethers";
|
|
4
4
|
import { zeroAddress } from "viem";
|
|
@@ -21,13 +21,11 @@ describe("DeployerService", () => {
|
|
|
21
21
|
const deployerService = new DeployerService(sessionKeyService, fileService);
|
|
22
22
|
let approval;
|
|
23
23
|
let sessionKeyAddress;
|
|
24
|
-
let kernelClient;
|
|
25
24
|
let signer;
|
|
26
25
|
beforeAll(async () => {
|
|
27
26
|
sessionKeyAddress = (await sessionKeyService.generateSessionKey()).sessionKeyAddress;
|
|
28
27
|
approval = await generateApproval(sessionKeyAddress);
|
|
29
|
-
|
|
30
|
-
signer = await sessionKeyService.getKernelClientSigner(kernelClient);
|
|
28
|
+
signer = await sessionKeyService.getCoordinatorSigner(chain);
|
|
31
29
|
});
|
|
32
30
|
afterAll(() => {
|
|
33
31
|
storageInstance.cleanup(ESupportedNetworks.OPTIMISM_SEPOLIA);
|
|
@@ -38,14 +36,62 @@ describe("DeployerService", () => {
|
|
|
38
36
|
afterEach(() => {
|
|
39
37
|
storageInstance.cleanup(chain);
|
|
40
38
|
});
|
|
41
|
-
|
|
42
|
-
await expect(deployerService.deployAndSavePolicy(signer, "NonExistent"
|
|
39
|
+
test("should throw when the policy is not existent", async () => {
|
|
40
|
+
await expect(deployerService.deployAndSavePolicy(signer, chain, { type: "NonExistent" })).rejects.toThrow(ErrorCodes.UNSUPPORTED_POLICY.toString());
|
|
43
41
|
});
|
|
44
42
|
test("should deploy policy if none is stored", async () => {
|
|
45
|
-
const policy = await deployerService.deployAndSavePolicy(signer, EPolicies.FreeForAll
|
|
43
|
+
const policy = await deployerService.deployAndSavePolicy(signer, chain, { type: EPolicies.FreeForAll });
|
|
46
44
|
expect(policy).toBeDefined();
|
|
47
45
|
expect(await policy.getAddress()).not.toBe(zeroAddress);
|
|
48
46
|
});
|
|
47
|
+
test("should save factories (policy and checker) after deploying policy", async () => {
|
|
48
|
+
const { checker: initialChecker, policy: initialPolicy } = await getDeployedPolicyProxyFactories({
|
|
49
|
+
policy: EPolicyFactories.FreeForAll,
|
|
50
|
+
checker: ECheckerFactories.FreeForAll,
|
|
51
|
+
network: chain,
|
|
52
|
+
signer,
|
|
53
|
+
});
|
|
54
|
+
expect(initialChecker).not.toBeDefined();
|
|
55
|
+
expect(initialPolicy).not.toBeDefined();
|
|
56
|
+
await deployerService.deployAndSavePolicy(signer, chain, { type: EPolicies.FreeForAll });
|
|
57
|
+
const { checker, policy } = await getDeployedPolicyProxyFactories({
|
|
58
|
+
policy: EPolicyFactories.FreeForAll,
|
|
59
|
+
checker: ECheckerFactories.FreeForAll,
|
|
60
|
+
network: chain,
|
|
61
|
+
signer,
|
|
62
|
+
});
|
|
63
|
+
expect(checker).toBeDefined();
|
|
64
|
+
expect(policy).toBeDefined();
|
|
65
|
+
});
|
|
66
|
+
test("should reuse policy factories if already stored", async () => {
|
|
67
|
+
const firstPolicy = await deployerService.deployAndSavePolicy(signer, chain, { type: EPolicies.FreeForAll });
|
|
68
|
+
const { checker: firstCheckerFactory, policy: firstPolicyFactory } = await getDeployedPolicyProxyFactories({
|
|
69
|
+
policy: EPolicyFactories.FreeForAll,
|
|
70
|
+
checker: ECheckerFactories.FreeForAll,
|
|
71
|
+
network: chain,
|
|
72
|
+
signer,
|
|
73
|
+
});
|
|
74
|
+
expect(firstCheckerFactory).toBeDefined();
|
|
75
|
+
expect(firstPolicyFactory).toBeDefined();
|
|
76
|
+
const firstCheckerFactoryAddress = await firstCheckerFactory.getAddress();
|
|
77
|
+
const firstPolicyFactoryAddress = await firstPolicyFactory.getAddress();
|
|
78
|
+
expect(firstCheckerFactoryAddress).not.toBe(zeroAddress);
|
|
79
|
+
expect(firstPolicyFactoryAddress).not.toBe(zeroAddress);
|
|
80
|
+
const secondPolicy = await deployerService.deployAndSavePolicy(signer, chain, {
|
|
81
|
+
type: EPolicies.FreeForAll,
|
|
82
|
+
});
|
|
83
|
+
const { checker: secondCheckerFactory, policy: secondPolicyFactory } = await getDeployedPolicyProxyFactories({
|
|
84
|
+
policy: EPolicyFactories.FreeForAll,
|
|
85
|
+
checker: ECheckerFactories.FreeForAll,
|
|
86
|
+
network: chain,
|
|
87
|
+
signer,
|
|
88
|
+
});
|
|
89
|
+
expect(secondCheckerFactory).toBeDefined();
|
|
90
|
+
expect(secondPolicyFactory).toBeDefined();
|
|
91
|
+
expect(await secondCheckerFactory.getAddress()).toBe(firstCheckerFactoryAddress);
|
|
92
|
+
expect(await secondPolicyFactory.getAddress()).toBe(firstPolicyFactoryAddress);
|
|
93
|
+
expect(await firstPolicy.getAddress()).not.toBe(await secondPolicy.getAddress());
|
|
94
|
+
});
|
|
49
95
|
});
|
|
50
96
|
describe("deployAndSaveVoiceCreditProxy", () => {
|
|
51
97
|
// we cleanup after each test so we don't have leftover saved contracts
|
|
@@ -74,7 +120,7 @@ describe("DeployerService", () => {
|
|
|
74
120
|
await expect(deployerService.deployMaci({
|
|
75
121
|
config: testMaciDeploymentConfig,
|
|
76
122
|
chain,
|
|
77
|
-
approval: "
|
|
123
|
+
approval: "0x123",
|
|
78
124
|
sessionKeyAddress,
|
|
79
125
|
})).rejects.toThrow(ErrorCodes.INVALID_APPROVAL.toString());
|
|
80
126
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deployer.service.test.js","sourceRoot":"","sources":["../../../../ts/deployer/__tests__/deployer.service.test.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,UAAU,EACV,0BAA0B,EAC1B,SAAS,EACT,aAAa,IAAI,WAAW,EAC5B,iBAAiB,IAAI,eAAe,GACrC,MAAM,oBAAoB,CAAC;AAC5B,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,YAAY,EAAU,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAO,WAAW,EAAE,MAAM,MAAM,CAAC;AAExC,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,EAAE,UAAU,EAAE,kBAAkB,
|
|
1
|
+
{"version":3,"file":"deployer.service.test.js","sourceRoot":"","sources":["../../../../ts/deployer/__tests__/deployer.service.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,17 +1,13 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { EMode } from "@maci-protocol/sdk";
|
|
2
2
|
import { IDeployMaciConfig, IDeployPollConfig, IEASPolicyArgs, IGitcoinPassportPolicyArgs, IHatsPolicyArgs, IMerkleProofPolicyArgs, ISemaphorePolicyArgs, ITokenPolicyArgs, IZupassPolicyArgs } from "../types";
|
|
3
3
|
export declare const MSG_BATCH_SIZE = 20;
|
|
4
|
-
|
|
5
|
-
* Coordinator MACI Keypair
|
|
6
|
-
*/
|
|
7
|
-
export declare const coordinatorMACIKeypair: Keypair;
|
|
4
|
+
export declare const MODE = EMode.NON_QV;
|
|
8
5
|
/**
|
|
9
6
|
* MACI deployment configuration for testing
|
|
10
7
|
*/
|
|
11
8
|
export declare const testMaciDeploymentConfig: IDeployMaciConfig;
|
|
12
9
|
/**
|
|
13
10
|
* Start date for the poll (it cannot be in the past)
|
|
14
|
-
* n seconds are added to give it time until it is deployed
|
|
15
11
|
*/
|
|
16
12
|
export declare const startDate: number;
|
|
17
13
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../ts/deployer/__tests__/utils.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../ts/deployer/__tests__/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyC,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAGlF,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,cAAc,EACd,0BAA0B,EAC1B,eAAe,EACf,sBAAsB,EACtB,oBAAoB,EACpB,gBAAgB,EAChB,iBAAiB,EAClB,MAAM,UAAU,CAAC;AAElB,eAAO,MAAM,cAAc,KAAK,CAAC;AAEjC,eAAO,MAAM,IAAI,eAAe,CAAC;AAEjC;;GAEG;AACH,eAAO,MAAM,wBAAwB,EAAE,iBAyBtC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,SAAS,QAAgC,CAAC;AAEvD;;;GAGG;AACH,eAAO,MAAM,YAAY,KAAK,CAAC;AAE/B;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,KAAK,CAAC;AAE5C;;GAEG;AACH,eAAO,MAAM,wBAAwB,EAAE,iBAkBtC,CAAC;AAEF;;;;GAIG;AACH;;GAEG;AACH,eAAO,MAAM,yBAAyB,EAAE,cAIvC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,4BAA4B,EAAE,iBAK1C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,+BAA+B,EAAE,oBAG7C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,0BAA0B,EAAE,eAGxC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iCAAiC,EAAE,sBAE/C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,4BAA4B,EAAE,gBAE1C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,qCAAqC,EAAE,0BAGnD,CAAC"}
|
|
@@ -1,11 +1,7 @@
|
|
|
1
|
-
import { Keypair, PrivateKey } from "@maci-protocol/domainobjs";
|
|
2
1
|
import { EPolicies, EInitialVoiceCreditProxies, EMode } from "@maci-protocol/sdk";
|
|
3
2
|
import { zeroHash } from "viem";
|
|
4
3
|
export const MSG_BATCH_SIZE = 20;
|
|
5
|
-
|
|
6
|
-
* Coordinator MACI Keypair
|
|
7
|
-
*/
|
|
8
|
-
export const coordinatorMACIKeypair = new Keypair(PrivateKey.deserialize("macisk.bdd73f1757f75261a0c9997def6cd47519cad2856347cdc6fd30718999576860"));
|
|
4
|
+
export const MODE = EMode.NON_QV;
|
|
9
5
|
/**
|
|
10
6
|
* MACI deployment configuration for testing
|
|
11
7
|
*/
|
|
@@ -16,6 +12,7 @@ export const testMaciDeploymentConfig = {
|
|
|
16
12
|
MACI: {
|
|
17
13
|
policy: EPolicies.FreeForAll,
|
|
18
14
|
stateTreeDepth: 10,
|
|
15
|
+
mode: MODE,
|
|
19
16
|
},
|
|
20
17
|
VerifyingKeysRegistry: {
|
|
21
18
|
args: {
|
|
@@ -36,9 +33,8 @@ export const testMaciDeploymentConfig = {
|
|
|
36
33
|
};
|
|
37
34
|
/**
|
|
38
35
|
* Start date for the poll (it cannot be in the past)
|
|
39
|
-
* n seconds are added to give it time until it is deployed
|
|
40
36
|
*/
|
|
41
|
-
export const startDate = Math.floor(Date.now() / 1000)
|
|
37
|
+
export const startDate = Math.floor(Date.now() / 1000);
|
|
42
38
|
/**
|
|
43
39
|
* Poll duration in seconds
|
|
44
40
|
* n seconds are added to the poll start date
|
|
@@ -56,8 +52,7 @@ export const pollStartDateExtraSeconds = 60;
|
|
|
56
52
|
export const testPollDeploymentConfig = {
|
|
57
53
|
startDate,
|
|
58
54
|
endDate: startDate + pollDuration,
|
|
59
|
-
mode:
|
|
60
|
-
coordinatorPublicKey: coordinatorMACIKeypair.publicKey.serialize(),
|
|
55
|
+
mode: MODE,
|
|
61
56
|
tallyProcessingStateTreeDepth: 1,
|
|
62
57
|
messageBatchSize: MSG_BATCH_SIZE,
|
|
63
58
|
pollStateTreeDepth: 10,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../ts/deployer/__tests__/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../ts/deployer/__tests__/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { EInitialVoiceCreditProxies, EMode, ISetVerifyingKeysArgs, BasePolicy, ConstantInitialVoiceCreditProxy } from "@maci-protocol/sdk";
|
|
2
2
|
import { Signer } from "ethers";
|
|
3
3
|
import { type Hex } from "viem";
|
|
4
4
|
import { ESupportedNetworks } from "../common";
|
|
5
5
|
import { FileService } from "../file/file.service";
|
|
6
6
|
import { SessionKeysService } from "../sessionKeys/sessionKeys.service";
|
|
7
|
-
import { IDeployMaciArgs, IDeployPollArgs,
|
|
7
|
+
import { IDeployMaciArgs, IDeployPollArgs, IInitialVoiceCreditProxyArgs, IVerifyingKeysRegistryArgs, IDeployPolicyConfig } from "./types";
|
|
8
8
|
/**
|
|
9
9
|
* DeployerService is responsible for deploying contracts.
|
|
10
10
|
*/
|
|
@@ -26,12 +26,11 @@ export declare class DeployerService {
|
|
|
26
26
|
* always deploy and save it
|
|
27
27
|
*
|
|
28
28
|
* @param signer - the signer
|
|
29
|
-
* @param policyType - the policy type
|
|
30
29
|
* @param network - the network
|
|
31
|
-
* @param
|
|
30
|
+
* @param policyConfig - the policy configuration parameters
|
|
32
31
|
* @returns - the policy contract
|
|
33
32
|
*/
|
|
34
|
-
deployAndSavePolicy(signer: Signer,
|
|
33
|
+
deployAndSavePolicy(signer: Signer, network: ESupportedNetworks, policyConfig: IDeployPolicyConfig): Promise<BasePolicy>;
|
|
35
34
|
/**
|
|
36
35
|
* Get the voice credit proxy contract object
|
|
37
36
|
* always deploy and save it
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deployer.service.d.ts","sourceRoot":"","sources":["../../../ts/deployer/deployer.service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"deployer.service.d.ts","sourceRoot":"","sources":["../../../ts/deployer/deployer.service.ts"],"names":[],"mappings":"AAAA,OAAO,EASL,0BAA0B,EAC1B,KAAK,EAEL,qBAAqB,EAarB,UAAU,EAIV,+BAA+B,EA0BhC,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAgB,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,MAAM,CAAC;AAEhC,OAAO,EAAc,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAE3D,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAExE,OAAO,EACL,eAAe,EACf,eAAe,EACf,4BAA4B,EAU5B,0BAA0B,EAC1B,mBAAmB,EACpB,MAAM,SAAS,CAAC;AAEjB;;GAEG;AACH,qBACa,eAAe;IAYxB,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IACnC,OAAO,CAAC,QAAQ,CAAC,WAAW;IAZ9B;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkB;IAE1C;;;;OAIG;gBAEgB,kBAAkB,EAAE,kBAAkB,EACtC,WAAW,EAAE,WAAW;IAK3C;;;;;;;;OAQG;IACG,mBAAmB,CACvB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,kBAAkB,EAC3B,YAAY,EAAE,mBAAmB,GAChC,OAAO,CAAC,UAAU,CAAC;IAwStB;;;;;;;;;OASG;IACG,6BAA6B,CACjC,MAAM,EAAE,MAAM,EACd,oBAAoB,EAAE,0BAA0B,EAChD,OAAO,EAAE,kBAAkB,EAC3B,IAAI,CAAC,EAAE,4BAA4B,GAClC,OAAO,CAAC,+BAA+B,CAAC;IA6B3C;;;;;;;OAOG;IACG,oBAAoB,CACxB,MAAM,EAAE,MAAM,EACd,4BAA4B,EAAE,GAAG,EACjC,yBAAyB,EAAE,0BAA0B,EACrD,IAAI,EAAE,KAAK,GACV,OAAO,CAAC,qBAAqB,CAAC;IAgDjC;;;;;;;OAOG;IACG,UAAU,CAAC,EAAE,QAAQ,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,eAAe,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAuD/G;;;;;OAKG;IACG,UAAU,CAAC,EAAE,QAAQ,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,eAAe,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;CA6F/G"}
|
|
@@ -7,13 +7,11 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
7
7
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
8
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
9
|
};
|
|
10
|
-
import { deployVerifier } from "@maci-protocol/
|
|
11
|
-
import { PublicKey } from "@maci-protocol/domainobjs";
|
|
12
|
-
import { ContractStorage, EPolicies, VerifyingKeysRegistry__factory as VerifyingKeysRegistryFactory, MessageProcessor__factory as MessageProcessorFactory, Tally__factory as TallyFactory, Poll__factory as PollFactory, MACI__factory as MACIFactory, EContracts, EInitialVoiceCreditProxies, EMode, deployPoll, extractAllVerifyingKeys, deployConstantInitialVoiceCreditProxy, deployFreeForAllSignUpPolicy, deployERC20VotesPolicy, deployAnonAadhaarPolicy, deploySignupTokenPolicy, deployMerkleProofPolicy, deploySemaphoreSignupPolicy, deployZupassSignUpPolicy, deployGitcoinPassportPolicy, deployEASSignUpPolicy, deployHatsSignupPolicy, deployMaci, setVerifyingKeys, deployVerifyingKeysRegistryContract, generateEmptyBallotRoots, } from "@maci-protocol/sdk";
|
|
10
|
+
import { ContractStorage, EPolicies, VerifyingKeysRegistry__factory as VerifyingKeysRegistryFactory, MessageProcessor__factory as MessageProcessorFactory, Tally__factory as TallyFactory, Poll__factory as PollFactory, MACI__factory as MACIFactory, EContracts, EInitialVoiceCreditProxies, EMode, deployPoll, extractAllVerifyingKeys, deployConstantInitialVoiceCreditProxy, deployFreeForAllSignUpPolicy, deployERC20VotesPolicy, deployAnonAadhaarPolicy, deploySignupTokenPolicy, deployMerkleProofPolicy, deploySemaphoreSignupPolicy, deployZupassSignUpPolicy, deployGitcoinPassportPolicy, deployEASSignUpPolicy, deployHatsSignupPolicy, deployMaci, setVerifyingKeys, deployVerifyingKeysRegistryContract, generateEmptyBallotRoots, getDeployedPolicyProxyFactories, deployVerifier, ECheckerFactories, EPolicyFactories, } from "@maci-protocol/sdk";
|
|
13
11
|
import { Injectable } from "@nestjs/common";
|
|
14
12
|
import { BaseContract } from "ethers";
|
|
15
|
-
import path from "path";
|
|
16
13
|
import { ErrorCodes } from "../common";
|
|
14
|
+
import { getCoordinatorKeypair } from "../common/coordinatorKeypair";
|
|
17
15
|
import { FileService } from "../file/file.service";
|
|
18
16
|
import { SessionKeysService } from "../sessionKeys/sessionKeys.service";
|
|
19
17
|
/**
|
|
@@ -34,101 +32,224 @@ let DeployerService = class DeployerService {
|
|
|
34
32
|
constructor(sessionKeysService, fileService) {
|
|
35
33
|
this.sessionKeysService = sessionKeysService;
|
|
36
34
|
this.fileService = fileService;
|
|
37
|
-
this.storage = ContractStorage.getInstance(
|
|
35
|
+
this.storage = ContractStorage.getInstance();
|
|
38
36
|
}
|
|
39
37
|
/**
|
|
40
38
|
* Get the policy contract object
|
|
41
39
|
* always deploy and save it
|
|
42
40
|
*
|
|
43
41
|
* @param signer - the signer
|
|
44
|
-
* @param policyType - the policy type
|
|
45
42
|
* @param network - the network
|
|
46
|
-
* @param
|
|
43
|
+
* @param policyConfig - the policy configuration parameters
|
|
47
44
|
* @returns - the policy contract
|
|
48
45
|
*/
|
|
49
|
-
async deployAndSavePolicy(signer,
|
|
50
|
-
let
|
|
46
|
+
async deployAndSavePolicy(signer, network, policyConfig) {
|
|
47
|
+
let policyContract;
|
|
48
|
+
let policyFactory;
|
|
49
|
+
let checkFactory;
|
|
50
|
+
let policyFactoryName;
|
|
51
|
+
let checkFactoryName;
|
|
52
|
+
let factoryIsSaved;
|
|
53
|
+
let checkerIsSaved;
|
|
54
|
+
const { type, args } = policyConfig;
|
|
51
55
|
// based on the policy type, we need to deploy the correct policy
|
|
52
|
-
switch (
|
|
56
|
+
switch (type) {
|
|
53
57
|
case EPolicies.FreeForAll: {
|
|
54
|
-
|
|
58
|
+
policyFactoryName = EPolicyFactories.FreeForAll;
|
|
59
|
+
checkFactoryName = ECheckerFactories.FreeForAll;
|
|
60
|
+
const factories = await getDeployedPolicyProxyFactories({
|
|
61
|
+
policy: policyFactoryName,
|
|
62
|
+
checker: checkFactoryName,
|
|
63
|
+
network,
|
|
64
|
+
signer,
|
|
65
|
+
});
|
|
66
|
+
factoryIsSaved = !!factories.policy;
|
|
67
|
+
checkerIsSaved = !!factories.checker;
|
|
68
|
+
[policyContract, , policyFactory, checkFactory] = await deployFreeForAllSignUpPolicy(factories, signer, true);
|
|
55
69
|
break;
|
|
56
70
|
}
|
|
57
71
|
case EPolicies.EAS: {
|
|
58
|
-
|
|
72
|
+
policyFactoryName = EPolicyFactories.EAS;
|
|
73
|
+
checkFactoryName = ECheckerFactories.EAS;
|
|
74
|
+
const factories = await getDeployedPolicyProxyFactories({
|
|
75
|
+
policy: policyFactoryName,
|
|
76
|
+
checker: checkFactoryName,
|
|
77
|
+
network,
|
|
78
|
+
signer,
|
|
79
|
+
});
|
|
80
|
+
factoryIsSaved = !!factories.policy;
|
|
81
|
+
checkerIsSaved = !!factories.checker;
|
|
82
|
+
[policyContract, , policyFactory, checkFactory] = await deployEASSignUpPolicy({
|
|
59
83
|
eas: args.easAddress,
|
|
60
84
|
attester: args.attester,
|
|
61
85
|
schema: args.schema,
|
|
62
|
-
},
|
|
86
|
+
}, factories, signer, true);
|
|
63
87
|
break;
|
|
64
88
|
}
|
|
65
89
|
case EPolicies.GitcoinPassport: {
|
|
66
|
-
|
|
90
|
+
policyFactoryName = EPolicyFactories.GitcoinPassport;
|
|
91
|
+
checkFactoryName = ECheckerFactories.GitcoinPassport;
|
|
92
|
+
const factories = await getDeployedPolicyProxyFactories({
|
|
93
|
+
policy: policyFactoryName,
|
|
94
|
+
checker: checkFactoryName,
|
|
95
|
+
network,
|
|
96
|
+
signer,
|
|
97
|
+
});
|
|
98
|
+
factoryIsSaved = !!factories.policy;
|
|
99
|
+
checkerIsSaved = !!factories.checker;
|
|
100
|
+
[policyContract, , policyFactory, checkFactory] = await deployGitcoinPassportPolicy({
|
|
67
101
|
decoderAddress: args.decoderAddress,
|
|
68
102
|
minimumScore: Number(args.passingScore),
|
|
69
|
-
},
|
|
103
|
+
}, factories, signer, true);
|
|
70
104
|
break;
|
|
71
105
|
}
|
|
72
106
|
case EPolicies.Hats: {
|
|
73
|
-
|
|
107
|
+
policyFactoryName = EPolicyFactories.Hats;
|
|
108
|
+
checkFactoryName = ECheckerFactories.Hats;
|
|
109
|
+
const factories = await getDeployedPolicyProxyFactories({
|
|
110
|
+
policy: policyFactoryName,
|
|
111
|
+
checker: checkFactoryName,
|
|
112
|
+
network,
|
|
113
|
+
signer,
|
|
114
|
+
});
|
|
115
|
+
factoryIsSaved = !!factories.policy;
|
|
116
|
+
checkerIsSaved = !!factories.checker;
|
|
117
|
+
[policyContract, , policyFactory, checkFactory] = await deployHatsSignupPolicy({
|
|
74
118
|
hats: args.hatsProtocolAddress,
|
|
75
119
|
criterionHats: args.critrionHats.map((c) => BigInt(c)),
|
|
76
|
-
},
|
|
120
|
+
}, factories, signer, true);
|
|
77
121
|
break;
|
|
78
122
|
}
|
|
79
123
|
case EPolicies.Zupass: {
|
|
80
|
-
|
|
124
|
+
policyFactoryName = EPolicyFactories.Zupass;
|
|
125
|
+
checkFactoryName = ECheckerFactories.Zupass;
|
|
126
|
+
const factories = await getDeployedPolicyProxyFactories({
|
|
127
|
+
policy: policyFactoryName,
|
|
128
|
+
checker: checkFactoryName,
|
|
129
|
+
network,
|
|
130
|
+
signer,
|
|
131
|
+
});
|
|
132
|
+
factoryIsSaved = !!factories.policy;
|
|
133
|
+
checkerIsSaved = !!factories.checker;
|
|
134
|
+
[policyContract, , policyFactory, checkFactory] = await deployZupassSignUpPolicy({
|
|
81
135
|
eventId: args.eventId,
|
|
82
136
|
signer1: args.signer1,
|
|
83
137
|
signer2: args.signer2,
|
|
84
138
|
verifier: args.zupassVerifier,
|
|
85
|
-
},
|
|
139
|
+
}, factories, signer, true);
|
|
86
140
|
break;
|
|
87
141
|
}
|
|
88
142
|
case EPolicies.Semaphore: {
|
|
89
|
-
|
|
143
|
+
policyFactoryName = EPolicyFactories.Semaphore;
|
|
144
|
+
checkFactoryName = ECheckerFactories.Semaphore;
|
|
145
|
+
const factories = await getDeployedPolicyProxyFactories({
|
|
146
|
+
policy: policyFactoryName,
|
|
147
|
+
checker: checkFactoryName,
|
|
148
|
+
network,
|
|
149
|
+
signer,
|
|
150
|
+
});
|
|
151
|
+
factoryIsSaved = !!factories.policy;
|
|
152
|
+
checkerIsSaved = !!factories.checker;
|
|
153
|
+
[policyContract, , policyFactory, checkFactory] = await deploySemaphoreSignupPolicy({
|
|
90
154
|
semaphore: args.semaphoreContract,
|
|
91
155
|
groupId: BigInt(args.groupId),
|
|
92
|
-
},
|
|
156
|
+
}, factories, signer, true);
|
|
93
157
|
break;
|
|
94
158
|
}
|
|
95
159
|
case EPolicies.MerkleProof: {
|
|
96
|
-
|
|
160
|
+
policyFactoryName = EPolicyFactories.MerkleProof;
|
|
161
|
+
checkFactoryName = ECheckerFactories.MerkleProof;
|
|
162
|
+
const factories = await getDeployedPolicyProxyFactories({
|
|
163
|
+
policy: policyFactoryName,
|
|
164
|
+
checker: checkFactoryName,
|
|
165
|
+
network,
|
|
166
|
+
signer,
|
|
167
|
+
});
|
|
168
|
+
factoryIsSaved = !!factories.policy;
|
|
169
|
+
checkerIsSaved = !!factories.checker;
|
|
170
|
+
[policyContract, , policyFactory, checkFactory] = await deployMerkleProofPolicy({
|
|
97
171
|
root: args.root,
|
|
98
|
-
},
|
|
172
|
+
}, factories, signer, true);
|
|
99
173
|
break;
|
|
100
174
|
}
|
|
101
175
|
case EPolicies.Token: {
|
|
102
|
-
|
|
176
|
+
policyFactoryName = EPolicyFactories.Token;
|
|
177
|
+
checkFactoryName = ECheckerFactories.Token;
|
|
178
|
+
const factories = await getDeployedPolicyProxyFactories({
|
|
179
|
+
policy: policyFactoryName,
|
|
180
|
+
checker: checkFactoryName,
|
|
181
|
+
network,
|
|
182
|
+
signer,
|
|
183
|
+
});
|
|
184
|
+
factoryIsSaved = !!factories.policy;
|
|
185
|
+
checkerIsSaved = !!factories.checker;
|
|
186
|
+
[policyContract, , policyFactory, checkFactory] = await deploySignupTokenPolicy({
|
|
103
187
|
token: args.token,
|
|
104
|
-
},
|
|
188
|
+
}, factories, signer, true);
|
|
105
189
|
break;
|
|
106
190
|
}
|
|
107
191
|
case EPolicies.AnonAadhaar: {
|
|
108
|
-
|
|
192
|
+
policyFactoryName = EPolicyFactories.AnonAadhaar;
|
|
193
|
+
checkFactoryName = ECheckerFactories.AnonAadhaar;
|
|
194
|
+
const factories = await getDeployedPolicyProxyFactories({
|
|
195
|
+
policy: policyFactoryName,
|
|
196
|
+
checker: checkFactoryName,
|
|
197
|
+
network,
|
|
198
|
+
signer,
|
|
199
|
+
});
|
|
200
|
+
factoryIsSaved = !!factories.policy;
|
|
201
|
+
checkerIsSaved = !!factories.checker;
|
|
202
|
+
[policyContract, , policyFactory, checkFactory] = await deployAnonAadhaarPolicy({
|
|
109
203
|
verifierAddress: args.verifier,
|
|
110
204
|
nullifierSeed: args.nullifierSeed,
|
|
111
|
-
},
|
|
205
|
+
}, factories, signer, true);
|
|
112
206
|
break;
|
|
113
207
|
}
|
|
114
208
|
case EPolicies.ERC20Votes: {
|
|
115
|
-
|
|
209
|
+
policyFactoryName = EPolicyFactories.ERC20Votes;
|
|
210
|
+
checkFactoryName = ECheckerFactories.ERC20Votes;
|
|
211
|
+
const factories = await getDeployedPolicyProxyFactories({
|
|
212
|
+
policy: policyFactoryName,
|
|
213
|
+
checker: checkFactoryName,
|
|
214
|
+
network,
|
|
215
|
+
signer,
|
|
216
|
+
});
|
|
217
|
+
factoryIsSaved = !!factories.policy;
|
|
218
|
+
checkerIsSaved = !!factories.checker;
|
|
219
|
+
[policyContract, , policyFactory, checkFactory] = await deployERC20VotesPolicy({
|
|
116
220
|
snapshotBlock: BigInt(args.snapshotBlock),
|
|
117
221
|
threshold: BigInt(args.threshold),
|
|
118
222
|
token: args.token,
|
|
119
|
-
},
|
|
223
|
+
}, factories, signer, true);
|
|
120
224
|
break;
|
|
121
225
|
}
|
|
122
226
|
default:
|
|
123
227
|
throw new Error(ErrorCodes.UNSUPPORTED_POLICY.toString());
|
|
124
228
|
}
|
|
125
229
|
await this.storage.register({
|
|
126
|
-
id:
|
|
127
|
-
|
|
230
|
+
id: type,
|
|
231
|
+
name: type,
|
|
232
|
+
contract: policyContract,
|
|
128
233
|
args: args ? Object.values(args).map((arg) => String(arg)) : [],
|
|
129
234
|
network,
|
|
130
235
|
});
|
|
131
|
-
|
|
236
|
+
if (!factoryIsSaved) {
|
|
237
|
+
await this.storage.register({
|
|
238
|
+
id: policyFactoryName,
|
|
239
|
+
name: policyFactoryName,
|
|
240
|
+
contract: policyFactory,
|
|
241
|
+
network,
|
|
242
|
+
});
|
|
243
|
+
}
|
|
244
|
+
if (!checkerIsSaved) {
|
|
245
|
+
await this.storage.register({
|
|
246
|
+
id: checkFactoryName,
|
|
247
|
+
name: checkFactoryName,
|
|
248
|
+
contract: checkFactory,
|
|
249
|
+
network,
|
|
250
|
+
});
|
|
251
|
+
}
|
|
252
|
+
return policyContract;
|
|
132
253
|
}
|
|
133
254
|
/**
|
|
134
255
|
* Get the voice credit proxy contract object
|
|
@@ -169,11 +290,13 @@ let DeployerService = class DeployerService {
|
|
|
169
290
|
* @returns SetVerifyingKeysArgs
|
|
170
291
|
*/
|
|
171
292
|
async getVerifyingKeysArgs(signer, verifyingKeysRegistryAddress, verifyingKeysRegistryArgs, mode) {
|
|
172
|
-
const { zkey: pollJoiningZkeyPath } = this.fileService.getZkeyFilePaths(process.env.COORDINATOR_POLL_JOINING_ZKEY_NAME
|
|
173
|
-
const { zkey: pollJoinedZkeyPath } = this.fileService.getZkeyFilePaths(process.env.COORDINATOR_POLL_JOINED_ZKEY_NAME
|
|
293
|
+
const { zkey: pollJoiningZkeyPath } = this.fileService.getZkeyFilePaths(process.env.COORDINATOR_POLL_JOINING_ZKEY_NAME);
|
|
294
|
+
const { zkey: pollJoinedZkeyPath } = this.fileService.getZkeyFilePaths(process.env.COORDINATOR_POLL_JOINED_ZKEY_NAME);
|
|
174
295
|
const { zkey: messageProcessorZkeyPath } = this.fileService.getZkeyFilePaths(process.env.COORDINATOR_MESSAGE_PROCESS_ZKEY_NAME, mode);
|
|
175
296
|
// There are only QV and Non-QV modes available for tally circuit
|
|
176
|
-
const { zkey: voteTallyZkeyPath } = this.fileService.getZkeyFilePaths(process.env.COORDINATOR_TALLY_ZKEY_NAME,
|
|
297
|
+
const { zkey: voteTallyZkeyPath } = this.fileService.getZkeyFilePaths(process.env.COORDINATOR_TALLY_ZKEY_NAME,
|
|
298
|
+
// if FULL use NON_QV because there are only VoteTallyQV and VoteTallyNonQV zkeys
|
|
299
|
+
mode === EMode.FULL ? EMode.NON_QV : mode);
|
|
177
300
|
const { pollJoiningVerifyingKey, pollJoinedVerifyingKey, processVerifyingKey, tallyVerifyingKey } = await extractAllVerifyingKeys({
|
|
178
301
|
pollJoiningZkeyPath,
|
|
179
302
|
pollJoinedZkeyPath,
|
|
@@ -206,11 +329,11 @@ let DeployerService = class DeployerService {
|
|
|
206
329
|
*/
|
|
207
330
|
async deployMaci({ approval, sessionKeyAddress, chain, config }) {
|
|
208
331
|
const signer = await this.sessionKeysService.getCoordinatorSigner(chain, sessionKeyAddress, approval);
|
|
209
|
-
const policyContract = await this.deployAndSavePolicy(signer,
|
|
332
|
+
const policyContract = await this.deployAndSavePolicy(signer, chain, config.policy);
|
|
210
333
|
const policyAddress = await policyContract.getAddress();
|
|
211
334
|
const verifierContract = await deployVerifier(signer, true);
|
|
212
335
|
const verifyingKeysRegistryAddress = await deployVerifyingKeysRegistryContract({ signer });
|
|
213
|
-
const verifyingKeysArgs = await this.getVerifyingKeysArgs(signer, verifyingKeysRegistryAddress, config.VerifyingKeysRegistry.args,
|
|
336
|
+
const verifyingKeysArgs = await this.getVerifyingKeysArgs(signer, verifyingKeysRegistryAddress, config.VerifyingKeysRegistry.args, config.MACI.mode);
|
|
214
337
|
await setVerifyingKeys(verifyingKeysArgs);
|
|
215
338
|
// deploy the smart contracts
|
|
216
339
|
const maciAddresses = await deployMaci({
|
|
@@ -269,18 +392,16 @@ let DeployerService = class DeployerService {
|
|
|
269
392
|
if (!verifyingKeysRegistryAddress) {
|
|
270
393
|
throw new Error(ErrorCodes.VERIFYING_KEYS_REGISTRY_NOT_DEPLOYED.toString());
|
|
271
394
|
}
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
if (!policyAddress) {
|
|
275
|
-
const policyContract = await this.deployAndSavePolicy(signer, config.policy.type, chain, config.policy.args);
|
|
276
|
-
policyAddress = (await policyContract.getAddress());
|
|
277
|
-
}
|
|
395
|
+
const policyContract = await this.deployAndSavePolicy(signer, chain, config.policy);
|
|
396
|
+
const policyAddress = (await policyContract.getAddress());
|
|
278
397
|
// check if initial voice credit proxy address was given
|
|
279
398
|
let initialVoiceCreditProxyAddress = config.initialVoiceCreditsProxy.address;
|
|
280
399
|
if (!initialVoiceCreditProxyAddress) {
|
|
281
400
|
const initialVoiceCreditProxyContract = await this.deployAndSaveVoiceCreditProxy(signer, config.initialVoiceCreditsProxy.type, chain, config.initialVoiceCreditsProxy.args);
|
|
282
401
|
initialVoiceCreditProxyAddress = (await initialVoiceCreditProxyContract.getAddress());
|
|
283
402
|
}
|
|
403
|
+
// instantiate the coordinator MACI keypair
|
|
404
|
+
const coordinatorKeypair = getCoordinatorKeypair();
|
|
284
405
|
const deployPollArgs = {
|
|
285
406
|
maciAddress,
|
|
286
407
|
pollStartTimestamp: config.startDate,
|
|
@@ -289,7 +410,7 @@ let DeployerService = class DeployerService {
|
|
|
289
410
|
voteOptionTreeDepth: config.voteOptionTreeDepth,
|
|
290
411
|
messageBatchSize: config.messageBatchSize,
|
|
291
412
|
stateTreeDepth: config.pollStateTreeDepth,
|
|
292
|
-
coordinatorPublicKey:
|
|
413
|
+
coordinatorPublicKey: coordinatorKeypair.publicKey,
|
|
293
414
|
verifierContractAddress: verifierAddress,
|
|
294
415
|
verifyingKeysRegistryContractAddress: verifyingKeysRegistryAddress,
|
|
295
416
|
mode: config.mode,
|