mirror of
https://github.com/block/buzz.git
synced 2026-10-28 13:01:10 +00:00
## Goal Add `started_at` to read-state accounts from the day the table is created. This prevents users seeing ALL their channels as unread when they first install a client update that starts using these APIs --------- Signed-off-by: hMB2 <0400eb0da32afbbf16cdd1dee6ffd243587e8f3d6a2823fe7dfa95d16b002b7d@buzz.block.builderlab.xyz> Signed-off-by: ART <ea39c1c8acf57180161ef4ba4ed68abf8589f5291956b909a5aa991fc66664ca@buzz.block.builderlab.xyz> Signed-off-by: hMurderbot <219c58afff8ac2c76e4e527a329aa61c2ebbb896786b1916d4f9cca5140ecd04@buzz.block.builderlab.xyz> Co-authored-by: hMB2 <0400eb0da32afbbf16cdd1dee6ffd243587e8f3d6a2823fe7dfa95d16b002b7d@buzz.block.builderlab.xyz> Co-authored-by: hMurderbot <219c58afff8ac2c76e4e527a329aa61c2ebbb896786b1916d4f9cca5140ecd04@buzz.block.builderlab.xyz> Co-authored-by: ART <ea39c1c8acf57180161ef4ba4ed68abf8589f5291956b909a5aa991fc66664ca@buzz.block.builderlab.xyz> Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
13 lines
620 B
SQL
13 lines
620 B
SQL
-- Private accessory read progress. Never included in Nostr event queries.
|
|
-- A frontier is the relay arrival time (events.received_at) of the message a
|
|
-- context was read through; the unread cutoff alone is signed event time. An
|
|
-- empty root_id denotes a channel frontier.
|
|
-- started_at is the actor's first read intent. NULL until then: an account
|
|
-- can exist before its actor has started.
|
|
CREATE TABLE personal_read_accounts (
|
|
community_id UUID NOT NULL REFERENCES communities(id),
|
|
actor BYTEA NOT NULL CHECK (octet_length(actor) = 32),
|
|
started_at TIMESTAMPTZ,
|
|
PRIMARY KEY (community_id, actor)
|
|
);
|