Skip to content

Commit 8d68dff

Browse files
authored
Merge pull request #15 from Proof-Of-Humanity/testnet-deployment
Testnet deployment
2 parents 5294f07 + ebb10cd commit 8d68dff

9 files changed

Lines changed: 21181 additions & 9 deletions

File tree

.env.example

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1-
PRIVATE_KEY=
2-
CHIADO_RPC_URL=
3-
GNOSIS_RPC_URL=
1+
# Required for testnet/mainnet deployment
2+
PRIVATE_KEY=your_private_key_here
3+
4+
# Optional: Custom RPC URLs (defaults provided)
5+
CHIADO_RPC_URL=https://rpc.chiado.gnosis.gateway.fm
6+
GNOSIS_RPC_URL=https://rpc.gnosischain.com

README.md

Lines changed: 121 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,121 @@
1-
# poh-circle
2-
Integration of Circle UBI
1+
# Proof of Humanity Circles Proxy
2+
3+
A proxy contract that bridges Proof of Humanity verification with Circles UBI, allowing verified humans to register in the Circles ecosystem and manage trust relationships automatically.
4+
5+
## Overview
6+
7+
This contract enables Proof of Humanity users to:
8+
- Register their verified humanity in the Circles Group
9+
- Link multiple humanity IDs to a single Circles account
10+
- Maintain trust relationships based on PoH verification status
11+
- Batch process trust re-evaluations for efficiency
12+
13+
## Environment Setup
14+
15+
### Prerequisites
16+
- Node.js (v22+ recommended)
17+
- npm package manager
18+
- Git
19+
20+
### Installation
21+
22+
1. Clone the repository and install dependencies:
23+
```bash
24+
git clone https://github.com/Proof-Of-Humanity/poh-circle
25+
cd poh-circle
26+
npm install
27+
```
28+
29+
2. Set up your environment file:
30+
```bash
31+
cp .env.example .env
32+
```
33+
34+
3. Edit the `.env` file with your actual values:
35+
```bash
36+
# Required for testnet/mainnet deployment
37+
PRIVATE_KEY=your_private_key_here
38+
39+
# Optional: Custom RPC URLs (defaults provided)
40+
CHIADO_RPC_URL=https://rpc.chiado.gnosis.gateway.fm
41+
GNOSIS_RPC_URL=https://rpc.gnosischain.com
42+
43+
# Optional: For contract verification on Blockscout
44+
BLOCKSCOUT_API_KEY=your_blockscout_api_key
45+
46+
```
47+
48+
### Configuration Files
49+
50+
The project uses JSON configuration files in the `config/` directory:
51+
- `poh-test-circles.json` - Configuration for test circles deployment on Gnosis Chain
52+
- `poh-test-rings.json` - Configuration for test rings deployment on Gnosis Chain
53+
- `poh-chiado-mocks.json` - Configuration for mock contracts deployment on Chiado testnet
54+
55+
Each config file must contain:
56+
```json
57+
{
58+
"proofOfHumanity": "0x...",
59+
"crossChainProofOfHumanity": "0x...",
60+
"circlesHub": "0x...",
61+
"baseGroup": "0x...",
62+
"maximumBatchSize": 30
63+
}
64+
```
65+
66+
### Available Commands
67+
68+
```bash
69+
# Compile contracts and generate TypeChain types
70+
npm run compile
71+
72+
# Run comprehensive test suite
73+
npm test
74+
75+
# Clean build artifacts
76+
npm run clean
77+
78+
# Deploy to Gnosis Chain (test circles config)
79+
npm run deploy:poh-test-circles
80+
81+
# Deploy to Gnosis Chain (test rings config)
82+
npm run deploy:poh-test-rings
83+
84+
# Deploy to Chiado testnet (mock contracts)
85+
npm run deploy:chiado
86+
```
87+
88+
### Development
89+
90+
The project includes:
91+
- **Hardhat** for development and testing
92+
- **TypeScript** support with strict type checking
93+
- **TypeChain** for type-safe contract interactions
94+
- **Mock contracts** for isolated testing
95+
96+
### Network Configuration
97+
98+
Supported networks:
99+
- **Hardhat Local**: `hardhat` (Chain ID: 31337)
100+
- **Localhost**: `localhost` (http://127.0.0.1:8545)
101+
- **Chiado Testnet**: `chiado` (Chain ID: 10200)
102+
- **Gnosis Chain**: `gnosis` (Chain ID: 100)
103+
104+
### Testing
105+
106+
The test suite covers:
107+
- Contract deployment and initialization
108+
- Governance functions and access control
109+
- Registration and trust management
110+
- Batch processing and re-evaluation
111+
- Cross-chain humanity verification
112+
- Edge cases and error conditions
113+
114+
Run tests with coverage:
115+
```bash
116+
npm test
117+
```
118+
119+
### Contract Verification
120+
121+
Contracts are automatically verifiable on Blockscout for both Gnosis Chain and Chiado testnet. The configuration supports custom API endpoints for verification.

config/poh-chiado-mocks.json

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
{
2+
"proofOfHumanity": "0x3DED649Cc1E0a5D67614d6742C4919B10F0Aabe9",
3+
"crossChainProofOfHumanity": "0xBFb98b8F785dE02F35e4eAa8b83a4c9390f75f99",
4+
"circlesHub": "0x7369766AB350FaC58091eAF91D544DD1BeaC6250",
5+
"baseGroup": "0xA2462D6b2828708F1D4Eb616FC7E03776126eA05",
6+
"maximumBatchSize": 30
7+
}

contracts/mocks/HubMock.sol

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,4 +22,10 @@ contract HubMock is IHub {
2222
// previous value is irrelevant for tests, return zero
2323
return (address(0), expiries[truster][trustee]);
2424
}
25+
26+
function isHuman(address user) external view returns (bool) {
27+
uint96 expiry = expiries[address(this)][user];
28+
return expiry > 0 && expiry > block.timestamp;
29+
}
30+
2531
}

ignition/deployments/chain-10200/build-info/5a0919620a9c5b9bb9574c1b1b373df5.json

Lines changed: 21028 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
"ProofOfHumanityCirclesProxyModule#ProofOfHumanityCirclesProxy": "0x7562C66dB28e397c81d1E6d7645B59D308dEda46"
3+
}
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
2+
{"chainId":10200,"type":"DEPLOYMENT_INITIALIZE"}
3+
{"artifactId":"ProofOfHumanityCirclesProxyModule#ProofOfHumanityCirclesProxy","constructorArgs":["0xa4AC94C4fa65Bb352eFa30e3408e64F72aC857bc","0x16044E1063C08670f8653055A786b7CC2034d2b0","0xA2462D6b2828708F1D4Eb616FC7E03776126eA05","0x7369766AB350FaC58091eAF91D544DD1BeaC6250",30],"contractName":"ProofOfHumanityCirclesProxy","dependencies":[],"from":"0xcaf9ade1fddf1b31d490a4629ada638d104e9543","futureId":"ProofOfHumanityCirclesProxyModule#ProofOfHumanityCirclesProxy","futureType":"NAMED_ARTIFACT_CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}}
4+
{"futureId":"ProofOfHumanityCirclesProxyModule#ProofOfHumanityCirclesProxy","networkInteraction":{"data":"0x608060405234801561001057600080fd5b5060405161174938038061174983398101604081905261002f916100ab565b60008054336001600160a01b0319918216179091556001805482166001600160a01b039788161790556002805482169587169590951790945560038054851693861693909317909255600480549093169316929092179055600555610109565b80516001600160a01b03811681146100a657600080fd5b919050565b600080600080600060a086880312156100c357600080fd5b6100cc8661008f565b94506100da6020870161008f565b93506100e86040870161008f565b92506100f66060870161008f565b9150608086015190509295509295909350565b611631806101186000396000f3fe608060405234801561001057600080fd5b50600436106101165760003560e01c80637aa414cb116100a2578063b6aa515b11610071578063b6aa515b14610258578063d96058671461026b578063dd23686c1461027e578063e075107214610291578063e447e142146102a457600080fd5b80637aa414cb146102085780639ba644fc1461021f578063a1a7caee14610232578063b2191a3a1461024557600080fd5b806354b550b2116100e957806354b550b2146101865780636dbe2045146101a65780637558b728146101b9578063760ea0d6146101cc5780637a73c9cf146101f557600080fd5b806302c69ac81461011b5780630c340a241461014b578063365a86fc1461015e57806344f3ab2e14610171575b600080fd5b60025461012e906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b60005461012e906001600160a01b031681565b60045461012e906001600160a01b031681565b61018461017f366004611230565b6102ed565b005b610199610194366004611254565b610342565b6040516101429190611280565b6101846101b4366004611230565b610374565b60035461012e906001600160a01b031681565b61012e6101da3660046112b2565b6006602052600090815260409020546001600160a01b031681565b610184610203366004611230565b6103c0565b61021160055481565b604051908152602001610142565b61018461022d3660046112cd565b61081c565b610184610240366004611230565b61084b565b6101846102533660046112e6565b610897565b610184610266366004611230565b610d8e565b60015461012e906001600160a01b031681565b61018461028c366004611230565b610dda565b61018461029f3660046112b2565b610e26565b6102d26102b2366004611230565b6008602052600090815260409020805460019091015464ffffffffff1682565b6040805192835264ffffffffff909116602083015201610142565b6000546001600160a01b031633146103205760405162461bcd60e51b81526004016103179061131d565b60405180910390fd5b600380546001600160a01b0319166001600160a01b0392909216919091179055565b6007602052816000526040600020818154811061035e57600080fd5b60009182526020909120015460601b9150829050565b6000546001600160a01b0316331461039e5760405162461bcd60e51b81526004016103179061131d565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038116600090815260086020908152604080832060079092528220548154600183015492939192909164ffffffffff90911690825b848110801561040c575060055482105b15610686576001600160a01b038716600090815260076020526040812080548390811061043b5761043b611361565b6000918252602082200154600254604051631a355acb60e01b815260609290921b93506001600160a01b031690631a355acb9061047c908590600401611280565b602060405180830381865afa158015610499573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104bd9190611377565b905060006001600160a01b038216156106635760015460405163f72c436f60e01b81526001600160a01b0384811660048301529091169063f72c436f90602401602060405180830381865afa15801561051a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061053e91906113a4565b156105c2576001546040516368c3d8ff60e01b81526001600160a01b03909116906368c3d8ff90610573908690600401611280565b60c060405180830381865afa158015610590573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105b491906113d4565b509094506106499350505050565b60025460405163186e480b60e11b81526000916001600160a01b0316906330dc9016906105f3908790600401611280565b608060405180830381865afa158015610610573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106349190611452565b9050806060015161064757806020015191505b505b8564ffffffffff168164ffffffffff161115610663578095505b8461066d816114f7565b955050505050808061067e906114f7565b9150506103fc565b5060006106938285611510565b60018701805464ffffffffff191664ffffffffff861617905580875560408051828152602081018890529192506001600160a01b038916917fafe15a1f88ff6a8e6ffe575e655e19074407c9f42871be1921a76b8e0e5f8f5c910160405180910390a28481036108135760408051600180825281830190925260009160208083019080368337019050509050878160008151811061073357610733611361565b6001600160a01b0392831660209182029290920101526003546040516310507e5560e21b8152911690634141f9549061077990849064ffffffffff891690600401611529565b600060405180830381600087803b15801561079357600080fd5b505af11580156107a7573d6000803e3d6000fd5b505050506001600160a01b03881660008181526008602090815260408083209283556001909201805464ffffffffff19169055905164ffffffffff871681527ffb9769e729d4205a4e74204d5743235d8e0e558ce5a5cad1e81a26d0ce2228e5910160405180910390a2505b50505050505050565b6000546001600160a01b031633146108465760405162461bcd60e51b81526004016103179061131d565b600555565b6000546001600160a01b031633146108755760405162461bcd60e51b81526004016103179061131d565b600480546001600160a01b0319166001600160a01b0392909216919091179055565b600254604051631a355acb60e01b815260009182916001600160a01b0390911690631a355acb906108cc908790600401611280565b602060405180830381865afa1580156108e9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061090d9190611377565b90506001600160a01b03811633146109795760405162461bcd60e51b815260206004820152602960248201527f596f7520617265206e6f7420746865206f776e6572206f6620746869732068756044820152681b585b9a5d1e48125160ba1b6064820152608401610317565b60015460405163f72c436f60e01b81526001600160a01b0383811660048301529091169063f72c436f90602401602060405180830381865afa1580156109c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109e791906113a4565b15610a6b576001546040516368c3d8ff60e01b81526001600160a01b03909116906368c3d8ff90610a1c908790600401611280565b60c060405180830381865afa158015610a39573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a5d91906113d4565b50909550610b089350505050565b60025460405163186e480b60e11b81526000916001600160a01b0316906330dc901690610a9c908890600401611280565b608060405180830381865afa158015610ab9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610add9190611452565b9050806060015115610b015760405162461bcd60e51b815260040161031790611589565b6020015191505b6001600160601b031984166000908152600660205260409020546001600160a01b031615610b785760405162461bcd60e51b815260206004820152601d60248201527f4163636f756e7420697320616c726561647920726567697374657265640000006044820152606401610317565b6001600160601b03198416600090815260066020908152604080832080546001600160a01b03199081166001600160a01b0389169081179092559084526007835281842080546001818101835591865284862001805490921660608a901c179091558151818152808301909252909182810190803683370190505090508381600081518110610c0957610c09611361565b6001600160a01b03928316602091820292909201015260048054600354604051633e68675360e11b81529084169281019290925286831660248301526000921690637cd0cea6906044016040805180830381865afa158015610c6f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c9391906115c0565b91508190506001600160601b03811664ffffffffff86161115610d26576003546040516310507e5560e21b81526001600160a01b0390911690634141f95490610ce990869064ffffffffff8a1690600401611529565b600060405180830381600087803b158015610d0357600080fd5b505af1158015610d17573d6000803e3d6000fd5b505050508464ffffffffff1690505b6040805164ffffffffff871681526001600160601b03831660208201526001600160a01b038816916001600160601b03198a16917ff9117287cffb1c7d763e99bd6d939f02ee619a547f9416a969cf781b7a278bcb910160405180910390a350505050505050565b6000546001600160a01b03163314610db85760405162461bcd60e51b81526004016103179061131d565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610e045760405162461bcd60e51b81526004016103179061131d565b600280546001600160a01b0319166001600160a01b0392909216919091179055565b600254604051631a355acb60e01b815260009182916001600160a01b0390911690631a355acb90610e5b908690600401611280565b602060405180830381865afa158015610e78573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e9c9190611377565b90506001600160a01b038116610ec45760405162461bcd60e51b815260040161031790611589565b60015460405163f72c436f60e01b81526001600160a01b0383811660048301529091169063f72c436f90602401602060405180830381865afa158015610f0e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f3291906113a4565b15610fb6576001546040516368c3d8ff60e01b81526001600160a01b03909116906368c3d8ff90610f67908690600401611280565b60c060405180830381865afa158015610f84573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa891906113d4565b509095506110539350505050565b60025460405163186e480b60e11b81526000916001600160a01b0316906330dc901690610fe7908790600401611280565b608060405180830381865afa158015611004573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110289190611452565b905080606001511561104c5760405162461bcd60e51b815260040161031790611589565b6020015191505b6001600160601b0319831660009081526006602052604080822054815160018082528184019093526001600160a01b03909116929181602001602082028036833701905050905081816000815181106110ae576110ae611361565b6001600160a01b03928316602091820292909201015260048054600354604051633e68675360e11b81529084169281019290925284831660248301526000921690637cd0cea6906044016040805180830381865afa158015611114573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061113891906115c0565b9150506001600160601b03811664ffffffffff86161115611210576003546040516310507e5560e21b81526001600160a01b0390911690634141f9549061118c90859064ffffffffff8a1690600401611529565b600060405180830381600087803b1580156111a657600080fd5b505af11580156111ba573d6000803e3d6000fd5b505060405164ffffffffff881681526001600160a01b03861692506001600160601b0319891691507f89f895097b2b0be06c0b247e6e6c74564a4253356a8631c7cd02f43f20a6a61d9060200160405180910390a35b505050505050565b6001600160a01b038116811461122d57600080fd5b50565b60006020828403121561124257600080fd5b813561124d81611218565b9392505050565b6000806040838503121561126757600080fd5b823561127281611218565b946020939093013593505050565b6001600160601b031991909116815260200190565b80356001600160601b0319811681146112ad57600080fd5b919050565b6000602082840312156112c457600080fd5b61124d82611295565b6000602082840312156112df57600080fd5b5035919050565b600080604083850312156112f957600080fd5b61130283611295565b9150602083013561131281611218565b809150509250929050565b60208082526024908201527f4f6e6c7920676f7665726e6f722063616e2063616c6c20746869732066756e636040820152633a34b7b760e11b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561138957600080fd5b815161124d81611218565b805180151581146112ad57600080fd5b6000602082840312156113b657600080fd5b61124d82611394565b805164ffffffffff811681146112ad57600080fd5b60008060008060008060c087890312156113ed57600080fd5b6113f687611394565b955061140460208801611394565b9450604087015165ffffffffffff8116811461141f57600080fd5b935061142d606088016113bf565b9250608087015161143d81611218565b8092505060a087015190509295509295509295565b6000608082840312801561146557600080fd5b506040516080810167ffffffffffffffff8111828210171561149757634e487b7160e01b600052604160045260246000fd5b60405282516114a581611218565b81526114b3602084016113bf565b60208201526114c4604084016113bf565b60408201526114d560608401611394565b60608201529392505050565b634e487b7160e01b600052601160045260246000fd5b600060018201611509576115096114e1565b5060010190565b80820180821115611523576115236114e1565b92915050565b6040808252835190820181905260009060208501906060840190835b8181101561156c5783516001600160a01b0316835260209384019390920191600101611545565b505080925050506001600160601b03831660208301529392505050565b6020808252601a908201527f48756d616e697479204944206973206e6f7420636c61696d6564000000000000604082015260600190565b600080604083850312156115d357600080fd5b82516115de81611218565b60208401519092506001600160601b038116811461131257600080fdfea2646970667358221220761bcfd0c193948bb6cc0d9c6f97fbb4c8fd0c979ad666c85c5367067d6d384964736f6c634300081c0033000000000000000000000000a4ac94c4fa65bb352efa30e3408e64f72ac857bc00000000000000000000000016044e1063c08670f8653055a786b7cc2034d2b0000000000000000000000000a2462d6b2828708f1d4eb616fc7e03776126ea050000000000000000000000007369766ab350fac58091eaf91d544dd1beac6250000000000000000000000000000000000000000000000000000000000000001e","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"}
5+
{"futureId":"ProofOfHumanityCirclesProxyModule#ProofOfHumanityCirclesProxy","networkInteractionId":1,"nonce":174,"type":"TRANSACTION_PREPARE_SEND"}
6+
{"futureId":"ProofOfHumanityCirclesProxyModule#ProofOfHumanityCirclesProxy","networkInteractionId":1,"nonce":174,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"1500000014"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"1500000000"}},"hash":"0x2c3c9a55f89e7bc21fdcdcef33ef15d07fb702672f5c65411615216a7f230c71"},"type":"TRANSACTION_SEND"}
7+
{"futureId":"ProofOfHumanityCirclesProxyModule#ProofOfHumanityCirclesProxy","hash":"0x2c3c9a55f89e7bc21fdcdcef33ef15d07fb702672f5c65411615216a7f230c71","networkInteractionId":1,"receipt":{"blockHash":"0x69652d3b870e46a6ad76d08f116cafc171ee5077ad765c8f0fb65c4ceaf7b462","blockNumber":16405167,"contractAddress":"0x7562C66dB28e397c81d1E6d7645B59D308dEda46","logs":[],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"}
8+
{"futureId":"ProofOfHumanityCirclesProxyModule#ProofOfHumanityCirclesProxy","result":{"address":"0x7562C66dB28e397c81d1E6d7645B59D308dEda46","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"}

package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,8 @@
88
"compile": "hardhat compile",
99
"clean": "hardhat clean",
1010
"deploy:poh-test-circles": "cross-env POH_CIRCLES_PROXY_CONFIG_PATH=./config/poh-test-circles.json npx hardhat ignition deploy ./ignition/modules/ProofOfHumanityCirclesProxyModule.ts --network gnosis",
11-
"deploy:poh-test-rings": "cross-env POH_CIRCLES_PROXY_CONFIG_PATH=./config/poh-test-rings.json npx hardhat ignition deploy ./ignition/modules/ProofOfHumanityCirclesProxyModule.ts --network gnosis"
11+
"deploy:poh-test-rings": "cross-env POH_CIRCLES_PROXY_CONFIG_PATH=./config/poh-test-rings.json npx hardhat ignition deploy ./ignition/modules/ProofOfHumanityCirclesProxyModule.ts --network gnosis",
12+
"deploy:chiado": "cross-env POH_CIRCLES_PROXY_CONFIG_PATH=./config/poh-chiado-mocks.json npx hardhat ignition deploy ./ignition/modules/ProofOfHumanityCirclesProxyModule.ts --network chiado"
1213
},
1314
"keywords": [
1415
"ethereum",

test/ProofOfHumanityCirclesProxy.test.ts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -459,10 +459,7 @@ describe("ProofOfHumanityCirclesProxy", function () {
459459
const batch_size = 30; // Match the default MaximumBatchSize
460460
let tx;
461461
for(let i = 0; i < numOfHumanities/batch_size; i++){
462-
// Get transaction receipt to calculate gas used
463462
tx = await proofOfHumanityCirclesProxy.reEvaluateTrust(circlesAccount);
464-
const receipt = await tx.wait();
465-
console.log(`Batch ${i+1} gas used: ${receipt?.gasUsed.toString()}`);
466463

467464
await expect(tx).to.emit(proofOfHumanityCirclesProxy, "TrustReEvaluationBatchProcessed").withArgs(circlesAccount,Math.min((i+1)*batch_size,numOfHumanities ),numOfHumanities);
468465
}

0 commit comments

Comments
 (0)