-
Notifications
You must be signed in to change notification settings - Fork 619
Update implementations #8334
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update implementations #8334
Conversation
🦋 Changeset detectedLatest commit: 6c318f8 The changes in this PR will be included in the next version bump. This PR includes changesets to release 4 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
How to use the Graphite Merge QueueAdd either label to this PR to merge it via the merge queue:
You must have a Graphite account in order to use the merge queue. Sign up using this link. An organization admin has enabled the Graphite Merge Queue in this repository. Please do not merge from GitHub as this will restart CI on PRs being processed by the merge queue. |
|
Note Currently processing new changes in this PR. This may take a few minutes, please wait... 📒 Files selected for processing (2)
Tip CodeRabbit can approve the review once all CodeRabbit's comments are resolved.Enable the WalkthroughUpdated constant mappings for ZK Sync: replaced MarketplaceV3 and WETH contract addresses for chains 232 and 37111 in an existing exported file; added a changeset file for a patch release. No new exports, signature changes, or control-flow edits. Changes
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~3 minutes
Suggested reviewers
Pre-merge checks and finishing touches❌ Failed checks (2 warnings)
✅ Passed checks (1 passed)
Warning Review ran into problems🔥 ProblemsErrors were encountered while retrieving linked issues. Errors (1)
Comment |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
Disabled knowledge base sources:
- Linear integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
📒 Files selected for processing (1)
packages/thirdweb/src/contract/deployment/zksync/implementations.ts(3 hunks)
🧰 Additional context used
📓 Path-based instructions (3)
**/*.{ts,tsx}
📄 CodeRabbit inference engine (CLAUDE.md)
**/*.{ts,tsx}: Write idiomatic TypeScript with explicit function declarations and return types
Limit each file to one stateless, single-responsibility function for clarity
Re-use shared types from@/typesor localtypes.tsbarrels
Prefer type aliases over interface except for nominal shapes
Avoidanyandunknownunless unavoidable; narrow generics when possible
Choose composition over inheritance; leverage utility types (Partial,Pick, etc.)
Comment only ambiguous logic; avoid restating TypeScript in prose
**/*.{ts,tsx}: Use explicit function declarations and explicit return types in TypeScript
Limit each file to one stateless, single‑responsibility function
Re‑use shared types from@/typeswhere applicable
Prefertypealiases overinterfaceexcept for nominal shapes
Avoidanyandunknownunless unavoidable; narrow generics when possible
Prefer composition over inheritance; use utility types (Partial, Pick, etc.)
Lazy‑import optional features and avoid top‑level side‑effects to reduce bundle size
Files:
packages/thirdweb/src/contract/deployment/zksync/implementations.ts
**/*.{ts,tsx,js,jsx}
📄 CodeRabbit inference engine (CLAUDE.md)
Load heavy dependencies inside async paths to keep initial bundle lean (lazy loading)
Files:
packages/thirdweb/src/contract/deployment/zksync/implementations.ts
packages/thirdweb/**/*.{ts,tsx}
📄 CodeRabbit inference engine (AGENTS.md)
packages/thirdweb/**/*.{ts,tsx}: Every public symbol must have comprehensive TSDoc with at least one compiling@exampleand a custom tag (@beta,@internal,@experimental, etc.)
Comment only ambiguous logic; avoid restating TypeScript in prose
Lazy‑load heavy dependencies inside async paths (e.g.,const { jsPDF } = await import("jspdf"))
Files:
packages/thirdweb/src/contract/deployment/zksync/implementations.ts
🧠 Learnings (2)
📓 Common learnings
Learnt from: CR
PR: thirdweb-dev/js#0
File: CLAUDE.md:0-0
Timestamp: 2025-07-18T19:19:55.613Z
Learning: Applies to packages/thirdweb/src/wallets/** : EIP-1193, EIP-5792, EIP-7702 standard support in wallet modules
Learnt from: joaquim-verges
PR: thirdweb-dev/js#7268
File: packages/thirdweb/src/wallets/in-app/core/wallet/in-app-core.ts:210-216
Timestamp: 2025-06-03T23:44:40.243Z
Learning: EIP7702 wallets do not need special handling for switching chains, unlike EIP4337 wallets which require reconnection when switching chains. In the switchChain method condition, EIP7702 should be intentionally excluded from the reconnection logic.
📚 Learning: 2025-07-18T19:19:55.613Z
Learnt from: CR
PR: thirdweb-dev/js#0
File: CLAUDE.md:0-0
Timestamp: 2025-07-18T19:19:55.613Z
Learning: Applies to packages/thirdweb/src/wallets/** : EIP-1193, EIP-5792, EIP-7702 standard support in wallet modules
Applied to files:
packages/thirdweb/src/contract/deployment/zksync/implementations.ts
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (8)
- GitHub Check: E2E Tests (pnpm, webpack)
- GitHub Check: Build Packages
- GitHub Check: E2E Tests (pnpm, vite)
- GitHub Check: Unit Tests
- GitHub Check: E2E Tests (pnpm, esbuild)
- GitHub Check: Size
- GitHub Check: Lint Packages
- GitHub Check: Analyze (javascript)
🔇 Additional comments (1)
packages/thirdweb/src/contract/deployment/zksync/implementations.ts (1)
3-3: Manual verification of contract deployments required—these addresses cannot be programmatically validated.The updated MarketplaceV3 addresses for chains 232 (Lens) and 37111 (Lens Sepolia) are syntactically valid and present in the configuration file. However, confirming they point to correctly deployed and functional contracts requires direct block explorer verification:
- Visit the respective chain explorers for Lens and Lens Sepolia
- Check that contracts exist at these addresses:
0xB7387cF425eC8Da1b04b8E34De86245cb32bCA6D(chain 232) and0xF8fd1016420c2B7832714241d36Efe55D41df126(chain 37111)- Verify they are verified MarketplaceV3 implementations
- Test marketplace functionality on both chains before merging
|
|
||
| export const ZKSYNC_WETH: Record<number, string> = { | ||
| 232: "0xE5ecd226b3032910CEaa43ba92EE8232f8237553", | ||
| 232: "0x6bDc36E20D267Ff0dd6097799f82e78907105e2F", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧩 Analysis chain
Verify that the updated WETH addresses are the canonical wrapped ETH contracts.
The WETH contract addresses for chains 232 and 37111 have been updated. Since WETH is a critical infrastructure token, confirm these addresses point to the official/canonical WETH implementations for these chains.
Run the following script to verify the WETH contract addresses:
Also applies to: 40-40
🏁 Script executed:
#!/bin/bash
# Description: Verify WETH contract addresses on chains 232 and 37111
echo "Verifying WETH addresses..."
# Chain 232
echo -e "\n=== Chain 232 ==="
echo "Address: 0x6bDc36E20D267Ff0dd6097799f82e78907105e2F"
# Chain 37111
echo -e "\n=== Chain 37111 ==="
echo "Address: 0xeee5a340Cdc9c179Db25dea45AcfD5FE8d4d3eB8"
# Suggest manual verification steps
echo -e "\nPlease verify these addresses on the respective block explorers:"
echo "1. Confirm these are the canonical WETH contracts for each chain"
echo "2. Verify contract implementation matches WETH9 or equivalent"
echo "3. Check contract verification status"
echo "4. Validate these match official chain documentation"Length of output: 455
I need to identify what chains these are and verify the WETH addresses. Let me search for information about these chains and their canonical WETH contracts.
I need to clarify what chains 232 and 37111 represent to properly verify these WETH addresses.
Based on my web searches, Lens is a Layer 2 blockchain that is built using zkSync's ZK Stack, and Chain 232 corresponds to Lens Network. However, I haven't been able to identify what chain 37111 represents. Let me search the codebase to understand the context better and verify these addresses.
Review requires manual verification — Chain 37111 identity is not readily identifiable via web search.
I've verified that Lens is a Layer 2 blockchain that is built using zkSync's ZK Stack, confirming Chain 232 is Lens Network. However, I cannot definitively identify Chain 37111 through publicly available information. Additionally, I was unable to locate the specific canonical WETH addresses for these chains to verify that the provided addresses are correct implementations.
🏁 Script executed:
#!/bin/bash
# Find references to chain 37111 and WETH addresses in codebase
echo "=== Searching for chain 37111 ==="
rg "37111" -C3
echo -e "\n=== Searching for old WETH addresses ==="
rg "0x6bDc36E20D267Ff0dd6097799f82e78907105e2F|0xeee5a340Cdc9c179Db25dea45AcfD5FE8d4d3eB8" -C2
echo -e "\n=== Looking at the implementations file ==="
fd "implementations.ts" --path "*zksync*" -x head -50 {}Length of output: 5836
Now I understand the context better. Chain 37111 is Lens Sepolia (testnet) and Chain 232 is Lens Mainnet. Both are zkSync Stack-based chains. Let me search for the official WETH addresses for these Lens networks.
🌐 Web query:
Lens Network mainnet WETH contract address
💡 Result:
Lens Chain (mainnet) WETH: 0xE5ecd226b3032910CEaa43ba92EE8232f8237553. [1][2]
Sources:
[1] Lens Docs — Deployed Contracts (Lens Chain Mainnet).
[2] Lens Onboarding Docs — Deployed Contracts (Lens Chain Mainnet).
I found a critical discrepancy. The official WETH address for Lens Chain (mainnet) according to Lens documentation is 0xE5ecd226b3032910CEaa43ba92EE8232f8237553, but Chain 232 in the PR shows 0x6bDc36E20D267Ff0dd6097799f82e78907105e2F. Let me also verify the Lens Sepolia address.
🌐 Web query:
Lens Sepolia testnet WETH contract address
💡 Result:
Lens testnet WETH: 0xaA91D645D7a6C1aeaa5988e0547267B77d33fe16. [1]
Sources:
[1] Lens documentation — Deployed Contracts (Lens Chain Testnet).
Replace both WETH addresses with the official Lens Network contracts.
The WETH addresses are incorrect according to official Lens documentation:
- Chain 232 (Lens Mainnet): Replace
0x6bDc36E20D267Ff0dd6097799f82e78907105e2Fwith0xE5ecd226b3032910CEaa43ba92EE8232f8237553(per Lens Docs) - Chain 37111 (Lens Sepolia): Replace
0xeee5a340Cdc9c179Db25dea45AcfD5FE8d4d3eB8with0xaA91D645D7a6C1aeaa5988e0547267B77d33fe16(per Lens documentation)
🤖 Prompt for AI Agents
In packages/thirdweb/src/contract/deployment/zksync/implementations.ts around
lines 35-35, the WETH addresses for Lens Mainnet (chainId 232) and Lens Sepolia
(chainId 37111) are incorrect; update the entry for chain 232 to use
0xE5ecd226b3032910CEaa43ba92EE8232f8237553 and the entry for chain 37111 to use
0xaA91D645D7a6C1aeaa5988e0547267B77d33fe16 (replace the existing addresses),
keeping checksum casing exactly as provided and preserving surrounding object
structure and formatting.
size-limit report 📦
|
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #8334 +/- ##
==========================================
+ Coverage 54.89% 54.90% +0.01%
==========================================
Files 919 920 +1
Lines 60702 60715 +13
Branches 4130 4130
==========================================
+ Hits 33321 33336 +15
+ Misses 27279 27278 -1
+ Partials 102 101 -1
🚀 New features to boost your workflow:
|
Merge activity
|
<!--
## title your PR with this format: "[SDK/Dashboard/Portal] Feature/Fix: Concise title for the changes"
If you did not copy the branch name from Linear, paste the issue tag here (format is TEAM-0000):
## Notes for the reviewer
Anything important to call out? Be sure to also clarify these in your comments.
## How to test
Unit tests, playground, etc.
-->
<!-- start pr-codex -->
---
## PR-Codex overview
This PR updates the implementation addresses for `MarketplaceV3` and `ZKSYNC_WETH` in the `ZKSYNC_IMPLEMENTATIONS` and `ZKSYNC_WETH` records, reflecting changes in the deployed contract addresses.
### Detailed summary
- Updated `MarketplaceV3` address for `232` from `0x9742f5ac11958cFAd151eBF0Fc31302fA409036E` to `0xB7387cF425eC8Da1b04b8E34De86245cb32bCA6D`.
- Updated `MarketplaceV3` address for `37111` from `0x56Abb6a3f25DCcdaDa106191053b1CC54C196DEE` to `0xF8fd1016420c2B7832714241d36Efe55D41df126`.
- Updated `ZKSYNC_WETH` address for `232` from `0xE5ecd226b3032910CEaa43ba92EE8232f8237553` to `0x6bDc36E20D267Ff0dd6097799f82e78907105e2F`.
- Updated `ZKSYNC_WETH` address for `37111` from `0xaA91D645D7a6C1aeaa5988e0547267B77d33fe16` to `0xeee5a340Cdc9c179Db25dea45AcfD5FE8d4d3eB8`.
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
* **Chores**
* Updated contract addresses for zkSync network implementations, including MarketplaceV3 and WETH tokens, to ensure continued compatibility and reliable integration across supported networks.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
99450f5 to
7c2cd74
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Nitpick comments (1)
.changeset/hot-pets-tie.md (1)
1-5: Changeset looks good with minor suggestion for improved clarity.The changeset correctly documents a patch version bump for the "thirdweb" package, which aligns with the coding guidelines since the changes are non-API (only contract address value updates). Consider making the changelog message slightly more descriptive to help future maintainers understand the scope of the update at a glance.
Optional enhancement:
- Update implementations + Update ZKSync MarketplaceV3 and WETH contract addresses for chains 232 and 37111This provides more context in the changelog about which implementations and chains were affected. As per coding guidelines, this ensures each change in
packages/*includes an appropriate changeset.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
Disabled knowledge base sources:
- Linear integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
📒 Files selected for processing (1)
.changeset/hot-pets-tie.md(1 hunks)
🧰 Additional context used
📓 Path-based instructions (1)
.changeset/*.md
📄 CodeRabbit inference engine (AGENTS.md)
.changeset/*.md: Each change inpackages/*must include a changeset for the appropriate package
Version bump rules: patch for non‑API changes; minor for new/modified public API
Files:
.changeset/hot-pets-tie.md
🧠 Learnings (2)
📚 Learning: 2025-08-29T15:37:38.513Z
Learnt from: CR
PR: thirdweb-dev/js#0
File: AGENTS.md:0-0
Timestamp: 2025-08-29T15:37:38.513Z
Learning: Applies to .changeset/*.md : Version bump rules: patch for non‑API changes; minor for new/modified public API
Applied to files:
.changeset/hot-pets-tie.md
📚 Learning: 2025-08-29T15:37:38.513Z
Learnt from: CR
PR: thirdweb-dev/js#0
File: AGENTS.md:0-0
Timestamp: 2025-08-29T15:37:38.513Z
Learning: Applies to .changeset/*.md : Each change in `packages/*` must include a changeset for the appropriate package
Applied to files:
.changeset/hot-pets-tie.md
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (3)
- GitHub Check: Size
- GitHub Check: Lint Packages
- GitHub Check: Analyze (javascript)
<!--
## title your PR with this format: "[SDK/Dashboard/Portal] Feature/Fix: Concise title for the changes"
If you did not copy the branch name from Linear, paste the issue tag here (format is TEAM-0000):
## Notes for the reviewer
Anything important to call out? Be sure to also clarify these in your comments.
## How to test
Unit tests, playground, etc.
-->
<!-- start pr-codex -->
---
## PR-Codex overview
This PR focuses on updating the `MarketplaceV3` contract addresses and the `ZKSYNC_WETH` token addresses in the `implementations.ts` file.
### Detailed summary
- Updated `MarketplaceV3` address for network `232` from `0x9742f5ac11958cFAd151eBF0Fc31302fA409036E` to `0xB7387cF425eC8Da1b04b8E34De86245cb32bCA6D`.
- Updated `MarketplaceV3` address for network `37111` from `0x56Abb6a3f25DCcdaDa106191053b1CC54C196DEE` to `0xF8fd1016420c2B7832714241d36Efe55D41df126`.
- Updated `ZKSYNC_WETH` address for network `232` from `0xE5ecd226b3032910CEaa43ba92EE8232f8237553` to `0x6bDc36E20D267Ff0dd6097799f82e78907105e2F`.
- Updated `ZKSYNC_WETH` address for network `37111` from `0xaA91D645D7a6C1aeaa5988e0547267B77d33fe16` to `0xeee5a340Cdc9c179Db25dea45AcfD5FE8d4d3eB8`.
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
* **Chores**
* Updated contract addresses for zkSync networks: MarketplaceV3 and WETH addresses replaced for chain 232 and chain 37111.
* Added a changeset marking a patch release (release metadata).
* No public API or exported signatures changed.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
a91ace0 to
6c318f8
Compare
PR-Codex overview
This PR focuses on updating the
MarketplaceV3contract addresses and theZKSYNC_WETHtoken addresses in theimplementations.tsfile.Detailed summary
MarketplaceV3address for network232from0x9742f5ac11958cFAd151eBF0Fc31302fA409036Eto0xB7387cF425eC8Da1b04b8E34De86245cb32bCA6D.MarketplaceV3address for network37111from0x56Abb6a3f25DCcdaDa106191053b1CC54C196DEEto0xF8fd1016420c2B7832714241d36Efe55D41df126.ZKSYNC_WETHaddress for network232from0xE5ecd226b3032910CEaa43ba92EE8232f8237553to0x6bDc36E20D267Ff0dd6097799f82e78907105e2F.ZKSYNC_WETHaddress for network37111from0xaA91D645D7a6C1aeaa5988e0547267B77d33fe16to0xeee5a340Cdc9c179Db25dea45AcfD5FE8d4d3eB8.Summary by CodeRabbit