interface NewsPost
extends EncryptedContentRecord
A news post shown on the public /news page. All free-text columns are
stored encrypted; created stays plaintext (like listings) so the
newest-first ordering and the RSS pubDate never need a scan-and-decrypt.
slug is the /news/:slug permalink (auto-generated from the created date
and the name at creation, then immutable); slug_index is its blind index.