| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | don't remove orphan payment ids from user payment lists | Adam Soltys | 2026-05-17 | 1 | -6/+4 |
| | | | | | | | | | | | When the underlying payment record is missing, removing the id from the user's payments list was destructive — a transiently unavailable record (arc fallback miss, database hiccup) would cause us to permanently drop the pointer. Leave the orphan in place so a back-fill from an RDB backup can restore the record under the same id later. Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]> | ||||
| * | mirror payment records to arc + atomic /confirm lock to prevent double-credits | Adam Soltys | 2026-05-17 | 1 | -3/+25 |
| | | | | | | | | | | | | | | | | | | | | | | Apr 29 double-credit prevention, ported from master 0e368dab and adapted to staging's hono/tigerbeetle structure. Two parallel callers of /confirm (walletnotify, catchUp, bulk sweeps) could each read p.confirmed=false and each run tbConfirm — doubling the pending→balance transfer. tbConfirm itself isn't idempotent on its own, so the race materializes as a real double-credit even with TB. - routes/payments.ts: SET NX EX 60 lock around the confirmation block keyed by `confirmlock:${txid}:${vout}`. Concurrent callers short-circuit cleanly. Released on success and on every early-return. - lib/payments.ts credit() + routes/payments.ts /confirm: mirror payment + invoice records and the `payment:<txid>:<vout>` / `payment:<hash>` pointer keys into arc as soon as they're written. gf() will then find the prior credit via arc fallback even if the main-db copy is wiped by a future data-loss event. Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]> | ||||
| * | remove /gateway endpoint | Adam Soltys | 2026-05-17 | 1 | -8/+0 |
| | | | | | | | | | | | | Unauthenticated arbitrary db.set abuse vector. Exploited on the master deployment to inflate user balances and override safety controls in real time, leading to a hot-wallet drain. Route and handler both fully removed; if a webhook-by-short-channel-id mapping is ever needed again it must be rebuilt with auth + SCID format validation + webhook URL validation + per-user ownership check. Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]> | ||||
| * | verify ark amounts | Adam Soltys | 2026-03-22 | 1 | -18/+29 |
| | | |||||
| * | fix: add account ownership checks and harden PIN validation | Adam Soltys | 2026-03-17 | 1 | -2/+6 |
| | | | | | | | | | - Validate account ownership (aid) before allowing ark send/sync/vault operations and in debit/sendOnchain as defense-in-depth - Harden PIN check to reject missing/empty pin when user has one set Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]> | ||||
| * | tx recalc | Adam Soltys | 2026-03-11 | 1 | -1/+1 |
| | | |||||
| * | try to cpfp piggyback on in flight withdrawals | Adam Soltys | 2026-03-11 | 1 | -1/+0 |
| | | |||||
| * | remove bumpestimate | Adam Soltys | 2026-03-11 | 1 | -27/+7 |
| | | |||||
| * | fund authorizations | Adam Soltys | 2026-03-04 | 1 | -6/+53 |
| | | |||||
| * | funds route | Adam Soltys | 2026-03-04 | 1 | -0/+19 |
| | | |||||
| * | vault wallet fixes | Adam Soltys | 2026-03-03 | 1 | -1/+1 |
| | | |||||
| * | sync vault | Adam Soltys | 2026-03-03 | 1 | -0/+69 |
| | | |||||
| * | request tuning | Adam Soltys | 2026-03-03 | 1 | -20/+45 |
| | | |||||
| * | fee bumping | Adam Soltys | 2026-03-02 | 1 | -31/+35 |
| | | |||||
| * | log ark wallet balance | Adam Soltys | 2026-03-01 | 1 | -5/+2 |
| | | |||||
| * | fix hono route order | Adam Soltys | 2026-02-28 | 1 | -0/+12 |
| | | |||||
| * | fix typescript issues | Adam Soltys | 2026-02-28 | 1 | -9/+9 |
| | | |||||
| * | migrate to hono | Adam Soltys | 2026-02-28 | 1 | -193/+165 |
| | | |||||
| * | fix ark vault to custodial sends | Adam Soltys | 2026-02-26 | 1 | -29/+100 |
| | | |||||
| * | formatting | Adam Soltys | 2026-02-24 | 1 | -57/+29 |
| | | |||||
| * | migrate funds to tb | Adam Soltys | 2026-02-18 | 1 | -8/+8 |
| | | |||||
| * | passkey auth | Adam Soltys | 2026-02-16 | 1 | -1/+30 |
| | | |||||
| * | fix custodial bitcoin sends | Adam Soltys | 2026-02-15 | 1 | -7/+17 |
| | | |||||
| * | ark refresh | Adam Soltys | 2026-02-15 | 1 | -0/+1 |
| | | |||||
| * | fix custodial sends | Adam Soltys | 2026-02-15 | 1 | -15/+12 |
| | | |||||
| * | custodial ark sends | Adam Soltys | 2026-02-14 | 1 | -15/+51 |
| | | |||||
| * | ark payment notifications | Adam Soltys | 2026-02-13 | 1 | -1/+33 |
| | | |||||
| * | fix onchain confirmations | Adam Soltys | 2026-02-13 | 1 | -29/+8 |
| | | |||||
| * | filter null managers | Adam Soltys | 2026-02-10 | 1 | -2/+2 |
| | | |||||
| * | ark fixes | Adam Soltys | 2026-02-09 | 1 | -103/+34 |
| | | |||||
| * | ark fixes | Adam Soltys | 2026-02-09 | 1 | -38/+169 |
| | | |||||
| * | payment forwarding | Adam Soltys | 2026-02-06 | 1 | -8/+18 |
| | | |||||
| * | fix ark handling | Adam Soltys | 2026-02-06 | 1 | -4/+7 |
| | | |||||
| * | tigerbeetle | Adam Soltys | 2026-02-06 | 1 | -15/+7 |
| | | |||||
| * | remove reconcile payments | Adam Soltys | 2026-02-06 | 1 | -0/+6 |
| | | |||||
| * | zmq logic | Adam Soltys | 2026-02-06 | 1 | -10/+46 |
| | | |||||
| * | custodial ark payments | Adam Soltys | 2026-02-06 | 1 | -25/+19 |
| | | |||||
| * | ark sync | Adam Soltys | 2026-02-06 | 1 | -1/+61 |
| | | |||||
| * | ark | Adam Soltys | 2026-02-06 | 1 | -0/+67 |
| | | |||||
| * | consult archive for older payments | Adam Soltys | 2026-01-30 | 1 | -2/+3 |
| | | |||||
| * | read payments from archive | Adam Soltys | 2026-01-22 | 1 | -5/+18 |
| | | |||||
| * | check username | Adam Soltys | 2026-01-19 | 1 | -1/+1 |
| | | |||||
| * | get lnaddress fee from body | Adam Soltys | 2025-11-17 | 1 | -1/+2 |
| | | |||||
| * | remove default fee | Adam Soltys | 2025-11-16 | 1 | -2/+2 |
| | | |||||
| * | don't credit dust | Adam Soltys | 2025-09-29 | 1 | -0/+1 |
| | | |||||
| * | sendinvoice support | Adam Soltys | 2025-09-18 | 1 | -0/+29 |
| | | |||||
| * | received flag for payments | Adam Soltys | 2025-09-13 | 1 | -10/+10 |
| | | |||||
| * | check for existence | Adam Soltys | 2025-08-10 | 1 | -2/+2 |
| | | |||||
| * | authorizations | Adam Soltys | 2025-08-10 | 1 | -5/+25 |
| | | |||||
| * | authorization claimed flag | Adam Soltys | 2025-08-08 | 1 | -2/+3 |
| | | |||||
