Special thanks to @LauNaMu & @spengrah for feedback, on the use of Farcaster accounts and the introduction of project identities, as part of the Feedback Commission
This thread is to collect feedback on the Retroactive Public Goods Funding (Retro Funding) round 4 sign-up and application process
Please read Retro Funding 4: Onchain Builders - round details to gain relevant context on the mechanics of Retro Funding 4.
Iterating on Retro Round 3 learnings
A number of learnings from the sign up process in Retro Funding 3 were identified
- While the application form has been a vast improvement to round 2 and fulfilled its core goals for Round 3, further improvements should be made to leverage reliable data on impact and power standardized impact metrics.
- There should be stronger eligibility criteria to participate in RetroPGF and the application review process needs to be improved to reliably enforce these criteria.
- Optimism badgeholders should have an opportunity to provide feedback on the application form before itās finalized. This allows the team to react to emerging feedback, such as the request for VC funding to be disclosed, while possibly slowing down the iteration cycle.
- The application window can be shortened, as deadlines are the real driver of submissions.
Retro Funding 4: Sign-up improvements
There are a number of exciting improvements which are made based on previous learnings.
You can find a draft of the product designs for the sign-up and application process here, you can follow along with @Agoraās implementation here
Collecting relevant project artifacts
To power the metrics-based evaluation within Retro Funding 4, the sign up process is collecting artifacts to power these metrics. Collected artifacts are not only relevant to Retro round 4, but will be essential to inform future rounds such as Retro Funding 7: Dev Tooling.
- Github Repo verification: Ownership over a Github repo is verified by asking the user to add a JSON file with a unique identifier to their repo. This verification method has been established by Drips.network and weāre excited to build on this standard.
- Contract verification: Ownership over a contract, or set of contracts, is verified by asking the user to provide a message which has been signed by the deployer address of the contract(s). Weāre building an additional solution for contract verification in collaboration with Opensource Observer, as some projects might have lost access to their deployer address
- NPM packages: A project can provide a reference to one or multiple NPM packages
Sign in with Farcaster
The first thing applicants will notice when using the new Retroactive Public Goods Funding (Retro Funding) sign up flow is that they are asked to sign in with Farcaster instead of connecting a wallet. Weāre making this change for a few reasons.
Learnings from previous Retro Funding applications
- Account recovery: In past rounds, we noticed that applicants submitted their application with an Ethereum address and later wanted to change the address with which to manage the application. Without a separate user account identifier it is impossible to swap out the Ethereum address associated with an applicant. Additionally, the Foundation does not want to manually manage account recovery, because this would effectively give it centralized control over user accounts.
- Persistent identity: We want individuals to be able to build a persistent identity within the Optimism Collective, as part of Retro Funding and beyond. For example, we want attestations like āthis person was on a team that was granted Retro Funding Round 3ā to persist to an individual even if they want to rotate their keys or have lost access to their Ethereum account (see above). Project identities are distinct from individual identities and will be covered below.
Why Farcaster?
The Optimism Collective could solve the above two problems by creating unique account identifiers and enabling Retro Funding applicants to create an Optimism account that is recoverable and persists even with key rotation. However, the Farcaster protocol already supports this functionality, and as an Optimism-native project, it has gained adoption from a large number of Optimism builders. Weāre excited to build on shared standards and open source protocols rather than duplicating functionality.
- Existing identity: Retro Funding applicants that already have a Farcaster account will be able to get started in a couple of clicks instead of having to rebuild their profile (avatar, name, bio, social links). The account verifications functionality of the Farcaster protocol enables users to import important elements of their identity (NFTs, ENS) from their other Etherum accounts, and can also be used to import attestations if and when relevant. For example, the voting badge lives in Citizensā Ethereum accounts, and can be connected to a Farcaster profile via the verifications feature in the Warpcast app. New attestations issued as part of Retro Funding signup will refer to individualsā Farcaster ids as part of the attestation schema, rather than utilizing the ārecipientā field, which will remain null.
- Integrated social graph: In the past Retro Funding round, more than 50% of initial applications were spam and had to be manually reviewed by Citizens ahead of voting. As a programme that will be the continued target of Sybil attacks and spam, Retro Funding can benefit from plugging into the Farcaster social graph. There are several teams already working on Sybil-detection within the Farcaster network - these efforts can be leveraged for future Retro Funding application experiences.
- What if I donāt have a Farcaster account?: To keep scope minimal for this first build, applicants will have to go to Farcaster to create an account before they can create a project and apply for Retro Funding 4. In the future, we hope to enable applicants to connect an Ethereum account in the sign-up process and weāll register a new Farcaster id to the Ethereum account so users donāt have to leave the app.
- Establishing Identity: We strongly encourage everyone to consider the benefits of maintaining a single identity for activities across the superchain. In the future, attestations and other reputational signals may be used to flag potential Sybils, identify possible citizens, and select candidates for bounties among others.
Creating Projects
The second thing applicants will notice in the Retro Funding 4 application flow is that they will be asked to create a project before submitting an application. This minor change requires an update in the mental model. Projects ā applications. A project is run by an individual or multiple individuals and is something that creates impact within the Optimism Collective.
A project can be as small as a hackathon project or as big as an app built by a large organization. The important thing is that projects are things that have quantifiable impact on Optimism and are assessed during Retro Funding rounds for impact within specific time periods defined in the round. Applications, on the other hand, are a submission of a project for funding in a specific round.
Learnings from previous Retro Funding applications
- Project identity: Previously, projects did not build a persistent identity across Optimism touch points such as Token House grant applications and Retro Funding, or even between Retro Funding rounds. The same project would have to re-enter the same basic information when submitting the Retro Funding application for each round. In past rounds, attestations that were really about projects were made about the individual Ethereum accounts that submitted the application, rather than about the project itself. This made it really difficult to track the development of projects over time and the people contributing to them. Similar to how we want to enable individuals to develop a persistent identity within Optimism, we also want projects to have a persistent identity. Instead of entering the same data over again for every Retro Funding round, projects will be evergreen and continue to persist between and across rounds. This also enables projects to build up a reputation by consistently creating impact and receiving funding, and for individuals to build up their own reputation by being part of the team of a successful project.
- Changes to the projectās team: In past Retro Funding rounds, there were several cases where an individual team member submitted an application for Retro Funding and then left the team before voting was completed and could no longer manage the application. By separating the applicant from the project, we make it possible for projects to be run by multiple people, and for those people to change over time. Each project will have one or more contributors, whose roles can change over time as people join and leave the project. The initial release will include a simple off-chain mapping of team members to projects, with the goal of moving this on-chain in the future.
These changes are being released as part of Round 4 with the expectation that they will form the foundation of the identity layer of the stack that will grow and evolve over time. However, everything we build is iterative so it is possible that changes will be rolled-back or adapted based on learnings with each subsequent iteration.
Other improvements
- Funding & Grant information: based on feedback in Retro round 3, the application process collects relevant information on different funding & grants a project has received, including VC funding.
- Email changes & project admin: In Retro Funding 3, we have found that many projects needed to change their email address after applying, or lost access to the address which they used to apply. In case a user loses access to their address they can leverage Farcasterās account recovery feature. A user is always able to update their email address within their profile. Please note: The Optimism Foundation will not be able to recover profiles for which access to the relevant Farcaster account has been fully lost. The designs of the sign-up process aim to communicate this very clearly
- Shortened Application window: The application window has been shortened to 14 days from 31 days in Retro Funding 3, see here for more details.
- Stronger Eligibility Criteria: Stronger eligibility criteria have been defined based on feedback from Retro Funding 3, see here for more details.