Dieu43 Query: db_map (directus DB)
WITH cfg AS ( SELECT COALESCE(value::jsonb, '[]'::jsonb) AS db_whitelist FROM dot_config WHERE key = 'context_pack_scan_db_whitelist' ), dbs AS ( SELECT d.datname AS db_name, pg_database_size(d.datname) AS size_bytes, pg_size_pretty(pg_database_size(d.datname)) AS size_pretty, CASE WHEN jsonb_array_length(c.db_whitelist) = 0 THEN true ELSE EXISTS ( SELECT 1 FROM jsonb_array_elements_text(c.db_whitelist) x WHERE x = d.datname ) END AS scan_scope, CASE d.datname WHEN 'directus' THEN 'warehouse' WHEN 'incomex_metadata' THEN 'brain-store' WHEN 'workflow' THEN 'engine' WHEN 'postgres' THEN 'cluster-admin' ELSE 'other' END AS role_label, CASE d.datname WHEN 'directus' THEN 'Directus REST + DOT + fn_*' WHEN 'incomex_metadata' THEN 'Agent Data FastAPI' WHEN 'workflow' THEN 'future workflow engine' WHEN 'postgres' THEN 'cluster admin only' ELSE 'review' END AS legal_gateway FROM pg_database d CROSS JOIN cfg c WHERE d.datistemplate = false ) SELECT CASE WHEN jsonb_array_length((SELECT db_whitelist FROM cfg)) = 0 THEN 'catalog' ELSE 'whitelist' END AS scan_mode, (SELECT db_whitelist::text FROM cfg) AS db_whitelist_json, COALESCE( jsonb_agg( jsonb_build_object( 'db_name', db_name, 'role_label', role_label, 'size_pretty', size_pretty, 'scan_scope', scan_scope, 'legal_gateway', legal_gateway ) ORDER BY db_name ), '[]'::jsonb ) AS databases FROM dbs