diff --git a/specs/mainnet-1/specs/base.json b/specs/mainnet-1/specs/base.json index 37efbdb3d..75afc60ac 100644 --- a/specs/mainnet-1/specs/base.json +++ b/specs/mainnet-1/specs/base.json @@ -84,7 +84,7 @@ "shares": 1, "min_stake_provider": { "denom": "ulava", - "amount": "47500000000" + "amount": "5000000000" }, "api_collections": [ { diff --git a/specs/mainnet-1/specs/blast.json b/specs/mainnet-1/specs/blast.json new file mode 100644 index 000000000..ae7e40b3a --- /dev/null +++ b/specs/mainnet-1/specs/blast.json @@ -0,0 +1,114 @@ +{ + "proposal": { + "title": "Add Specs: Blast", + "description": "Adding new specification support for relaying data on Blast ", + "specs": [ + { + "index": "BLAST", + "name": "blast mainnet", + "enabled": true, + "imports": ["ETH1"], + "reliability_threshold": 268435455, + "data_reliability_enabled": true, + "block_distance_for_finalized_data": 6, + "blocks_in_finalization_proof": 2, + "average_block_time": 2000, + "allowed_block_lag_for_qos_sync": 15, + "shares": 1, + "min_stake_provider": { + "denom": "ulava", + "amount": "5000000000" + }, + "api_collections": [ + { + "enabled": true, + "collection_data": { + "api_interface": "jsonrpc", + "internal_path": "", + "type": "POST", + "add_on": "" + }, + "apis": [], + "headers": [], + "inheritance_apis": [], + "parse_directives": [], + "verifications": [ + { + "name": "chain-id", + "values": [ + { + "expected_value": "0x13e31" + } + ] + }, + { + "name": "pruning", + "values": [ + { + "latest_distance": 43200 + }, + { + "extension": "archive", + "expected_value": "0x0" + } + ] + } + ], + "extensions": [ + { + "name": "archive", + "cu_multiplier": 5, + "rule": { + "block": 43000 + } + } + ] + } + ] + }, + { + "index": "BLASTSP", + "name": "blast sepolia testnet", + "enabled": true, + "imports": ["BLAST"], + "reliability_threshold": 268435455, + "data_reliability_enabled": true, + "block_distance_for_finalized_data": 6, + "blocks_in_finalization_proof": 2, + "average_block_time": 2000, + "allowed_block_lag_for_qos_sync": 15, + "shares": 1, + "min_stake_provider": { + "denom": "ulava", + "amount": "5000000000" + }, + "api_collections": [ + { + "enabled": true, + "collection_data": { + "api_interface": "jsonrpc", + "internal_path": "", + "type": "POST", + "add_on": "" + }, + "apis": [], + "headers": [], + "inheritance_apis": [], + "parse_directives": [], + "verifications": [ + { + "name": "chain-id", + "values": [ + { + "expected_value": "0xa0c71fd" + } + ] + } + ] + } + ] + } + ] + }, + "deposit": "10000000ulava" +} diff --git a/specs/mainnet-1/specs/optimism.json b/specs/mainnet-1/specs/optimism.json new file mode 100644 index 000000000..02b90c9f3 --- /dev/null +++ b/specs/mainnet-1/specs/optimism.json @@ -0,0 +1,208 @@ +{ + "proposal": { + "title": "Add Specs: Optimism", + "description": "Adding new specification support for relaying Optimism data on Lava, slow lookup for latest block to reduce provider load", + "specs": [ + { + "index": "OPTM", + "name": "optimism mainnet", + "enabled": true, + "imports": [ + "ETH1" + ], + "reliability_threshold": 268435455, + "data_reliability_enabled": true, + "block_distance_for_finalized_data": 1, + "blocks_in_finalization_proof": 1, + "average_block_time": 2000, + "allowed_block_lag_for_qos_sync": 8, + "shares": 1, + "min_stake_provider": { + "denom": "ulava", + "amount": "5000000000" + }, + "api_collections": [ + { + "enabled": true, + "collection_data": { + "api_interface": "jsonrpc", + "internal_path": "", + "type": "POST", + "add_on": "" + }, + "apis": [ + { + "name": "eth_getAccounts", + "block_parsing": { + "parser_arg": [ + "" + ], + "parser_func": "EMPTY" + }, + "compute_units": 10, + "enabled": false, + "category": { + "deterministic": true, + "local": false, + "subscription": false, + "stateful": 0 + }, + "extra_compute_units": 0 + }, + { + "name": "eth_getBlockRange", + "block_parsing": { + "parser_arg": [ + "1" + ], + "parser_func": "PARSE_BY_ARG" + }, + "compute_units": 10, + "enabled": true, + "category": { + "deterministic": true, + "local": false, + "subscription": false, + "stateful": 0 + }, + "extra_compute_units": 0 + }, + { + "name": "eth_sendTransaction", + "block_parsing": { + "parser_arg": [ + "" + ], + "parser_func": "EMPTY" + }, + "compute_units": 10, + "enabled": false, + "category": { + "deterministic": true, + "local": false, + "subscription": false, + "stateful": 0 + }, + "extra_compute_units": 0 + }, + { + "name": "rollup_gasPrices", + "block_parsing": { + "parser_arg": [ + "latest" + ], + "parser_func": "DEFAULT" + }, + "compute_units": 10, + "enabled": true, + "category": { + "deterministic": true, + "local": false, + "subscription": false, + "stateful": 0 + }, + "extra_compute_units": 0 + }, + { + "name": "rollup_getInfo", + "block_parsing": { + "parser_arg": [ + "" + ], + "parser_func": "EMPTY" + }, + "compute_units": 10, + "enabled": true, + "category": { + "deterministic": false, + "local": true, + "subscription": false, + "stateful": 0 + }, + "extra_compute_units": 0 + } + ], + "headers": [], + "inheritance_apis": [], + "parse_directives": [], + "verifications": [ + { + "name": "chain-id", + "values": [ + { + "expected_value": "0xa" + } + ] + }, + { + "name": "pruning", + "values": [ + { + "latest_distance": 43200 + }, + { + "extension": "archive", + "expected_value": "0x0" + } + ] + } + ], + "extensions": [ + { + "name": "archive", + "cu_multiplier": 5, + "rule": { + "block": 42600 + } + } + ] + } + ] + }, + { + "index": "OPTMS", + "name": "optimism sepolia testnet", + "enabled": true, + "imports": [ + "OPTM" + ], + "reliability_threshold": 268435455, + "data_reliability_enabled": true, + "block_distance_for_finalized_data": 1, + "blocks_in_finalization_proof": 1, + "average_block_time": 2000, + "allowed_block_lag_for_qos_sync": 8, + "min_stake_provider": { + "denom": "ulava", + "amount": "5000000000" + }, + "api_collections": [ + { + "enabled": true, + "collection_data": { + "api_interface": "jsonrpc", + "internal_path": "", + "type": "POST", + "add_on": "" + }, + "apis": [], + "headers": [], + "inheritance_apis": [], + "parse_directives": [], + "verifications": [ + { + "name": "chain-id", + "values": [ + { + "expected_value": "0xaa37dc" + } + ] + } + ] + } + ] + } + ] + }, + "deposit": "10000000ulava" +} \ No newline at end of file diff --git a/specs/mainnet-1/specs/polygon.json b/specs/mainnet-1/specs/polygon.json new file mode 100644 index 000000000..d168bb09b --- /dev/null +++ b/specs/mainnet-1/specs/polygon.json @@ -0,0 +1,407 @@ +{ + "proposal": { + "title": "Add Specs: Polygon", + "description": "Adding new specification support for relaying Polygon data on Lava", + "specs": [ + { + "index": "POLYGON", + "name": "polygon mainnet", + "enabled": true, + "imports": [ + "ETH1" + ], + "reliability_threshold": 268435455, + "data_reliability_enabled": true, + "block_distance_for_finalized_data": 1, + "blocks_in_finalization_proof": 3, + "average_block_time": 2000, + "allowed_block_lag_for_qos_sync": 5, + "shares": 1, + "min_stake_provider": { + "denom": "ulava", + "amount": "5000000000" + }, + "api_collections": [ + { + "enabled": true, + "collection_data": { + "api_interface": "jsonrpc", + "internal_path": "", + "type": "POST", + "add_on": "" + }, + "apis": [ + { + "name": "bor_getAuthor", + "block_parsing": { + "parser_arg": [ + "0" + ], + "parser_func": "PARSE_BY_ARG" + }, + "compute_units": 10, + "enabled": true, + "category": { + "deterministic": true, + "local": false, + "subscription": false, + "stateful": 0 + }, + "extra_compute_units": 0 + }, + { + "name": "bor_getCurrentProposer", + "block_parsing": { + "parser_arg": [ + "latest" + ], + "parser_func": "DEFAULT" + }, + "compute_units": 10, + "enabled": true, + "category": { + "deterministic": true, + "local": false, + "subscription": false, + "stateful": 0 + }, + "extra_compute_units": 0 + }, + { + "name": "bor_getCurrentValidators", + "block_parsing": { + "parser_arg": [ + "latest" + ], + "parser_func": "DEFAULT" + }, + "compute_units": 20, + "enabled": true, + "category": { + "deterministic": true, + "local": false, + "subscription": false, + "stateful": 0 + }, + "extra_compute_units": 0 + }, + { + "name": "bor_getRootHash", + "block_parsing": { + "parser_arg": [ + "1" + ], + "parser_func": "PARSE_BY_ARG" + }, + "compute_units": 10, + "enabled": true, + "category": { + "deterministic": true, + "local": false, + "subscription": false, + "stateful": 0 + }, + "extra_compute_units": 0 + }, + { + "name": "bor_getSignersAtHash", + "block_parsing": { + "parser_arg": [ + "latest" + ], + "parser_func": "DEFAULT" + }, + "compute_units": 10, + "enabled": true, + "category": { + "deterministic": true, + "local": false, + "subscription": false, + "stateful": 0 + }, + "extra_compute_units": 0 + }, + { + "name": "qn_getBlockWithReceipts", + "block_parsing": { + "parser_arg": [ + "0" + ], + "parser_func": "PARSE_BY_ARG" + }, + "compute_units": 10, + "enabled": true, + "category": { + "deterministic": true, + "local": false, + "subscription": false, + "stateful": 0 + }, + "extra_compute_units": 0 + }, + { + "name": "qn_getReceipts", + "block_parsing": { + "parser_arg": [ + "0" + ], + "parser_func": "PARSE_BY_ARG" + }, + "compute_units": 10, + "enabled": true, + "category": { + "deterministic": true, + "local": false, + "subscription": false, + "stateful": 0 + }, + "extra_compute_units": 0 + }, + { + "name": "txpool_content", + "block_parsing": { + "parser_arg": [ + "latest" + ], + "parser_func": "DEFAULT" + }, + "compute_units": 5000, + "enabled": true, + "category": { + "deterministic": false, + "local": false, + "subscription": false, + "stateful": 0 + }, + "extra_compute_units": 0 + }, + { + "name": "txpool_inspect", + "block_parsing": { + "parser_arg": [ + "latest" + ], + "parser_func": "DEFAULT" + }, + "compute_units": 10, + "enabled": true, + "category": { + "deterministic": false, + "local": false, + "subscription": false, + "stateful": 0 + }, + "extra_compute_units": 0 + }, + { + "name": "txpool_status", + "block_parsing": { + "parser_arg": [ + "latest" + ], + "parser_func": "DEFAULT" + }, + "compute_units": 10, + "enabled": true, + "category": { + "deterministic": false, + "local": false, + "subscription": false, + "stateful": 0 + }, + "extra_compute_units": 0 + }, + { + "name": "erigon_blockNumber", + "block_parsing": { + "parser_arg": [ + "latest" + ], + "parser_func": "DEFAULT" + }, + "compute_units": 10, + "enabled": true, + "category": { + "deterministic": false, + "local": false, + "subscription": false, + "stateful": 0 + }, + "extra_compute_units": 0 + }, + { + "name": "erigon_forks", + "block_parsing": { + "parser_arg": [ + "latest" + ], + "parser_func": "DEFAULT" + }, + "compute_units": 10, + "enabled": true, + "category": { + "deterministic": false, + "local": false, + "subscription": false, + "stateful": 0 + }, + "extra_compute_units": 0 + }, + { + "name": "erigon_getBlockByTimestamp", + "block_parsing": { + "parser_arg": [ + "latest" + ], + "parser_func": "DEFAULT" + }, + "compute_units": 10, + "enabled": true, + "category": { + "deterministic": false, + "local": false, + "subscription": false, + "stateful": 0 + }, + "extra_compute_units": 0 + }, + { + "name": "erigon_getBlockReceiptsByBlockHash", + "block_parsing": { + "parser_arg": [ + "latest" + ], + "parser_func": "DEFAULT" + }, + "compute_units": 10, + "enabled": true, + "category": { + "deterministic": false, + "local": false, + "subscription": false, + "stateful": 0 + }, + "extra_compute_units": 0 + }, + { + "name": "erigon_getHeaderByHash", + "block_parsing": { + "parser_arg": [ + "latest" + ], + "parser_func": "DEFAULT" + }, + "compute_units": 10, + "enabled": true, + "category": { + "deterministic": false, + "local": false, + "subscription": false, + "stateful": 0 + }, + "extra_compute_units": 0 + }, + { + "name": "erigon_getHeaderByNumber", + "block_parsing": { + "parser_arg": [ + "latest" + ], + "parser_func": "DEFAULT" + }, + "compute_units": 10, + "enabled": true, + "category": { + "deterministic": false, + "local": false, + "subscription": false, + "stateful": 0 + }, + "extra_compute_units": 0 + } + ], + "headers": [], + "inheritance_apis": [], + "parse_directives": [], + "verifications": [ + { + "name": "chain-id", + "values": [ + { + "expected_value": "0x89" + } + ] + }, + { + "name": "pruning", + "values": [ + { + "latest_distance": 43200 + }, + { + "extension": "archive", + "expected_value": "0x0" + } + ] + } + ], + "extensions": [ + { + "name": "archive", + "cu_multiplier": 5, + "rule": { + "block": 42600 + } + } + ] + } + ] + }, + { + "index": "POLYGONA", + "name": "polygon amoy testnet", + "enabled": true, + "imports": [ + "POLYGON" + ], + "reliability_threshold": 268435455, + "data_reliability_enabled": true, + "block_distance_for_finalized_data": 1, + "blocks_in_finalization_proof": 3, + "average_block_time": 2000, + "allowed_block_lag_for_qos_sync": 5, + "shares": 1, + "min_stake_provider": { + "denom": "ulava", + "amount": "5000000000" + }, + "api_collections": [ + { + "enabled": true, + "collection_data": { + "api_interface": "jsonrpc", + "internal_path": "", + "type": "POST", + "add_on": "" + }, + "apis": [], + "headers": [], + "inheritance_apis": [], + "parse_directives": [], + "verifications": [ + { + "name": "chain-id", + "values": [ + { + "expected_value": "0x13882" + } + ] + } + ] + } + ] + } + ] + }, + "deposit": "10000000ulava" +} \ No newline at end of file diff --git a/specs/mainnet-1/specs/tendermint.json b/specs/mainnet-1/specs/tendermint.json index e818b27c4..2ebbfd0b1 100644 --- a/specs/mainnet-1/specs/tendermint.json +++ b/specs/mainnet-1/specs/tendermint.json @@ -275,7 +275,13 @@ "subscription": false, "stateful": 0 }, - "extra_compute_units": 0 + "extra_compute_units": 0, + "parsers": [ + { + "parse_path": ".params.[0]", + "parse_type": "BLOCK_HASH" + } + ] }, { "name": "commit", @@ -479,7 +485,13 @@ "subscription": false, "stateful": 0 }, - "extra_compute_units": 0 + "extra_compute_units": 0, + "parsers": [ + { + "parse_path": ".params.[0]", + "parse_type": "BLOCK_HASH" + } + ] }, { "name": "tx_search",