22 lines
1.0 KiB
SQL
22 lines
1.0 KiB
SQL
-- ==========================================
|
|
-- Chat Switchboard — 016 Surfaces
|
|
-- ==========================================
|
|
-- Surface registry for dynamic surface lifecycle.
|
|
-- Core surfaces seeded at startup. Extension surfaces uploaded via admin.
|
|
-- Consolidated v0.28.0: renumbered from 022.
|
|
-- ==========================================
|
|
|
|
CREATE TABLE IF NOT EXISTS surface_registry (
|
|
id TEXT PRIMARY KEY,
|
|
title TEXT NOT NULL,
|
|
manifest JSONB NOT NULL DEFAULT '{}',
|
|
enabled BOOLEAN NOT NULL DEFAULT true,
|
|
source TEXT NOT NULL DEFAULT 'core',
|
|
installed_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
|
updated_at TIMESTAMPTZ NOT NULL DEFAULT NOW()
|
|
);
|
|
|
|
COMMENT ON TABLE surface_registry IS 'Registry of all surfaces (core + extension). Controls enable/disable and stores manifest metadata.';
|
|
COMMENT ON COLUMN surface_registry.source IS 'core = built-in, extension = uploaded via admin';
|
|
COMMENT ON COLUMN surface_registry.enabled IS 'Admin toggle — disabled surfaces redirect to / and hide from nav';
|