Skip to content

[v0.35.0] Sync master with release - #891

Merged
raul-oliveira merged 14 commits into
masterfrom
raul-oliveira/chore/sync-master-v0.35.0
Jul 15, 2026
Merged

[v0.35.0] Sync master with release#891
raul-oliveira merged 14 commits into
masterfrom
raul-oliveira/chore/sync-master-v0.35.0

Conversation

@raul-oliveira

@raul-oliveira raul-oliveira commented Jul 14, 2026

Copy link
Copy Markdown
Contributor

Acceptance Criteria

  • Sync the master branch with the changes from the latest release v0.35.0

Notes

  • After this sync, master will be at version 0.35.0 with @hathor/hathor-rpc-handler 5.0.0, a combination that the published v0.35.0 package (built/tested with 4.4.0) never shipped.
  • This is expected: master advanced past the release cut — feat: consent to dApp balance access at connection time #873 bumped @hathor/hathor-rpc-handler 4.4.05.0.0 and is not part of the 0.35.0 release. The conflict on package.json / package-lock.json was resolved by keeping master's 5.0.0 and stamping the version to 0.35.0, without touching the release branch.

Security Checklist

  • Make sure you do not include new dependencies in the project unless strictly necessary and do not include dev-dependencies as production ones. More dependencies increase the possibility of one of them being hijacked and affecting us.

Summary by CodeRabbit

  • New Features

    • Improved PIN validation with clearer error messages and automatic focus in the transaction confirmation dialog.
    • External token explorer links now open consistently in the appropriate browser window.
    • Feature settings are refreshed when starting the wallet for more reliable configuration.
  • Bug Fixes

    • Removed deleted zero-balance token metadata from all relevant wallet views.
    • After successfully sending tokens, closing the confirmation returns you to the wallet.
  • Release

    • Updated the application version to 0.35.0.

raul-oliveira and others added 12 commits May 12, 2026 13:19
Release candidate v0.35.0-rc.1
… Home) (#878)

The fee-token send refactor replaced the ModalPin/ModalSendTx flow with
ModalTransactionOverview and ModalSendSuccess, dropping two behaviors:

- The PIN field was no longer auto-focused. The overview modal relied on
  the input's `autoFocus`, which fires while the modal is still
  display:none, so the browser ignores it. Focus the field on Bootstrap's
  `shown.bs.modal` event instead (the old ModalPin approach), which also
  restores focus across every flow that uses the shared overview modal.

- The success modal's "Close" (and top-right "x") only reset the form and
  stayed on the Send screen. They now navigate to the wallet home
  (/wallet/), restoring the pre-refactor behavior; the now-dead resetForm
  helper is removed.
… PIN) (#881)

Fixes a batch of UX regressions introduced in the 0.35.0 release candidates:

- Address mode kept across passphrase changes: adding/removing a passphrase no
  longer forces the wallet into multi-address mode. startWallet re-syncs the
  feature toggles from the live Unleash singleton before reading the
  single-address flag, so the clean_data reset in the passphrase flow no longer
  makes the flag read a stale default.

- Import Tokens banner no longer advertises phantom tokens: unregistering a
  token with no history and zero balance now clears it from allTokens and
  tokensBalance, so fetchUnknownTokens stops reporting a token the import modal
  cannot resolve.

- Easy Import Tokens "Open in Explorer" opens the system default browser via
  helpers.openExternalURL instead of a new Electron window.

- Send Tokens confirmation validates the PIN with wallet.checkPin before
  sending, showing "Invalid PIN" on the review screen instead of a generic
  "Transaction failed" after a failed send attempt.
@coderabbitai

coderabbitai Bot commented Jul 14, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

This PR updates transaction PIN handling, send completion navigation, token explorer links, zero-balance token cleanup, feature-toggle synchronization, the package version, and a Lavamoat policy override.

Changes

Transaction and token UI

Layer / File(s) Summary
PIN validation and send completion
src/components/ModalTransactionOverview.js, src/screens/SendTokens.js
PIN validation now reports invalid entries separately, focuses the PIN field when the modal opens, and successful sends navigate to /wallet/.
Token explorer link handling
src/components/ModalTokenImport.js
Explorer links open through helpers.openExternalURL instead of default new-tab navigation.

Feature-toggle synchronization

Layer / File(s) Summary
Unleash toggle rehydration
src/sagas/featureToggle.js, src/sagas/wallet.js
Toggle rehydration is centralized in syncFeatureTogglesFromClient and invoked during toggle updates and wallet startup.

Token metadata cleanup

Layer / File(s) Summary
Zero-balance token removal
src/reducers/index.js
Zero-balance token entries are removed from both tokensBalance and allTokens.

Release and policy metadata

Layer / File(s) Summary
Release and policy metadata
package.json, lavamoat/webpack/policy-override.json
The package version is set to 0.35.0, and Cypress lodash is allowed to use setTimeout and clearTimeout.

Estimated code review effort: 3 (Moderate) | ~20 minutes

Possibly related PRs

Suggested reviewers: pedroferreira1

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the PR as syncing master with the v0.35.0 release.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch raul-oliveira/chore/sync-master-v0.35.0

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@raul-oliveira raul-oliveira self-assigned this Jul 14, 2026
@raul-oliveira
raul-oliveira requested a review from tuliomir July 14, 2026 15:14
@raul-oliveira raul-oliveira moved this from Todo to In Progress (Done) in Hathor Network Jul 14, 2026
Merge origin/release into master. Resolve package.json and package-lock.json conflict by keeping master's @hathor/hathor-rpc-handler 5.0.0 and stamping version 0.35.0.
@raul-oliveira
raul-oliveira force-pushed the raul-oliveira/chore/sync-master-v0.35.0 branch from 0d65c9b to 23f5e44 Compare July 14, 2026 15:24
@github-project-automation github-project-automation Bot moved this from In Progress (Done) to In Review (WIP) in Hathor Network Jul 15, 2026

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@src/reducers/index.js`:
- Around line 679-683: Update the cleanup logic around balance and newBalance so
a missing newBalance[uid] is treated the same as a strictly zero
available-plus-locked balance. Ensure both newBalance[uid] and newAllTokens[uid]
are deleted in either case, while preserving existing handling for nonzero
balances.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 29e58cde-914e-4135-bec6-52c115e2bb3a

📥 Commits

Reviewing files that changed from the base of the PR and between 6ab3b23 and e11d2f0.

⛔ Files ignored due to path filters (1)
  • package-lock.json is excluded by !**/package-lock.json
📒 Files selected for processing (8)
  • lavamoat/webpack/policy-override.json
  • package.json
  • src/components/ModalTokenImport.js
  • src/components/ModalTransactionOverview.js
  • src/reducers/index.js
  • src/sagas/featureToggle.js
  • src/sagas/wallet.js
  • src/screens/SendTokens.js

Comment thread src/reducers/index.js
@raul-oliveira
raul-oliveira merged commit 97b3807 into master Jul 15, 2026
3 checks passed
@github-project-automation github-project-automation Bot moved this from In Review (WIP) to Waiting to be deployed in Hathor Network Jul 15, 2026
@raul-oliveira raul-oliveira moved this from Waiting to be deployed to Done in Hathor Network Jul 15, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

3 participants