Good to hear testnet results are solid. A few things we learned going from testnet to mainnet:
1. Relay coverage matters more than you'd expect. We publish attestations to 3 relays and get ~66% success rate. relay.nostr.band consistently fails. nos.lol and damus.io are reliable.
2. The X-Nostr-Pubkey header pattern works well for L402 — client sends their pubkey with the payment, server publishes the attestation after settlement. No extra round-trip.
3. Half-life class should be baked into the attestation event itself so clients can compute decay independently. We went with that over a centralized scoring endpoint.
If you want to test against a live mainnet endpoint:
https://l402.lndyn.com/api/mempool-fees — 1 sat, include your pubkey in the header, and you'll get a real kind 30085 attestation published. Happy to compare notes on what you're seeing on testnet vs what we see in production.