feat(nostr): make publish drift queryable and self-healing
Nostr publish failures are silently swallowed — inventory counters drift with no retry and no operator signal
Confirm publishes against the relay's OK, not the send queue
feat(nostr): make publish drift queryable and self-healing
padreug
created branch feat/nostr-publish-reconciliation in aiolabs/events
2026-09-26 21:45:55 +00:00
On-chain ticket sales via native lnbits on-chain (no SatsPay)
Funding source for this is LNDRest, and the fork's LndRestWallet already carries the whole on-chain surface this needs — lnbits/wallets/lndrest.py on dev:
fix(nostr): log publish skips at WARNING instead of silently
fix(nostr): log publish skips at WARNING instead of silently
Rebase fork onto upstream v1.6.8 (waves / on-chain / approval reconciliation)
Two notes for when this runs
amount_tickets is remaining in one place and capacity in another — event goes "sold out" at half capacity
amount_tickets is remaining in one place and capacity in another — event goes "sold out" at half capacity
Duplicate of #34, which diagnosed the same conflation in September with better evidence — it also found the part I missed, that the 10 of 17 inflation comes from the webapp reconstructing a…
A lost NIP-52 republish is permanent — nothing reconciles the relay copy
A lost NIP-52 republish is permanent — nothing reconciles the relay copy
Duplicate of #35, which covers the same drift with more evidence (the 2026-09-05 aio-demo incident) and a fuller proposal. Filed this before checking the tracker — my mistake.
amount_tickets conflates "remaining" with "total capacity" — inflated ticket totals + double-subtracted buyer cap
Upstream review — argues against the
Upstream review — argues against the capacity column
Nostr publish failures are silently swallowed — inventory counters drift with no retry and no operator signal