A community based topic aggregation platform built on atproto
at main 1.2 kB view raw
1-- +goose Up 2-- Add content_visibility column to community_subscriptions table 3-- This implements the feed slider (1-5 scale) from DOMAIN_KNOWLEDGE.md 4-- 1 = Only show the best/most popular content from this community 5-- 5 = Show all content from this community 6-- Default = 3 (balanced) 7ALTER TABLE community_subscriptions 8ADD COLUMN content_visibility INTEGER NOT NULL DEFAULT 3 9CHECK (content_visibility >= 1 AND content_visibility <= 5); 10 11-- Index for feed generation queries (filter by visibility level) 12CREATE INDEX idx_subscriptions_visibility ON community_subscriptions(content_visibility); 13 14-- Composite index for user feed queries (user_did + visibility level) 15CREATE INDEX idx_subscriptions_user_visibility ON community_subscriptions(user_did, content_visibility); 16 17COMMENT ON COLUMN community_subscriptions.content_visibility IS 'Feed slider: 1=only best content, 5=all content (see social.coves.community.subscription lexicon)'; 18 19-- +goose Down 20-- Remove content_visibility column and indexes 21DROP INDEX IF EXISTS idx_subscriptions_user_visibility; 22DROP INDEX IF EXISTS idx_subscriptions_visibility; 23ALTER TABLE community_subscriptions DROP COLUMN content_visibility;