params: set Jade fork activation times for mainnet and Hoodi#296
params: set Jade fork activation times for mainnet and Hoodi#296FletcherMan merged 2 commits intomainfrom
Conversation
Set Jade upgrade timestamps: - Hoodi (chain 2910): 2026-03-25 14:00 Beijing (1774418400) - Mainnet (chain 2818): 2026-04-08 14:00 Beijing (1775628000) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
📝 WalkthroughWalkthroughAdded an exported Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Possibly related PRs
Suggested reviewers
Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches
🧪 Generate unit tests (beta)
📝 Coding Plan
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment Tip CodeRabbit can suggest fixes for GitHub Check annotations.Configure the |
There was a problem hiding this comment.
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
params/config.go (1)
393-396:⚠️ Potential issue | 🟡 MinorAdd
JadeForkTimeto test chain configurations.The test chain configs (
AllEthashProtocolChanges,AllCliqueProtocolChanges,TestChainConfig,TestNoL1DataFeeChainConfig) initialize time-based forks (Morph203Time,ViridianTime,EmeraldTime) tonew(uint64)but omitJadeForkTime. This causesIsJadeFork()to returnfalsefor tests using these global configs.While tests that specifically test jade fork behavior work around this by creating custom chain configs with
JadeForkTimeexplicitly set, any test using the global configs that relies onIsJadeFork()behavior (e.g., for MorphTx V1 validation in block_validator.go) will see it returnfalse, potentially masking bugs.For consistency with other time-based forks in these configs,
JadeForkTimeshould be set tonew(uint64).🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@params/config.go` around lines 393 - 396, The test chain configs (AllEthashProtocolChanges, AllCliqueProtocolChanges, TestChainConfig, TestNoL1DataFeeChainConfig) initialize Morph203Time, ViridianTime, and EmeraldTime to new(uint64) but omit JadeForkTime, causing IsJadeFork() to return false in tests; update each of those config initializers to also set JadeForkTime: new(uint64) so the global test configs behave like the others and tests (e.g., MorphTx V1 validation in block_validator.go that calls IsJadeFork) see the fork enabled by default.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Outside diff comments:
In `@params/config.go`:
- Around line 393-396: The test chain configs (AllEthashProtocolChanges,
AllCliqueProtocolChanges, TestChainConfig, TestNoL1DataFeeChainConfig)
initialize Morph203Time, ViridianTime, and EmeraldTime to new(uint64) but omit
JadeForkTime, causing IsJadeFork() to return false in tests; update each of
those config initializers to also set JadeForkTime: new(uint64) so the global
test configs behave like the others and tests (e.g., MorphTx V1 validation in
block_validator.go that calls IsJadeFork) see the fork enabled by default.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Summary
1774418400(2026-03-25 06:00 UTC)1775628000(2026-04-08 06:00 UTC)Both timestamps are after their respective
EmeraldTimevalues, satisfying the fork ordering constraint (Morph203 < Viridian < Emerald < Jade).Test plan
go build ./params/...— compiles successfullygo test ./params/...— all tests passSummary by CodeRabbit