Node
Node copied to clipboard
GH-598: Payments Revamp: Minimal Viable Product
A brief explanation of how it works, plus some instructions for testing in the attached file: Payment mechanism testing guidlines.txt
[!NOTE] Revamps the payments pipeline by replacing pending payables with sent/failed records, adding receipt/status processing and DB migration, overhauling blockchain submission/pricing, updating schedulers/config, and reworking errors, defaults, and tests.
- Payments/Data Model:
- Replace
pending_payablewith newsent_payableandfailed_payabletables; add migration11→12to create/drop accordingly.- Introduce explicit tx status tracking (pending/succeeded/reverted) and validation history.
- Accounting/Scanners:
- Add
pending_payable_scannerwithtx_receipt_interpreterand richutils(caching, result composition, retry hints).- Rework scan schedulers and receivable scanner modules.
- Blockchain Layer:
- Overhaul bridge/agent/interface: price templates (new/retry), submit batches, map RPC/internal errors, and return structured receipt/status results.
- Add chain-aware default scan intervals.
- Config/Bootstrap:
- Replace
suppress_initial_scanswithautomatic_scans_enabled; adjust CLI validation and defaults.- Error & Status Modeling:
- Add
AppRpcError/InternalErrorandValidationStatuswith serde support; remove legacy types.- Tests/Utils:
- Extensive test updates; new recorder counter-messages, serializer mocks, and helpers.
Written by Cursor Bugbot for commit 06dd37499d57594de58cb200c8d1d604cedccb45. This will update automatically on new commits. Configure here.