PL: Plural MEV Research Tooling Update

Hello everyone! I’m Rich, aka thewanderingeditor, founder of Lexicon Governance.

Lexicon is building modular governance and collaboration tools for web3 and beyond.

Overview

This grant, provided by Plurality Labs, was awarded to establish the Plural Research Society and build the first forum and plural voting tools needed to support it. As part of the grant, we will host an experimental plural research workshop where the participants – researchers from across the MEV space – will convene to present their research proposals, discuss and debate using a variety of pluralistic tools, then ultimately vote to decide how to allocate 100,000 ARB in grant funding.

Current Progress

We have completed the first technical milestones (landing page, registration page, plural voting UI and database to store user data, vote data, and calculate plurality scores). Current progress can be viewed in our github. The experiment will launch by invitation soon at pluralresearch.org

Adjustments and Mitigations

The following adjustments have been made:

  • The original plan was to build on top of Discourse. Unfortunately Discourse’s approach to identity proved incompatible with our privacy aims. We therefore switched to building a custom backend and frontend. This entailed more development work, but has allowed us to integrate fully with Zupass. This will enable us to make the Plural Research Society progressively more private, while still giving access to the relational social data needed to run the various plural mechanisms. This hasn’t delayed development, and in fact has open up a raft of opportunities for future features.

  • Our initial goal was to host an event at ETHDenver in late February. Unfortunately, several key participants were unable to attend. We have therefore moved the event to May 22-23rd to coincide with ETHBerlin

Because this is quite a way off, we will hold an initial convening in early March, where the tools will be demoed and the first votes held. By doing this, only the final milestone (the actual distribution of the grants) will be delayed until May.

Next Steps

Registration will open soon, where invited researchers will be able to register and begin to vote to set the agenda for the workshop in May.

On the development side, we’ll be closing out the vote tool development with a results page to clearly show the results ordered by plurality score, along with other useful data. We’ll then shift focus to building forum functionality, to allow participants to discuss outside of voting.

5 Likes

Development Updates

The original prototype (pre-grant) was baked into a Discourse-based discussion system. The initial plan was to convert this into a more flexible Discourse plug-in. However, investigations quickly revealed that this was unsuitable for several reasons:

  • Discourse’s in-built identity system is insufficiently private and impossible to override
  • Mobile friendly (and hence event friendly) UI on Discourse is challenging
  • Integration with other plural mechanisms and tools beyond voting would be difficult or impossible
  • Discourse is unreliable at high load and frequency, such as would be required at in-person events

Given the importance of these factors to event attendees, the decision was made to move away from Discourse to a custom backend and frontend with private registration. This has significantly increased development work, but was possible thanks to the appreciation in the value of ARB.

This has also brought a number of benefits and potential future avenues of work which would have been impossible under the original proposal:

  • Zupass integration, and the possibility of running fully private, zero-knowledge votes and events in future phases
  • Interoperability with other Digital ID systems
  • Running events within the research community which use relational identity data specific to that event, in addition to the global groupings and relational identity data
  • Possibility of directly integrating with other existing Plurality tools, such as polis
  • Easy to integrate further plural mechanisms or develop entirely new ones
  • Fine-grained control over voting UI, facilitating crucial research on the impact of UI on governance outcomes
  • Clear and easy data visualization within the tool itself + easy mobile optimization

We also discovered an error in the original plural voting model and implementation which we confirmed and fixed.

Development Progress So Far

Despite these changes, we have made good progress on the purely developmental milestones and even finished some early. These milestones were completed according to the original timeline, as can be verified on our Github (backend, frontend).

For clarity, we will just outline the current state of the tool, which can be demoed via Github in advance of the registration launch.

Any Zupass can be connected to the staging database. If you don’t have a Zupass, you will be prompted to create one. For privacy, the staging database will be wiped weekly.

The tool currently has the following features (items in bold are newly added features made possible by the shift from Discourse, items in italics are from future milestones which were not yet due to be completed):

  • Sign-in via Zupass
  • User registration: users register their username, credentials, and affiliations, which are used to power the plural voting
  • Votes and registration fields specific to certain events
  • Participants can allocate their votes (hearts) among multiple options in ongoing votes
  • Plural scores are calculated according to participant grouping and displayed in the results page, along with a variety of other data
  • Fully reimplemented plural voting model, including a fix to the original model and code
  • Pending a bug fix from the Zupass team, the front-end is already fully mobile optimized
  • Fully customizable back-end which allows amongst other things:
    • Full anonymization of users, groups, and grouping dimensions, while still allowing plural calculations
    • Full control over vote option ordering (e.g., randomized, by submission, by plural score, etc.)
    • Arbitrary numbers of events, users, questions, etc.; arbitrarily complex registration logic, event logic, data querying, etc.
    • Adaptive back-end scaling to ensure stability during events (high user numbers, activity frequency) while scaling back during quieter times

Event Updates

Although initial buy-in for an event at ETH Denver was high, key participants explained that they would no longer be attending ETH Denver, so would not be able to attend the MEV Research event, even though they were extremely interested. It also became clear that the high volume of events at ETH Denver made it unsuitable: our event requires significant buy-in from participants, attending all day and giving their full attention.

As a result, the decision was taken to move the event to May 22nd and 23rd, before ETH Berlin.

The key participants who were unable to attend in Denver have confirmed their attendance. Switching from a one-day event to two half-days on consecutive days will produce a more relaxed schedule and greater chance of high-quality collaborative research proposals.

An event and event manager have been selected and funded.

Updated Events Timeline

An updated timeline will follow, pending approval from PL.

Completed Milestones

Milestone #2 (35,000 ARB) and Milestone #4 (35,000 ARB) have been completed. Some deviation from the deliverables has occurred, because the shift from Discourse to Zupass means a token airdrop is no longer needed or appropriate. As outlined above, using Zupass is actually more powerful and better-aligned with what participants in this community require (no registration airdrop, greater privacy).

All other deliverables within these milestones have been completed as specified and can be verified from the staging demo / Github.

Although a great deal of initial marketing has been completed, including landing page text, research community branding and significant outreach to participants, we still intend to do more work on Milestone #3 in light of the new extended timeline.

1 Like

Update: Friday 16th February

Development

The most significant change from the last update is that the front end has been completely restyled into a cleaner, more academic look which better suits the target audience for the Plural Research Experiment. The new style defaults to dark mode, but a light mode toggle is included for accessibility purposes.

Documentation has been brought up to date, including extensive database documentation for anyone wishing to test the agenda tool locally.

A test version of the tool has been deployed using the old styling for faster demoing and external testing. A blank production database has been deployed, and the tool has moved out of staging.

Forum functionality has been specced out and development of this feature has begun.

As always, development progress can be followed at our repo.

UI Improvements

Significant UI improvements have been made, including:

Users can now select information from drop down lists by typing their preferred option, rather than scrolling

Users can also now enter arbitrary information during registration (e.g., project affiliation, credentials) which are not in the drop-down list. The database will create the appropriate grouping and user connections for calculating plurality scores and add the new affiliation to the list for future registrants.

Routing microservices have been refactored for faster page loading and interactions with the database.

Event

Event planning continues on schedule. We’re in discussion with our chosen venue and hope to confirm soon. Several speakers and moderators have been selected and we’re in the process of arranging the logistics for their travel, accommodation and payment.

Plural Research

Two of the researchers who co-authored the original paper the Connection-Oriented Cluster Match mechanism is drawn from have been commissioned to create a peer prediction feedback formula. This goes beyond the scope of the grant milestones, but was already included in our proposal as a potential extension to prepare for future event cycles. We hope this will prove a significant contribution to our event and the plurality field in general.

2 Likes

A log in with ethereum wallet on Polis would be immediately useful! I mean like I’d use it tomorrow!!!

Development Update Feb 23

Most of the week was dedicated to front-end updates, with all pages of the agenda tool now available in both the 8-bit and academic styles. The vote page has been restructured to accommodate the higher word count expected for the research proposals, and in preparation of the UI changes needed for the introduction of discussion functionality.

The results page has been updated for clearer presentation of results and now shows which groups contributed to the vote for each option.

In addition to these front-end tasks, the rest of the team has focused on testing, bug fixes and improvements, as well as planning for the more advanced interactions needed at the event in May, when grouping data will need to be flexibly integrated into the tool database dependent on the in-person interactions.

As always, progress can be followed in our GitHub repo (/lexicongovernance - the forum won’t let me post the link directly for some reason, although you can find it in the original post). You’ll also find instructions for testing on our staging platform and locally.