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)
7
+
ALTER TABLE community_subscriptions
8
+
ADD COLUMN content_visibility INTEGER NOT NULL DEFAULT 3
9
+
CHECK (content_visibility >= 1 AND content_visibility <= 5);
11
+
-- Index for feed generation queries (filter by visibility level)
12
+
CREATE INDEX idx_subscriptions_visibility ON community_subscriptions(content_visibility);
14
+
-- Composite index for user feed queries (user_did + visibility level)
15
+
CREATE INDEX idx_subscriptions_user_visibility ON community_subscriptions(user_did, content_visibility);
17
+
COMMENT ON COLUMN community_subscriptions.content_visibility IS 'Feed slider: 1=only best content, 5=all content (see social.coves.community.subscription lexicon)';
20
+
-- Remove content_visibility column and indexes
21
+
DROP INDEX IF EXISTS idx_subscriptions_user_visibility;
22
+
DROP INDEX IF EXISTS idx_subscriptions_visibility;
23
+
ALTER TABLE community_subscriptions DROP COLUMN content_visibility;