Files
buzz/schema
Bradley Axen 9127a1be3d fix(read-state): root-first thread mentions, follow dormancy, humans only
Three fixes from the unread load study:

- THREAD_MENTIONS starts from the thread's unread replies and probes the
  mention key for each, instead of walking the actor's mentions across the
  channel and filtering by root. Same counts (pinned against the old query
  in a test), no new index; it was ~92% of the heaviest sidebar.
- Automatic thread follows go dormant after BUZZ_V1_RETENTION_SECONDS
  (30 days) without the actor's involvement: posting, being mentioned, a
  reply to their root or in their DM, marking it read, or following it.
  A dormant follow is neither counted nor listed but keeps its row and
  position, and any involvement revives it. Follow intents set `explicit`,
  which never goes dormant. 0061 adds personal_read_frontiers.explicit,
  .active_at and idx_personal_read_frontiers_active (actor's threads by
  involvement, for a later history view). This replaces the author-time
  unread horizon: author time no longer filters unread or mentions.
- Agent accounts (users.agent_owner_pubkey set) keep no read state:
  ingest writes them no positions or follows, and /buzz/v1 answers 403.
  Their messages still make people follow.

Co-authored-by: murderbot <3754f8729004d95654c46dbab3129e4ab9ef05cc2534e2a3fbfc155983bd637b@buzz.block.builderlab.xyz>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Bradley Axen <baxen@squareup.com>
2026-10-13 21:53:31 -07:00
..