Repository navigation
Conversation
This was referenced Oct 6, 2026
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.
Fixes #485
This PR records outgoing RBF fee boosts through shared core APIs and preserves the recorded rate during activity sync, so the replacement shows the correct confirmation estimate.
Depends on bitkit-core #166. Companion: Android #1429.
Draft dependency gate: the published 0.5.18 SDK does not expose the two new APIs. Before this PR is ready, merge and publish the core fix, update the dependency to that release, and rerun integration checks against the released SDK. The local simulator SDK package and project override are deliberately excluded from the PR. Current core master includes SDK changes beyond 0.5.18; those must be accounted for when updating the dependency.
Description
Out of Scope
Design
N/A — no UI changes.
Preview
Simulator.Screen.Recording.-.iPhone.17.-.2026-10-06.at.13.24.16.mov
Simulator.Screen.Recording.-.iPhone.17.-.2026-10-06.at.13.37.15.mov
QA Notes
Journeys
rbf-replacement-fee-rate.xml— verifies that a low-fee outgoing transaction's RBF replacement shows the boosted confirmation estimate, retains its real total fee after sync/reopening, and confirms normally.The author reproduced the issue and verified the fix in the simulator using the local SDK built on a 0.5.18-compatible core snapshot. Additional iOS checks verified contact/tag carryover after boosting and reopening, and ordinary send/receive behavior. The Android RBF fix has also been manually verified using the corresponding local core SDK. These checks do not claim the full shared journey or all Android regression paths were executed; the journey remains listed for reviewer execution against the final released SDK.
Manual Tests
N/A
Automated Checks
RbfActivityFeeRateTests.swift— eight regressions cover both replacement arrival orders, stale snapshots, repeated boosts, failed boosts, metadata preservation, removed originals, and hardware-wallet isolation.RbfActivityFeeRateTests.swift,ActivityListTest.swift,ActivityHardwareTests.swift, andTransferServiceActivityTests.swift.