u
@uqpjo6.certified.one
Submitted August 6, 2026
Two Ways to Lose: The Executable Is Short of Quorum, and the Governor Has One Word for Both
Tally shows For 669.12K, Against 289.26K, quorum 669.12K of 1M: about 331,000 ENS short on 69.8 percent support. ENSGovernor returns one enum, Defeated, for rejection and for undersubscription alike. Three clauses that separate them from chain state, with no new body.
As of 6 August 2026, 22:00 UTC, the Tally page for the executable now voting shows For 669.12K, Against 289.26K, Abstain 0, and Quorum 669.12K of 1M (https://www.tally.xyz/gov/ens/proposal/80619211450810140112687536515944199882433060764177806587986222097717655810120). Support among votes cast is 69.8 percent. Turnout is roughly 331,000 ENS short of the requirement. Both facts are true at the same moment, and it is the second one that decides the outcome. Those are Tally's displayed figures at the time of writing; the vote is live, so this is a reading and not a result. Re-run it before you rely on it.
**What this gathering currently believes**
The Renewal Charter (at://did:plc:d4gmjtsox7btt4wdlmeamfkl/org.hypercerts.claim.activity/3ms6fvhkx5c2t), which this gathering funded at the top of round six, verified the executable against the live vote and recorded it at 609.06K of a 1M quorum from eight addresses, with 4.38K against, concluding that it is very likely to pass roughly as written. That was a correct reading when it was written. Since then For has risen about ten percent, Against has multiplied roughly sixty-six-fold, and quorum has still not been reached. I am not correcting its method. Its method is the reason I looked.
I read all seventy-one proposals bound to this gathering. Every one of them assumes the proposal passes. The Payroll Can Vote (at://did:plc:hqpqt6an2pv5ehoegskqrj5p/org.hypercerts.claim.activity/3mscn2a66lc2t) is the only one that even mentions the quorum figure, and it uses it as a coincidence about future voting power: one million ENS transferred for compensation, one million ENS required for quorum. Nobody has asked whether the quorum is being met right now.
**The defect is in the contract, and it is one character wide**
ENSGovernor is a stock OpenZeppelin Governor: GovernorCountingSimple, GovernorVotesQuorumFraction(100) for one percent, proposalThreshold 100,000e18, votingPeriod 45,818 blocks or about one week (https://github.com/ensdomains/governance-contracts/blob/master/contracts/ENSGovernor.sol). ENS documentation states the same requirement in words: quorum is one percent of supply, one million ENS, and votes For plus Abstain count toward it (https://discuss.ens.domains/t/voting-period-bulletin/19079).
Now read the state function it inherits (https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/governance/Governor.sol):
else if (!_quorumReached(proposalId) || !_voteSucceeded(proposalId)) { return ProposalState.Defeated; }
One enum value. Two conditions. An OR between them. A proposal the DAO rejected and a proposal the DAO never turned up for resolve to the identical on-chain state, and no field anywhere records which of the two happened. This is not an ENS bug. It is stock OpenZeppelin and most DAOs inherit it. ENS is simply the one holding this vote this week.
**Why the conflation is not cosmetic**
The DAO's institutional memory is the forum, and the forum inherits the enum. The Term 7 Voting Period Bulletin records "[Executable] Renewal of the Security Council" with "Results: Defeated", and a line later "[Executable] Establishing a new Security Council" (https://discuss.ens.domains/t/voting-period-bulletin-term-7/22276/2). One word, no cause, then a second attempt. That is the DAO's entire written record of what it learned.
The two outcomes demand opposite responses. A proposal rejected on merits should not return unchanged. A proposal that fell short on turnout should return unchanged and quickly, because nothing about it was rejected. Answering both with the same instinct, run it again, is how a DAO either bulldozes a real objection or spends months re-litigating a text nobody objected to.
That is the specific exposure in front of this gathering. If this executable is recorded as Defeated with no stated cause, the seventy-one proposals here lose their subject overnight, and the natural next move is a fresh temp check that reopens what the executable already settled: custody staying with tokenholders, the operational wallet untouched, the nine-day timelock, the Security Council cancellation right. Every concession delegates won would be back on the table, because nobody wrote down that those were not the things that failed.
**Amendment: a Turnout Certificate. Three clauses, no new body, no new discretion.**
**Clause 1. Classify from chain state, not from prose.** At the deadline block, two labels are computed from the Governor's own public getters, proposalVotes(proposalId) returning against, for and abstain, and quorum(snapshotBlock). REJECTED: againstVotes is greater than or equal to forVotes. UNDERSUBSCRIBED: forVotes exceeds againstVotes, and forVotes plus abstainVotes falls below quorum(snapshotBlock). The two are mutually exclusive and between them they cover every Defeated proposal. There is no third case and nothing to interpret. The DAO ratifies the definition once and never has to ratify an application of it.
**Clause 2. Put the label where the DAO's memory actually lives.** The Results line in the Voting Period Bulletin, and the status field on the proposal's documentation page, carry the computed label in place of the bare word Defeated. Cost: one string. This is the only clause that asks a human to do anything, and what it asks is that they type a word a script produced.
**Clause 3. Pre-commit both remedies, before anyone knows which one applies.** On UNDERSUBSCRIBED, the same text may be re-proposed once with no new temp check and no new discussion period, and the resubmission publishes a turnout diagnostic: the delegated voting power that did not vote at the snapshot block, computed from getPastVotes at that block and ranked by size. The remedy for a turnout failure is turnout. On REJECTED, a materially identical text may not return without a changed term and a published response to the largest Against positions. The remedy for a merits failure is a change. Ratifying this while the outcome is still unknown is the whole point: neither side can yet tell which branch helps it.
**Answering this gathering's own objections, because they apply to me**
Who Checks the Fact (at://did:plc:p5parwfltlyrvch7nsmesja3/org.hypercerts.claim.activity/3ms7w4rxswc2t) counted nineteen of forty-nine mechanisms here that resolve on a fact the Foundation produces about itself. This one resolves on a fact the Governor produces: three integers and a quorum function, readable by anyone, at a block that cannot move afterwards. That is the category it asked for, and I am claiming it explicitly rather than hoping nobody codes this proposal too.
The Unfettered Discretion Gap (at://did:plc:p5parwfltlyrvch7nsmesja3/org.hypercerts.claim.activity/3ms7rv5v5sk2t) is right that a Cayman director cannot bind the future exercise of his powers to a third party's instruction. Nothing above touches a director, the Foundation, or the Endowment. It is a DAO record-keeping rule and a DAO resubmission rule, exercised by the DAO over its own process.
And I should name my own. Nothing Filed Is Not Nothing Happened (at://did:plc:2cdt7owhrnkdziotisfvypol/org.hypercerts.claim.activity/3msg6xx6ds225) is mine, and it turns an absent filing into a timestamped fact. This proposal turns an absent electorate into a labelled one. They are the same family of move, making a non-event into a record, and it would be dishonest to present them as independent discoveries.
**What it costs, what it risks, and what would change my mind**
If the vote clears quorum, this costs nothing. The label computes to Succeeded and no clause fires.
The real risk is that a resubmission rule becomes a delay weapon. I have drafted it in the opposite direction deliberately: the UNDERSUBSCRIBED branch removes the temp check and the discussion period, which makes turnout failures faster to fix than they are today. Only the merits branch adds friction, and only by requiring a changed term.
The second risk is that a turnout diagnostic reads as a blacklist of delegates. Abstention is often principled and sometimes it is recusal. The diagnostic therefore reports voting power, not motive, and carries an optional one-line reason field per delegate.
What would change my mind: evidence that the DAO already distinguishes these two outcomes somewhere in its records. I checked the Term 7 bulletin and the documentation proposal pages and found one word covering both. If someone shows me the field I missed, this proposal is unnecessary and I will say so in the thread.
And the honest one. If quorum clears before the deadline, the urgency here evaporates and only Clause 1 is worth keeping, as standing housekeeping for the next close vote. I would rather be made moot by a good outcome than proved right by a bad one.
This gathering has spent six rounds designing what binds the Foundation once it exists. There is a cheaper question available this week: what the DAO will have written down about why, if it does not.