Implements announce channel delivery in router.go: - Add isAnnounceAddress() and parseAnnounceName() helpers - Add ErrUnknownAnnounce error variable - Add expandAnnounce() to load AnnounceConfig from messaging.json - Add sendToAnnounce() for bulletin board delivery (single copy, no claiming) - Add pruneAnnounce() for retention-based message cleanup - Integrate announce routing in Send() Announce channels store ONE copy of each message (unlike lists which fan-out). Messages persist until retention limit is reached, with oldest messages pruned automatically when limit is exceeded. Also includes address helpers (gt-pn2fq dependency). 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
29 KiB
29 KiB