The !result command will need many requests to Discord in order to get all the participants to each of the reactions (grades) of each of the proposals. As you may guess, this scales horribly.
A poll with thousands of participants may take many minutes to collect.
Right now the tally collector is naive and does not check duplicate participation, which can happen even with our toggle enforcer. (the bot may have been offline while reactions were added)
But it is also fast, and it scales much better.
In any case, expensive commands such as !result should be constrained by a cooldown, since it is a building brick for better tally curation.
The
!result
command will need many requests to Discord in order to get all the participants to each of the reactions (grades) of each of the proposals. As you may guess, this scales horribly.A poll with thousands of participants may take many minutes to collect.
Right now the tally collector is naive and does not check duplicate participation, which can happen even with our toggle enforcer. (the bot may have been offline while reactions were added) But it is also fast, and it scales much better.
In any case, expensive commands such as
!result
should be constrained by a cooldown, since it is a building brick for better tally curation.