Port of @0xJem 's work on #119 to the review chain with some additional changes.
To reduce the impact of blacklisted addresses, the following changes are made:
All fee percents are cached on auction creation
No transfers in settle(), partially filled bid handled by claimBid now.
Only function with multiple transfer recipients is claimProceeds. However, the only base tokens recipients are seller and MAYBE a derivative module contract, which creates a token we know can be transferred to any curator. If not a derivative, then the curator base tokens are left in the AuctionHouse to be claimed by the standard claimRewards used by protocol and referrers.
Batch auctions no longer set capacity to 0 when settled so that it can be used as a reference during claimProceeds. This does not affect the liveness of the auction, since it is past conclusion anyways. Capacity is still set to zero when a batch auction is cancelled so that it is never live.
This also involved some changes to data storage and structs:
Removed Settlement struct
Removed the redundant Lot.partialPayout struct value
Store the partial fill in the EMPA module in new struct and mapping
Store auctionOutput in Auction mapping for later use, if used
Port of @0xJem 's work on #119 to the review chain with some additional changes.
To reduce the impact of blacklisted addresses, the following changes are made:
claimBid
now.claimProceeds
. However, the only base tokens recipients areseller
and MAYBE a derivative module contract, which creates a token we know can be transferred to anycurator
. If not a derivative, then thecurator
base tokens are left in the AuctionHouse to be claimed by the standardclaimRewards
used by protocol and referrers.claimProceeds
. This does not affect the liveness of the auction, since it is past conclusion anyways. Capacity is still set to zero when a batch auction is cancelled so that it is never live.This also involved some changes to data storage and structs:
refunded
value toBidClaim
structFixes
Sorry for piling multiple issues into this PR, but the changes made sense together.
Tasks