@maci-protocol/coordinator 0.0.0-ci.80cbc33 → 0.0.0-ci.82590d6
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 +60 -24
- package/build/ts/common/http.d.ts +6 -0
- package/build/ts/common/http.d.ts.map +1 -0
- package/build/ts/common/http.js +49 -0
- package/build/ts/common/http.js.map +1 -0
- package/build/ts/common/index.d.ts +1 -0
- package/build/ts/common/index.d.ts.map +1 -1
- package/build/ts/common/index.js +1 -0
- package/build/ts/common/index.js.map +1 -1
- package/build/ts/deployer/deployer.controller.d.ts.map +1 -1
- package/build/ts/deployer/deployer.controller.js +19 -6
- package/build/ts/deployer/deployer.controller.js.map +1 -1
- package/build/ts/proof/__tests__/proof.controller.test.js +2 -2
- package/build/ts/proof/__tests__/proof.controller.test.js.map +1 -1
- package/build/ts/proof/proof.controller.d.ts.map +1 -1
- package/build/ts/proof/proof.controller.js +37 -11
- package/build/ts/proof/proof.controller.js.map +1 -1
- package/build/ts/scheduler/__tests__/scheduler.controller.test.js +3 -3
- package/build/ts/scheduler/__tests__/scheduler.controller.test.js.map +1 -1
- package/build/ts/scheduler/scheduler.controller.d.ts.map +1 -1
- package/build/ts/scheduler/scheduler.controller.js +13 -6
- package/build/ts/scheduler/scheduler.controller.js.map +1 -1
- package/build/ts/subgraph/__tests__/subgraph.controller.test.js +1 -1
- package/build/ts/subgraph/__tests__/subgraph.controller.test.js.map +1 -1
- package/build/ts/subgraph/subgraph.controller.d.ts.map +1 -1
- package/build/ts/subgraph/subgraph.controller.js +8 -3
- package/build/ts/subgraph/subgraph.controller.js.map +1 -1
- package/build/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +9 -9
package/README.md
CHANGED
|
@@ -7,45 +7,53 @@ Please refer to [Offchain relayer service documentation](https://maci.pse.dev/do
|
|
|
7
7
|
1. [Node.js](https://nodejs.org/en) version 20.0.0.
|
|
8
8
|
2. [pnpm](https://pnpm.io/installation) package manager.
|
|
9
9
|
3. [rapidsnark](https://github.com/iden3/rapidsnark) program.
|
|
10
|
+
4. (Optional) [Redis](https://redis.io/docs/latest/operate/oss_and_stack/install/archive/install-redis/) database if you want to use the scheduler module.
|
|
10
11
|
|
|
11
|
-
|
|
12
|
+
- Please note that the build process might fail in a Windows environment. If you are using Windows, it is recommended to use Windows Subsystem for Linux (WSL) or a virtual machine with a Linux distribution.
|
|
12
13
|
|
|
13
|
-
|
|
14
|
-
2. Remember to set up the rapidsnark file variable.
|
|
15
|
-
3. Generate RSA key pair with `pnpm run generate-keypair`.
|
|
16
|
-
4. Download zkey files using `pnpm run download-zkeys:{type}` (only test type is available for now).
|
|
17
|
-
5. Make sure you copied RSA public key to your application. This will be needed for encrypting `Authorization` header and coordinator private key for proof generation. Also it can be accessed through API method `GET v1/proof/publicKey`.
|
|
18
|
-
6. Run `pnpm run start` to run the service.
|
|
19
|
-
7. All API calls must be called with `Authorization` header, where the value is encrypted with RSA public key you generated before. Header value contains message signature and message digest created by `COORDINATOR_ADDRESSES`. The format is `publicEncrypt({signature}:{digest})`.
|
|
20
|
-
Make sure you set `COORDINATOR_ADDRESSES` env variable and sign any message with the addresses from your application (see [AccountSignatureGuard](./ts/auth/AccountSignatureGuard.service.ts)).
|
|
21
|
-
8. Proofs can be generated with `POST v1/proof/generate` API method or with Websockets (see [dto spec](./ts/proof/dto.ts), [controller](./ts/app.controller.ts) and [wsgateway](./ts/events/events.gateway.ts)).
|
|
14
|
+
## Install and build it from source
|
|
22
15
|
|
|
23
|
-
|
|
16
|
+
1. Install dependencies and build the project
|
|
24
17
|
|
|
25
|
-
|
|
18
|
+
```bash
|
|
19
|
+
pnpm install
|
|
20
|
+
pnpm run build
|
|
21
|
+
```
|
|
26
22
|
|
|
27
|
-
|
|
23
|
+
2. Install Redis database (if the scheduler module is going to be used) using [the official guide](https://redis.io/docs/latest/operate/oss_and_stack/install/archive/install-redis/)
|
|
28
24
|
|
|
29
|
-
|
|
25
|
+
3. Download the zkeys
|
|
30
26
|
|
|
27
|
+
```bash
|
|
28
|
+
pnpm run download-zkeys:test
|
|
29
|
+
# for production zkeys
|
|
30
|
+
# pnpm run download-zkeys:ceremony
|
|
31
31
|
```
|
|
32
|
-
# Subgraph name
|
|
33
|
-
SUBGRAPH_NAME="maci-subgraph"
|
|
34
32
|
|
|
35
|
-
|
|
36
|
-
SUBGRAPH_PROVIDER_URL=https://api.studio.thegraph.com/deploy/
|
|
33
|
+
4. Move to the coordinator service directory
|
|
37
34
|
|
|
38
|
-
|
|
39
|
-
|
|
35
|
+
```bash
|
|
36
|
+
cd apps/coordinator
|
|
37
|
+
```
|
|
40
38
|
|
|
41
|
-
|
|
42
|
-
|
|
39
|
+
5. Generate the RSA key pair to encrypt values throughout the communication workflow
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
pnpm run generate-keypair
|
|
43
43
|
```
|
|
44
44
|
|
|
45
|
-
|
|
45
|
+
6. Setup .env file (see `.env.example` for reference)
|
|
46
46
|
|
|
47
|
+
```bash
|
|
48
|
+
cp .env.example .env
|
|
47
49
|
```
|
|
48
|
-
|
|
50
|
+
|
|
51
|
+
7. Run the NestJS application
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
pnpm run start
|
|
55
|
+
# or
|
|
56
|
+
pnpm run start:prod
|
|
49
57
|
```
|
|
50
58
|
|
|
51
59
|
## Docker
|
|
@@ -65,3 +73,31 @@ docker compose -f apps/coordinator/docker-compose.yml exec coordinator-service /
|
|
|
65
73
|
# Stop container
|
|
66
74
|
docker compose -f apps/coordinator/docker-compose.yml down
|
|
67
75
|
```
|
|
76
|
+
|
|
77
|
+
## Subgraph deployment
|
|
78
|
+
|
|
79
|
+
It is possible to deploy subgraph using coordinator service.
|
|
80
|
+
|
|
81
|
+
First, you need to setup subgraph and create a project. [Subgraph dashboard](https://thegraph.com/studio/).
|
|
82
|
+
|
|
83
|
+
Then, set env variables:
|
|
84
|
+
|
|
85
|
+
```
|
|
86
|
+
# Subgraph name
|
|
87
|
+
SUBGRAPH_NAME="maci-subgraph"
|
|
88
|
+
|
|
89
|
+
# Subgraph provider url
|
|
90
|
+
SUBGRAPH_PROVIDER_URL=https://api.studio.thegraph.com/deploy/
|
|
91
|
+
|
|
92
|
+
# Subgraph deploy key
|
|
93
|
+
SUBGRAPH_DEPLOY_KEY=*******
|
|
94
|
+
|
|
95
|
+
# Subgraph project folder
|
|
96
|
+
SUBGRAPH_FOLDER=../subgraph
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
After deployment, subgraph url will be available in studio dashboard and you can use this type of url to get latest deployed version in your application:
|
|
100
|
+
|
|
101
|
+
```
|
|
102
|
+
https://api.studio.thegraph.com/.../{SUBGRAPH_NAME}/version/latest
|
|
103
|
+
```
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../../ts/common/http.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAI5C;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,KAAK,GAAG,UAAU,CAiD7D"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { HttpStatus } from "@nestjs/common";
|
|
2
|
+
import { ErrorCodes } from "./errors";
|
|
3
|
+
/**
|
|
4
|
+
* Map a thrown error (usually containing ErrorCodes) to an appropriate HTTP status
|
|
5
|
+
*/
|
|
6
|
+
export function mapErrorToHttpStatus(error) {
|
|
7
|
+
const { message } = error;
|
|
8
|
+
switch (message) {
|
|
9
|
+
case ErrorCodes.UNSUPPORTED_NETWORK.toString():
|
|
10
|
+
case ErrorCodes.UNSUPPORTED_VOICE_CREDIT_PROXY_FACTORY.toString():
|
|
11
|
+
case ErrorCodes.UNSUPPORTED_VOICE_CREDIT_PROXY.toString():
|
|
12
|
+
case ErrorCodes.UNSUPPORTED_POLICY.toString():
|
|
13
|
+
return HttpStatus.BAD_REQUEST;
|
|
14
|
+
case ErrorCodes.INVALID_APPROVAL.toString():
|
|
15
|
+
return HttpStatus.FORBIDDEN;
|
|
16
|
+
case ErrorCodes.SESSION_KEY_NOT_FOUND.toString():
|
|
17
|
+
case ErrorCodes.POLL_NOT_FOUND.toString():
|
|
18
|
+
return HttpStatus.NOT_FOUND;
|
|
19
|
+
case ErrorCodes.POLL_ALREADY_SCHEDULED.toString():
|
|
20
|
+
case ErrorCodes.POLL_ALREADY_TALLIED.toString():
|
|
21
|
+
case ErrorCodes.NOT_MERGED_STATE_TREE.toString():
|
|
22
|
+
case ErrorCodes.NOT_MERGED_MESSAGE_TREE.toString():
|
|
23
|
+
return HttpStatus.CONFLICT;
|
|
24
|
+
case ErrorCodes.MACI_NOT_DEPLOYED.toString():
|
|
25
|
+
case ErrorCodes.VERIFIER_NOT_DEPLOYED.toString():
|
|
26
|
+
case ErrorCodes.VERIFYING_KEYS_REGISTRY_NOT_DEPLOYED.toString():
|
|
27
|
+
return HttpStatus.PRECONDITION_FAILED;
|
|
28
|
+
case ErrorCodes.FILE_NOT_FOUND.toString():
|
|
29
|
+
case ErrorCodes.SUBGRAPH_DEPLOY_KEY_NOT_FOUND.toString():
|
|
30
|
+
case ErrorCodes.SUBGRAPH_DEPLOY.toString():
|
|
31
|
+
case ErrorCodes.PRIVATE_KEY_MISMATCH.toString():
|
|
32
|
+
case ErrorCodes.DECRYPTION.toString():
|
|
33
|
+
case ErrorCodes.ENCRYPTION.toString():
|
|
34
|
+
case ErrorCodes.COORDINATOR_RPC_URL_NOT_SET.toString():
|
|
35
|
+
case ErrorCodes.FAILED_TO_MERGE_STATE_TREE.toString():
|
|
36
|
+
case ErrorCodes.FAILED_TO_MERGE_MESSAGE_SUBTREES.toString():
|
|
37
|
+
case ErrorCodes.FAILED_TO_MERGE_MESSAGE_TREE.toString():
|
|
38
|
+
case ErrorCodes.FAILED_TO_SET_VERIFYING_KEYS.toString():
|
|
39
|
+
case ErrorCodes.FAILED_TO_DEPLOY_CONTRACT.toString():
|
|
40
|
+
case ErrorCodes.FAILED_TO_SET_MACI_INSTANCE_ON_POLICY.toString():
|
|
41
|
+
case ErrorCodes.FAILED_TO_DEPLOY_MACI.toString():
|
|
42
|
+
case ErrorCodes.FAILED_TO_DEPLOY_POLL.toString():
|
|
43
|
+
case ErrorCodes.FAILED_TO_UPDATE_SCHEDULED_POLL.toString():
|
|
44
|
+
return HttpStatus.INTERNAL_SERVER_ERROR;
|
|
45
|
+
default:
|
|
46
|
+
return HttpStatus.INTERNAL_SERVER_ERROR;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=http.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../../ts/common/http.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,KAAY;IAC/C,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IAE1B,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,UAAU,CAAC,mBAAmB,CAAC,QAAQ,EAAE,CAAC;QAC/C,KAAK,UAAU,CAAC,sCAAsC,CAAC,QAAQ,EAAE,CAAC;QAClE,KAAK,UAAU,CAAC,8BAA8B,CAAC,QAAQ,EAAE,CAAC;QAC1D,KAAK,UAAU,CAAC,kBAAkB,CAAC,QAAQ,EAAE;YAC3C,OAAO,UAAU,CAAC,WAAW,CAAC;QAEhC,KAAK,UAAU,CAAC,gBAAgB,CAAC,QAAQ,EAAE;YACzC,OAAO,UAAU,CAAC,SAAS,CAAC;QAE9B,KAAK,UAAU,CAAC,qBAAqB,CAAC,QAAQ,EAAE,CAAC;QACjD,KAAK,UAAU,CAAC,cAAc,CAAC,QAAQ,EAAE;YACvC,OAAO,UAAU,CAAC,SAAS,CAAC;QAE9B,KAAK,UAAU,CAAC,sBAAsB,CAAC,QAAQ,EAAE,CAAC;QAClD,KAAK,UAAU,CAAC,oBAAoB,CAAC,QAAQ,EAAE,CAAC;QAChD,KAAK,UAAU,CAAC,qBAAqB,CAAC,QAAQ,EAAE,CAAC;QACjD,KAAK,UAAU,CAAC,uBAAuB,CAAC,QAAQ,EAAE;YAChD,OAAO,UAAU,CAAC,QAAQ,CAAC;QAE7B,KAAK,UAAU,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC;QAC7C,KAAK,UAAU,CAAC,qBAAqB,CAAC,QAAQ,EAAE,CAAC;QACjD,KAAK,UAAU,CAAC,oCAAoC,CAAC,QAAQ,EAAE;YAC7D,OAAO,UAAU,CAAC,mBAAmB,CAAC;QAExC,KAAK,UAAU,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC;QAC1C,KAAK,UAAU,CAAC,6BAA6B,CAAC,QAAQ,EAAE,CAAC;QACzD,KAAK,UAAU,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC;QAC3C,KAAK,UAAU,CAAC,oBAAoB,CAAC,QAAQ,EAAE,CAAC;QAChD,KAAK,UAAU,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;QACtC,KAAK,UAAU,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;QACtC,KAAK,UAAU,CAAC,2BAA2B,CAAC,QAAQ,EAAE,CAAC;QACvD,KAAK,UAAU,CAAC,0BAA0B,CAAC,QAAQ,EAAE,CAAC;QACtD,KAAK,UAAU,CAAC,gCAAgC,CAAC,QAAQ,EAAE,CAAC;QAC5D,KAAK,UAAU,CAAC,4BAA4B,CAAC,QAAQ,EAAE,CAAC;QACxD,KAAK,UAAU,CAAC,4BAA4B,CAAC,QAAQ,EAAE,CAAC;QACxD,KAAK,UAAU,CAAC,yBAAyB,CAAC,QAAQ,EAAE,CAAC;QACrD,KAAK,UAAU,CAAC,qCAAqC,CAAC,QAAQ,EAAE,CAAC;QACjE,KAAK,UAAU,CAAC,qBAAqB,CAAC,QAAQ,EAAE,CAAC;QACjD,KAAK,UAAU,CAAC,qBAAqB,CAAC,QAAQ,EAAE,CAAC;QACjD,KAAK,UAAU,CAAC,+BAA+B,CAAC,QAAQ,EAAE;YACxD,OAAO,UAAU,CAAC,qBAAqB,CAAC;QAE1C;YACE,OAAO,UAAU,CAAC,qBAAqB,CAAC;IAC5C,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../ts/common/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,cAAc,SAAS,CAAC;AACxB,cAAc,sBAAsB,CAAC;AACrC,cAAc,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../ts/common/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,cAAc,SAAS,CAAC;AACxB,cAAc,sBAAsB,CAAC;AACrC,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC"}
|
package/build/ts/common/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../ts/common/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,cAAc,SAAS,CAAC;AACxB,cAAc,sBAAsB,CAAC;AACrC,cAAc,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../ts/common/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,cAAc,SAAS,CAAC;AACxB,cAAc,sBAAsB,CAAC;AACrC,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deployer.controller.d.ts","sourceRoot":"","sources":["../../../ts/deployer/deployer.controller.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"deployer.controller.d.ts","sourceRoot":"","sources":["../../../ts/deployer/deployer.controller.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,4BAA4B,EAAE,4BAA4B,EAAE,MAAM,OAAO,CAAC;AAEnF,qBAIa,kBAAkB;IAWjB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAV5C;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAuC;IAE9D;;;;OAIG;gBAC0B,eAAe,EAAE,eAAe;IAE7D;;;;;OAKG;IAUG,mBAAmB,CAAS,IAAI,EAAE,4BAA4B,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAOnG;;;;;OAKG;IAcG,UAAU,CAAS,IAAI,EAAE,4BAA4B,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;CAM1F"}
|
|
@@ -15,6 +15,7 @@ var DeployerController_1;
|
|
|
15
15
|
import { Body, Controller, HttpException, HttpStatus, Logger, Post, UseGuards } from "@nestjs/common";
|
|
16
16
|
import { ApiBearerAuth, ApiBody, ApiResponse, ApiTags } from "@nestjs/swagger";
|
|
17
17
|
import { AccountSignatureGuard } from "../auth/AccountSignatureGuard.service";
|
|
18
|
+
import { mapErrorToHttpStatus } from "../common/http";
|
|
18
19
|
import { DeployerService } from "./deployer.service";
|
|
19
20
|
import { DeployerServiceDeployMaciDto, DeployerServiceDeployPollDto } from "./dto";
|
|
20
21
|
let DeployerController = DeployerController_1 = class DeployerController {
|
|
@@ -40,7 +41,7 @@ let DeployerController = DeployerController_1 = class DeployerController {
|
|
|
40
41
|
async deployMACIContracts(args) {
|
|
41
42
|
return this.deployerService.deployMaci(args).catch((error) => {
|
|
42
43
|
this.logger.error(`Error:`, error);
|
|
43
|
-
throw new HttpException(error.message,
|
|
44
|
+
throw new HttpException(error.message, mapErrorToHttpStatus(error));
|
|
44
45
|
});
|
|
45
46
|
}
|
|
46
47
|
/**
|
|
@@ -52,15 +53,19 @@ let DeployerController = DeployerController_1 = class DeployerController {
|
|
|
52
53
|
async deployPoll(args) {
|
|
53
54
|
return this.deployerService.deployPoll(args).catch((error) => {
|
|
54
55
|
this.logger.error(`Error:`, error);
|
|
55
|
-
throw new HttpException(error.message,
|
|
56
|
+
throw new HttpException(error.message, mapErrorToHttpStatus(error));
|
|
56
57
|
});
|
|
57
58
|
}
|
|
58
59
|
};
|
|
59
60
|
__decorate([
|
|
60
61
|
ApiBody({ type: DeployerServiceDeployMaciDto }),
|
|
61
62
|
ApiResponse({ status: HttpStatus.CREATED, description: "The MACI contracts were successfully deployed" }),
|
|
62
|
-
ApiResponse({ status: HttpStatus.FORBIDDEN, description: "
|
|
63
|
-
ApiResponse({ status: HttpStatus.BAD_REQUEST, description: "
|
|
63
|
+
ApiResponse({ status: HttpStatus.FORBIDDEN, description: "Invalid approval signature" }),
|
|
64
|
+
ApiResponse({ status: HttpStatus.BAD_REQUEST, description: "Unsupported input (network/policy/voice credit proxy)" }),
|
|
65
|
+
ApiResponse({
|
|
66
|
+
status: HttpStatus.INTERNAL_SERVER_ERROR,
|
|
67
|
+
description: "Deployment failed or configuration error (e.g., RPC URL not set, contract deployment failed)",
|
|
68
|
+
}),
|
|
64
69
|
Post("maci"),
|
|
65
70
|
__param(0, Body()),
|
|
66
71
|
__metadata("design:type", Function),
|
|
@@ -70,8 +75,16 @@ __decorate([
|
|
|
70
75
|
__decorate([
|
|
71
76
|
ApiBody({ type: DeployerServiceDeployPollDto }),
|
|
72
77
|
ApiResponse({ status: HttpStatus.CREATED, description: "The Poll was successfully deployed" }),
|
|
73
|
-
ApiResponse({ status: HttpStatus.FORBIDDEN, description: "
|
|
74
|
-
ApiResponse({ status: HttpStatus.BAD_REQUEST, description: "
|
|
78
|
+
ApiResponse({ status: HttpStatus.FORBIDDEN, description: "Invalid approval signature" }),
|
|
79
|
+
ApiResponse({ status: HttpStatus.BAD_REQUEST, description: "Unsupported input (network/policy/voice credit proxy)" }),
|
|
80
|
+
ApiResponse({
|
|
81
|
+
status: HttpStatus.PRECONDITION_FAILED,
|
|
82
|
+
description: "Required contracts not deployed (MACI/Verifier/VerifyingKeysRegistry)",
|
|
83
|
+
}),
|
|
84
|
+
ApiResponse({
|
|
85
|
+
status: HttpStatus.INTERNAL_SERVER_ERROR,
|
|
86
|
+
description: "Poll deployment failed (failed to deploy poll/set verifying keys/set MACI instance on policy)",
|
|
87
|
+
}),
|
|
75
88
|
Post("poll"),
|
|
76
89
|
__param(0, Body()),
|
|
77
90
|
__metadata("design:type", Function),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deployer.controller.js","sourceRoot":"","sources":["../../../ts/deployer/deployer.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,iDAAiD;AACjD,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACtG,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAE/E,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;
|
|
1
|
+
{"version":3,"file":"deployer.controller.js","sourceRoot":"","sources":["../../../ts/deployer/deployer.controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -66,7 +66,7 @@ describe("ProofController", () => {
|
|
|
66
66
|
test("should throw an error if proof generation is failed", async () => {
|
|
67
67
|
const error = new Error("error");
|
|
68
68
|
mockGeneratorService.generate.mockRejectedValue(error);
|
|
69
|
-
await expect(proofController.generate(defaultProofGeneratorArgs)).rejects.toThrow(new HttpException(error.message, HttpStatus.
|
|
69
|
+
await expect(proofController.generate(defaultProofGeneratorArgs)).rejects.toThrow(new HttpException(error.message, HttpStatus.INTERNAL_SERVER_ERROR));
|
|
70
70
|
});
|
|
71
71
|
});
|
|
72
72
|
describe("v1/proof/merge", () => {
|
|
@@ -83,7 +83,7 @@ describe("ProofController", () => {
|
|
|
83
83
|
test("should throw an error if file service throws an error", async () => {
|
|
84
84
|
const error = new Error("error");
|
|
85
85
|
mockFileService.getPublicKey.mockRejectedValue(error);
|
|
86
|
-
await expect(proofController.getPublicKey()).rejects.toThrow(new HttpException(error.message, HttpStatus.
|
|
86
|
+
await expect(proofController.getPublicKey()).rejects.toThrow(new HttpException(error.message, HttpStatus.INTERNAL_SERVER_ERROR));
|
|
87
87
|
});
|
|
88
88
|
});
|
|
89
89
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proof.controller.test.js","sourceRoot":"","sources":["../../../../ts/proof/__tests__/proof.controller.test.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"proof.controller.test.js","sourceRoot":"","sources":["../../../../ts/proof/__tests__/proof.controller.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proof.controller.d.ts","sourceRoot":"","sources":["../../../ts/proof/proof.controller.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"proof.controller.d.ts","sourceRoot":"","sources":["../../../ts/proof/proof.controller.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAGrD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,gBAAgB,EAAiB,eAAe,EAAE,MAAM,OAAO,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAExD,qBAGa,eAAe;IAaxB,OAAO,CAAC,QAAQ,CAAC,qBAAqB;IACtC,OAAO,CAAC,QAAQ,CAAC,WAAW;IAb9B;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoC;IAE3D;;;;;OAKG;gBAEgB,qBAAqB,EAAE,qBAAqB,EAC5C,WAAW,EAAE,WAAW;IAG3C;;;;;OAKG;IAcG,QAAQ,CAAS,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,aAAa,CAAC;IAOtE;;;;;OAKG;IAcG,KAAK,CAAS,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC;IAOvD;;;OAGG;IAcG,MAAM,CAAS,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,UAAU,CAAC;IAOhE;;;;OAIG;IAKG,YAAY,IAAI,OAAO,CAAC,iBAAiB,CAAC;CAMjD"}
|
|
@@ -14,6 +14,7 @@ var ProofController_1;
|
|
|
14
14
|
/* eslint-disable @typescript-eslint/no-shadow */
|
|
15
15
|
import { Body, Controller, Get, HttpException, HttpStatus, Logger, Post } from "@nestjs/common";
|
|
16
16
|
import { ApiBearerAuth, ApiBody, ApiResponse, ApiTags } from "@nestjs/swagger";
|
|
17
|
+
import { mapErrorToHttpStatus } from "../common/http";
|
|
17
18
|
import { FileService } from "../file/file.service";
|
|
18
19
|
import { GenerateProofDto, MergeTreesDto, SubmitProofsDto } from "./dto";
|
|
19
20
|
import { ProofGeneratorService } from "./proof.service";
|
|
@@ -43,7 +44,7 @@ let ProofController = ProofController_1 = class ProofController {
|
|
|
43
44
|
async generate(args) {
|
|
44
45
|
return this.proofGeneratorService.generate(args).catch((error) => {
|
|
45
46
|
this.logger.error(`Error:`, error);
|
|
46
|
-
throw new HttpException(error.message,
|
|
47
|
+
throw new HttpException(error.message, mapErrorToHttpStatus(error));
|
|
47
48
|
});
|
|
48
49
|
}
|
|
49
50
|
/**
|
|
@@ -55,7 +56,7 @@ let ProofController = ProofController_1 = class ProofController {
|
|
|
55
56
|
async merge(args) {
|
|
56
57
|
return this.proofGeneratorService.merge(args).catch((error) => {
|
|
57
58
|
this.logger.error(`Error:`, error);
|
|
58
|
-
throw new HttpException(error.message,
|
|
59
|
+
throw new HttpException(error.message, mapErrorToHttpStatus(error));
|
|
59
60
|
});
|
|
60
61
|
}
|
|
61
62
|
/**
|
|
@@ -65,7 +66,7 @@ let ProofController = ProofController_1 = class ProofController {
|
|
|
65
66
|
async submit(args) {
|
|
66
67
|
return this.proofGeneratorService.submit(args).catch((error) => {
|
|
67
68
|
this.logger.error(`Error:`, error);
|
|
68
|
-
throw new HttpException(error.message,
|
|
69
|
+
throw new HttpException(error.message, mapErrorToHttpStatus(error));
|
|
69
70
|
});
|
|
70
71
|
}
|
|
71
72
|
/**
|
|
@@ -76,15 +77,23 @@ let ProofController = ProofController_1 = class ProofController {
|
|
|
76
77
|
async getPublicKey() {
|
|
77
78
|
return this.fileService.getPublicKey().catch((error) => {
|
|
78
79
|
this.logger.error(`Error:`, error);
|
|
79
|
-
throw new HttpException(error.message,
|
|
80
|
+
throw new HttpException(error.message, mapErrorToHttpStatus(error));
|
|
80
81
|
});
|
|
81
82
|
}
|
|
82
83
|
};
|
|
83
84
|
__decorate([
|
|
84
85
|
ApiBody({ type: GenerateProofDto }),
|
|
85
86
|
ApiResponse({ status: HttpStatus.CREATED, description: "The proofs have been successfully generated" }),
|
|
86
|
-
ApiResponse({ status: HttpStatus.FORBIDDEN, description: "
|
|
87
|
-
ApiResponse({ status: HttpStatus.BAD_REQUEST, description: "
|
|
87
|
+
ApiResponse({ status: HttpStatus.FORBIDDEN, description: "Invalid approval signature" }),
|
|
88
|
+
ApiResponse({ status: HttpStatus.BAD_REQUEST, description: "Unsupported input (network/policy/voice credit proxy)" }),
|
|
89
|
+
ApiResponse({
|
|
90
|
+
status: HttpStatus.CONFLICT,
|
|
91
|
+
description: "Operation cannot proceed due to state conflict (e.g., poll already tallied or trees not merged)",
|
|
92
|
+
}),
|
|
93
|
+
ApiResponse({
|
|
94
|
+
status: HttpStatus.INTERNAL_SERVER_ERROR,
|
|
95
|
+
description: "Proof generation failed (encryption/decryption or merge failure)",
|
|
96
|
+
}),
|
|
88
97
|
Post("generate"),
|
|
89
98
|
__param(0, Body()),
|
|
90
99
|
__metadata("design:type", Function),
|
|
@@ -94,8 +103,16 @@ __decorate([
|
|
|
94
103
|
__decorate([
|
|
95
104
|
ApiBody({ type: MergeTreesDto }),
|
|
96
105
|
ApiResponse({ status: HttpStatus.CREATED, description: "The proofs have been successfully merged" }),
|
|
97
|
-
ApiResponse({ status: HttpStatus.FORBIDDEN, description: "
|
|
98
|
-
ApiResponse({ status: HttpStatus.BAD_REQUEST, description: "
|
|
106
|
+
ApiResponse({ status: HttpStatus.FORBIDDEN, description: "Invalid approval signature" }),
|
|
107
|
+
ApiResponse({ status: HttpStatus.BAD_REQUEST, description: "Invalid input" }),
|
|
108
|
+
ApiResponse({
|
|
109
|
+
status: HttpStatus.CONFLICT,
|
|
110
|
+
description: "Operation cannot proceed due to state conflict (e.g., trees not ready/merged)",
|
|
111
|
+
}),
|
|
112
|
+
ApiResponse({
|
|
113
|
+
status: HttpStatus.INTERNAL_SERVER_ERROR,
|
|
114
|
+
description: "Merge failed (failed to merge state or message trees)",
|
|
115
|
+
}),
|
|
99
116
|
Post("merge"),
|
|
100
117
|
__param(0, Body()),
|
|
101
118
|
__metadata("design:type", Function),
|
|
@@ -105,8 +122,16 @@ __decorate([
|
|
|
105
122
|
__decorate([
|
|
106
123
|
ApiBody({ type: SubmitProofsDto }),
|
|
107
124
|
ApiResponse({ status: HttpStatus.CREATED, description: "The proofs have been successfully submitted" }),
|
|
108
|
-
ApiResponse({ status: HttpStatus.FORBIDDEN, description: "
|
|
109
|
-
ApiResponse({ status: HttpStatus.BAD_REQUEST, description: "
|
|
125
|
+
ApiResponse({ status: HttpStatus.FORBIDDEN, description: "Invalid approval signature" }),
|
|
126
|
+
ApiResponse({ status: HttpStatus.BAD_REQUEST, description: "Invalid input" }),
|
|
127
|
+
ApiResponse({
|
|
128
|
+
status: HttpStatus.CONFLICT,
|
|
129
|
+
description: "Operation cannot proceed due to state conflict (e.g., poll already tallied)",
|
|
130
|
+
}),
|
|
131
|
+
ApiResponse({
|
|
132
|
+
status: HttpStatus.INTERNAL_SERVER_ERROR,
|
|
133
|
+
description: "On-chain submission failed (verifying keys/contract interaction errors)",
|
|
134
|
+
}),
|
|
110
135
|
Post("submit"),
|
|
111
136
|
__param(0, Body()),
|
|
112
137
|
__metadata("design:type", Function),
|
|
@@ -115,7 +140,8 @@ __decorate([
|
|
|
115
140
|
], ProofController.prototype, "submit", null);
|
|
116
141
|
__decorate([
|
|
117
142
|
ApiResponse({ status: HttpStatus.OK, description: "Public key was successfully returned" }),
|
|
118
|
-
ApiResponse({ status: HttpStatus.BAD_REQUEST, description: "
|
|
143
|
+
ApiResponse({ status: HttpStatus.BAD_REQUEST, description: "Invalid request" }),
|
|
144
|
+
ApiResponse({ status: HttpStatus.INTERNAL_SERVER_ERROR, description: "Failed to read or generate public key" }),
|
|
119
145
|
Get("publicKey"),
|
|
120
146
|
__metadata("design:type", Function),
|
|
121
147
|
__metadata("design:paramtypes", []),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proof.controller.js","sourceRoot":"","sources":["../../../ts/proof/proof.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,iDAAiD;AACjD,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAChG,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAK/E,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAGnD,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAKjD,IAAM,eAAe,uBAArB,MAAM,eAAe;IAaP;IACA;IAbnB;;OAEG;IACc,MAAM,GAAG,IAAI,MAAM,CAAC,iBAAe,CAAC,IAAI,CAAC,CAAC;IAE3D;;;;;OAKG;IACH,YACmB,qBAA4C,EAC5C,WAAwB;QADxB,0BAAqB,GAArB,qBAAqB,CAAuB;QAC5C,gBAAW,GAAX,WAAW,CAAa;IACxC,CAAC;IAEJ;;;;;OAKG;
|
|
1
|
+
{"version":3,"file":"proof.controller.js","sourceRoot":"","sources":["../../../ts/proof/proof.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,iDAAiD;AACjD,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAChG,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAK/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAGnD,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAKjD,IAAM,eAAe,uBAArB,MAAM,eAAe;IAaP;IACA;IAbnB;;OAEG;IACc,MAAM,GAAG,IAAI,MAAM,CAAC,iBAAe,CAAC,IAAI,CAAC,CAAC;IAE3D;;;;;OAKG;IACH,YACmB,qBAA4C,EAC5C,WAAwB;QADxB,0BAAqB,GAArB,qBAAqB,CAAuB;QAC5C,gBAAW,GAAX,WAAW,CAAa;IACxC,CAAC;IAEJ;;;;;OAKG;IAcG,AAAN,KAAK,CAAC,QAAQ,CAAS,IAAsB;QAC3C,OAAO,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,KAAY,EAAE,EAAE;YACtE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YACnC,MAAM,IAAI,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC;QACtE,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IAcG,AAAN,KAAK,CAAC,KAAK,CAAS,IAAgB;QAClC,OAAO,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,KAAY,EAAE,EAAE;YACnE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YACnC,MAAM,IAAI,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC;QACtE,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IAcG,AAAN,KAAK,CAAC,MAAM,CAAS,IAAqB;QACxC,OAAO,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,KAAY,EAAE,EAAE;YACpE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YACnC,MAAM,IAAI,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC;QACtE,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IAKG,AAAN,KAAK,CAAC,YAAY;QAChB,OAAO,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,KAAY,EAAE,EAAE;YAC5D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YACnC,MAAM,IAAI,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC;QACtE,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AAxEO;IAbL,OAAO,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC;IACnC,WAAW,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,OAAO,EAAE,WAAW,EAAE,6CAA6C,EAAE,CAAC;IACvG,WAAW,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,SAAS,EAAE,WAAW,EAAE,4BAA4B,EAAE,CAAC;IACxF,WAAW,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,WAAW,EAAE,WAAW,EAAE,uDAAuD,EAAE,CAAC;IACrH,WAAW,CAAC;QACX,MAAM,EAAE,UAAU,CAAC,QAAQ;QAC3B,WAAW,EAAE,iGAAiG;KAC/G,CAAC;IACD,WAAW,CAAC;QACX,MAAM,EAAE,UAAU,CAAC,qBAAqB;QACxC,WAAW,EAAE,kEAAkE;KAChF,CAAC;IACD,IAAI,CAAC,UAAU,CAAC;IACD,WAAA,IAAI,EAAE,CAAA;;qCAAO,gBAAgB;;+CAK5C;AAqBK;IAbL,OAAO,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,OAAO,EAAE,WAAW,EAAE,0CAA0C,EAAE,CAAC;IACpG,WAAW,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,SAAS,EAAE,WAAW,EAAE,4BAA4B,EAAE,CAAC;IACxF,WAAW,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,WAAW,EAAE,WAAW,EAAE,eAAe,EAAE,CAAC;IAC7E,WAAW,CAAC;QACX,MAAM,EAAE,UAAU,CAAC,QAAQ;QAC3B,WAAW,EAAE,+EAA+E;KAC7F,CAAC;IACD,WAAW,CAAC;QACX,MAAM,EAAE,UAAU,CAAC,qBAAqB;QACxC,WAAW,EAAE,uDAAuD;KACrE,CAAC;IACD,IAAI,CAAC,OAAO,CAAC;IACD,WAAA,IAAI,EAAE,CAAA;;;;4CAKlB;AAmBK;IAbL,OAAO,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;IAClC,WAAW,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,OAAO,EAAE,WAAW,EAAE,6CAA6C,EAAE,CAAC;IACvG,WAAW,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,SAAS,EAAE,WAAW,EAAE,4BAA4B,EAAE,CAAC;IACxF,WAAW,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,WAAW,EAAE,WAAW,EAAE,eAAe,EAAE,CAAC;IAC7E,WAAW,CAAC;QACX,MAAM,EAAE,UAAU,CAAC,QAAQ;QAC3B,WAAW,EAAE,6EAA6E;KAC3F,CAAC;IACD,WAAW,CAAC;QACX,MAAM,EAAE,UAAU,CAAC,qBAAqB;QACxC,WAAW,EAAE,yEAAyE;KACvF,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC;IACD,WAAA,IAAI,EAAE,CAAA;;qCAAO,eAAe;;6CAKzC;AAWK;IAJL,WAAW,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,EAAE,WAAW,EAAE,sCAAsC,EAAE,CAAC;IAC3F,WAAW,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,WAAW,EAAE,WAAW,EAAE,iBAAiB,EAAE,CAAC;IAC/E,WAAW,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,qBAAqB,EAAE,WAAW,EAAE,uCAAuC,EAAE,CAAC;IAC/G,GAAG,CAAC,WAAW,CAAC;;;;mDAMhB;AA3GU,eAAe;IAH3B,OAAO,CAAC,UAAU,CAAC;IACnB,aAAa,EAAE;IACf,UAAU,CAAC,UAAU,CAAC;qCAcqB,qBAAqB;QAC/B,WAAW;GAdhC,eAAe,CA4G3B"}
|
|
@@ -32,7 +32,7 @@ describe("SchedulerController", () => {
|
|
|
32
32
|
test("should throw an error if registration fails", async () => {
|
|
33
33
|
const errorMessage = "Registration failed";
|
|
34
34
|
service.registerPoll.mockRejectedValueOnce(new Error(errorMessage));
|
|
35
|
-
await expect(controller.register(scheduledPoll)).rejects.toThrow(new HttpException(errorMessage, HttpStatus.
|
|
35
|
+
await expect(controller.register(scheduledPoll)).rejects.toThrow(new HttpException(errorMessage, HttpStatus.INTERNAL_SERVER_ERROR));
|
|
36
36
|
});
|
|
37
37
|
});
|
|
38
38
|
describe("status", () => {
|
|
@@ -43,7 +43,7 @@ describe("SchedulerController", () => {
|
|
|
43
43
|
test("should throw an error if checking status fails", async () => {
|
|
44
44
|
const errorMessage = "checking status failed";
|
|
45
45
|
service.isPollScheduled.mockRejectedValueOnce(new Error(errorMessage));
|
|
46
|
-
await expect(controller.status(scheduledPoll)).rejects.toThrow(new HttpException(errorMessage, HttpStatus.
|
|
46
|
+
await expect(controller.status(scheduledPoll)).rejects.toThrow(new HttpException(errorMessage, HttpStatus.INTERNAL_SERVER_ERROR));
|
|
47
47
|
});
|
|
48
48
|
});
|
|
49
49
|
describe("delete", () => {
|
|
@@ -55,7 +55,7 @@ describe("SchedulerController", () => {
|
|
|
55
55
|
test("should throw an error if checking status fails", async () => {
|
|
56
56
|
const errorMessage = "Delete failed";
|
|
57
57
|
service.deleteScheduledPoll.mockRejectedValueOnce(new Error(errorMessage));
|
|
58
|
-
await expect(controller.delete(scheduledPoll)).rejects.toThrow(new HttpException(errorMessage, HttpStatus.
|
|
58
|
+
await expect(controller.delete(scheduledPoll)).rejects.toThrow(new HttpException(errorMessage, HttpStatus.INTERNAL_SERVER_ERROR));
|
|
59
59
|
});
|
|
60
60
|
});
|
|
61
61
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scheduler.controller.test.js","sourceRoot":"","sources":["../../../../ts/scheduler/__tests__/scheduler.controller.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAG3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAG9D,MAAM,aAAa,GAA8B;IAC/C,WAAW,EAAE,KAAK;IAClB,MAAM,EAAE,CAAC;IACT,IAAI,EAAE,KAAK,CAAC,MAAM;IAClB,KAAK,EAAE,gBAAgB,CAAC,eAAe;IACvC,qBAAqB,EAAE,CAAC;CACzB,CAAC;AAEF,MAAM,qBAAqB,GAAG;IAC5B,WAAW,EAAE,aAAa,CAAC,WAAW;IACtC,MAAM,EAAE,aAAa,CAAC,MAAM;IAC5B,KAAK,EAAE,aAAa,CAAC,KAAK;CACC,CAAC;AAE9B,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IACnC,IAAI,OAAsC,CAAC;IAE3C,IAAI,UAA+B,CAAC;IAEpC,UAAU,CAAC,GAAG,EAAE;QACd,OAAO,GAAG;YACR,YAAY,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;YAChE,eAAe,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;YACnE,mBAAmB,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;SAC7B,CAAC;QAE9C,UAAU,GAAG,IAAI,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;QACxB,IAAI,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;YACzD,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;YAEjE,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;YAC7D,MAAM,YAAY,GAAG,qBAAqB,CAAC;YAC3C,OAAO,CAAC,YAAY,CAAC,qBAAqB,CAAC,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC;YAEpE,MAAM,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAC9D,IAAI,aAAa,CAAC,YAAY,EAAE,UAAU,CAAC,
|
|
1
|
+
{"version":3,"file":"scheduler.controller.test.js","sourceRoot":"","sources":["../../../../ts/scheduler/__tests__/scheduler.controller.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scheduler.controller.d.ts","sourceRoot":"","sources":["../../../ts/scheduler/scheduler.controller.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,wBAAwB,EAA+B,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"scheduler.controller.d.ts","sourceRoot":"","sources":["../../../ts/scheduler/scheduler.controller.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,wBAAwB,EAA+B,MAAM,SAAS,CAAC;AAKrF,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,OAAO,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,qBAEa,mBAAmB;IAWlB,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IAV7C;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAwC;IAE/D;;;;OAIG;gBAC0B,gBAAgB,EAAE,gBAAgB;IAE/D;;OAEG;IAMG,QAAQ,CAAS,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAe1F;;;;OAIG;IAMG,MAAM,CAAS,IAAI,EAAE,wBAAwB,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAYvF;;;OAGG;IAMG,MAAM,CAAS,IAAI,EAAE,wBAAwB,GAAG,OAAO,CAAC,wBAAwB,CAAC;CAWxF"}
|
|
@@ -13,6 +13,7 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
|
13
13
|
var SchedulerController_1;
|
|
14
14
|
import { Body, Controller, HttpException, HttpStatus, Logger, Post } from "@nestjs/common";
|
|
15
15
|
import { ApiResponse, ApiTags } from "@nestjs/swagger";
|
|
16
|
+
import { mapErrorToHttpStatus } from "../common/http";
|
|
16
17
|
import { IdentityScheduledPollDto, SchedulePollWithSignerDto } from "./dto";
|
|
17
18
|
import { SchedulerService } from "./scheduler.service";
|
|
18
19
|
let SchedulerController = SchedulerController_1 = class SchedulerController {
|
|
@@ -42,7 +43,7 @@ let SchedulerController = SchedulerController_1 = class SchedulerController {
|
|
|
42
43
|
};
|
|
43
44
|
return this.schedulerService.registerPoll(schedulePollWithSignerArgs).catch((error) => {
|
|
44
45
|
this.logger.error(`Error:`, error);
|
|
45
|
-
throw new HttpException(error.message,
|
|
46
|
+
throw new HttpException(error.message, mapErrorToHttpStatus(error));
|
|
46
47
|
});
|
|
47
48
|
}
|
|
48
49
|
/**
|
|
@@ -57,7 +58,7 @@ let SchedulerController = SchedulerController_1 = class SchedulerController {
|
|
|
57
58
|
};
|
|
58
59
|
return this.schedulerService.isPollScheduled(identityScheduledPoll).catch((error) => {
|
|
59
60
|
this.logger.error(`Error:`, error);
|
|
60
|
-
throw new HttpException(error.message,
|
|
61
|
+
throw new HttpException(error.message, mapErrorToHttpStatus(error));
|
|
61
62
|
});
|
|
62
63
|
}
|
|
63
64
|
/**
|
|
@@ -71,13 +72,15 @@ let SchedulerController = SchedulerController_1 = class SchedulerController {
|
|
|
71
72
|
};
|
|
72
73
|
return this.schedulerService.deleteScheduledPoll(identityScheduledPoll).catch((error) => {
|
|
73
74
|
this.logger.error(`Error:`, error);
|
|
74
|
-
throw new HttpException(error.message,
|
|
75
|
+
throw new HttpException(error.message, mapErrorToHttpStatus(error));
|
|
75
76
|
});
|
|
76
77
|
}
|
|
77
78
|
};
|
|
78
79
|
__decorate([
|
|
79
80
|
ApiResponse({ status: HttpStatus.OK, description: "Poll finalization has been scheduled" }),
|
|
80
|
-
ApiResponse({ status: HttpStatus.BAD_REQUEST, description: "
|
|
81
|
+
ApiResponse({ status: HttpStatus.BAD_REQUEST, description: "Invalid input" }),
|
|
82
|
+
ApiResponse({ status: HttpStatus.CONFLICT, description: "Poll already scheduled or already tallied" }),
|
|
83
|
+
ApiResponse({ status: HttpStatus.INTERNAL_SERVER_ERROR, description: "Failed to update scheduler state" }),
|
|
81
84
|
Post("register"),
|
|
82
85
|
__param(0, Body()),
|
|
83
86
|
__metadata("design:type", Function),
|
|
@@ -86,7 +89,9 @@ __decorate([
|
|
|
86
89
|
], SchedulerController.prototype, "register", null);
|
|
87
90
|
__decorate([
|
|
88
91
|
ApiResponse({ status: HttpStatus.OK, description: "Poll finalization status" }),
|
|
89
|
-
ApiResponse({ status: HttpStatus.NOT_FOUND, description: "
|
|
92
|
+
ApiResponse({ status: HttpStatus.NOT_FOUND, description: "Poll not found" }),
|
|
93
|
+
ApiResponse({ status: HttpStatus.CONFLICT, description: "Poll already tallied" }),
|
|
94
|
+
ApiResponse({ status: HttpStatus.INTERNAL_SERVER_ERROR, description: "Failed to read scheduler state" }),
|
|
90
95
|
Post("status"),
|
|
91
96
|
__param(0, Body()),
|
|
92
97
|
__metadata("design:type", Function),
|
|
@@ -95,7 +100,9 @@ __decorate([
|
|
|
95
100
|
], SchedulerController.prototype, "status", null);
|
|
96
101
|
__decorate([
|
|
97
102
|
ApiResponse({ status: HttpStatus.OK, description: "Poll finalization has been deleted" }),
|
|
98
|
-
ApiResponse({ status: HttpStatus.NOT_FOUND, description: "
|
|
103
|
+
ApiResponse({ status: HttpStatus.NOT_FOUND, description: "Poll not found" }),
|
|
104
|
+
ApiResponse({ status: HttpStatus.CONFLICT, description: "Poll already tallied" }),
|
|
105
|
+
ApiResponse({ status: HttpStatus.INTERNAL_SERVER_ERROR, description: "Failed to update scheduler state" }),
|
|
99
106
|
Post("delete"),
|
|
100
107
|
__param(0, Body()),
|
|
101
108
|
__metadata("design:type", Function),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scheduler.controller.js","sourceRoot":"","sources":["../../../ts/scheduler/scheduler.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAC3F,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAKvD,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,OAAO,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAIhD,IAAM,mBAAmB,2BAAzB,MAAM,mBAAmB;IAWD;IAV7B;;OAEG;IACc,MAAM,GAAG,IAAI,MAAM,CAAC,qBAAmB,CAAC,IAAI,CAAC,CAAC;IAE/D;;;;OAIG;IACH,YAA6B,gBAAkC;QAAlC,qBAAgB,GAAhB,gBAAgB,CAAkB;IAAG,CAAC;IAEnE;;OAEG;
|
|
1
|
+
{"version":3,"file":"scheduler.controller.js","sourceRoot":"","sources":["../../../ts/scheduler/scheduler.controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -43,7 +43,7 @@ describe("SubgraphController", () => {
|
|
|
43
43
|
test("should throw an error if proof generation is failed", async () => {
|
|
44
44
|
const error = new Error("error");
|
|
45
45
|
mockSubgraphService.deploy.mockRejectedValue(error);
|
|
46
|
-
await expect(subgraphController.deploy(defaultSubgraphDeployArgs)).rejects.toThrow(new HttpException(error.message, HttpStatus.
|
|
46
|
+
await expect(subgraphController.deploy(defaultSubgraphDeployArgs)).rejects.toThrow(new HttpException(error.message, HttpStatus.INTERNAL_SERVER_ERROR));
|
|
47
47
|
});
|
|
48
48
|
});
|
|
49
49
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subgraph.controller.test.js","sourceRoot":"","sources":["../../../../ts/subgraph/__tests__/subgraph.controller.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAIvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAClC,IAAI,kBAAsC,CAAC;IAE3C,MAAM,yBAAyB,GAAwB;QACrD,mBAAmB,EAAE,4CAA4C;QACjE,UAAU,EAAE,CAAC;QACb,OAAO,EAAE,gBAAgB,CAAC,eAAe;QACzC,IAAI,EAAE,UAAU;QAChB,GAAG,EAAE,QAAQ;KACd,CAAC;IAEF,MAAM,yBAAyB,GAA0B;QACvD,GAAG,EAAE,KAAK;KACX,CAAC;IAEF,MAAM,mBAAmB,GAAG;QAC1B,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE;KAClB,CAAC;IAEF,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,MAAM,CAAC,iBAAiB,CAAC,yBAAyB,CAAC,CAAC;gBAExE,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,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;QAClC,IAAI,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;YAC9D,MAAM,IAAI,GAAG,MAAM,kBAAkB,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC;YACxE,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,yBAAyB,CAAC,CAAC;QACxD,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,qDAAqD,EAAE,KAAK,IAAI,EAAE;YACrE,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;YACjC,mBAAmB,CAAC,MAAM,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;YAEpD,MAAM,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAChF,IAAI,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,CAAC,
|
|
1
|
+
{"version":3,"file":"subgraph.controller.test.js","sourceRoot":"","sources":["../../../../ts/subgraph/__tests__/subgraph.controller.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAIvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAClC,IAAI,kBAAsC,CAAC;IAE3C,MAAM,yBAAyB,GAAwB;QACrD,mBAAmB,EAAE,4CAA4C;QACjE,UAAU,EAAE,CAAC;QACb,OAAO,EAAE,gBAAgB,CAAC,eAAe;QACzC,IAAI,EAAE,UAAU;QAChB,GAAG,EAAE,QAAQ;KACd,CAAC;IAEF,MAAM,yBAAyB,GAA0B;QACvD,GAAG,EAAE,KAAK;KACX,CAAC;IAEF,MAAM,mBAAmB,GAAG;QAC1B,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE;KAClB,CAAC;IAEF,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,MAAM,CAAC,iBAAiB,CAAC,yBAAyB,CAAC,CAAC;gBAExE,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,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;QAClC,IAAI,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;YAC9D,MAAM,IAAI,GAAG,MAAM,kBAAkB,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC;YACxE,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,yBAAyB,CAAC,CAAC;QACxD,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,qDAAqD,EAAE,KAAK,IAAI,EAAE;YACrE,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;YACjC,mBAAmB,CAAC,MAAM,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;YAEpD,MAAM,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAChF,IAAI,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,CAAC,qBAAqB,CAAC,CACnE,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|