cowprotocol / research

CoW Protocol Research
GNU Lesser General Public License v3.0
0 stars 0 forks source link

research(contract): Combinatorial auction - multiple solutions per batch / block #15

Open acanidio-econ opened 6 months ago

acanidio-econ commented 6 months ago

Problem

At some point, we will probably change our mechanism from batch auction to some form of combinatorial auction (what type of combinatorial auction is unclear ATM). What this means, in practice, is that each batch could have multiple winners: there could be solver 1 winning orders A B and C, and solver 2 winning orders D E and F. Hence, in a given block, we may have multiple solvers trading different orders via our settlement contract. And, multiple solvers may earn rewards for the same batch.

From the infrastructure viewpoint (v2 of the smart contract, autopilot, payout script, ...), we should make sure that we never implicitly or explicitly assume that there is a single winner per batch and that the settlement contract is accessed only once per block.