The proposal is to allow Di Wu as an oracle runner for Mento, the stability mechanism behind the Celo Stables. Di Wu has previously shown interest in running the oracles in a forum post calling the community to run oracles.
Di Wu has offered to provide this service ad honorem.
Attached is a security assetment of Di Wu's infrastructure from cLabs team, by Benjamin Speckien, Head of Security.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
cLabs Security team has assessed Di Wu as an industry professional with knowledge of best practices and a strong foundation in information security. His chosen technology stack is robust and exhibits secure secrets management. Di Wu confirmed that he will be able to cooperate with cLabs Security, in the event of an incident, change of best practices, or with sharing threat intelligence. cLabs Security team supports Di Wu running an Oracle.
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEXolxJWmftES4VhgKRf8m/UcHGacFAmMOM9wACgkQRf8m/UcH
GadCxxAAwAkjSIn3mN1JtzOGmn2hLMtUsl5RncGXMuUfAdJOVnIKPCl3uvrI45ig
fYgpYNqncb4sTxHe2AXO8FH/pwvYuRtOkzAIvYacfUePejcsrofF6wNm1qQD14m0
nq9HiLnv0lKs20a0oKeU0A60aUCc+4dejvonEvm/Nu84nqkCARsMXrjLAbjYx6Du
VuZKcu3y9qxqxR/gODsgXMQtaDr9IRqxRLTR1Sa7P7ACc6iLHrN1X4rYxIie98zP
X5KVEd/0N2DJTu0+iICZIX9d+7uw8QnffSxgmaVWH9i5C+Mdu8bbNg6B9S4ttpGS
eWTn7T1ZO857wNZwHGKZQYHk2wbwAhLuF7Ha8dcNd1sXiq/M2MVVYD4YRHNStQOj
O+b+KiwsO0pKFRZeLCWEO9OV2YnifgaDb2Bovfn6m54KUYpltkAt1xBUJ0iyZBFX
IXa+ahYDjG3gGJWnTlhGiqVEFj4gFt1m3HcTwje3ijpUg+MSCk2zthw6c8R6Cpdu
j8Gj8G1vK7NU2sHk2O6OeABy9le7FxacZ5FayghyzkimHG9KmENFxtYepyIN8e25
SENtygPjguyK2+PwtCuCiseYU6QqpfWCuXm/vLaEgnAAO7pd5zfF5qHxdpYkYttB
Wjlu6Rv/xFK1nXstw5LZq+W8nqNaYMITJjp32Vre2gvbXL8n0Q0=
=bYzH
-----END PGP SIGNATURE-----
SortedOracles.removeOracle(cUSD address = 0x765DE816845861e75A25fCA122bb6898B8B1282a, cLabs oracle = 0xca9ae47493f763a7166ab8310686b197984964b4, oracle index = 9)SortedOracles.addOracle(cUSD address = 0x765DE816845861e75A25fCA122bb6898B8B1282a, Di Wu CELO/USD oracle = 0xF8ffaB8cCB81BcD0DF7f9dF97Ccf8bEF782ebEeB)SortedOracles.removeOracle(cEUR address = 0xD8763CBa276a3738E6DE85b4b3bF5FDed6D6cA73, cLabs oracle = 0xBD955F84e11EE53095F9068b88C9d2Ffd3Def707, oracle index = 9)SortedOracles.addOracle(cEUR address = 0xD8763CBa276a3738E6DE85b4b3bF5FDed6D6cA73, Di Wu CELO/EUR oracle = 0x3F2691d5B4839c226f4Bd096DC744914cAD5737e)SortedOracles.removeOracle(cREAL address = 0xe8537a3d056DA446677B9E9d6c5dB704EaAb4787, ADDRESS3-CLABS = 0x7F045f538c3837D9096205e740A0173eA860c400, oracle index = 9)SortedOracles.addOracle(cREAL address = 0xe8537a3d056DA446677B9E9d6c5dB704EaAb4787, Di Wu CELO/BRL oracle = 0x4eb4571a475Bea99b6A735B89aae664b82c964a3)Note: Removal of oracles are batched at the begining so index don't change after adding the oracles, and make it simpler to verify.
The content of the proposal can be fetched using the cli:
$ celocli governance:view --proposalID TODO --node https://forno.celo.org
Addresses of the stables can be verified with
$ celocli network:contracts --node https://forno.celo.org
where StableToken is cUSD, StableTokenEUR is cEUR and StableTokenBRL is cREAL.
And addresses for the oracles to be removed can be verifies with:
$ celocli oracle:list <stable address> --node https://forno.celo.org
Index in the proposals should match the zero-based-index in the output from the cli.
Celo oracles work by enabling a list of oracles to report and calculating a median of the report. One individual provider can not influence the median on their own, the only way to affect it would be to control half the oracles plus one. There's still a risk of hack of their infrastructure plus the incentives changing for Di Wu to turn malicious. The community will have to be vigilant that community-run oracles are behaving properly.