Repository navigation
Various patches - #1501
Merged
Merged
Various patches#1501
Conversation
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## staging #1501 +/- ##
===========================================
+ Coverage 11.66% 13.89% +2.22%
===========================================
Files 1136 1137 +1
Lines 114405 114625 +220
===========================================
+ Hits 13349 15924 +2575
+ Misses 101056 98701 -2355 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
Reject invalid version/platform inputs before changing project files, and stop prebuild work after the first failure. Includes Dart host tests. Co-authored-by: julian <julian@julians-Virtual-Machine.local>
Release Isar subscriptions with provider lifecycles and retain desktop preferences during teardown, preventing late updates into disposed state. Co-authored-by: slopbot9k <slop9000@tuta.io>
Add a Dart launcher and real UI/native create/reopen harness for the 24 mnemonic-wallet defaults. Production changes here are limited to test controls, opt-out notification prompts, and native Epic address verification. Treat explicit build or app failures as failed phases even when completion markers appear, and drain process output before closing the log when stopping the process tree fails.
Keep focused input and cursor positions stable while estimates change. Ignore stale responses and prevent pending exchange work from updating disposed or successor forms. Schedule the frame that clears the shared loading state when a refresh finishes without changing anything else. Co-authored-by: slopbot9k <slop9000@tuta.io>
Clearing fiat input also clears the stored send amount, preventing a later unit or locale change from restoring an old amount. Covers mobile and desktop coin/token forms.
Keep controller updates separate from user edits, observe fee formatting in the main build, and preserve the exact amount passed to prepareSend.
Share concurrent refresh work and retain its lock until both history and UTXO requests finish, including failures. Handle unavailable view-only state and allow automatic retries safely. Exit stops automatic polling and returns immediately while refresh requests remain pending. Native Monero, Wownero and Salvium exits stop it through the base exit as well. Cover stalled requests, failures, late completions, late pings and reopening. Co-authored-by: slopbot9k <slop9000@tuta.io>
Create filtered lists without altering the original all/favourite wallet collections so normal views restore correctly when duress mode ends. Co-authored-by: slopbot9k <slop9000@tuta.io>
Persist and return the actual derived receiving-address index so subsequent derivations do not repeat or skip the wrong index.
Use canonical program IDs and the validated sender token program for associated-account derivation, account creation and transfer instructions. Report failed confirmations to the caller, remove their pending transfer record, and take the token program from the transfer instruction rather than its position.
Invalidate old fetch generations, serialize file resets in the worker, reject late writes and recover interrupted resets from a durable marker. Tags-only resets preserve sets. No foreground VACUUM. Refreshes restart after a shared reset, a bounded number of times, and a failed local reset is retried by the next cache read instead of disabling the cache for the session.
Key cached prices by currency and discard obsolete responses across recreated API instances, preventing USD values from appearing as BTC or replacing newer USD prices. Migrate prices cached before this change to the saved currency once at startup.
Guard each asynchronous stage against disposal, suppress late notifications and prevent disposed services from restarting their polling timers. Co-authored-by: slopbot9k <slop9000@tuta.io>
Start polling for recreated price providers and restart it when settings change currency, while retaining one active timer and a single immediate fetch. Co-authored-by: slopbot9k <slop9000@tuta.io>
Show one decimal place in both confirmation layouts, omit invalid/unknown sizes, and use exact integer rounding to preserve large atomic values. Co-authored-by: slopbot9k <slop9000@tuta.io>
julian-CStack
force-pushed
the
various-patches
branch
from
November 5, 2026 00:47
54b3740 to
d0d3fc7
Compare
A full cache reset rebuilds SparkSet, so a wallet's stored block hash may no longer exist. The incremental query then matched nothing and the wallet still advanced its checkpoint, skipping coins received before the reset. Treat an unknown hash as the start of the set.
The destination token account came from getTokenAccountsByOwner and was only checked against the System Program, so a hostile node could answer with any holder's account for the same mint. Always use the recipient's derived ATA and compare owner addresses for self-transfer detection.
The checkpoint lookup matched on block hash alone. Firo never reports one block for two groups today, but the schema allows it, and a match in another group would move the cutoff and skip this group's newer sets. Scope the lookup to the requested group.
Upstream CI formats every Dart file changed on a PR. This file was already unformatted on staging and only became a changed file with the checkpoint fixes.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.