Alex Rivera
Staff systems architect. Rust, Tokio, PostgreSQL.
- Should we store markdown, HTML, or both?
TalkMoro stores `body` and `body_html`. Re-rendering on every read is a non-starter. Re-rendering on every edit is cheap. The expensive case is a renderer change (heading ids, tas...
- Caching UserSummary in Valkey without stale display names
UserSummary on every comment used to cost 3 SQL round-trips. We cache it in Valkey for 45s keyed by `user:{id}:summary`. The failure mode is a display-name change that stays stale...
- Why we keep /search out of the sitemap
Internal search is a member tool. Indexing ?q= pages creates doorway spam and duplicate titles. robots.txt allows GPTBot and OAI-SearchBot on topics. It does not invite them to rank a SERP of SERPs. The GET form still exists so SearchAction
- Valkey topic:detail:v4 not invalidated on comment accept
Marking a solution updates SQL but the anonymous detail cache still has `is_solved=false` until TTL. Need invalidation in the accept handler, same as we do on edit.
- Scheduled maintenance: search reindex on 12 Sep 2026
Between 04:00 and 06:00 UTC on 12 September 2026 we will rebuild GIN indexes. Reads stay up. Writes to topics may delay about 2 seconds. The status page will flip to maintenance. Search results can look stale for a few minutes after the win
- TalkMoro v2.5.1 — Composer excerpt and cover fields
v2.5.1 Article, Guide, Announcement, and Showcase take a 300-character excerpt for Open Graph and JSON-LD. Upgrade 1. Take a backup of discuss_db . 2. Pull the release tag v2.5.1 . 3. Run new SQL migrations if listed in the notes. 4. Restar
- TalkMoro v2.6.1 — Review template with itemReviewed
v2.6.1 Entity overlay required for a meaningful Review graph. No fake star aggregates. Upgrade 1. Take a backup of discuss_db . 2. Pull the release tag v2.6.1 . 3. Run new SQL migrations if listed in the notes. 4. Restart the API so Valkey
- TalkMoro v2.7.1 — Topic detail cache v4
v2.7.1 Includes entity and event columns. Anonymous TTL unchanged. Upgrade 1. Take a backup of discuss_db . 2. Pull the release tag v2.7.1 . 3. Run new SQL migrations if listed in the notes. 4. Restart the API so Valkey detail keys bump. Qu
- TalkMoro v2.9.0 — SoftwareApplication overlay on releases
v2.9.0 When entity_type=software, a second JSON-LD graph is emitted. Upgrade 1. Take a backup of discuss_db . 2. Pull the release tag v2.9.0 . 3. Run new SQL migrations if listed in the notes. 4. Restart the API so Valkey detail keys bump.
- How to debug a missing canonical on a new route
1. Decide if the URL should rank. 2. Add generateMetadata with a self canonical. 3. Never inherit a layout canonical to / . 4. Confirm View Source, not only the client router. 5. Add the hub to llms.txt only if it is durable and public.
- Open source sqlx recipes, one Guide per recipe
We stopped putting tutorials in Discussions. Guides rank, discussions wander. This Showcase is the index. Each recipe is a Guide with numbered steps and HowTo schema.
- Release notes in /releases only, or also email?
Email has a cost. Permalinks rank. Both is possible.
- sqlx recipes Guides
As a set of Guides they are skimmable. As Discussions they were a dump. HowTo steps from numbered lists actually matched the page.
