3 ms·
> The goal of the project was to make the auction as transparent as possible, doesn't that imply moving as much of the logic on chain as possible? Not really.
by px43 6y ago
> The goal of the project was to make the auction as transparent as possible, doesn't that imply moving as much of the logic on chain as possible?
Not really. Unsure of the specifics of the project that you were working on, but a standard auction house type interface shouldn't be that much code. You have listings, and bids. A listing should only be a timestamp for when the listing was placed, a timestamp for when the listing should end, maybe a minimum bid, and then a hash pointing to IPFS with all the less relevant meta-details. Bids would just be a price and a timestamp, though the timestamp probabally isn't even needed. You could just keep a record of the highest bid in the listing itself, and any time a new bid comes in, refund the previous bid to the previous highest bidder, and lock the current bid, so bids don't even need to allocate any new memory.
If you really really need on-chain arbitration, you can do it with a simple ownership contract for starters, then switch over to a governance contract as the arbitration needs become more complex for whatever reason.