52 lines
2.9 KiB
MySQL
52 lines
2.9 KiB
MySQL
|
|
-- 0002_extend_surface_kind.sql
|
||
|
|
--
|
||
|
|
-- Extends the surface_kind ENUM with the full surfaces roster per
|
||
|
|
-- @platform/codebase/@features/ai-copilot/docs/O-surfaces-roster.brief.md.
|
||
|
|
--
|
||
|
|
-- Source-of-truth for surfaces is the registrations.md tracker in v2 user data
|
||
|
|
-- (~/Code/@projects/@lilith/lilith-platform.live/users/transquinnftw/
|
||
|
|
-- agents/coworker-agent/data/business/registrations.md) plus context.md
|
||
|
|
-- in-flight additions. This migration adds the directories Quinn already has
|
||
|
|
-- live or pending plus three content surfaces that were missed in 0001.
|
||
|
|
--
|
||
|
|
-- PostgreSQL ENUM values cannot be removed; ALTER TYPE ... ADD VALUE is the
|
||
|
|
-- only forward path. Each ADD VALUE is idempotent via IF NOT EXISTS so the
|
||
|
|
-- migration is safe to re-run against a partially-applied DB.
|
||
|
|
--
|
||
|
|
-- IF NOT EXISTS requires Postgres ≥ 9.6; platform.db on black is ≥ 14.
|
||
|
|
|
||
|
|
-- ---------------------------------------------------------------------------
|
||
|
|
-- N1 — Content surfaces (missed in 0001)
|
||
|
|
-- ---------------------------------------------------------------------------
|
||
|
|
ALTER TYPE surface_kind ADD VALUE IF NOT EXISTS 'bluesky';
|
||
|
|
ALTER TYPE surface_kind ADD VALUE IF NOT EXISTS 'reddit';
|
||
|
|
ALTER TYPE surface_kind ADD VALUE IF NOT EXISTS 'fansly';
|
||
|
|
|
||
|
|
-- ---------------------------------------------------------------------------
|
||
|
|
-- N2 — Escort directories Quinn already operates on
|
||
|
|
-- ---------------------------------------------------------------------------
|
||
|
|
ALTER TYPE surface_kind ADD VALUE IF NOT EXISTS 'seeking';
|
||
|
|
ALTER TYPE surface_kind ADD VALUE IF NOT EXISTS 'privatedelights';
|
||
|
|
ALTER TYPE surface_kind ADD VALUE IF NOT EXISTS 'tsescorts';
|
||
|
|
ALTER TYPE surface_kind ADD VALUE IF NOT EXISTS 'adultsearch';
|
||
|
|
ALTER TYPE surface_kind ADD VALUE IF NOT EXISTS 'adultlook';
|
||
|
|
ALTER TYPE surface_kind ADD VALUE IF NOT EXISTS 'eroticmonkey';
|
||
|
|
ALTER TYPE surface_kind ADD VALUE IF NOT EXISTS 'skipthegames';
|
||
|
|
ALTER TYPE surface_kind ADD VALUE IF NOT EXISTS 'megapersonals';
|
||
|
|
ALTER TYPE surface_kind ADD VALUE IF NOT EXISTS 'ts_live';
|
||
|
|
|
||
|
|
-- ---------------------------------------------------------------------------
|
||
|
|
-- Not added in this migration (rationale in O-surfaces-roster.brief.md):
|
||
|
|
-- - N3 brand sites (transquinnftw, adult-therapy-tours, futa-waifu-tour):
|
||
|
|
-- these are platform-owned publishing targets, not external surfaces.
|
||
|
|
-- Will land in a separate `brand_site_kind` ENUM if/when needed.
|
||
|
|
-- - N4 messaging channels (imessage, signal, telegram, discord, email,
|
||
|
|
-- sniffies): channels not posting surfaces; belong in a future
|
||
|
|
-- `channel_kind` ENUM separate from surface_kind.
|
||
|
|
-- - N5 commerce surfaces (venmo, cashapp, wishtender, throne): P5+; will
|
||
|
|
-- land as a `commerce_kind` ENUM when the commerce axis is designed.
|
||
|
|
--
|
||
|
|
-- These exclusions keep surface_kind narrow + semantically clean:
|
||
|
|
-- surface_kind == "external platform where content lives or a listing is posted".
|
||
|
|
-- ---------------------------------------------------------------------------
|