Conversation
getStorageLayout was dropping it, so a changed custom layout at slot passed validation on the AST-only path. Co-authored-by: Cursor <cursoragent@cursor.com>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (3)
Included review availability: Your plan includes up to 4 reviews per rolling hour; 3 remain after this review. Walkthrough
ChangesStorage-layout baseSlot preservation
Estimated code review effort: 2 (Simple) | ~10 minutes Merge Risk: ⚪ Minimal · up to The change preserves base-slot information when unfolding storage layouts and adds focused coverage for validation paths; no actionable merge-blocking risk remains beyond normal checks and review. Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
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 |
unfoldStorageLayoutrebuilt the layout withoutbaseSlot.getStorageLayoutand the deprecatedUpgradeableContractAPI both go through that, sovalidateBaseSlotUnchangedcomparedundefinedtoundefinedand a changedlayout atslot passed on the AST-only path.Hardhat/CLI flows already have compiler layouts, so they were not affected.
Credit to @nahimterrazas for the report and the repro.
Fixes #1296
Summary by CodeRabbit
Bug Fixes
Tests
Chores