feat(wallet): accelerate storage synchronization - #486
Draft
BraydenLangley wants to merge 9 commits into
Draft
Conversation
BraydenLangley
force-pushed
the
agent/wallet-sync-throughput
branch
5 times, most recently
from
August 17, 2026 21:51
82c5e6f to
568e029
Compare
BraydenLangley
force-pushed
the
agent/wallet-sync-throughput
branch
from
August 17, 2026 21:57
568e029 to
3d420ab
Compare
Codecov Report❌ Patch coverage is 📢 Thoughts on this report? Let us know! |
|
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.



Program and scope
getSyncChunkreads dominated replication time. A legacy provider also reproduced HTTP 413 when the requested rough page size fit the request contract but the serialized JSON-RPC response exceeded the service ceiling.74ee8521c9Impact
Affected packages/services and intended versions (publication occurs only through the release workflow after approval):
@bsv/wallet-toolbox2.11.0@bsv/wallet-toolbox-client2.11.0@bsv/wallet-toolbox-mobile2.11.0Implementation
10, 80, 160) instead of 25.(userId, provenTxId)and(userId, txid)transaction indexes. SQLiteEXPLAINtests prove both plans use the new indexes.syncStateIdinto page requests and use it to disambiguate legacy duplicate checkpoints.getSyncChunkonly, recognize HTTP 413, halve the requested rough response budget, retry at most four times, and remember the successful limit for later pages. The original request object is not mutated, unrelated failures are not retried, and write RPCs are never replayed.Verification
quick_checkpassed.74ee8521c9passed 32 checks with 7 expected skips, 0 failures, and 0 pending checks. The PR remains draft for operator review.74ee8521c9Security and dependencies
Compatibility
includeTotalsandsyncStateId; older providers ignore the additive request fields.Release and operations
Rollout remains staged: review and merge the packages, publish through the governed release workflow, rebuild storage services against the release, validate a non-production remote-to-local sync, then enable the consumer UI. Do not advertise production local backup until the consumer progress/background/cancel follow-ups are validated.
Completion evidence