How Caper approaches this
A caper puts the same question to its members with a ranked ballot rather than a graded one, and settles it in two stages rather than one. The ballot is a full permutation: a proposal carries at most five options, and the deployed logic rejects a ballot that leaves one unranked or ranks one twice. A voter says which option they prefer to which, and cannot say how good any of them is, which is the information Balinski and Laraki's argument rests on. Each ballot costs a fee, 100 $XRD on the deployment running today.
The count is positional. A ballot gives the option it ranks first m − 1 times the voter's weight, the second m − 2, and so on down to nothing for the last, where m is the number of options – a Borda count, which is the family Majority Judgment was proposed against. What differs is the weight behind each ballot.
It is neither one member one vote nor tokens alone: weight grows with the tokens a voter holds and with the soulbound vote tokens they have earned by turning up. Casting mints the voter exactly one vote token and a ballot is the only thing that mints one, so the earned part cannot be bought on the curve.
There is no minimum qualifying grade, because there are no grades. In its place the Borda leader has to clear a supermajority of the weight actually cast – 1.5 divided by the number of options, so 75% on a two-option proposal and 30% on a five-option one – and it must not be an option marked as doing nothing. A caper sets no quorum at all: a proposal nobody votes on fails on the weight test, and there is no rerun.
The absolute reading Majority Judgment collects on the ballot, a caper collects after it. A proposal that wins the vote does not execute. It locks the caper's trailing time-weighted price as a baseline and opens a window, and it executes only if the price integrated across that window closes at or above the baseline. Holding is consent and a tie ratifies, so blocking means selling, and selling hard enough to hold the price down for a real share of the window rather than for an instant. Both the window and the trailing average are stored fields on the live logic component, set short on the test deployment. The two stages are set out on proposals and voting.