diff --git a/CHANGELOG.md b/CHANGELOG.md index ab396cbf4ae3..a577fda63332 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -47,6 +47,9 @@ - [#4701](https://github.com/ChainSafe/forest/issues/4701) Add support for the `Filecoin.EthGetTransactionByBlockHashAndIndex` RPC method. +- [#5053](https://github.com/ChainSafe/forest/pull/5053) Added support for the + NV25 _Teep_ network upgrade for `2k` and `butterflynet` networks. + ### Changed ### Removed diff --git a/build/bootstrap/butterflynet b/build/bootstrap/butterflynet index 8eef6793e1a4..822167597df6 100644 --- a/build/bootstrap/butterflynet +++ b/build/bootstrap/butterflynet @@ -1 +1,2 @@ -/dnsaddr/bootstrap.butterfly.fildev.network +/dns4/bootstrap-0.butterfly.fildev.network/tcp/1347/p2p/12D3KooWFfuFm4eWfMR2Xk9jQ8VsxVqt9nyZXZRdi6WqNrPcg8qk +/dns4/bootstrap-1.butterfly.fildev.network/tcp/1347/p2p/12D3KooWEgUQub6ZS5M7hfiZPNf4kFFmgsiyYKNcdAk5oKMUcyft diff --git a/build/manifest.json b/build/manifest.json index 7b87e921802a..785ff671ea31 100644 --- a/build/manifest.json +++ b/build/manifest.json @@ -970,69 +970,69 @@ "network": { "type": "butterflynet" }, - "version": "v13.0.0", - "bundle_cid": "bafy2bzacec75zk7ufzwx6tg5avls5fxdjx5asaqmd2bfqdvkqrkzoxgyflosu", + "version": "v15.0.0-rc1", + "bundle_cid": "bafy2bzacearjal5rsmzloz3ny7aoju2rgw66wgxdrydgg27thcsazbmf5qihq", "manifest": { "actors": [ [ "system", 1, - "bafk2bzaceacjmlxrvydlud77ilpzbscez46yedx6zjsj6olxsdeuv6d4x4cwe" + "bafk2bzacebf6qpnaem4d3kku74hyizal7rfqmxvngvnerq3gxmyqvnib4ho22" ], [ "init", 2, - "bafk2bzacedgj6hawhdw2ot2ufisci374o2bq6bfkvlvdt6q7s3uoe5ffyv43k" + "bafk2bzacedtpna72vpmt6yyqx5lxersccnmv2aq2odfp2f5v7o2cvl6zxgrtg" ], [ "cron", 3, - "bafk2bzacecimv5xnuwyoqgxk26qt4xqpgntleret475pnh35s3vvhqtdct4ow" + "bafk2bzacediarrpbvwmkch4axjzxlu7lvpjmee5og7q2dxfqu4kkir2p2qusy" ], [ "account", 4, - "bafk2bzacedl533kwbzouqxibejpwp6syfdekvmzy4vmmno6j4iaydbdmv4xek" + "bafk2bzaceapjxl4kobnxn267u42nh2feouubkxcm62vzrk2nrfkqmtz6rgfw4" ], [ "storagepower", 5, - "bafk2bzacebvne7m2l3hxxw4xa6oujol75x35yqpnlqiwx74jilyrop4cs7cse" + "bafk2bzacebdwg62s5fwmctrtsoz77qx3qk3hj5eu45aiamryphhcak65od4xe" ], [ "storageminer", 6, - "bafk2bzacebedx7iaa2ruspxvghkg46ez7un5b7oiijjtnvddq2aot5wk7p7ry" + "bafk2bzaceb2jyz6tx5gdmu66smksb544wrhqwgub45tq3qltc3wiv64zsbqoa" ], [ "storagemarket", 7, - "bafk2bzaced3zmxsmlhp2nsiwkxcp2ugonbsebcd53t7htzo2jcoidvu464xmm" + "bafk2bzacecbx6yzird3wp3lkyroqizp3g5lsysh5qijstfwe4sjngbpo3lx3q" ], [ "paymentchannel", 8, - "bafk2bzaceckhx44jawhzhkz6k23gfnv2gcutgb4j4ekhonj2plwaent4b2tpk" + "bafk2bzaceatyws2kngfwau6o7c74cl2ogcdm4aopdaozu7r76ymtvrhuk3a4k" ], [ "multisig", 9, - "bafk2bzacectnnnpwyqiccaymy3h6ghu74ghjrqyhtqv5odfd4opivzebjj6to" + "bafk2bzacebz3uwa4g5tyg5zb6nad24gnqwlplrlvakdwlytznqfqrnulpg7gm" ], [ "reward", 10, - "bafk2bzacebbs3rlg7y3wbvxrj4wgbsqmasw4ksbbr3lyqbkaxj2t25qz6zzuy" + "bafk2bzacecxt3jqyiyrqhbdr4eavgkmoijkoundxap7rdbw3g6j62t2hak23u" ], [ "verifiedregistry", 11, - "bafk2bzacebs5muoq7ft2wgqojhjio7a4vltbyprqkmlr43ojlzbil4nwvj3jg" + "bafk2bzacebxppwtgpstn55klmiux64pwekibcapv6v26nbfrrateth5zzsdic" ], [ "datacap", 12, - "bafk2bzacebpdd4ctavhs7wkcykfahpifct3p4hbptgtf4jfrqcp2trtlygvow" + "bafk2bzaceb4lpszr3axumf6f5ane5tlyj76zimptvt3lx7zpu5lx57zmua4dw" ], [ "placeholder", @@ -1042,89 +1042,89 @@ [ "evm", 14, - "bafk2bzaced5smz4lhpem4mbr7igcskv3e5qopbdp7dqshww2qs4ahacgzjzo4" + "bafk2bzacedj7idaxudsiwwvmgluhzvzzvcr7u2r2cfymagjq7amegxfs3oyim" ], [ "eam", 15, - "bafk2bzaceahw5rrgj7prgbnmn237di7ymjz2ssea32wr525jydpfrwpuhs67m" + "bafk2bzaceaxjorcph7nmcgfgyv225s5y44xpswtp4b5744dm7kfxiztgf4ti4" ], [ "ethaccount", 16, - "bafk2bzacebrslcbew5mq3le2zsn36xqxd4gt5hryeoslxnuqwgw3rhuwh6ygu" + "bafk2bzacebz3y3vjqrfk2x2koj733cblhyjqajldc7dfiu7jud6g64b4bzqqc" ] ], - "actor_list_cid": "bafy2bzaceaggwasbyfnshb7d6bph64jxqa5wireuhtiryuyl7glfhcmocooaa" + "actor_list_cid": "bafy2bzaceck4a2qhrgpqtba5kpe4nhv4kcp5whuvltv67453delevwxid5eiu" } }, { "network": { "type": "butterflynet" }, - "version": "v14.0.0-rc.1", - "bundle_cid": "bafy2bzacecmkqezl3a5klkzz7z4ou4jwqk4zzd3nvz727l4qh44ngsxtxdblu", + "version": "v16.0.0-dev", + "bundle_cid": "bafy2bzaced3uzaynkdi7wiqiwbje7l3lllpwbokuf7slak627gx7bk5pryjpa", "manifest": { "actors": [ [ "system", 1, - "bafk2bzacebbrs3dzgxwj43ztup7twz25xkbhhtmcbjjbscjvpsrpbwux3b32g" + "bafk2bzacebzc4fklfws2ri4jv6mcu4xgs52ve3gqzgm476hkohfahj7s5lig2" ], [ "init", 2, - "bafk2bzaceblybzwnn55uiivbsjae6l7haz5iocexnynfcz2yjg5spciimxdme" + "bafk2bzacebccioskxaudlyoydyy4yoswgfcffpadhbu6midk3edlhuzt3osu4" ], [ "cron", 3, - "bafk2bzacecsiz2nzjieposnkz2kqvjjnqyu5zwk6ccm4dbptx26v3qirm6zni" + "bafk2bzaceadysuxpaeqxwbzg7ksyl2olzizj4kgeq2b2oldlca4et55huauwo" ], [ "account", 4, - "bafk2bzaceazutruyfvvqxgp5qoneq36uv6yethps2bonil5psy2vivl5j2hks" + "bafk2bzacebyxmngiugdhhio7zn7i67jzsythgy3jqqbqyan735g2rkalufhr6" ], [ "storagepower", 5, - "bafk2bzacebcxydq2iampltz5zoo3oojka45hjkd62vz46xtpl6qilhkkjdeaq" + "bafk2bzaceauwj75apfux75zz4owkcjeggu4cp2ldn7weoxakzb5zsz55kthbe" ], [ "storageminer", 6, - "bafk2bzacebkiqu5pclx5zze4ugcsn3lvumihyathpcrjfq36b3hgmd7jqe2bk" + "bafk2bzacedz6zjhfuyexwdco7zmpkypjzllk5v2sv4kdoz4gfqdzxuyq5uz5u" ], [ "storagemarket", 7, - "bafk2bzaceceaqmhkxuerleq2dpju35mcsdiklpkisglzlj5xkf32hbyqn7sam" + "bafk2bzacedb6p35ax2s2muxvgir73vmdkbxn7uc5aw6n64dewb32drqils5zq" ], [ "paymentchannel", 8, - "bafk2bzacebyyn42ie7jekdytacqpqfll7xctsfpza3tb2sonzsjdeltxqgmdo" + "bafk2bzaceaigyawy2ywyfdqjccfyi62xtn456gavqrwdilpltiqxbeo7zsjf4" ], [ "multisig", 9, - "bafk2bzaceb54rbdcfdcdtzwbohshn64opgsqf5vhqh3xqb37iignsm3plrtpa" + "bafk2bzacedcpbmiblrhh43kthgrkctrklh27jkvjcorzfreusd7fsjdw2llzq" ], [ "reward", 10, - "bafk2bzaceczaoglexx6w3m744s4emfmjkeizpl4ofdkh4xzhevjtd6zift5iu" + "bafk2bzaceagt6mvup6z3atlaftepdex6f45ncml57zsuxy5puwtzcge5vy4wm" ], [ "verifiedregistry", 11, - "bafk2bzacebj3znhdpxqjgvztrv3petqwdkvrefg4j6lrp3n7wfrkdoan4os42" + "bafk2bzaceasoa42xnnbu2uftlfvlzhbok3q3nqetv6bxcw7vydbxbmwn53ad6" ], [ "datacap", 12, - "bafk2bzaceaavii766hmiawhw2fjvtoy5kvbukou3zejf6gtwu7xi4jxt4uidk" + "bafk2bzaceals5hcpbvzm24dmmoddqpr2tcpolwwey3qvjf3okzk7ihf75gngu" ], [ "placeholder", @@ -1134,112 +1134,20 @@ [ "evm", 14, - "bafk2bzacebta2jkyxknvwnr6ldcimmwpzenhtdwqbuifzk6g2wktzqf3vj33a" + "bafk2bzacebxlvhz665s2kbace6nzeqy5maasqixgirzn4xhbjx42xi2hkc5gk" ], [ "eam", 15, - "bafk2bzacebkzhnamn5ohtsvn76opprsi3ao3ujgytjr3c6kdcvhmhg4ze5xxm" + "bafk2bzacec2gt4teegjdhbpfwl6qbxjojffxgkmzhua2m2a4lks52abnjyypw" ], [ "ethaccount", 16, - "bafk2bzacebvvri25rmgt6yy5qtdrikcsestk6z52aebynwd53s2rm2l3ukn7g" + "bafk2bzacec627lshgjxvfzjledk2wph4u7n47got2ultaijbh4v5wdyhjpxse" ] ], - "actor_list_cid": "bafy2bzacedcxw53okwtz7h2rp3ainkqw7fcj3vfcjg4ssj6elhujwjf3qbysw" - } - }, - { - "network": { - "type": "butterflynet" - }, - "version": "v15.0.0-rc1", - "bundle_cid": "bafy2bzacearjal5rsmzloz3ny7aoju2rgw66wgxdrydgg27thcsazbmf5qihq", - "manifest": { - "actors": [ - [ - "system", - 1, - "bafk2bzacebf6qpnaem4d3kku74hyizal7rfqmxvngvnerq3gxmyqvnib4ho22" - ], - [ - "init", - 2, - "bafk2bzacedtpna72vpmt6yyqx5lxersccnmv2aq2odfp2f5v7o2cvl6zxgrtg" - ], - [ - "cron", - 3, - "bafk2bzacediarrpbvwmkch4axjzxlu7lvpjmee5og7q2dxfqu4kkir2p2qusy" - ], - [ - "account", - 4, - "bafk2bzaceapjxl4kobnxn267u42nh2feouubkxcm62vzrk2nrfkqmtz6rgfw4" - ], - [ - "storagepower", - 5, - "bafk2bzacebdwg62s5fwmctrtsoz77qx3qk3hj5eu45aiamryphhcak65od4xe" - ], - [ - "storageminer", - 6, - "bafk2bzaceb2jyz6tx5gdmu66smksb544wrhqwgub45tq3qltc3wiv64zsbqoa" - ], - [ - "storagemarket", - 7, - "bafk2bzacecbx6yzird3wp3lkyroqizp3g5lsysh5qijstfwe4sjngbpo3lx3q" - ], - [ - "paymentchannel", - 8, - "bafk2bzaceatyws2kngfwau6o7c74cl2ogcdm4aopdaozu7r76ymtvrhuk3a4k" - ], - [ - "multisig", - 9, - "bafk2bzacebz3uwa4g5tyg5zb6nad24gnqwlplrlvakdwlytznqfqrnulpg7gm" - ], - [ - "reward", - 10, - "bafk2bzacecxt3jqyiyrqhbdr4eavgkmoijkoundxap7rdbw3g6j62t2hak23u" - ], - [ - "verifiedregistry", - 11, - "bafk2bzacebxppwtgpstn55klmiux64pwekibcapv6v26nbfrrateth5zzsdic" - ], - [ - "datacap", - 12, - "bafk2bzaceb4lpszr3axumf6f5ane5tlyj76zimptvt3lx7zpu5lx57zmua4dw" - ], - [ - "placeholder", - 13, - "bafk2bzacedfvut2myeleyq67fljcrw4kkmn5pb5dpyozovj7jpoez5irnc3ro" - ], - [ - "evm", - 14, - "bafk2bzacedj7idaxudsiwwvmgluhzvzzvcr7u2r2cfymagjq7amegxfs3oyim" - ], - [ - "eam", - 15, - "bafk2bzaceaxjorcph7nmcgfgyv225s5y44xpswtp4b5744dm7kfxiztgf4ti4" - ], - [ - "ethaccount", - 16, - "bafk2bzacebz3y3vjqrfk2x2koj733cblhyjqajldc7dfiu7jud6g64b4bzqqc" - ] - ], - "actor_list_cid": "bafy2bzaceck4a2qhrgpqtba5kpe4nhv4kcp5whuvltv67453delevwxid5eiu" + "actor_list_cid": "bafy2bzacebls3q4yivgxner4v3sltf4mk4sxmyr7lu65nic5manmsafqu3qkm" } }, { @@ -1873,6 +1781,99 @@ "actor_list_cid": "bafy2bzaceaizjcmz3x2zw6fzw75fx4m3covz7gwv3xbwhhg7472fyhkqqv52m" } }, + { + "network": { + "type": "devnet", + "name": "devnet" + }, + "version": "v16.0.0-rc1", + "bundle_cid": "bafy2bzacec6sjrvu2umrtdt7zcmdg3s4asxdwe5lssbty73qda2qas5aeoit2", + "manifest": { + "actors": [ + [ + "system", + 1, + "bafk2bzaceaid6on264ysr4vpmozxzs2i4nqtntqk3skflu2cbbhwfbpqjem72" + ], + [ + "init", + 2, + "bafk2bzaceaai3wofftjuomfj2bjdeyjr2bnb44kuad374oxdsqa6xlxjndycg" + ], + [ + "cron", + 3, + "bafk2bzaceccvueu6agbrm2p7jhv2yrx53kk6pgxbb4d5pryjl37gjc6vavo52" + ], + [ + "account", + 4, + "bafk2bzaced2rd2qlkhm53dhkzrrfnn3noojni5u5i65gtnzthab63rvwojfvi" + ], + [ + "storagepower", + 5, + "bafk2bzacebyiwuy72ibw4wljlc2css7nciouhg5nwn4sgsbodvhhrfu2vmcwo" + ], + [ + "storageminer", + 6, + "bafk2bzaceaelw3s5kdnlpddhyalmp2nb4kiattgg7za3jd7bun4oe6kal2upq" + ], + [ + "storagemarket", + 7, + "bafk2bzacecpnx5ggnegnis3cckhxwl47eckrdv7wfqt2vuw2rpjhxcvlmeimu" + ], + [ + "paymentchannel", + 8, + "bafk2bzacebbc35dhiy4o6q7o475qtdavvcy22x2okc7tzdi63d2zdxqqfxpoi" + ], + [ + "multisig", + 9, + "bafk2bzacecxfxse6sdbinuzktgdi2yf7kbqnfymq3ud7uhbpf6hz34boimaky" + ], + [ + "reward", + 10, + "bafk2bzacedmlvtkvxxwooaobiwn4uavxyz3zkfpfrj53t33ir3kssvarl4cek" + ], + [ + "verifiedregistry", + 11, + "bafk2bzaceabaxub3cj3oa266yiu54tezdhk6myfsuwcrlcip5cxsp64p6julu" + ], + [ + "datacap", + 12, + "bafk2bzacebbyirtv473zmsrdaindtjtkztfyij573ok4tq77iu3sqqmwptib2" + ], + [ + "placeholder", + 13, + "bafk2bzacedfvut2myeleyq67fljcrw4kkmn5pb5dpyozovj7jpoez5irnc3ro" + ], + [ + "evm", + 14, + "bafk2bzacebbujuvpj2hg4qihi5z2zx3625gnfay5ilbwjflrrw66uya7bpm34" + ], + [ + "eam", + 15, + "bafk2bzaceawnymnqomdey5jhulqwbarfm75pq7sdx7pth2bdef362n4zwp3la" + ], + [ + "ethaccount", + 16, + "bafk2bzaceaghwzlxj6u6n5iz7ms5tqa7yfnvkdpaqvoz3aolqsmlaf3ehoo3u" + ] + ], + "actor_list_cid": "bafy2bzacec7f37pe5keaemtig6y6cwd4qv3hmv5sdpky63hkcodag6d3jpokc" + } + }, { "network": { "type": "mainnet" diff --git a/scripts/devnet-curio/.env b/scripts/devnet-curio/.env index 76495e8adade..8324cc64aec3 100644 --- a/scripts/devnet-curio/.env +++ b/scripts/devnet-curio/.env @@ -1,13 +1,10 @@ -LOTUS_IMAGE=ghcr.io/chainsafe/lotus-devnet:2024-10-10-600728e +LOTUS_IMAGE=ghcr.io/chainsafe/lotus-devnet:2024-12-06-2368695 CURIO_IMAGE=ghcr.io/chainsafe/curio-devnet:2024-10-22-d0b5671 FOREST_DATA_DIR=/forest_data LOTUS_DATA_DIR=/lotus_data CURIO_REPO_PATH=/var/lib/curio FIL_PROOFS_PARAMETER_CACHE=/var/tmp/filecoin-proof-parameters MINER_ACTOR_ADDRESS=t01000 -# Necessary because of this bug: https://github.com/filecoin-project/lotus/pull/12574 -# Can be removed once the bug is fixed and a new lotus image is released. -DUMMY_MINER_ACTOR_ADDRESS=f01000 LOTUS_RPC_PORT=1234 LOTUS_P2P_PORT=1235 MINER_RPC_PORT=2345 @@ -15,7 +12,7 @@ FOREST_RPC_PORT=3456 FOREST_OFFLINE_RPC_PORT=3457 F3_RPC_PORT=23456 F3_FINALITY=10 -GENESIS_NETWORK_VERSION=23 +GENESIS_NETWORK_VERSION=25 SHARK_HEIGHT=-10 HYGGE_HEIGHT=-9 LIGHTNING_HEIGHT=-8 @@ -23,4 +20,6 @@ THUNDER_HEIGHT=-7 WATERMELON_HEIGHT=-6 DRAGON_HEIGHT=-5 WAFFLE_HEIGHT=-4 +TUKTUK_HEIGHT=-3 +TEEP_HEIGHT=-2 TARGET_HEIGHT=24 diff --git a/scripts/devnet-curio/docker-compose.yml b/scripts/devnet-curio/docker-compose.yml index 1ee4bfc97d01..a247e1437b21 100644 --- a/scripts/devnet-curio/docker-compose.yml +++ b/scripts/devnet-curio/docker-compose.yml @@ -24,6 +24,8 @@ services: - LOTUS_DRAGON_HEIGHT=${DRAGON_HEIGHT} - LOTUS_GENESIS_NETWORK_VERSION=${GENESIS_NETWORK_VERSION} - LOTUS_WAFFLE_HEIGHT=${WAFFLE_HEIGHT} + - LOTUS_TUKTUK_HEIGHT=${TUKTUK_HEIGHT} + - LOTUS_TEEP_HEIGHT=${TEEP_HEIGHT} env_file: - lotus.env entrypoint: [ "/bin/bash", "-c" ] @@ -35,8 +37,6 @@ services: lotus fetch-params 2048 lotus-seed --sector-dir ${LOTUS_DATA_DIR}/genesis-sectors pre-seal --sector-size 2KiB --num-sectors 2 lotus-seed --sector-dir ${LOTUS_DATA_DIR}/genesis-sectors genesis new ${LOTUS_DATA_DIR}/localnet.json - cp ${LOTUS_DATA_DIR}/genesis-sectors/pre-seal-${DUMMY_MINER_ACTOR_ADDRESS}.json ${LOTUS_DATA_DIR}/genesis-sectors/pre-seal-${MINER_ACTOR_ADDRESS}.json - cp ${LOTUS_DATA_DIR}/genesis-sectors/pre-seal-${DUMMY_MINER_ACTOR_ADDRESS}.key ${LOTUS_DATA_DIR}/genesis-sectors/pre-seal-${MINER_ACTOR_ADDRESS}.key lotus-seed --sector-dir ${LOTUS_DATA_DIR}/genesis-sectors genesis add-miner ${LOTUS_DATA_DIR}/localnet.json ${LOTUS_DATA_DIR}/genesis-sectors/pre-seal-${MINER_ACTOR_ADDRESS}.json touch ${LOTUS_DATA_DIR}/NODE_INITIALISED fi @@ -70,6 +70,8 @@ services: - LOTUS_DRAGON_HEIGHT=${DRAGON_HEIGHT} - LOTUS_GENESIS_NETWORK_VERSION=${GENESIS_NETWORK_VERSION} - LOTUS_WAFFLE_HEIGHT=${WAFFLE_HEIGHT} + - LOTUS_TUKTUK_HEIGHT=${TUKTUK_HEIGHT} + - LOTUS_TEEP_HEIGHT=${TEEP_HEIGHT} ports: - ${LOTUS_RPC_PORT}:${LOTUS_RPC_PORT} - ${LOTUS_P2P_PORT}:${LOTUS_P2P_PORT} @@ -111,6 +113,8 @@ services: - LOTUS_DRAGON_HEIGHT=${DRAGON_HEIGHT} - LOTUS_GENESIS_NETWORK_VERSION=${GENESIS_NETWORK_VERSION} - LOTUS_WAFFLE_HEIGHT=${WAFFLE_HEIGHT} + - LOTUS_TUKTUK_HEIGHT=${TUKTUK_HEIGHT} + - LOTUS_TEEP_HEIGHT=${TEEP_HEIGHT} ports: - ${MINER_RPC_PORT}:${MINER_RPC_PORT} env_file: @@ -146,6 +150,8 @@ services: - LOTUS_DRAGON_HEIGHT=${DRAGON_HEIGHT} - LOTUS_GENESIS_NETWORK_VERSION=${GENESIS_NETWORK_VERSION} - LOTUS_WAFFLE_HEIGHT=${WAFFLE_HEIGHT} + - LOTUS_TUKTUK_HEIGHT=${TUKTUK_HEIGHT} + - LOTUS_TEEP_HEIGHT=${TEEP_HEIGHT} entrypoint: [ "/bin/bash", "-c" ] env_file: - lotus.env @@ -191,6 +197,8 @@ services: - FOREST_WATERMELON_HEIGHT=${WATERMELON_HEIGHT} - FOREST_DRAGON_HEIGHT=${DRAGON_HEIGHT} - FOREST_WAFFLE_HEIGHT=${WAFFLE_HEIGHT} + - FOREST_TUKTUK_HEIGHT=${TUKTUK_HEIGHT} + - FOREST_TEEP_HEIGHT=${TEEP_HEIGHT} networks: - devnet ports: diff --git a/scripts/devnet/.env b/scripts/devnet/.env index 38ff96b9c89d..ca52e2963449 100644 --- a/scripts/devnet/.env +++ b/scripts/devnet/.env @@ -1,8 +1,8 @@ -LOTUS_IMAGE=ghcr.io/chainsafe/lotus-devnet:2024-10-10-600728e +LOTUS_IMAGE=ghcr.io/chainsafe/lotus-devnet:2024-12-06-2368695 FOREST_DATA_DIR=/forest_data LOTUS_DATA_DIR=/lotus_data FIL_PROOFS_PARAMETER_CACHE=/var/tmp/filecoin-proof-parameters -MINER_ACTOR_ADDRESS=f01000 +MINER_ACTOR_ADDRESS=t01000 LOTUS_RPC_PORT=1234 LOTUS_P2P_PORT=1235 MINER_RPC_PORT=2345 @@ -19,4 +19,5 @@ WATERMELON_HEIGHT=9 DRAGON_HEIGHT=12 WAFFLE_HEIGHT=18 TUKTUK_HEIGHT=20 -TARGET_HEIGHT=22 +TEEP_HEIGHT=22 +TARGET_HEIGHT=24 diff --git a/scripts/devnet/docker-compose.yml b/scripts/devnet/docker-compose.yml index 877e055cdb2e..85998e888687 100644 --- a/scripts/devnet/docker-compose.yml +++ b/scripts/devnet/docker-compose.yml @@ -23,6 +23,8 @@ services: - LOTUS_DRAGON_HEIGHT=${DRAGON_HEIGHT} - LOTUS_GENESIS_NETWORK_VERSION=${GENESIS_NETWORK_VERSION} - LOTUS_WAFFLE_HEIGHT=${WAFFLE_HEIGHT} + - LOTUS_TUKTUK_HEIGHT=${TUKTUK_HEIGHT} + - LOTUS_TEEP_HEIGHT=${TEEP_HEIGHT} env_file: - lotus.env entrypoint: ["/bin/bash", "-c" ] @@ -70,6 +72,7 @@ services: - LOTUS_GENESIS_NETWORK_VERSION=${GENESIS_NETWORK_VERSION} - LOTUS_WAFFLE_HEIGHT=${WAFFLE_HEIGHT} - LOTUS_TUKTUK_HEIGHT=${TUKTUK_HEIGHT} + - LOTUS_TEEP_HEIGHT=${TEEP_HEIGHT} ports: - ${LOTUS_RPC_PORT}:${LOTUS_RPC_PORT} - ${LOTUS_P2P_PORT}:${LOTUS_P2P_PORT} @@ -111,6 +114,7 @@ services: - LOTUS_GENESIS_NETWORK_VERSION=${GENESIS_NETWORK_VERSION} - LOTUS_WAFFLE_HEIGHT=${WAFFLE_HEIGHT} - LOTUS_TUKTUK_HEIGHT=${TUKTUK_HEIGHT} + - LOTUS_TEEP_HEIGHT=${TEEP_HEIGHT} ports: - ${MINER_RPC_PORT}:${MINER_RPC_PORT} env_file: @@ -147,6 +151,7 @@ services: - LOTUS_GENESIS_NETWORK_VERSION=${GENESIS_NETWORK_VERSION} - LOTUS_WAFFLE_HEIGHT=${WAFFLE_HEIGHT} - LOTUS_TUKTUK_HEIGHT=${TUKTUK_HEIGHT} + - LOTUS_TEEP_HEIGHT=${TEEP_HEIGHT} entrypoint: ["/bin/bash", "-c" ] env_file: - lotus.env @@ -193,6 +198,7 @@ services: - FOREST_DRAGON_HEIGHT=${DRAGON_HEIGHT} - FOREST_WAFFLE_HEIGHT=${WAFFLE_HEIGHT} - FOREST_TUKTUK_HEIGHT=${TUKTUK_HEIGHT} + - FOREST_TEEP_HEIGHT=${TEEP_HEIGHT} networks: - devnet ports: @@ -240,6 +246,7 @@ services: - FOREST_DRAGON_HEIGHT=${DRAGON_HEIGHT} - FOREST_WAFFLE_HEIGHT=${WAFFLE_HEIGHT} - FOREST_TUKTUK_HEIGHT=${TUKTUK_HEIGHT} + - FOREST_TEEP_HEIGHT=${TEEP_HEIGHT} networks: - devnet ports: diff --git a/scripts/devnet/lotus.dockerfile b/scripts/devnet/lotus.dockerfile index 0cbdb4a2103e..071ea106373d 100644 --- a/scripts/devnet/lotus.dockerfile +++ b/scripts/devnet/lotus.dockerfile @@ -13,7 +13,7 @@ RUN curl https://sh.rustup.rs -sSf | sh -s -- -y --no-modify-path --profile mini ENV PATH="/root/.cargo/bin:${PATH}" -RUN git clone --depth 1 --branch v1.30.0-rc1 https://github.com/filecoin-project/lotus.git . +RUN git clone --depth 1 --branch v1.32.0-rc1 https://github.com/filecoin-project/lotus.git . # https://github.com/Filecoin-project/filecoin-ffi?tab=readme-ov-file#building-from-source RUN CGO_CFLAGS_ALLOW="-D__BLST_PORTABLE__" \ diff --git a/src/networks/actors_bundle.rs b/src/networks/actors_bundle.rs index 0f5695c7fac5..04513c289806 100644 --- a/src/networks/actors_bundle.rs +++ b/src/networks/actors_bundle.rs @@ -82,9 +82,8 @@ pub static ACTOR_BUNDLES: Lazy> = Lazy::new(|| { "bafy2bzacect4ktyujrwp6mjlsitnpvuw2pbuppz6w52sfljyo4agjevzm75qs" @ "v13.0.0" for "calibrationnet", "bafy2bzacebq3hncszqpojglh2dkwekybq4zn6qpc4gceqbx36wndps5qehtau" @ "v14.0.0-rc.1" for "calibrationnet", "bafy2bzaceax5zkysst7vtyup4whdxwzlpnaya3qp34rnoi6gyt4pongps7obw" @ "v15.0.0-rc1" for "calibrationnet", - "bafy2bzacec75zk7ufzwx6tg5avls5fxdjx5asaqmd2bfqdvkqrkzoxgyflosu" @ "v13.0.0" for "butterflynet", - "bafy2bzacecmkqezl3a5klkzz7z4ou4jwqk4zzd3nvz727l4qh44ngsxtxdblu" @ "v14.0.0-rc.1" for "butterflynet", "bafy2bzacearjal5rsmzloz3ny7aoju2rgw66wgxdrydgg27thcsazbmf5qihq" @ "v15.0.0-rc1" for "butterflynet", + "bafy2bzaced3uzaynkdi7wiqiwbje7l3lllpwbokuf7slak627gx7bk5pryjpa" @ "v16.0.0-dev" for "butterflynet", "bafy2bzacedozk3jh2j4nobqotkbofodq4chbrabioxbfrygpldgoxs3zwgggk" @ "v9.0.3" for "devnet", "bafy2bzacebzz376j5kizfck56366kdz5aut6ktqrvqbi3efa2d4l2o2m653ts" @ "v10.0.0" for "devnet", "bafy2bzaceay35go4xbjb45km6o46e5bib3bi46panhovcbedrynzwmm3drr4i" @ "v11.0.0" for "devnet", @@ -92,6 +91,7 @@ pub static ACTOR_BUNDLES: Lazy> = Lazy::new(|| { "bafy2bzacecn7uxgehrqbcs462ktl2h23u23cmduy2etqj6xrd6tkkja56fna4" @ "v13.0.0" for "devnet", "bafy2bzacebwn7ymtozv5yz3x5hnxl4bds2grlgsk5kncyxjak3hqyhslb534m" @ "v14.0.0-rc.1" for "devnet", "bafy2bzacedlusqjwf7chvl2ve2fum5noyqrtjzcrzkhpbzpkg7puiru7dj4ug" @ "v15.0.0-rc1" for "devnet", + "bafy2bzacec6sjrvu2umrtdt7zcmdg3s4asxdwe5lssbty73qda2qas5aeoit2" @ "v16.0.0-rc1" for "devnet", "bafy2bzaceb6j6666h36xnhksu3ww4kxb6e25niayfgkdnifaqi6m6ooc66i6i" @ "v9.0.3" for "mainnet", "bafy2bzacecsuyf7mmvrhkx2evng5gnz5canlnz2fdlzu2lvcgptiq2pzuovos" @ "v10.0.0" for "mainnet", "bafy2bzacecnhaiwcrpyjvzl4uv4q3jzoif26okl3m66q3cijp3dfwlcxwztwo" @ "v11.0.0" for "mainnet", diff --git a/src/networks/butterflynet/mod.rs b/src/networks/butterflynet/mod.rs index a6326ede1f4e..079675adc015 100644 --- a/src/networks/butterflynet/mod.rs +++ b/src/networks/butterflynet/mod.rs @@ -18,7 +18,7 @@ use super::{ DrandPoint, Height, HeightInfo, NetworkChain, }; -pub const GENESIS_NETWORK_VERSION: NetworkVersion = NetworkVersion::V23; +pub const GENESIS_NETWORK_VERSION: NetworkVersion = NetworkVersion::V24; /// Fetches the genesis CAR from the local database or downloads it if it does not exist. /// The result bytes may be compressed. @@ -40,12 +40,12 @@ pub async fn fetch_genesis(db: &DB) -> anyhow::Result /// Genesis CID pub static GENESIS_CID: Lazy = Lazy::new(|| { - Cid::from_str("bafy2bzacedgcrrsfkdi5dcdfuj6b6zsuenzd3bzeeirvffhoiecddco4ahoni").unwrap() + Cid::from_str("bafy2bzacedz7udmigfoijokj3tnvw66bviygircxak7or2zrxzde2zsaouypi").unwrap() }); /// Compressed genesis file. It is compressed with zstd and cuts the download size by 80% (from 10 MB to 2 MB). static GENESIS_URL: Lazy = Lazy::new(|| { - "https://forest-snapshots.fra1.cdn.digitaloceanspaces.com/genesis/butterflynet-bafy2bzacedgcrrsfkdi5dcdfuj6b6zsuenzd3bzeeirvffhoiecddco4ahoni.car.zst" + "https://forest-snapshots.fra1.cdn.digitaloceanspaces.com/genesis/butterflynet-bafy2bzacedz7udmigfoijokj3tnvw66bviygircxak7or2zrxzde2zsaouypi.car.zst" .parse() .expect("hard-coded URL must parse") }); @@ -55,7 +55,7 @@ static GENESIS_URL: Lazy = Lazy::new(|| { /// The genesis file does not live on the `master` branch, currently on `butterfly/v24` branch. /// `` static GENESIS_URL_ALT: Lazy = Lazy::new(|| { - "https://github.com/filecoin-project/lotus/raw/36e6a639fd8411dd69048c95ac478468f2755b8d/build/genesis/butterflynet.car".parse().expect("hard-coded URL must parse") + "https://github.com/filecoin-project/lotus/raw/35052f6d1502d838ed36539996df9e70fe5a8fc4/build/genesis/butterflynet.car".parse().expect("hard-coded URL must parse") }); pub(crate) const MINIMUM_CONSENSUS_POWER: i64 = 2 << 30; @@ -98,12 +98,11 @@ pub static HEIGHT_INFOS: Lazy> = Lazy::new(|| { make_height!(Lightning, -22), make_height!(Thunder, -23), make_height!(Watermelon, -24), - make_height!(Dragon, -25, get_bundle_cid("v13.0.0")), + make_height!(Dragon, -25), make_height!(Phoenix, i64::MIN), - make_height!(Waffle, -26, get_bundle_cid("v14.0.0-rc.1")), - make_height!(TukTuk, 360, get_bundle_cid("v15.0.0-rc1")), - // TODO(forest): https://github.com/ChainSafe/forest/issues/5039 - make_height!(Teep, i64::MAX, get_bundle_cid("v15.0.0-rc1")), + make_height!(Waffle, -26), + make_height!(TukTuk, -27, get_bundle_cid("v15.0.0-rc1")), + make_height!(Teep, 300, get_bundle_cid("v16.0.0-dev")), ]) }); diff --git a/src/networks/devnet/mod.rs b/src/networks/devnet/mod.rs index dd74cd38e209..53f869816b97 100644 --- a/src/networks/devnet/mod.rs +++ b/src/networks/devnet/mod.rs @@ -150,11 +150,10 @@ pub static HEIGHT_INFOS: Lazy> = Lazy::new(|| { get_upgrade_height_from_env("FOREST_TUKTUK_HEIGHT").unwrap_or(9999999999), get_bundle_cid("v15.0.0-rc1") ), - // TODO(forest): https://github.com/ChainSafe/forest/issues/5038 make_height!( Teep, get_upgrade_height_from_env("FOREST_TEEP_HEIGHT").unwrap_or(9999999999), - get_bundle_cid("v15.0.0-rc1") + get_bundle_cid("v16.0.0-rc1") ), ]) }); diff --git a/src/networks/mod.rs b/src/networks/mod.rs index 49230d008b05..9cddb3f6c050 100644 --- a/src/networks/mod.rs +++ b/src/networks/mod.rs @@ -353,7 +353,7 @@ impl ChainConfig { ), f3_enabled: true, f3_consensus: true, - f3_bootstrap_epoch: 2760, + f3_bootstrap_epoch: 1000, f3_initial_power_table: Default::default(), f3_manifest_server: Some( "12D3KooWJr9jy4ngtJNR7JC1xgLFra3DjEtyxskRYWvBK9TC3Yn6" diff --git a/src/shim/actors/state_load.rs b/src/shim/actors/state_load.rs index 6e2121d8e3b4..e65617529278 100644 --- a/src/shim/actors/state_load.rs +++ b/src/shim/actors/state_load.rs @@ -55,21 +55,37 @@ macro_rules! actor_state_load_impl { }; } -actor_state_load_impl!(Account, 8, V8, 9, V9, 10, V10, 11, V11, 12, V12, 13, V13, 14, V14, 15, V15); -actor_state_load_impl!(Cron, 8, V8, 9, V9, 10, V10, 11, V11, 12, V12, 13, V13, 14, V14, 15, V15); -actor_state_load_impl!(DataCap, 9, V9, 10, V10, 11, V11, 12, V12, 13, V13, 14, V14, 15, V15); -actor_state_load_impl!(EVM, 10, V10, 11, V11, 12, V12, 13, V13, 14, V14, 15, V15); actor_state_load_impl!( - Init, 0, V0, 8, V8, 9, V9, 10, V10, 11, V11, 12, V12, 13, V13, 14, V14, 15, V15 + Account, 8, V8, 9, V9, 10, V10, 11, V11, 12, V12, 13, V13, 14, V14, 15, V15, 16, V16 ); -actor_state_load_impl!(Market, 8, V8, 9, V9, 10, V10, 11, V11, 12, V12, 13, V13, 14, V14, 15, V15); -actor_state_load_impl!(Miner, 8, V8, 9, V9, 10, V10, 11, V11, 12, V12, 13, V13, 14, V14, 15, V15); actor_state_load_impl!( - Multisig, 8, V8, 9, V9, 10, V10, 11, V11, 12, V12, 13, V13, 14, V14, 15, V15 + Cron, 8, V8, 9, V9, 10, V10, 11, V11, 12, V12, 13, V13, 14, V14, 15, V15, 16, V16 ); -actor_state_load_impl!(Power, 8, V8, 9, V9, 10, V10, 11, V11, 12, V12, 13, V13, 14, V14, 15, V15); -actor_state_load_impl!(System, 8, V8, 9, V9, 10, V10, 11, V11, 12, V12, 13, V13, 14, V14, 15, V15); actor_state_load_impl!( - Verifreg, 8, V8, 9, V9, 10, V10, 11, V11, 12, V12, 13, V13, 14, V14, 15, V15 + DataCap, 9, V9, 10, V10, 11, V11, 12, V12, 13, V13, 14, V14, 15, V15, 16, V16 +); +actor_state_load_impl!(EVM, 10, V10, 11, V11, 12, V12, 13, V13, 14, V14, 15, V15, 16, V16); +actor_state_load_impl!( + Init, 0, V0, 8, V8, 9, V9, 10, V10, 11, V11, 12, V12, 13, V13, 14, V14, 15, V15, 16, V16 +); +actor_state_load_impl!( + Market, 8, V8, 9, V9, 10, V10, 11, V11, 12, V12, 13, V13, 14, V14, 15, V15, 16, V16 +); +actor_state_load_impl!( + Miner, 8, V8, 9, V9, 10, V10, 11, V11, 12, V12, 13, V13, 14, V14, 15, V15, 16, V16 +); +actor_state_load_impl!( + Multisig, 8, V8, 9, V9, 10, V10, 11, V11, 12, V12, 13, V13, 14, V14, 15, V15, 16, V16 +); +actor_state_load_impl!( + Power, 8, V8, 9, V9, 10, V10, 11, V11, 12, V12, 13, V13, 14, V14, 15, V15, 16, V16 +); +actor_state_load_impl!( + System, 8, V8, 9, V9, 10, V10, 11, V11, 12, V12, 13, V13, 14, V14, 15, V15, 16, V16 +); +actor_state_load_impl!( + Verifreg, 8, V8, 9, V9, 10, V10, 11, V11, 12, V12, 13, V13, 14, V14, 15, V15, 16, V16 +); +actor_state_load_impl!( + Reward, 8, V8, 9, V9, 10, V10, 11, V11, 12, V12, 13, V13, 14, V14, 15, V15, 16, V16 ); -actor_state_load_impl!(Reward, 8, V8, 9, V9, 10, V10, 11, V11, 12, V12, 13, V13, 14, V14, 15, V15); diff --git a/src/state_migration/mod.rs b/src/state_migration/mod.rs index a136974bef57..e124844a2cf5 100644 --- a/src/state_migration/mod.rs +++ b/src/state_migration/mod.rs @@ -69,13 +69,7 @@ where ] } NetworkChain::Butterflynet => { - vec![ - (Height::Dragon, nv22::run_migration::), - (Height::Waffle, nv23::run_migration::), - (Height::TukTuk, nv24::run_migration::), - // TODO(forest): https://github.com/ChainSafe/forest/issues/5039 - // (Height::Teep, nv25::run_migration::), - ] + vec![(Height::Teep, nv25::run_migration::)] } NetworkChain::Devnet(_) => { vec![ @@ -86,8 +80,7 @@ where (Height::Dragon, nv22::run_migration::), (Height::Waffle, nv23::run_migration::), (Height::TukTuk, nv24::run_migration::), - // TODO(forest): https://github.com/ChainSafe/forest/issues/5038 - // (Height::Teep, nv25::run_migration::), + (Height::Teep, nv25::run_migration::), ] } }; diff --git a/src/state_migration/nv25/mod.rs b/src/state_migration/nv25/mod.rs index d874868ce7b4..a830a4e3a435 100644 --- a/src/state_migration/nv25/mod.rs +++ b/src/state_migration/nv25/mod.rs @@ -6,15 +6,13 @@ mod migration; /// Run migration for `NV25`. This should be the only exported method in this /// module. -#[allow(unused_imports)] pub use migration::run_migration; use crate::{define_system_states, impl_system, impl_verifier}; define_system_states!( fil_actor_system_state::v15::State, - // TODO(forest): https://github.com/ChainSafe/forest/issues/5037 - fil_actor_system_state::v15::State + fil_actor_system_state::v16::State ); impl_system!();