Schema used for Reviews:

https://optimism.easscan.org/schema/view/0xc9bc703e3c48be23c1c09e2f58b2b6657e42d8794d2008e3738b4ab0e2a3a8b6

Design choices for the schema:

  1. Ensure there is anchor data on the schema. This data is unmutable and therefore directly on the EAS schema.
  2. Mutable data: Enable flexibility for structured data gathering. This information will be stored in a decentralized server such as IPFS.

Example: https://gateway.pinata.cloud/ipfs/QmUQ6NKvvSiexDaPhkKS6evnNiCmJyHNFQtwJVSpexvPuU

Metadata schema:

compiledData = {
id: contribution?.id,
project: {
name: project?.projectName,
description: project?.oneliner,
website: project?.websiteUrl,
},
reviewer: {
userFID: user.fid,
ethAddress: user.ethAddress || zeroAddress,
},
context: {
ecosystems: [
{
name: contribution?.ecosystem,
tags: [
{
category: contribution?.category,
subcategory: contribution?.subcategory,
round: specificData.round,
}
]
}
],
userInterface: "Metrics Garden"
},
contributions: [
{
name: contribution?.projectName,
description: contribution?.contribution,
website: project?.websiteUrl,
}
],
impactAttestations: [
{
name: "Likely to Recommend",
type: "numeric",
value: specificData?.likely_to_recommend || specificData?.recommend_contribution || "",
},
{
name: "Feeling if didnt exist",
type: "numeric",
value: specificData?.feeling_if_didnt_exist_number || "",
},
{
name: "Governance Knowledge",
type: "numeric",
value: specificData?.governance_knowledge_number || "",
},
{
name: "Useful for Understanding",
type: "numeric",
value: specificData?.useful_for_understanding || "",
},
{
name: "Effective for Improvements",
type: "numeric",
value: specificData?.effective_for_improvements || "",
},
{
name: "Why Effective for Improvements",
type: "string",
value: specificData?.why || "",
},
{
name: "Text Review",
type: "string",
value: specificData?.explanation || "",
}
]
};
break;

For Retro6, the variables that will be used to generate metrics and to be analyzed are:

  1. "Likely to Recommend"
  2. "Feeling if didnt exist"
  3. "Text Review"