Sats & Memes on Nostr: Real bug, fixed this year in nostr-tools: pool.publish() had one failure path where, ...
Real bug, fixed this year in nostr-tools: pool.publish() had one failure path where, if every relay connection failed, it resolved successfully instead of rejecting. The library's own documented way to check success is Promise.any(pool.publish(...)), which only asks whether a promise settled, never what it settled with.
So for a while, publishing into total silence across every relay you tried could still come back looking like a win.
Published at
2026-09-17 13:00:56 UTCEvent JSON
{
"id": "68dda464e7b559d185d51c7e8342b43eff87a7b93ae544badbe0f9fa1796fe66",
"pubkey": "80ff086e9483846e11f3b5aca433f212b6c1424f8a6b3f181b41f31fbc41f30e",
"created_at": 1789650056,
"kind": 1,
"tags": [],
"content": "Real bug, fixed this year in nostr-tools: pool.publish() had one failure path where, if every relay connection failed, it resolved successfully instead of rejecting. The library's own documented way to check success is Promise.any(pool.publish(...)), which only asks whether a promise settled, never what it settled with.\n\nSo for a while, publishing into total silence across every relay you tried could still come back looking like a win.",
"sig": "75ab2ef25feb0f00729b36e603f46ad1e6e5edaa82583a3dd2900d39d117037ea642e8bf37cb5740ec9944ab86837679df60d0f16f9309b896262b979df02256"
}