This proposal is originally a GovHack submission, posted previously in the “GovHack Brussels” category. This is a repost for more visibility.
Constitutional / Non-Constitutional - Could be either, depending on execution (see details below)
ARDC’s review: Arbitrum daoURI Proposal Security Review
Abstract
We propose that the Arbitrum DAO takes control of its metadata by publishing a daoURI onchain. The daoURI, following EIP-4824, will create a single source of truth on the DAO, that cannot be altered by external agencies, is fully manageable via governance, bringing helpful context on the DAO onchain. This will be helpful for newcomers, tooling providers, and experienced governooors alike.
Adopting EIP-4824 requires no additional spend from the DAO treasury, and it makes no change to its smart contracts or governance structure.
Background
EIP-4824 is a DAO metadata standard, akin to ERC-721 for NFTs. It has already been adopted by Snapshot, Aragon, Treasure, 1inch, Optimism Collective (through the Optimism Foundation), and multiple frameworks and DAOs. The adoption efforts are supported through grants from the Ethereum Foundation, Optimism Collective, ENS, Gnosis, Solana and many other stakeholders of the web3 ecosystem.
DAOstar is also an Arbitrum Foundation grantee. The grant aims to improve the adoption of EIP-4824 within the Arbitrum ecosystem. We are allocating a portion of that grant to steward this proposal, and are requesting no additional funds from the DAO.
Rationale
The Arbitrum DAO is one of the largest DAOs. It has one of the most active governances, in terms of number participants as well as community-led initiatives. All of this activity, along with the scale and complexity of the Arbitrum DAO breeds a lot of metadata. This dataset grows with every new initiative and has multiple components that may not be very visible from the “outside”. For example, consider the following questions:
- Who are the current Security Council, Arbitrum Research & Development Collective, Procurement Committee members? (Answer: you can search the respective forum post to find this)
- Can you share a location that tracks all DAO-owned/managed multisig addresses? (Answer: this could be https://www.arbwallets.xyz/ )
- Can you share a status update on the DAO’s grant spending? (Answer: R3gen Finance reports this on the forum)
- Where can we see delegate performance? (Answer: KarmaGAP or Tally)
- How much in sequencer fees is being collected? (Answer: there is a dashboard for this)
- What orbit chains exist? (Answer: the ecosystem page tracks this)
- Where to find recordings and transcripts of public meetings? (Answer: I’m not sure!)
For an active participant, these answers might not be very hard to find. But for the majority of people who are not active participants of the DAO, and even for tooling providers, collecting this information requires a painstaking amount of manual effort. This leads to inconsistencies, errors and outdated information.
The same concern echoes over the entire DAO ecosystem. There are over 200 DAOs at the moment with a treasury size of over $1M, and collecting information on them manually is becoming an exponentially difficult task. EIP-4824 was authored by DAOstar with the support from the Ethereum Foundation, Gnosis, Etherscan, DeepDAO, Snapshot, and a large number of DAO tooling companies, to create a better infrastructure for DAO data.
Adopting EIP-4824 essentially means that the DAO publishes a daoURI onchain. daoURIs have a standard JSON-LD format:
{
"@context": "http://www.daostar.org/schemas",
"type": "DAO",
"name": "<name of the DAO>",
"description": "<description>",
"membersURI": "<URI>",
"proposalsURI": "<URI>",
"activityLogURI": "<URI>",
"governanceURI": "<URI>",
"contractsRegistryURI": "<URI>"
}
It contains information on governance, members, activities and contracts by default. Outside of the endpoints mentioned above, a DAO can also choose to publish information that is specifically important to it. For Arbitrum, this could be information about orbit chains, different multi-sigs and councils, spending, sequencer fees, link to its constitution, etc. Essentially, the daoURI creates an “official repository” of information on the DAO.
Here are some examples of how the daoURI could be used:
- It can be used to bring more context to contracts on block explorers. For example, we could go from this:
to this:
- We can make DAO data easily and freely available to everyone
For example, Arbitrum DAO’s current DeepDAO profile misses a ton of info - contracts, or revenue, or governance guardrails (councils and multi-sigs), etc. Messari’s Arbitrum DAO dashboard requires a paid membership to access, which could also be due to the difficulty of collecting and presenting DAO data (thus making it too valuable to give away for free). By making access to this information easy, we can greatly improve the DAO’s transparency. i.e, go from:
to this:
- daoURI makes it much easier to structure metadata improvements.
A specific example that surfaced during Arbitrum GovHack (thanks to Paulo Fonseca): onchain proposals at Arbitrum DAO (or any DAO for that matter) do not reference a forum discussion. This takes away a lot of available information. If we wanted to change this, we could achieve it easily by enforcing a discussionURI field inside the proposalURI (which is a standard component of daoURI). Tally, Aragon, Snapshot X, and most governance tooling providers are members of DAOstar. Extending the standard will create an easy upgrade pathway for them and this change would reflect the change across the ecosystem.
To summarize, a daoURI creates a source of truth that is easily accessible by onchain and offchain tools. This proposal carries no additional cost, or changes to any existing smart contract or process. It’s a step in the right direction with no downside.
Specifications
As mentioned above, adopting EIP-4824 essentially means that the DAO publishes a daoURI onchain. There are various ways to do this:
Based on Arbitrum DAO’s characteristics, we suggest the following adoption pathways:
-
Executing a simple contract call to the EIP-4824 Registration Factory which’ll deploys a new registration contract to store the daoURI. The registration will be on Arbitrum One network, setting the DAO’s governor timelock as admin, and a manager as the DAO decides. This would require a constitutional proposal.
-
Set a new ‘daoURI’ txt record on arbitrumfoundation.eth. Arbitrum Foundation will have complete edit access to this daoURI as they own arbitrumfoundation.eth. A daoURI published through this method will not be editable via an onchain vote. However, this method is in some sense easier than the previous, and it requires no onchain vote. This would be a non-constitutional proposal. When the time comes, the DAO can also adopt EIP-4824 through method 1 to have full control over its data.
Transactions for reference: Unlock Protocol, Treasure and 1inch
Steps to Implement
Create a daoURI for Arbitrum DAO: Based on conversations during the Arbitrum GovHack, and feedback from various delegates and contributors over the past 4 weeks, we have built this daoURI for Arbitrum:
https://ipfs.io/ipfs/QmUrBuJLBCZKnnEebwRe2Yqh3fk39H2mtqPQjMPUwVC1Ap
It is presently stored on IPFS, and uses APIs from Tally, Snapshot for governance data. We recommend that if the Arbitrum Foundation ends up being the manager, the daoURI be stored in their GitHub for ease of editing, and higher transparency. DAOstar will work with the Foundation on implementation.
Note that this is a starting point. The daoURI of Arbitrum DAO will continuously evolve and become more comprehensive over time.
Publish the daoURI onchain: As detailed in the execution summary above, this will either be a smart contract call to deploy a new contract, or setting a new txt record on arbitrumfoundation.eth
Maintain the daoURI: (Pathway 1) Though daoURI is fully manageable through governance, it is not practical to initiate an onchain vote for every upgrade. To solve this, the DAO can set one or many managers to manage its daoURI. The Arbitrum Foundation has agreed to take on this role if the DAO decides so. DAOstar will commit to maintaining Arbitrum DAO’s daoURI for a year for at additional cost. Note that managers can be added or removed easily by the DAO.
(Pathway 2) The DAO will not have the capability to change the daoURI through governance. However, it can instruct the Arbitrum Foundation to do so.
Irrespective of the adoption pathway, we would like to see the daoURI maintained through a community-led effort. We suggest that whoever is set as a manager maintain a forum discussion to discuss updates. That way, any Arbitrum DAO member can publicly request to add a missing piece of info to the daoURI.
Timeline
Unless the DAO has any feedback on the daoURI above, this proposal is ready for execution.
Overall Cost
This proposal does not require any transfer of funds from the DAO treasury.
Special thanks to @Bobbay, @Matt_StableLab, @raam, @coolhorsegirl, @Srijith-Questbook, @Sinkas, Hayden (BlockworksResearch) and Nick Nahaghi (Hats) for feedback and edits; @krst, @AlexLumley, @Frisson, @dk3, and George Beall (Gauntlet) for the expert sessions, and to Klaus and the rest of the GovHack team for making an awesome event happen at Brussels!