fix(frontend): populate wallet groups when projectId empty (GitLab #203) #386
No reviewers
Labels
No labels
agent:fix_bugfix
agent:fix_conflicts
agent:fix_security
agent:gap_analysis
agent:implement
agent:open_issues
agents
agent:security_audit
agent:verify
area
timecurve
arena
arena-v2
audit
block:feature_review
block:security
bug
contracts
design
devops
docs
documentation
enhancement
epic
feature
frontend
indexer
low priority
megaeth
operations
ops
performance
QA
qa checklist
referrals
removal
security
smart-contracts
tech-debt
testing
time-arena
timecurve
visual-qa
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
code/yieldomega!386
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/glab-203-wallet-modal-empty-on-missing-projectid"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes #203.
Root cause
frontend/src/wagmi-config.tshad a 3-branch ternary:useE2EMockWallet === "1"→ mock connectorelse if projectId set→getDefaultConfigwith fullrainbowKitWalletGroupselse→createConfig({ connectors: [injected()] })with no rainbowkitwalletsAppProviders.tsx:26wraps the app in<RainbowKitProvider>regardless of branch. When branch 3 fired, the modal mounted and the static right-panel ("What is a Wallet?") rendered, but the left wallet-list was empty because nowalletsgroups were passed at config time. The "intermittent" feel came from EIP-6963 timing (announce delay after page load), but the root cause was deterministic: emptyVITE_WALLETCONNECT_PROJECT_IDin.env.localtriggers branch 3 every time.Prod (yieldomega.com) is not affected — bundle has projectId baked in, hits branch 2.
Fix
Branch 3 now uses
getDefaultConfigwith:projectIdstring (never reaches a real WC server becausewalletConnectWalletis omitted from the wallets list)walletsgroup:[safeWallet, metaMaskWallet, safepalWallet]only — droppedwalletConnectWallet,rainbowWallet,baseAccountsince they require a real WC project id to functionAlso dropped the now-unused
injectedimport fromwagmi/connectors, and updated the console.info copy to accurately reflect the new behavior (injected-detection wallets, not raw injected-only fallback).Tests
New
frontend/src/wagmi-config.test.tscovers all 3 branches:Suite delta: 325/325 → 328/328 across 59 → 60 files. Zero regressions.
Verification
Repro before fix:
.env.localwith noVITE_WALLETCONNECT_PROJECT_ID, open Connect Wallet modal cold → blank left panel matching nullvector's screenshot.After fix: same setup, modal left panel shows Popular group with Safe / MetaMask / SafePal. WalletConnect option correctly absent. console.info still fires so dev sees the warning.
mentioned in issue #203
mentioned in commit
4ec2018fda