-
Notifications
You must be signed in to change notification settings - Fork 52
Open
Description
Summary
Add manual/custom fee entry and include/subtract-fee behavior parity.
Complexity
XL
Dependencies
100802
Global Constraints
- All implementation lives under
gui-qml/. - No GUI runtime dependency on
bitcoin/src/qtcomponents. Reused logic must be moved/ported intogui-qml/. - Do not change
interfaces::Walletorinterfaces::Nodein this version. - Issue completion must satisfy
DefinitionOfDone.md.
Scope
- Replace hardcoded fee rate in
WalletQmlModel::prepareTransactionwith model-driven settings. - Add custom fee entry UI with validation and presets coexistence.
- Expose subtract-fee-from-amount in single and multi-recipient flows.
- Update review screen amounts (recipient totals, fee, effective send) correctly.
Acceptance Criteria (DoD-Aligned)
- User can switch between preset fee targets and custom fee input.
- Subtract fee from amount toggles correctly and matches transaction result.
- Validation handles insufficient funds, dust, and invalid fee input cleanly.
Required Tests
- C++ unit tests: Unit tests for fee/subtract calculation and coin control mapping.
- QML QTest: QTests for fee UI states and subtract toggle behavior.
- Python E2E (
qml/test/testbridge.h): E2E flow: send with custom fee + send with subtract-fee; validate review and broadcast outcomes.
Implementation Notes
- Likely touches
qml/models/sendrecipient.*,qml/models/walletqmlmodel.*,qml/components/FeeSelection.qml, send review pages.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels