events/nostr
Padreug dc2a296bad
Some checks failed
lint.yml / fix(nostr): retry a dequeued req instead of dropping it (pull_request) Failing after 0s
fix(nostr): retry a dequeued req instead of dropping it
`run_forever` took a req off the queue and then sent it; if the send
raised, the req was already gone and the publish was lost outright,
with the caller long since told it succeeded (the queue put returns
immediately, and the publisher logs "Published" straight after).

Hold the req across the reconnect and retry, bounded at three attempts
so one unsendable message can't wedge every later publish behind it.

This narrows but does not close the gap: a send is still confirmed at
the queue, not by the relay's OK, so a half-dead socket can accept
bytes that never arrive. Closing that needs OK handling in
publish_nostr_event.

Refs #35
2026-09-26 23:45:47 +02:00
..
__init__.py feat: add NIP-52 Nostr publish + sync of calendar events 2026-05-22 09:20:00 +02:00
event.py feat: add NIP-52 Nostr publish + sync of calendar events 2026-05-22 09:20:00 +02:00
nostr_client.py fix(nostr): retry a dequeued req instead of dropping it 2026-09-26 23:45:47 +02:00