diff options
| author | Adam Soltys <[email protected]> | 2026-08-27 15:19:52 -0700 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2026-08-27 15:19:52 -0700 |
| commit | 0080e6231cd5f23dfb9260e1a846153b01904903 (patch) | |
| tree | 16dbed02a08788955a08e33288030aa76d725564 /setup.sh | |
| parent | 2b6d742672400d51269520447783f707e8f6f91a (diff) | |
| download | coinos-server-0080e6231cd5f23dfb9260e1a846153b01904903.tar.gz coinos-server-0080e6231cd5f23dfb9260e1a846153b01904903.zip | |
scripts: stubborn peer-force LN payer + boltz stuck-swap recovery
Add scripts/pay-hard.ts: a payment helper for well-connected but inbound-scarce
destinations (exchange nodes) that cost-first payers (xpay/renepay) can't reach.
When the normal xpay attempt fails, it enumerates the destination's peers, keeps
the ones we can reach (preferring peers we already channel with enough outbound),
and for each builds a route forced through peer->dest with the invoice's correct
final CLTV, probes it with an unclaimable random hash, and pays through the first
path that reaches the destination. Probe-before-send, refuses to start with a
payment already pending, and stops rather than risk a second in-flight payment.
Works against either the main node (cl) or the boltz node (bcln).
Add scripts/boltz-recover-stuck.ts: a cron watcher that finds submarine swaps
stuck at invoice.pending (lockup confirmed, invoice unexpired, idle past a
threshold) and runs pay-hard against bcln to complete them, then lets boltz
reconcile (restarting it only if it hasn't picked up the preimage within a grace
period).
Co-Authored-By: Claude Opus 4.8 <[email protected]>
Claude-Session: https://claude.ai/code/session_01DKkev76U4YRnRAqM6jqbae
Diffstat (limited to 'setup.sh')
0 files changed, 0 insertions, 0 deletions
