first pass lido classifiers
This commit is contained in:
parent
cfa3443f88
commit
238ac4e0fe
1
mev_inspect/abis/lido/LDO.json
Normal file
1
mev_inspect/abis/lido/LDO.json
Normal file
File diff suppressed because one or more lines are too long
1
mev_inspect/abis/lido/LidoDao.json
Normal file
1
mev_inspect/abis/lido/LidoDao.json
Normal file
@ -0,0 +1 @@
|
||||
[{"constant":true,"inputs":[],"name":"proxyType","outputs":[{"name":"proxyTypeId","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[{"name":"","type":"bytes32"},{"name":"","type":"bytes32"}],"name":"apps","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"isDepositable","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"implementation","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"recoveryVaultAppId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_kernelImpl","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"sender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"ProxyDeposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"namespace","type":"bytes32"},{"indexed":true,"name":"appId","type":"bytes32"},{"indexed":false,"name":"app","type":"address"}],"name":"SetApp","type":"event"}]
|
1
mev_inspect/abis/lido/LidostETH.json
Normal file
1
mev_inspect/abis/lido/LidostETH.json
Normal file
@ -0,0 +1 @@
|
||||
[{"constant":true,"inputs":[],"name":"proxyType","outputs":[{"name":"proxyTypeId","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"isDepositable","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"implementation","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"},{"name":"_initializePayload","type":"bytes"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"sender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"ProxyDeposit","type":"event"}]
|
1
mev_inspect/abis/lido/WstETH.json
Normal file
1
mev_inspect/abis/lido/WstETH.json
Normal file
File diff suppressed because one or more lines are too long
1
mev_inspect/abis/lido/aragonagent.json
Normal file
1
mev_inspect/abis/lido/aragonagent.json
Normal file
@ -0,0 +1 @@
|
||||
[{"constant":true,"inputs":[],"name":"proxyType","outputs":[{"name":"proxyTypeId","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"isDepositable","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"implementation","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"},{"name":"_initializePayload","type":"bytes"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"sender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"ProxyDeposit","type":"event"}]
|
1
mev_inspect/abis/lido/aragonfinance.json
Normal file
1
mev_inspect/abis/lido/aragonfinance.json
Normal file
@ -0,0 +1 @@
|
||||
[{"constant":true,"inputs":[],"name":"proxyType","outputs":[{"name":"proxyTypeId","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"isDepositable","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"implementation","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"},{"name":"_initializePayload","type":"bytes"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"sender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"ProxyDeposit","type":"event"}]
|
1
mev_inspect/abis/lido/aragontokenmanager.json
Normal file
1
mev_inspect/abis/lido/aragontokenmanager.json
Normal file
@ -0,0 +1 @@
|
||||
[{"constant":true,"inputs":[],"name":"proxyType","outputs":[{"name":"proxyTypeId","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"isDepositable","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"implementation","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"},{"name":"_initializePayload","type":"bytes"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"sender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"ProxyDeposit","type":"event"}]
|
1
mev_inspect/abis/lido/aragonvoting.json
Normal file
1
mev_inspect/abis/lido/aragonvoting.json
Normal file
@ -0,0 +1 @@
|
||||
[{"constant":true,"inputs":[],"name":"proxyType","outputs":[{"name":"proxyTypeId","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"isDepositable","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"implementation","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"},{"name":"_initializePayload","type":"bytes"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"sender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"ProxyDeposit","type":"event"}]
|
1
mev_inspect/abis/lido/depositsecurity.json
Normal file
1
mev_inspect/abis/lido/depositsecurity.json
Normal file
File diff suppressed because one or more lines are too long
1
mev_inspect/abis/lido/nodeoperators.json
Normal file
1
mev_inspect/abis/lido/nodeoperators.json
Normal file
@ -0,0 +1 @@
|
||||
[{"constant":true,"inputs":[],"name":"proxyType","outputs":[{"name":"proxyTypeId","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"isDepositable","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"implementation","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"},{"name":"_initializePayload","type":"bytes"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"sender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"ProxyDeposit","type":"event"}]
|
1
mev_inspect/abis/lido/oracle.json
Normal file
1
mev_inspect/abis/lido/oracle.json
Normal file
@ -0,0 +1 @@
|
||||
[{"constant":true,"inputs":[],"name":"proxyType","outputs":[{"name":"proxyTypeId","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"isDepositable","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"implementation","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"appId","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"kernel","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_kernel","type":"address"},{"name":"_appId","type":"bytes32"},{"name":"_initializePayload","type":"bytes"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"sender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"ProxyDeposit","type":"event"}]
|
@ -10,6 +10,7 @@ from .compound import COMPOUND_CLASSIFIER_SPECS
|
||||
from .cryptopunks import CRYPTOPUNKS_CLASSIFIER_SPECS
|
||||
from .curve import CURVE_CLASSIFIER_SPECS
|
||||
from .erc20 import ERC20_CLASSIFIER_SPECS
|
||||
from .lido import LIDO_CLASSIFIER_SPECS
|
||||
from .uniswap import UNISWAP_CLASSIFIER_SPECS
|
||||
from .weth import WETH_ADDRESS, WETH_CLASSIFIER_SPECS
|
||||
from .zero_ex import ZEROX_CLASSIFIER_SPECS
|
||||
@ -25,6 +26,7 @@ ALL_CLASSIFIER_SPECS = (
|
||||
+ COMPOUND_CLASSIFIER_SPECS
|
||||
+ CRYPTOPUNKS_CLASSIFIER_SPECS
|
||||
+ BANCOR_CLASSIFIER_SPECS
|
||||
+ LIDO_CLASSIFIER_SPECS
|
||||
)
|
||||
|
||||
_SPECS_BY_ABI_NAME_AND_PROTOCOL: Dict[
|
||||
|
82
mev_inspect/classifiers/specs/lido.py
Normal file
82
mev_inspect/classifiers/specs/lido.py
Normal file
@ -0,0 +1,82 @@
|
||||
from mev_inspect.schemas.classifiers import ClassifierSpec
|
||||
from mev_inspect.schemas.traces import Protocol
|
||||
|
||||
LIDO_CLASSIFIER_SPECS = [
|
||||
ClassifierSpec(
|
||||
abi_name="LidoDao",
|
||||
protocol=Protocol.lido,
|
||||
valid_contract_addresses=[
|
||||
"0xb8FFC3Cd6e7Cf5a098A1c92F48009765B24088Dc" # lido dao
|
||||
],
|
||||
),
|
||||
ClassifierSpec(
|
||||
abi_name="LDO",
|
||||
protocol=Protocol.lido,
|
||||
valid_contract_addresses=[
|
||||
"0x5A98FcBEA516Cf06857215779Fd812CA3beF1B32" # LDO token
|
||||
],
|
||||
),
|
||||
ClassifierSpec(
|
||||
abi_name="LidostETH",
|
||||
protocol=Protocol.lido,
|
||||
valid_contract_addresses=[
|
||||
"0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84", # lido and stETH token
|
||||
],
|
||||
),
|
||||
ClassifierSpec(
|
||||
abi_name="nodeoperators",
|
||||
protocol=Protocol.lido,
|
||||
valid_contract_addresses=[
|
||||
"0x55032650b14df07b85bF18A3a3eC8E0Af2e028d5" # node operators registry
|
||||
],
|
||||
),
|
||||
ClassifierSpec(
|
||||
abi_name="oracle",
|
||||
protocol=Protocol.lido,
|
||||
valid_contract_addresses=[
|
||||
"0x442af784A788A5bd6F42A01Ebe9F287a871243fb" # oracle
|
||||
],
|
||||
),
|
||||
ClassifierSpec(
|
||||
abi_name="WstETH",
|
||||
protocol=Protocol.lido,
|
||||
valid_contract_addresses=[
|
||||
"0x7f39c581f595b53c5cb19bd0b3f8da6c935e2ca0" # WstETH
|
||||
],
|
||||
),
|
||||
ClassifierSpec(
|
||||
abi_name="depositsecurity",
|
||||
protocol=Protocol.lido,
|
||||
valid_contract_addresses=[
|
||||
"0xDb149235B6F40dC08810AA69869783Be101790e7" # deposit security module
|
||||
],
|
||||
),
|
||||
ClassifierSpec(
|
||||
abi_name="aragonvoting",
|
||||
protocol=Protocol.lido,
|
||||
valid_contract_addresses=[
|
||||
"0x2e59A20f205bB85a89C53f1936454680651E618e" # aragon voting
|
||||
],
|
||||
),
|
||||
ClassifierSpec(
|
||||
abi_name="aragontokenmanager",
|
||||
protocol=Protocol.lido,
|
||||
valid_contract_addresses=[
|
||||
"0xf73a1260d222f447210581DDf212D915c09a3249" # aragon token manager
|
||||
],
|
||||
),
|
||||
ClassifierSpec(
|
||||
abi_name="aragonfinance",
|
||||
protocol=Protocol.lido,
|
||||
valid_contract_addresses=[
|
||||
"0xB9E5CBB9CA5b0d659238807E84D0176930753d86" # aragon finance
|
||||
],
|
||||
),
|
||||
ClassifierSpec(
|
||||
abi_name="aragonagent",
|
||||
protocol=Protocol.lido,
|
||||
valid_contract_addresses=[
|
||||
"0x3e40D73EB977Dc6a537aF587D48316feE66E9C8c" # aragon agent
|
||||
],
|
||||
),
|
||||
]
|
@ -48,6 +48,7 @@ class Protocol(Enum):
|
||||
cream = "cream"
|
||||
cryptopunks = "cryptopunks"
|
||||
bancor = "bancor"
|
||||
lido = "lido"
|
||||
|
||||
|
||||
class ClassifiedTrace(Trace):
|
||||
|
Loading…
x
Reference in New Issue
Block a user