Skip to content

Commit 554304a

Browse files
committed
Send v2 bundles to miners
1 parent 92edf68 commit 554304a

File tree

1 file changed

+28
-8
lines changed

1 file changed

+28
-8
lines changed

server/handlers.js

+28-8
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,28 @@ const postgres = require('postgres')
77
const { writeError } = require('./utils')
88
const { checkBlacklist, checkDistinctAddresses, getParsedTransactions, MAX_DISTINCT_TO } = require('./bundle')
99

10+
function convertBundleFormat(bundle) {
11+
if (!Array.isArray(bundle[0])) {
12+
// is already v2 bundle, just return
13+
return bundle[0]
14+
}
15+
16+
const newBundle = {
17+
txs: bundle[0],
18+
blockNumber: bundle[1]
19+
}
20+
21+
if (bundle[2]) {
22+
newBundle.minTimestamp = bundle[2]
23+
}
24+
25+
if (bundle[3]) {
26+
newBundle.maxTimestamp = bundle[3]
27+
}
28+
29+
return newBundle
30+
}
31+
1032
class Handler {
1133
constructor(MINERS, SIMULATION_RPC, SQS_URL, PSQL_DSN, promClient) {
1234
this.MINERS = MINERS
@@ -29,11 +51,9 @@ class Handler {
2951
return
3052
}
3153
this.bundleCounter.inc()
32-
const bundle = req.body.params[0]
33-
let txs = bundle
34-
if (!Array.isArray(txs)) {
35-
txs = bundle.txs
36-
}
54+
const bundle = convertBundleFormat(req.body.params)
55+
56+
const txs = bundle.txs
3757

3858
try {
3959
const parsedTransactions = getParsedTransactions(txs)
@@ -51,7 +71,7 @@ class Handler {
5171
writeError(res, 400, 'unable to decode txs')
5272
return
5373
}
54-
const blockParam = req.body.params[1] || bundle.blockNumber
74+
const blockParam = bundle.blockNumber
5575
if (!blockParam) {
5676
writeError(res, 400, 'missing block param')
5777
return
@@ -60,12 +80,12 @@ class Handler {
6080
writeError(res, 400, 'block param must be a hex int')
6181
return
6282
}
63-
const minTimestamp = req.body.params[2] || bundle.minTimestamp
83+
const minTimestamp = bundle.minTimestamp
6484
if (minTimestamp && !(minTimestamp > 0)) {
6585
writeError(res, 400, 'minTimestamp must be an int')
6686
return
6787
}
68-
const maxTimestamp = req.body.params[3] || bundle.maxTimestamp
88+
const maxTimestamp = bundle.maxTimestamp
6989
if (maxTimestamp && !(maxTimestamp > 0)) {
7090
writeError(res, 400, 'maxTimestamp must be an int')
7191
return

0 commit comments

Comments
 (0)