diff options
| author | Adam Soltys <[email protected]> | 2026-09-04 19:04:08 -0700 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2026-09-04 19:04:11 -0700 |
| commit | abf0226dd0b2e7d50c378d266ae608e651c486de (patch) | |
| tree | d2ce1b965dfdd4d63629eff692b906b9861d4414 /strsrv | |
| parent | 671a114060ceaa7922affa00f90857bf99317d0a (diff) | |
| download | coinos-server-abf0226dd0b2e7d50c378d266ae608e651c486de.tar.gz coinos-server-abf0226dd0b2e7d50c378d266ae608e651c486de.zip | |
payments: finalize settled keysends in sendKeysend
keysend blocks until it settles, so a successful return already carries
the preimage. Previously only the caller was expected to confirm the
record, and the NWC pay_keysend path never did, leaving successful
keysends stuck pending forever (check() can't rescue them since the
label isn't a bolt11). Add finalizeKeysend(): flip pending->confirmed,
derive the real fee from amount_sent_msat, refund the unused fee
reserve, and refuse to re-create a record a concurrent reverse() already
removed.
Co-Authored-By: Claude Fable 5.1 <[email protected]>
Claude-Session: https://claude.ai/code/session_014uxZLvYS4gH9UqUX2Ey8TV
Diffstat (limited to 'strsrv')
0 files changed, 0 insertions, 0 deletions
