Releases: nounsDAO/nouns-monorepo
Ponder DB snapshot
Used to bootstrap nouns-api ponder dev environment for faster historical sync
DAO V4 & Auction House V2
Summary
-
Support for Client Incentives. It's possible to send a
clientIdparameter for attribution of which frontend assisted in using the Nouns contracts. Currently possible in proposal creation, voting, and auction bidding. -
Auction house keeps an onchain history of settlements.
New contracts
NounsAuctionHouseV2- 0x2FDAdd994b1eDEfD19744F00d1Afe85045A31561NounsDAOLogicV4- 0xA23e8A919D29d74Ee24d909D80f4bC8778d656d1
DAO V3.1
Summary
Vote with Gas Refund: change refund destination such that multisig voter that pays for gas get refunded, rather than sending the refund to the multisig contract. Technically, this change involves refunding tx.origin instead of msg.sender.
Contracts
NounsDAOLogicV3- 0xe3caa436461dba00cfbe1749148c9fa7fa1f5344
DAO V3
Proposals
Summary
- Proposal editing: adding a new initial state to the proposal lifecycle: “Updatable”, during which proposers can update their proposal's transactions and text description.
- This feature will be disabled at first and will require a separate proposal to configure the period of the Updatable state.
- Propose by signatures: allowing Nouners and delegates to pool their voting power towards submitting a proposal, by submitting their signature, instead of the current approach where sponsors must delegate their votes to help a proposer achieve threshold.
- This feature will be activated once this proposal executes.
- Objection-only period: a conditional voting period that gets activated upon a “last-minute” proposal swing from defeated to successful, affording voters more reaction time. Only against votes are possible during the objection period.
- This feature will be disabled at first and will require a separate proposal to enable it and configure its parameters.
- Votes snapshot after voting delay: moving votes snapshot up, to provide Nouners with reaction time per proposal, to get their votes ready (e.g. some might want to move their delegations around). Currently the vote snapshot block is the proposal creation block.
- Nouns Fork: allowing Nouners to exit the DAO by forking to a new DAO. Current threshold is set at 20%. For more details please read the tech spec and this post.
New contracts
NounsDAOLogicV3- 0xdD1492570beb290a2f309541e1fDdcaAA3f00B61NounsDAOForkEscrow- 0x44d97D22B3d37d837cE4b22773aAd9d1566055D9ForkDAODeployer- 0xcD65e61f70e0b1Aa433ca1d9A6FC2332e9e73cE3NounsDAOExecutorProxy- 0xb1a32FC9F9D8b2cf86C068Cae13108809547ef71NounsDAOExecutorV2- 0x0FB7CF84F171154cBC3F553aA9Df9b0e9076649DNounsDAODataProxy- 0xf790A5f59678dd733fb3De93493A91f472ca1365NounsDAOData- 0x26d6cD86c1F30aD528c67300bD7ACf48F23F9EB6
DAO V2.1
Summary
Vote with Gas Refund: change refund destination such that multisig voter that pays for gas get refunded, rather than sending the refund to the multisig contract. Technically, this change involves refunding tx.origin instead of msg.sender.
New contracts
NounsDAOLogicV2- 0x51C7D7C47E440d937208bD987140D6db6B1E4051
DAO V2
See the upgrade proposal here.
Summary
- Dynamic Quorum: In V1, quorum is a fixed percentage of total supply. In V2, quorum has a dynamic range, rising as a function of against votes up to a defined cap. Read this post for more info.
- Vote with Gas Refund: Allow Nouners/delegates to vote and receive a gas refund. The vote still takes place in the case of insufficient ETH to refund.
- Voting Delay Editing Bug Fix: In V1, editing voting delay was unsafe. V2 makes it safe to edit anytime. More info on the bug here.
- Cancel Proposal Bug Fix: The DAO has a spam mitigation feature, allowing anyone to cancel a proposal if the proposer has an amount of votes less than or equal to proposal threshold. In V1, this feature didn't work when proposer had exactly proposal threshold votes; in V2 it works as expected.
- Vetoer Change Is Now 2-step: We received audit feedback that V1's vetoer change process was risky as a single-step process. In V2, the risk of setting a wrong vetoer is mitigated using a 2-step process where the current vetoer sets a pending new vetoer. Once set, the pending vetoer must accept for the change to take place.
New contracts
NounsDAOLogicV2- 0xCaCF365eDA93F07741a80D4F39a773BAaBb3a873
nouns-contracts/1.0.0 (Mainnet Release)
v1.0.0 represents the mainnet release of the Nouns contracts on 8/8/21 at the following addresses:
NFTDescriptor - 0x0BBAd8c947210ab6284699605ce2a61780958264NounsDescriptor - 0x0Cfdb3Ba1694c2bb2CFACB0339ad7b1Ae5932B63NounsSeeder - 0xCC8a0FB5ab3C7132c1b2A0109142Fb112c4Ce515NounsToken - 0x9C8fF314C9Bc7F6e59A9d9225Fb22946427eDC03NounsAuctionHouse - 0xF15a943787014461d94da08aD4040f79Cd7c124eNounsAuctionHouseProxyAdmin - 0xC1C119932d78aB9080862C5fcb964029f086401eNounsAuctionHouseProxy - 0x830BD73E4184ceF73443C15111a1DF14e495C706NounsDAOExecutor - 0x0BC3807Ec262cB779b38D65b38158acC3bfedE10NounsDAOLogicV1 - 0xa43aFE317985726E4e194eb061Af77fbCb43F944NounsDAOProxy - 0x6f3E6272A167e8AcCb32072d08E0957F9c79223d
Demonstration Release
This release is a demonstration release of the boilerplate contract to demonstrate contract CD.