Skip to content

Commit e17b371

Browse files
committed
Revert Batcher contract format
1 parent 0e1820b commit e17b371

1 file changed

Lines changed: 57 additions & 21 deletions

File tree

contracts/src/core/BatcherPaymentService.sol

Lines changed: 57 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,11 @@ contract BatcherPaymentService is
4444
error InvalidSignature(); // 8baa579f
4545
error InvalidNonce(uint256 expected, uint256 actual); // 06427aeb
4646
error InvalidMaxFee(uint256 maxFee, uint256 actualFee); // f59adf4a
47-
error SignerInsufficientBalance(address signer, uint256 balance, uint256 required); // 955c0664
47+
error SignerInsufficientBalance(
48+
address signer,
49+
uint256 balance,
50+
uint256 required
51+
); // 955c0664
4852
error InvalidMerkleRoot(bytes32 expected, bytes32 actual); // 9f13b65c
4953
error InvalidAddress(string param); // 161eb542
5054

@@ -87,15 +91,15 @@ contract BatcherPaymentService is
8791

8892
// Defined in types.rs
8993
// keccak256("NoncedVerificationData(bytes32 verification_data_hash,uint256 nonce,uint256 max_fee)")
90-
function initializeNoncedVerificationDataTypeHash(bytes32 _noncedVerificationDataTypeHash)
91-
public
92-
reinitializer(2)
93-
onlyOwner
94-
{
94+
function initializeNoncedVerificationDataTypeHash(
95+
bytes32 _noncedVerificationDataTypeHash
96+
) public reinitializer(2) onlyOwner {
9597
noncedVerificationDataTypeHash = _noncedVerificationDataTypeHash;
9698
}
9799

98-
function setNoncedVerificationDataTypeHash(bytes32 _newTypeHash) public onlyOwner {
100+
function setNoncedVerificationDataTypeHash(
101+
bytes32 _newTypeHash
102+
) public onlyOwner {
99103
noncedVerificationDataTypeHash = _newTypeHash;
100104
}
101105

@@ -140,20 +144,32 @@ contract BatcherPaymentService is
140144
}
141145

142146
if (feePerProof * signaturesQty <= feeForAggregator) {
143-
revert InsufficientFeeForAggregator(feeForAggregator, feePerProof * signaturesQty);
147+
revert InsufficientFeeForAggregator(
148+
feeForAggregator,
149+
feePerProof * signaturesQty
150+
);
144151
}
145152

146-
_checkMerkleRootAndVerifySignatures(leaves, batchMerkleRoot, signatures, feePerProof);
153+
_checkMerkleRootAndVerifySignatures(
154+
leaves,
155+
batchMerkleRoot,
156+
signatures,
157+
feePerProof
158+
);
147159

148160
// call alignedLayerServiceManager
149161
// with value to fund the task's response
150162
alignedLayerServiceManager.createNewTask{value: feeForAggregator}(
151-
batchMerkleRoot, batchDataPointer, respondToTaskFeeLimit
163+
batchMerkleRoot,
164+
batchDataPointer,
165+
respondToTaskFeeLimit
152166
);
153167

154168
emit TaskCreated(batchMerkleRoot, feePerProof);
155169

156-
payable(batcherWallet).transfer((feePerProof * signaturesQty) - feeForAggregator);
170+
payable(batcherWallet).transfer(
171+
(feePerProof * signaturesQty) - feeForAggregator
172+
);
157173
}
158174

159175
function unlock() external whenNotPaused {
@@ -203,7 +219,9 @@ contract BatcherPaymentService is
203219
_unpause();
204220
}
205221

206-
function _authorizeUpgrade(address newImplementation)
222+
function _authorizeUpgrade(
223+
address newImplementation
224+
)
207225
internal
208226
override
209227
onlyOwner // solhint-disable-next-line no-empty-blocks
@@ -223,14 +241,24 @@ contract BatcherPaymentService is
223241
// Calculate the hash of the next layer of the Merkle tree
224242
// and verify the signatures up to numNodesInLayer
225243
for (i = 0; i < numNodesInLayer; i++) {
226-
layer[i] = keccak256(abi.encodePacked(leaves[2 * i], leaves[2 * i + 1]));
227-
228-
_verifySignatureAndDecreaseBalance(leaves[i], signatures[i], feePerProof);
244+
layer[i] = keccak256(
245+
abi.encodePacked(leaves[2 * i], leaves[2 * i + 1])
246+
);
247+
248+
_verifySignatureAndDecreaseBalance(
249+
leaves[i],
250+
signatures[i],
251+
feePerProof
252+
);
229253
}
230254

231255
// Verify the rest of the signatures
232256
for (; i < signatures.length; i++) {
233-
_verifySignatureAndDecreaseBalance(leaves[i], signatures[i], feePerProof);
257+
_verifySignatureAndDecreaseBalance(
258+
leaves[i],
259+
signatures[i],
260+
feePerProof
261+
);
234262
}
235263

236264
// The next layer above has half as many nodes
@@ -240,7 +268,9 @@ contract BatcherPaymentService is
240268
while (numNodesInLayer != 0) {
241269
// Overwrite the first numNodesInLayer nodes in layer with the pairwise hashes of their children
242270
for (i = 0; i < numNodesInLayer; i++) {
243-
layer[i] = keccak256(abi.encodePacked(layer[2 * i], layer[2 * i + 1]));
271+
layer[i] = keccak256(
272+
abi.encodePacked(layer[2 * i], layer[2 * i + 1])
273+
);
244274
}
245275

246276
// The next layer above has half as many nodes
@@ -256,9 +286,11 @@ contract BatcherPaymentService is
256286
}
257287
}
258288

259-
function _verifySignatureAndDecreaseBalance(bytes32 leaf, SignatureData calldata signatureData, uint256 feePerProof)
260-
private
261-
{
289+
function _verifySignatureAndDecreaseBalance(
290+
bytes32 leaf,
291+
SignatureData calldata signatureData,
292+
uint256 feePerProof
293+
) private {
262294
if (signatureData.maxFee < feePerProof) {
263295
revert InvalidMaxFee(signatureData.maxFee, feePerProof);
264296
}
@@ -284,7 +316,11 @@ contract BatcherPaymentService is
284316
signerData.nonce++;
285317

286318
if (signerData.balance < feePerProof) {
287-
revert SignerInsufficientBalance(signer, signerData.balance, feePerProof);
319+
revert SignerInsufficientBalance(
320+
signer,
321+
signerData.balance,
322+
feePerProof
323+
);
288324
}
289325

290326
signerData.balance -= feePerProof;

0 commit comments

Comments
 (0)