Description
External
Area
cardano-cli
Related to cardano-cli commands, specifically around Poll vote submissions.
Request: An explicit and bespoke 'Poll Vote' Command that has an absolute requirement of having a viable authorisation key co-signature attached to it.
Reasoning: During setting up my Test Poll Vote Transaction on PreProd Testnet I ran into an issue whereby I was accidentally able to submit what was ostensibly a Poll Vote Transaction but which in actuality was not a viable one.
It wasn't viable because it did NOT have the required cold.skey as a co-signer to the Transaction.
The resulting Transaction Metadata On-Chain had all the appearance of a proper Metada submitted Vote, but in truth it would it not be counted at all in the final Vote Tally.
The only way it would be visable to the user that they had neglected to include the required authority key co-signature would be if they explicitly went and checked if their Cold Key Signature showed up in the Transaction itself, using a Tool to do so.
In this instance I was lucky enough to notice my mistake quickly and resubmitted my Vote Transaction a second time, this time with the correct cold.skey co-signature.
However, this led me to realise that it is entirely possible that, in the future, users may end up in a position that they genuinely believe they submitted their viable Vote, but it wouldn't actually be counted at all.
Which led me to the conclusion that, in future, the voting mechanic should outright enforce usage of the proper authority keys for Poll Vote submissions as a separate, bespoke, cardano-cli command for them.
Rather than just be an arbitrary JSON metadata Transaction send in a bog standard Transaction.
As this would prevent the kind of mistake I made on my first Vote submission happening to anyone at all.
Otherwise, it could lead to people crying out that their vote wasn't properly counted due to their own accidental neglect to add a viable key file co-signature to back it up.