diff --git a/mainnet_v1/docker-compose.yml b/mainnet_v1/docker-compose.yml index fa92453..9873f3e 100644 --- a/mainnet_v1/docker-compose.yml +++ b/mainnet_v1/docker-compose.yml @@ -8,7 +8,7 @@ volumes: services: gw-readonly: container_name: gw-mainnet_v1-readonly - image: ghcr.io/godwokenrises/godwoken:1.7.4-poly.1.5.1 + image: ghcr.io/godwokenrises/godwoken:v1.12.0 expose: [8119, 8219] healthcheck: test: /bin/gw-healthcheck.sh @@ -51,7 +51,7 @@ services: - mainnet_v1-redis-data:/data web3: - image: ghcr.io/godwokenrises/godwoken-web3-prebuilds:v1.9.3 + image: ghcr.io/godwokenrises/godwoken-web3-prebuilds:v1.12.0 healthcheck: test: curl http://127.0.0.1:8024 || exit 1 volumes: @@ -68,7 +68,7 @@ services: condition: service_healthy web3-indexer: - image: ghcr.io/godwokenrises/godwoken-web3-indexer-prebuilds:v1.9.3 + image: ghcr.io/godwokenrises/godwoken-web3-indexer-prebuilds:v1.12.0 volumes: - ./web3-indexer-config.toml:/var/lib/web3-indexer/indexer-config.toml - ./chain-data/logs:/var/lib/web3-indexer/logs diff --git a/mainnet_v1/gw-mainnet_v1-config-readonly.toml b/mainnet_v1/gw-mainnet_v1-config-readonly.toml index 571afe5..a17b3c7 100644 --- a/mainnet_v1/gw-mainnet_v1-config-readonly.toml +++ b/mainnet_v1/gw-mainnet_v1-config-readonly.toml @@ -3,8 +3,12 @@ node_mode = 'readonly' # Note: It is better to run your own CKB mainnet node. # see: https://docs.nervos.org/docs/basics/guides/run-ckb-with-docker/#run-a-ckb-mainnet-node [rpc_client] -indexer_url = 'CKB_STANDALONE_INDEXER' ckb_url = 'https://mainnet.ckb.dev/rpc' +# If a CKB indexer RPC url is explicitly specified, we assume that we are +# connecting to a standalone indexer (i.e. we use get_tip). +# Otherwise we just use CKB RPC url and assume that we are connecting to CKB +# builtin indexer (i.e. we use get_indexer_tip). +# indexer_url = 'standalone ckb-indexer, optional' [rpc_server] listen = '0.0.0.0:8119' @@ -18,121 +22,11 @@ enable_methods = [] [p2p_network_config] dial = ["/dns4/mainnet.p2p.godwoken.io/tcp/9999"] - -[fork] -increase_max_l2_tx_cycles_to_500m = 233000 - -[[fork.backend_forks]] -fork_height = 0 -[[fork.backend_forks.backends]] -validator_path = '/scripts/godwoken-scripts/meta-contract-validator' -generator_path = '/scripts/godwoken-scripts/meta-contract-generator' -validator_script_type_hash = '0x2c0b586137cb942f92cc3f84f62d77924b560e4088667f6f47012ecfa828e184' -backend_type = 'Meta' -[[fork.backend_forks.backends]] -validator_path = '/scripts/godwoken-scripts/sudt-validator' -generator_path = '/scripts/godwoken-scripts/sudt-generator' -validator_script_type_hash = '0x990027acd7058ec1b45df9d7448c0c5407fc17dde4b9b769f594d613c8053084' -backend_type = 'Sudt' -[[fork.backend_forks.backends]] -validator_path = '/scripts/godwoken-scripts/eth-addr-reg-validator' -generator_path = '/scripts/godwoken-scripts/eth-addr-reg-generator' -validator_script_type_hash = '0xc55c5ede907d13ac1e744cff8ce4386b9dc5aad905d8f3badfd9419efe49eeb2' -backend_type = 'EthAddrReg' -[[fork.backend_forks.backends]] -# https://github.com/nervosnetwork/godwoken-polyjuice/releases/tag/1.4.1 -validator_path = '/scripts/godwoken-polyjuice-v1.4.1/validator' -generator_path = '/scripts/godwoken-polyjuice-v1.4.1/generator' -validator_script_type_hash = '0x83d5d8841518e8db686909d27c821398491f475ed5f1cd392c36e83f4252c4ac' -backend_type = 'Polyjuice' - -[[fork.backend_forks]] -fork_height = 186758 -[[fork.backend_forks.backends]] -# https://github.com/godwokenrises/godwoken-polyjuice/releases/tag/1.4.5 -validator_path = '/scripts/godwoken-polyjuice-v1.4.5/validator' -generator_path = '/scripts/godwoken-polyjuice-v1.4.5/generator' -validator_script_type_hash = '0x83d5d8841518e8db686909d27c821398491f475ed5f1cd392c36e83f4252c4ac' -backend_type = 'Polyjuice' - -[[fork.backend_forks]] -fork_height = 233000 -[[fork.backend_forks.backends]] -# https://github.com/godwokenrises/godwoken-polyjuice/releases/tag/1.5.0 -validator_path = '/scripts/godwoken-polyjuice-v1.5.0/validator' -generator_path = '/scripts/godwoken-polyjuice-v1.5.0/generator' -validator_script_type_hash = '0x83d5d8841518e8db686909d27c821398491f475ed5f1cd392c36e83f4252c4ac' -backend_type = 'Polyjuice' - -[[fork.backend_forks]] -fork_height = 304440 -[[fork.backend_forks.backends]] -validator_path = '/scripts/godwoken-polyjuice-v1.5.1/validator' -generator_path = '/scripts/godwoken-polyjuice-v1.5.1/generator' -validator_script_type_hash = '0x83d5d8841518e8db686909d27c821398491f475ed5f1cd392c36e83f4252c4ac' -backend_type = 'Polyjuice' - - -[genesis] -timestamp = 1655830128000 -rollup_type_hash = '0x1ca35cb5fda4bd542e71d94a6d5f4c0d255d6d6fba73c41cf45d2693e59b3072' -meta_contract_validator_type_hash = '0x2c0b586137cb942f92cc3f84f62d77924b560e4088667f6f47012ecfa828e184' -eth_registry_validator_type_hash = '0xc55c5ede907d13ac1e744cff8ce4386b9dc5aad905d8f3badfd9419efe49eeb2' - -[genesis.rollup_config] -l1_sudt_script_type_hash = '0x5e7a36a77e68eecc013dfa2fe6a23f3b6c344b04005808694ae6dd45eea4cfd5' -custodian_script_type_hash = '0x000f87062a2fe9bb4a6cc475212ea11014b84deb32e0375ee51e6ec4a553e009' -deposit_script_type_hash = '0xff602581f07667eef54232cce850cbca2c418b3418611c132fca849d1edcd775' -withdrawal_script_type_hash = '0x3714af858b8b82b2bb8f13d51f3cffede2dd8d352a6938334bb79e6b845e3658' -challenge_script_type_hash = '0x628b5f956b46ae27b50819a9ebab79ce5f957e6899ba0c75b8e142de2ed0dcd2' -stake_script_type_hash = '0xb619184ab9142c51b0ee75f4e24bcec3d077eefe513115bad68836d06738fd2c' -l2_sudt_validator_script_type_hash = '0x990027acd7058ec1b45df9d7448c0c5407fc17dde4b9b769f594d613c8053084' -burn_lock_hash = '0x77c93b0632b5b6c3ef922c5b7cea208fb0a7c427a13d50e13d3fefad17e0c590' -required_staking_capacity = '0xdf8475800' -challenge_maturity_blocks = '0x41a0' -finality_blocks = '0x41a0' -reward_burn_rate = '0x32' -chain_id = '0x116ea' - -[[genesis.rollup_config.allowed_eoa_type_hashes]] -type_ = 'eth' -hash = '0x096df264f38fff07f3acd318995abc2c71ae0e504036fe32bc38d5b6037364d4' - -[[genesis.rollup_config.allowed_contract_type_hashes]] -type_ = 'meta' -hash = '0x2c0b586137cb942f92cc3f84f62d77924b560e4088667f6f47012ecfa828e184' - -[[genesis.rollup_config.allowed_contract_type_hashes]] -type_ = 'sudt' -hash = '0x990027acd7058ec1b45df9d7448c0c5407fc17dde4b9b769f594d613c8053084' - -[[genesis.rollup_config.allowed_contract_type_hashes]] -type_ = 'polyjuice' -hash = '0x83d5d8841518e8db686909d27c821398491f475ed5f1cd392c36e83f4252c4ac' - -[[genesis.rollup_config.allowed_contract_type_hashes]] -type_ = 'eth_addr_reg' -hash = '0xc55c5ede907d13ac1e744cff8ce4386b9dc5aad905d8f3badfd9419efe49eeb2' - -[genesis.secp_data_dep] -dep_type = 'code' - -[genesis.secp_data_dep.out_point] -tx_hash = '0xe2fb199810d49a4d8beec56718ba2593b665db9d52299a0f9e6e75416d73ff5c' -index = '0x3' - -[chain] -skipped_invalid_block_list = [] - -[chain.genesis_committed_info] -number = '0x71f950' -block_hash = '0x028e7bbd2d6a4b7bc7f6c2df477a0db3ef7696564e34210fdba82f1d03d01587' -transaction_hash = '0xa908bc6113ebfcb8807ac039898012f1470dc27c0d55207ef91addc484f3a37a' - -[chain.rollup_type_script] -code_hash = '0xfef1d086d9f74d143c60bf03bd04bab29200dbf484c801c72774f2056d4c6718' -hash_type = 'type' -args = '0xab21bfe2bf85927bb42faaf3006a355222e24d5ea1d4dec0e62f53a8e0c04690' +# builtin consensus config +# see https://github.com/godwokenrises/godwoken/pull/946 +[consensus] +# https://github.com/godwokenrises/godwoken/blob/develop/crates/config/src/consensus/builtins/mainnet.toml +builtin = 'Mainnet' [debug] output_l1_tx_cycles = true @@ -144,29 +38,17 @@ enable_debug_rpc = false check_mem_block_before_submit = false [block_producer.block_producer] -registry_id = 2 +address_type = "Eth" address = '0xb8cde090e6a4741b6450308fad1dc338c53936a0' -[block_producer.rollup_config_cell_dep] -dep_type = 'code' - -[block_producer.rollup_config_cell_dep.out_point] -tx_hash = '0xd891e0e8c4864c730cc4b96b450ed1bcaf42e74c9eb1a38fb193caaf490f9a3d' -index = '0x0' [block_producer.challenger_config.rewards_receiver_lock] code_hash = '0x9bd7e06f3ecf4be0f2fcd2188b23f1b9fcc88e5d4b65a8637b17723bbda3cce8' hash_type = 'type' args = '0x65c41e085ce5edfc7013ae7191635b3888f155c9' -[block_producer.challenger_config.burn_lock] -code_hash = '0x0000000000000000000000000000000000000000000000000000000000000000' -hash_type = 'data' -args = '0x' - [mem_pool] execute_l2tx_max_cycles = 3000000000 -restore_path = '/mnt/mem_block' - +restore_path = '/mnt/mem-pool/mem-block' [mem_pool.mem_block] max_deposits = 50 max_withdrawals = 50 @@ -180,80 +62,18 @@ max_cycles_limit = '1950000000' # Default SyscallCyclesConfig: # https://github.com/godwokenrises/godwoken/blob/v1.7.0/crates/config/src/config.rs#L579-L599 + [store] path = '/mnt/mainnet_v1-store.db' options_file = '/deploy/db.toml' cache_size = 536870912 -[store.options] -[consensus.contract_type_scripts.state_validator] -code_hash = '0x00000000000000000000000000000000000000000000000000545950455f4944' -hash_type = 'type' -args = '0x70f9600824eed849a2e9988f34ca7d8356b990b2294aa50e28dba1055e326d32' - -[consensus.contract_type_scripts.deposit_lock] -code_hash = '0x00000000000000000000000000000000000000000000000000545950455f4944' -hash_type = 'type' -args = '0x5c6ca761d45ddb7612bea1ad8e55f8c80e2487d502f430a75c02caae7f64fd35' - -[consensus.contract_type_scripts.stake_lock] -code_hash = '0x00000000000000000000000000000000000000000000000000545950455f4944' -hash_type = 'type' -args = '0xd3847a81e252069632d45a1f975297c288551307624b5e49f9fb778840ed54a1' - -[consensus.contract_type_scripts.custodian_lock] -code_hash = '0x00000000000000000000000000000000000000000000000000545950455f4944' -hash_type = 'type' -args = '0x3ef49f39b45bd41a5bcc8ef103e88c675e850c1de2b51b1cb3c70edd6ee56936' - -[consensus.contract_type_scripts.withdrawal_lock] -code_hash = '0x00000000000000000000000000000000000000000000000000545950455f4944' -hash_type = 'type' -args = '0xffc2139a9fb7d05fd5927d537eb8ed692cb67d29404fc710333f01dbfd17043a' - -[consensus.contract_type_scripts.challenge_lock] -code_hash = '0x00000000000000000000000000000000000000000000000000545950455f4944' -hash_type = 'type' -args = '0xb0cf1d97b353716058a5ce70fa6bd2d4014ed5a14e8307038c56cad726cd457e' - -[consensus.contract_type_scripts.l1_sudt] -code_hash = '0x00000000000000000000000000000000000000000000000000545950455f4944' -hash_type = 'type' -args = '0xcf37df53ec0eb890937879ad5587521f737dc3d95eb1c22194b958ecbcf39a8b' - -[consensus.contract_type_scripts.omni_lock] -code_hash = '0x00000000000000000000000000000000000000000000000000545950455f4944' -hash_type = 'type' -args = '0xf3a8efcb165546ab0d7bc2aaf35c52c3432c571b4b1b2abee0619e872539654d' -[consensus.contract_type_scripts.allowed_eoa_scripts.0x096df264f38fff07f3acd318995abc2c71ae0e504036fe32bc38d5b6037364d4] -code_hash = '0x00000000000000000000000000000000000000000000000000545950455f4944' -hash_type = 'type' -args = '0x9fa95a4ca1d71ea942940eca96ca8e8f10904322daa00461755724cf065075b2' -[consensus.contract_type_scripts.allowed_contract_scripts.0x83d5d8841518e8db686909d27c821398491f475ed5f1cd392c36e83f4252c4ac] -code_hash = '0x00000000000000000000000000000000000000000000000000545950455f4944' -hash_type = 'type' -args = '0xaf85ca80c12364dc26e04f7e823219cfe284b3f47ae95771ea10d16bdb704042' - -[consensus.contract_type_scripts.allowed_contract_scripts.0x2c0b586137cb942f92cc3f84f62d77924b560e4088667f6f47012ecfa828e184] -code_hash = '0x00000000000000000000000000000000000000000000000000545950455f4944' -hash_type = 'type' -args = '0x9b913ed521d53aeebe2e6a66b142ce6313b32d84a53b76c4e9df53f52c5acaf7' - -[consensus.contract_type_scripts.allowed_contract_scripts.0xc55c5ede907d13ac1e744cff8ce4386b9dc5aad905d8f3badfd9419efe49eeb2] -code_hash = '0x00000000000000000000000000000000000000000000000000545950455f4944' -hash_type = 'type' -args = '0xc7e05ffd9b1447d4f96b7c03b24ba0a24c57dc620e1218b69216e0fda3d62d3d' - -[consensus.contract_type_scripts.allowed_contract_scripts.0x990027acd7058ec1b45df9d7448c0c5407fc17dde4b9b769f594d613c8053084] -code_hash = '0x00000000000000000000000000000000000000000000000000545950455f4944' -hash_type = 'type' -args = '0x22ee82c1c021a8371f1475e425610fb4939b452bdee648e930cb1c8bcf48640d' -[dynamic_config.fee_config] +[mem_pool.fee] meta_cycles_limit = 20000 sudt_cycles_limit = 20000 eth_addr_reg_cycles_limit = 20000 withdraw_cycles_limit = 20000 -[dynamic_config.rpc_config] +[mem_pool.extra] allowed_sudt_proxy_creator_account_id = [3] -sudt_proxy_code_hashes = [] +sudt_proxy_code_hashes = ["0xde4542f5a5bd32c09cd98e9752281f88900a059aab7ac103edd9df214f136c52"]