Skip to content

feat: nv28 skeleton#13400

Merged
rjan90 merged 10 commits intomasterfrom
phi/nv28-skeleton
Oct 21, 2025
Merged

feat: nv28 skeleton#13400
rjan90 merged 10 commits intomasterfrom
phi/nv28-skeleton

Conversation

@rjan90
Copy link
Copy Markdown
Contributor

@rjan90 rjan90 commented Oct 20, 2025

Related Issues

Closes #13362

Proposed Changes

Create network skeleton for nv28.

Checklist

Before you mark the PR ready for review, please make sure that:

rjan90 added 10 commits October 20, 2025 16:13
chore: create mock v18 actor-bundle based on v17
chore: define nv28 skeleton upgrade heights in params
Update gen/inlinegen-data.json and run make actors-gen
chore: add schedule and migration to nv28
chore: add actorstype, upgradefield, upgrade and statetree
chore: nv28 skeleton invariants cmd
chore: add nv28 skeleton to getMigrationFuncsForNetwork
deps: update to nv28-supported GST
deps: update FFI to v1.34.2-dev
chore: make gen && make docsgen-cli
Copilot AI review requested due to automatic review settings October 20, 2025 14:42
@rjan90 rjan90 added the skip/changelog This change does not require CHANGELOG.md update label Oct 20, 2025
@github-project-automation github-project-automation Bot moved this to 📌 Triage in FilOz Oct 20, 2025
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR implements the network skeleton for NV28 (network version 28), adding actor version 18 support throughout the Lotus codebase. The changes prepare the system for the upcoming network upgrade by updating dependencies, adding new actor implementations, and configuring upgrade parameters.

Key changes:

  • Updates go-state-types dependency from v0.17.0 to v0.18.0-dev
  • Adds actor version 18 implementations for all built-in actors
  • Configures network version 28 upgrade parameters across different network environments

Reviewed Changes

Copilot reviewed 87 out of 89 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
go.mod / go.sum Updates go-state-types dependency to v0.18.0-dev
gen/inlinegen-data.json Adds actor version 18 and network version 28 to generation configuration
chain/actors/version.go Updates latest version constants to version 18
chain/actors/builtin/*/v18.go Implements v18 actor state wrappers for all built-in actors
chain/consensus/filcns/upgrades.go Adds UpgradeActorsV18 migration functions
build/buildconstants/params_*.go Configures UpgradeXxHeight for different networks
documentation/en/*.md Updates API documentation with network version 28 examples
build/builtin_actors_gen.go Adds actor bundle metadata for version 18 across all networks
Comments suppressed due to low confidence (2)

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

Comment thread build/buildconstants/params_butterfly.go
Comment thread build/buildconstants/params_2k.go
@rjan90 rjan90 requested a review from TippyFlitsUK October 20, 2025 14:44
@rjan90 rjan90 moved this from 📌 Triage to 🔎 Awaiting Review in FilOz Oct 20, 2025
@rjan90 rjan90 self-assigned this Oct 20, 2025
@github-project-automation github-project-automation Bot moved this from 🔎 Awaiting Review to ✔️ Approved by reviewer in FilOz Oct 20, 2025
@rjan90
Copy link
Copy Markdown
Contributor Author

rjan90 commented Oct 20, 2025

Sanity test run in devnet:

Network version at the start of the devnet:

lotus state actor-cids
Network Version: 27
Actor Version: 17
Manifest CID: bafy2bzaceasvgkke3j4cs3xsxnjswpcdmokkvkiehzxzcgfox3ozlehimbuqk

The pre-migration is happening:

2025-10-20T16:55:13.045+0200    WARN    statemgr        stmgr/forks.go:250      STARTING pre-migration
2025-10-20T16:55:13.046+0200    INFO    bundle  bundle/bundle.go:60     manifest cid: bafy2bzaceasvgkke3j4cs3xsxnjswpcdmokkvkiehzxzcgfox3ozlehimbuqk
2025-10-20T16:55:13.047+0200    INFO    fil-consensus   filcns/upgrades.go:3505 Started 5 workers
2025-10-20T16:55:13.048+0200    INFO    fil-consensus   filcns/upgrades.go:3505 Creating migration jobs
---
2025-10-20T16:55:13.049+0200    WARN    statemgr        stmgr/forks.go:263      COMPLETED pre-migration {"duration": 0.003363333}

The migration at epoch 200:

025-10-20T17:03:19.054+0200    WARN    statemgr        stmgr/forks.go:202      STARTING migration      {"height": "200", "from": "bafy2bzaceagc4hccfx55pim3fgtra5kkf2v5yelqkcaye757kzrr6w4sfv6gs"}
2025-10-20T17:03:19.055+0200    INFO    bundle  bundle/bundle.go:60     manifest cid: bafy2bzaceasvgkke3j4cs3xsxnjswpcdmokkvkiehzxzcgfox3ozlehimbuqk
-------
2025-10-20T17:03:19.058+0200    WARN    statemgr        stmgr/forks.go:211      COMPLETED migration     {"height": "200", "from": "bafy2bzaceagc4hccfx55pim3fgtra5kkf2v5yelqkcaye757kzrr6w4sfv6gs", "to": "bafy2bzaceagc4hccfx55pim3fgtra5kkf2v5yelqkcaye757kzrr6w4sfv6gs", "duration": 0.004379625}

We switch actors-bundle version and network version:

lotus state actor-cids               
Network Version: 28
Actor Version: 18
Manifest CID: bafy2bzaceasvgkke3j4cs3xsxnjswpcdmokkvkiehzxzcgfox3ozlehimbuqk

NB: Manifest CID is the same as actor version 17 since we are reusing that bundle for the nv28 skeleton.

The network is progressing after the upgrade epoch:
lotus chain list

218: (Oct 20 17:04:25) [ bafy2bzacecw2cakddyn35jl54nkpig7kdpznvxpzkpe6cnynhk7yhjln6xzka: t01000, ]
219: (Oct 20 17:04:29) [ bafy2bzacedimcnldzqqbaze4dqxwubg57pyjgkldxry47ivleifcoktvdjrao: t01000, ]
220: (Oct 20 17:04:33) [ bafy2bzacebk3gregdfkpbo7uyjzpl5dem32xrycwjfo7lj2lze6dg6swhrask: t01000, ]
221: (Oct 20 17:04:37) [ bafy2bzaced77gxsupkkemmzjp3iqklbpfbdgeh3dr7w55fct6ux62ap64hzhc: t01000, ]
222: (Oct 20 17:04:41) [ bafy2bzacealfhwt6c4qlxjbvjdoej6qipufkpi7z66wv6fd7h7ktvtzkpkhpk: t01000, ]
223: (Oct 20 17:04:45) [ bafy2bzacebvr7k5z6yoxcsc5pfai5ahjusix54t6bcwaaqlarphrd66be3wxy: t01000, ]
224: (Oct 20 17:04:49) [ bafy2bzacedgskiwoq3lkddvlikivhsiqf635gohylc5f5l64o2qryhoyisy5i: t01000, ]
225: (Oct 20 17:04:53) [ bafy2bzaceajqr6rx5o77si4kg7eccp5bsjtbrj4lod32wqml6rkpzkrqbpdoc: t01000, ]
226: (Oct 20 17:04:57) [ bafy2bzacedgy4qu73wedzvyiupahpqznui532kxiybgxlrrsnq5cletnwzfe4: t01000, ]

@rjan90 rjan90 merged commit caf6ce6 into master Oct 21, 2025
260 of 262 checks passed
@rjan90 rjan90 deleted the phi/nv28-skeleton branch October 21, 2025 04:41
@github-project-automation github-project-automation Bot moved this from ✔️ Approved by reviewer to 🎉 Done in FilOz Oct 21, 2025
aceppaluni pushed a commit to aceppaluni/lotus that referenced this pull request Dec 2, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

skip/changelog This change does not require CHANGELOG.md update

Projects

Status: 🎉 Done

Development

Successfully merging this pull request may close these issues.

Skeleton for nv28 to support development and testing

3 participants