Try   HackMD

Axiom / Clique <> Optimism Attestation Station + Citizen House

tags: specs

We propose to enhance Citizen House governance by allowing information from Attestation Station to be used to determine badgeholders. Specifically, we will build an on-chain service which:

  • Ranks user addresses in Attestation Station according to metadata stored in attestations.
  • Enables this information to be used in Citizen House governance for selection or weighting of badgeholders.
    • For example, we can use GitHub attestations to give badgeholders variable weights (higher percentage of delegated tokens, instead of a uniform distribution for everyone) during RetroPGF (or any other engineering-focused decisions).
    • Another option is to select badgeholders in different categories based on rankings derived from different types of attestations. For example, we can allocate 5 badges to the top Github star attestations and 5 badges to the top Github or Twitter follower attestations.

At present, the large volume of attestations in Attestation Station cannot be simultaneously accessed on-chain, making global statistics like a ranking impossible to compute. Our system will overcome this issue in the following steps:

  • Use Axiom to read the value of all Clique attestations with a given key from Attestation Station at a fixed checkpoint block.
  • Sort user addresses by values corresponding to a specific key and return the sorted list of the top values.
  • Verify the Axiom-provided ZK validity proof on-chain and provide the ranked list of attestation values for usage in Citizen House badgeholder selection.

The outcome is a trustlessly determined ranking of users according to a metric from Attestation Station.

Design Challenges

Optimistic Challenge Period

We will post a Merkle root containing all the attestation information that's used in the ranking. Because the data is always available on-chain (it's just expensive for users to run the computation here), anyone can choose to challenge the ranking results during a challenge period of

X days.