-
Notifications
You must be signed in to change notification settings - Fork 90
feat: refetch transaction history button #19544
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
Conversation
✔️ status-desktop/prs/linux/x86_64/tests-nim/PR-19544#1 🔹 ~7 min 24 sec 🔹 2b08b28 🔹 📦 tests/nim package |
✔️ status-desktop/prs/android/arm64/package/PR-19544#1 🔹 ~9 min 49 sec 🔹 2b08b28 🔹 📦 android/arm64 package |
✔️ status-desktop/prs/linux/x86_64/tests-ui/PR-19544#1 🔹 ~13 min 🔹 2b08b28 🔹 📦 tests/ui package |
✔️ status-desktop/e2e/prspr19544 🔹 ~17 min 🔹 2b08b28 🔹 📦 tests/e2e package |
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.
Pull request overview
This PR adds a "Refetch transaction history" button in Advanced settings to allow users to clear and refetch their activity storage. The implementation connects the UI through the backend to the status-go service, and updates the Activity beta tag message to direct users to this new feature.
Key changes:
- Added refetch transaction history functionality through the entire application stack (UI → stores → modules → services → backend)
- Simplified the Activity beta tag message to reference the new refetch button instead of blockchain explorers
- Updated translation files with new strings for the refetch feature
Reviewed changes
Copilot reviewed 15 out of 16 changed files in this pull request and generated 7 comments.
Show a summary per file
| File | Description |
|---|---|
| vendor/status-go | Updated subproject commit to include backend refetch support |
| ui/imports/shared/views/HistoryBetaTag.qml | Simplified beta tag message and removed explorer link logic |
| ui/imports/shared/status/StatusSettingsLineButton.qml | Added button display capability (unused in this PR) |
| ui/app/AppLayouts/Profile/views/AdvancedView.qml | Added UI for refetch transaction history button |
| ui/app/AppLayouts/Profile/stores/AdvancedStore.qml | Added store method to trigger refetch |
| src/backend/wallet.nim | Added RPC wrapper for refetch functionality |
| src/app_service/service/wallet_account/service.nim | Added service layer refetch method |
| src/app/modules/main/profile_section/wallet/view.nim | Added view layer refetch method |
| src/app/modules/main/profile_section/wallet/module.nim | Added module layer refetch method |
| src/app/modules/main/profile_section/wallet/io_interface.nim | Added interface definition for refetch |
| src/app/modules/main/profile_section/wallet/controller.nim | Added controller layer refetch method |
| ui/i18n/*.ts | Added translations for refetch feature strings |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| property bool isButton: false | ||
| property string buttonText: "" |
Copilot
AI
Dec 10, 2025
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.
The isButton and buttonText properties are added but never used in the PR. The refetch button in AdvancedView.qml uses a custom RowLayout instead of StatusSettingsLineButton. Consider removing these unused properties or documenting why they're being added for future use.
ui/i18n/qml_ko.ts
Outdated
| <message> | ||
| <source>Activity is in beta. If transactions are missing, check %1.</source> | ||
| <translation>활동은 베타입니다. 거래가 누락되었다면 %1을(를) 확인하세요.</translation> | ||
| <source>Activity is in beta. For any issues, go to Settings → Advanced → Refresh transaction history.</source> |
Copilot
AI
Dec 10, 2025
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.
Inconsistent terminology: The message uses 'Refresh' but the feature is called 'Refetch' everywhere else in the codebase (button text, function names, translation keys). This should be 'Refetch transaction history' for consistency.
| <source>Activity is in beta. For any issues, go to Settings → Advanced → Refresh transaction history.</source> | |
| <source>Activity is in beta. For any issues, go to Settings → Advanced → Refetch transaction history.</source> |
ui/i18n/qml_es.ts
Outdated
| <message> | ||
| <source>Activity is in beta. If transactions are missing, check %1.</source> | ||
| <translation>La actividad está en beta. Si faltan transacciones, consulta %1.</translation> | ||
| <source>Activity is in beta. For any issues, go to Settings → Advanced → Refresh transaction history.</source> |
Copilot
AI
Dec 10, 2025
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.
Inconsistent terminology: The message uses 'Refresh' but the feature is called 'Refetch' everywhere else in the codebase. This should be 'Refetch transaction history' for consistency.
| <source>Activity is in beta. For any issues, go to Settings → Advanced → Refresh transaction history.</source> | |
| <source>Activity is in beta. For any issues, go to Settings → Advanced → Refetch transaction history.</source> |
ui/i18n/qml_base_lokalise_en.ts
Outdated
| </message> | ||
| <message> | ||
| <source>Activity is in beta. If transactions are missing, check %1.</source> | ||
| <source>Activity is in beta. For any issues, go to Settings → Advanced → Refresh transaction history.</source> |
Copilot
AI
Dec 10, 2025
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.
Inconsistent terminology: The message uses 'Refresh' but the feature is called 'Refetch' everywhere else in the codebase. This should be 'Refetch transaction history' for consistency.
ui/i18n/qml_base_en.ts
Outdated
| </message> | ||
| <message> | ||
| <source>Activity is in beta. If transactions are missing, check %1.</source> | ||
| <source>Activity is in beta. For any issues, go to Settings → Advanced → Refresh transaction history.</source> |
Copilot
AI
Dec 10, 2025
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.
Inconsistent terminology: The message uses 'Refresh' but the feature is called 'Refetch' everywhere else in the codebase. This should be 'Refetch transaction history' for consistency.
| <source>Activity is in beta. For any issues, go to Settings → Advanced → Refresh transaction history.</source> | |
| <source>Activity is in beta. For any issues, go to Settings → Advanced → Refetch transaction history.</source> |
| } | ||
|
|
||
| function refetchTxHistory() { | ||
| if(!root.walletModule) |
Copilot
AI
Dec 10, 2025
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.
Missing space after 'if' keyword. Should be if (!root.walletModule) for consistency with coding style conventions.
| if(!root.walletModule) | |
| if (!root.walletModule) |
| proc refetchTxHistory*(self: Service) = | ||
| try: | ||
| discard status_go_wallet.refetchTxHistory() | ||
| except Exception as e: | ||
| let errDescription = e.msg | ||
| error "error: ", errDescription | ||
|
|
Copilot
AI
Dec 10, 2025
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.
The error handling catches exceptions but doesn't provide user feedback about success or failure. Consider returning a boolean or raising specific errors to inform the user whether the refetch operation succeeded.
| proc refetchTxHistory*(self: Service) = | |
| try: | |
| discard status_go_wallet.refetchTxHistory() | |
| except Exception as e: | |
| let errDescription = e.msg | |
| error "error: ", errDescription | |
| proc refetchTxHistory*(self: Service): bool = | |
| try: | |
| discard status_go_wallet.refetchTxHistory() | |
| return true | |
| except Exception as e: | |
| let errDescription = e.msg | |
| error "error: ", errDescription | |
| return false |
2b08b28 to
604c150
Compare
✔️ status-desktop/prs/linux/x86_64/tests-nim/PR-19544#2 🔹 ~9 min 3 sec 🔹 604c150 🔹 📦 tests/nim package |
✔️ status-desktop/prs/linux/x86_64/tests-ui/PR-19544#2 🔹 ~13 min 🔹 604c150 🔹 📦 tests/ui package |
604c150 to
6c4e234
Compare
6c4e234 to
30f69b6
Compare
✔️ status-desktop/prs/linux/x86_64/tests-nim/PR-19544#4 🔹 ~6 min 44 sec 🔹 30f69b6 🔹 📦 tests/nim package |
✔️ status-desktop/prs/android/arm64/package/PR-19544#4 🔹 ~9 min 56 sec 🔹 30f69b6 🔹 📦 android/arm64 package |
✔️ status-desktop/e2e/prspr19544 🔹 ~15 min 🔹 30f69b6 🔹 📦 tests/e2e package |
✔️ status-desktop/prs/linux/x86_64/tests-ui/PR-19544#5 🔹 ~14 min 🔹 30f69b6 🔹 📦 tests/ui package |
What does the PR do
Fixes #19542
status-go part: status-im/status-go#7188
Add button in Advanced settings to let users clear fetched activity storage and trigger a refetch.
Refer to this button in Activity beta tag.