Conversation
fix: instabug #190 coroutine resume issue
fix: restore the constructor of the account proof encode method
Fix child account
fix: walletconnect pair
fix: child account class cast exception
Pick up testers form env vars
* WIP - integration * WC redirect fallback * WC redirect fallback * WC redirect fallback * WC redirect fallback * Clean up * Hide toast when on inapp browser auth
* WIP - integration * WC redirect fallback * WC redirect fallback * WC redirect fallback * WC redirect fallback * Clean up * Hide toast when on inapp browser auth * Debug build.gradle * Debug build.gradle * Debug build.gradle * Debug build.gradle * Debug build.gradle * Debug build.gradle * Debug build.gradle
Wc debugging
feat: verified token
fix: verified token issues
* Improve error handling * Improve error handling * Session cleanup * Session cleanup * Run build * Improve session cleanup * Improve session cleanup * Improve session cleanup * Improve session cleanup * Improve session cleanup * Disable dev build on branch
PR SummaryRefactored token management system with new FungibleToken model and improved WalletConnect implementation. Added robust error handling, session management, and redirect functionality for WalletConnect. Introduced new token list providers and API endpoints for both EVM and Flow tokens. Changes
autogenerated by presubmit.ai |
There was a problem hiding this comment.
🚨 Pull request needs attention.
Review Summary
Commits Considered (30)
-
WIP - integration
-
WC redirect fallback
-
WC redirect fallback
-
WC redirect fallback
-
WC redirect fallback
-
Clean up
-
Hide toast when on inapp browser auth
Pick up testers form env vars
- 010aa2d: Hide toast when on inapp browser auth
- 9ec01b4: Clean up
- a179ec4: WC redirect fallback
- 5dcc910: WC redirect fallback
- 3b0743c: WC redirect fallback
- 9e26de8: WC redirect fallback
- 79de9db: WIP - integration
- 5dd63e2: Merge branch 'develop' into nialexsan/firebase-testers-env-var
- 7deecf7: Merge pull request #910 from onflow/fix_child_account
fix: child account class cast exception
- 8d5f7c6: apply suggestion
- db5db91: Merge branch 'develop' into nialexsan/firebase-testers-env-var
- 6874def: clean up
- 72af264: use testers var
- d6b26ba: test release
- 9addad8: firebase testers
- 26cd0c7: fix: child account class cast exception
- c3dd865: Merge pull request #909 from onflow/fix_wc
fix: walletconnect pair
Fix child account
fix: restore the constructor of the account proof encode method
fix: instabug #190 coroutine resume issue
Files Processed (30)
- .github/workflows/release.yml (3 hunks)
- app/build.gradle (5 hunks)
- app/src/main/AndroidManifest.xml (1 hunk)
- app/src/main/java/com/flowfoundation/wallet/cache/CacheConst.kt (2 hunks)
- app/src/main/java/com/flowfoundation/wallet/cache/DisplayTokenCacheManager.kt (1 hunk)
- app/src/main/java/com/flowfoundation/wallet/firebase/config/FirebaseConfig.kt (2 hunks)
- app/src/main/java/com/flowfoundation/wallet/manager/LaunchManager.kt (2 hunks)
- app/src/main/java/com/flowfoundation/wallet/manager/account/BalanceManager.kt (1 hunk)
- app/src/main/java/com/flowfoundation/wallet/manager/childaccount/ChildAccountList.kt (5 hunks)
- app/src/main/java/com/flowfoundation/wallet/manager/coin/CoinRateManager.kt (1 hunk)
- app/src/main/java/com/flowfoundation/wallet/manager/coin/CustomTokenManager.kt (2 hunks)
- app/src/main/java/com/flowfoundation/wallet/manager/coin/FlowCoinListManager.kt (1 hunk)
- app/src/main/java/com/flowfoundation/wallet/manager/coin/TokenStateManager.kt (1 hunk)
- app/src/main/java/com/flowfoundation/wallet/manager/evm/EVMWalletManager.kt (5 hunks)
- app/src/main/java/com/flowfoundation/wallet/manager/evm/Utils.kt (2 hunks)
- app/src/main/java/com/flowfoundation/wallet/manager/flowjvm/CadenceExecutor.kt (5 hunks)
- app/src/main/java/com/flowfoundation/wallet/manager/token/FungibleTokenListManager.kt (1 hunk)
- app/src/main/java/com/flowfoundation/wallet/manager/token/model/FungibleToken.kt (1 hunk)
- app/src/main/java/com/flowfoundation/wallet/manager/transaction/TransactionStateManager.kt (3 hunks)
- app/src/main/java/com/flowfoundation/wallet/manager/walletconnect/WalletConnect.kt (3 hunks)
- app/src/main/java/com/flowfoundation/wallet/manager/walletconnect/WalletConnectDelegate.kt (5 hunks)
- app/src/main/java/com/flowfoundation/wallet/manager/walletconnect/WalletConnectRequestDispatcher.kt (1 hunk)
- app/src/main/java/com/flowfoundation/wallet/manager/walletconnect/WalletConnectResponse.kt (1 hunk)
- app/src/main/java/com/flowfoundation/wallet/network/ApiService.kt (2 hunks)
- app/src/main/java/com/flowfoundation/wallet/network/UserRegisterUtils.kt (2 hunks)
- app/src/main/java/com/flowfoundation/wallet/network/model/AddTokenListResponse.kt (1 hunk)
- app/src/main/java/com/flowfoundation/wallet/network/model/EVMTokenListResponse.kt (1 hunk)
- app/src/main/java/com/flowfoundation/wallet/network/model/FlowTokenListResponse.kt (1 hunk)
- app/src/main/java/com/flowfoundation/wallet/page/component/deeplinking/DeepLinkingActivity.kt (2 hunks)
- app/src/main/java/com/flowfoundation/wallet/page/component/deeplinking/PendingActionHelper.kt (2 hunks)
Actionable Comments (1)
-
app/src/main/java/com/flowfoundation/wallet/manager/token/FungibleTokenListManager.kt [264-266]
possible issue: "Potential race condition in token list filtering"
Skipped Comments (3)
-
app/src/main/java/com/flowfoundation/wallet/manager/walletconnect/WalletConnectDelegate.kt [38-42]
best practice: "Potential memory leak in session tracking variables"
-
app/src/main/java/com/flowfoundation/wallet/manager/token/FungibleTokenListManager.kt [318-320]
performance: "Potential performance issue in token list operations"
-
app/src/main/java/com/flowfoundation/wallet/manager/walletconnect/WalletConnectRequestDispatcher.kt [318-321]
enhancement: "Retry mechanism could cause excessive delays"
| if (isHideDustTokens()) { | ||
| val displayListSnapshot = currentDisplayTokenList.toList() | ||
| val filteredList = tokenList.filter { it.tokenBalanceInUSD() > BigDecimal(0.01) }.filter { verified -> displayListSnapshot.any{ it.isSameToken(verified.contractId()) } } |
There was a problem hiding this comment.
The filtering operation on tokenList is not thread-safe. Since displayListSnapshot is captured before filtering, there could be a race condition if the list is modified between capturing the snapshot and filtering. Consider using atomic operations or proper synchronization.
Related Issue
Closes #1044
Summary of Changes
Need Regression Testing
Risk Assessment
Additional Notes
Screenshots (if applicable)