diff options
| author | Adam Soltys <[email protected]> | 2026-06-24 23:48:53 -0700 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2026-06-24 23:48:53 -0700 |
| commit | d4db7d545d51cde2f5a98426c1839e0fe0745efa (patch) | |
| tree | 455ddf9c4d1ffff97d184ab3d19315d2f2728d6c /src/api.js | |
| parent | faceb2eef8abe14302b057d835f0449bcd06bc59 (diff) | |
| download | coinosv3-d4db7d545d51cde2f5a98426c1839e0fe0745efa.tar.gz coinosv3-d4db7d545d51cde2f5a98426c1839e0fe0745efa.zip | |
Detect stuck low-fee txs and stop actively monitoring them
A pending tx is judged 'stuck' once it has waited ~10 blocks (≈100 min) and
its fee rate (fee/vsize) is below the mempool's current floor (minimumFee) —
i.e. it's been purged and won't confirm without a bump. _txSummary now records
vsize and a firstSeen timestamp (persisted in cache) to support this.
Stuck txs are dropped from active monitoring: excluded from the watched-address
set and from the fast-poll trigger, so they don't hold a socket slot or keep us
in the 6s lane. The slow ~25s reconcile still catches one if the floor later
drops and it confirms. History flags them (⚠ stuck) and the detail view explains
it — pointing outgoing ones at the existing fee bump.
Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
Diffstat (limited to 'src/api.js')
0 files changed, 0 insertions, 0 deletions
