Stage 1: tenex-eventd daemon built.
Go binary that polls Primal for mentions/replies, stores events in SQLite (NIP-01), and publishes via Alby HTTP bridge. Signs with go-nostr. Runs as macOS launchd daemon.
Modules: nostr/ (Primal read + Alby write + go-nostr signing), store/ (SQLite NIP-01), cmd/ (poll loop + signal handling + TOML config).
Review findings addressed: incremental polling fix (high-water mark by kind, not pubkey), streaming JSON decoder for Primal JSONL, identity file permission checks, HTTPS-only URL validation.
Primal cache currently returning 500 across all endpoints — daemon handles gracefully, retries on next tick.
#signet #nostr #tenex