-- Widget "Link" entfernt (quick-260916-iex): das Favoriten-Widget deckt den -- Anwendungsfall "Schnellzugriff auf Links" bereits vollstaendig ab, ein -- separates Einzel-Link-Widget ist ueberfluessig. Web/API haben den Typ -- `link` restlos entfernt (Registry, Katalog, DTO); diese Migration raeumt -- bestehende Link-Kacheln in der Datenbank hinterher. -- -- FavoriteLink-Zeilen des jeweiligen Widgets kaskadieren automatisch ueber -- den bestehenden Fremdschluessel "FavoriteLink_widgetId_fkey ... ON DELETE -- CASCADE" (Migration 20260708090000_add_favorite_link) -- kein separates -- DELETE auf "FavoriteLink" noetig. -- -- Laeuft als Migrationsrolle "tessera" (POSTGRES_USER, Superuser mit -- BYPASSRLS, siehe 20260909130000_rls_app_role). Die FORCE ROW LEVEL -- SECURITY-Regel auf "WidgetInstance" (Migration 20260909140000) greift -- fuer diese Rolle deshalb nicht -- das DELETE sieht und loescht ueber -- alle Mandanten hinweg. -- -- Idempotent: ein zweiter Lauf loescht 0 Zeilen. Keine Schemaaenderung. -- Verwaiste Eintraege im Layout-JSON von "DashboardLayout" sind unschaedlich -- (dashboard-grid.tsx rendert nur ueber widgets.map) und verschwinden beim -- naechsten Speichern des Dashboards von selbst. DELETE FROM "WidgetInstance" WHERE "widgetType" = 'link';