Is your feature request related to a problem? Please describe.
Emit an event upon auction creation if this auction is related to a campaign in the campaign module
This solution allows emitting information that can be reused by a backend solution to list auctions of a campaign instead of relying on a non-efficient query
Describe the solution you'd like
Create a new event
The event is emitted in the hooks logic if the selling coin is a voucher and the auction creator is the coordinator of the campaign
campaignID := getCampaignIDFromVoucher(auction.SellingCoin)
if campaignID
if auction.auctioneer == getCoordinator(campaignID)
emit(...)
Describe alternatives you've considered
Create a proposal for fundraising to add campaignID in auction creation message
This solution badly reduces the independence and abstraction of the fundraising module.
This solution would make more sense if we rename campaign into project and make the campaign module more general purpose. An auction has a projectID and is always linked to a "project" which could be a new chain to launch, a smart contract project, a chain already launched, etc....
This change would imply lot of refactoring for the campaign module and investigation on how to make the module general purpose with a clean design
Create a proxy message for auction creation in campaign that includes the campaign ID
Would increase complexity of the campaign module since we should support different auction types. Increase also the complexity of the API
Is your feature request related to a problem? Please describe. Emit an event upon auction creation if this auction is related to a campaign in the campaign module
This solution allows emitting information that can be reused by a backend solution to list auctions of a campaign instead of relying on a non-efficient query
Describe the solution you'd like Create a new event
Register hooks from the campaign modules into auction creations
The event is emitted in the hooks logic if the selling coin is a voucher and the auction creator is the coordinator of the campaign
Describe alternatives you've considered
Create a proposal for
fundraising
to addcampaignID
in auction creation message This solution badly reduces the independence and abstraction of thefundraising
module. This solution would make more sense if we renamecampaign
intoproject
and make thecampaign
module more general purpose. An auction has a projectID and is always linked to a "project" which could be a new chain to launch, a smart contract project, a chain already launched, etc.... This change would imply lot of refactoring for thecampaign
module and investigation on how to make the module general purpose with a clean designCreate a proxy message for auction creation in
campaign
that includes the campaign ID Would increase complexity of thecampaign
module since we should support different auction types. Increase also the complexity of the API