joerglohrerde/publish/tests
Jörg Lohrer ebe73cbf46 publish(task 7): relay-pool-wrapper (publish + checkExisting)
publishToRelays(urls, ev, opts) publisht signiertes event parallel zu
allen relays, mit retries + exponential backoff + timeout pro versuch.
retour: { ok: string[], failed: string[] }. default-pool via
applesauce-relay 2.x (new RelayPool()); publishFn via dependency-
injection für tests. checkExisting(slug, pubkey, urls) fragt je relay
nach kind:30023 mit #d-filter ab — true wenn irgendeiner matcht.
timer-leaks vermieden per clearTimeout in publishOne + im mock-test.
3 tests grün.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-18 05:27:12 +02:00
..
fixtures publish(task 3): frontmatter-parser mit yaml + body-split 2026-04-18 05:22:41 +02:00
config_test.ts publish(task 2): config-loader mit env-validation 2026-04-18 05:21:39 +02:00
event_test.ts publish(task 6): kind:30023 event-builder mit tag-mapping 2026-04-18 05:25:10 +02:00
frontmatter_test.ts publish(task 3): frontmatter-parser mit yaml + body-split 2026-04-18 05:22:41 +02:00
markdown_test.ts publish(task 5): markdown bild-url-rewriter (mapping-basiert, =WxH-strip) 2026-04-18 05:24:03 +02:00
relays_test.ts publish(task 7): relay-pool-wrapper (publish + checkExisting) 2026-04-18 05:27:12 +02:00
validation_test.ts publish(task 4): slug- und post-validation 2026-04-18 05:23:18 +02:00