Ship legacy migrate APIs, portfolio/blog old-id schema, and admin migrate/purge flows.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Alireza Hassani
2026-07-29 16:10:41 +03:30
co-authored by Cursor
parent 7244b70e90
commit 4598add88c
32 changed files with 4234 additions and 265 deletions
@@ -0,0 +1,20 @@
-- Portfolio authors (same pattern as blogs.author_id)
ALTER TABLE portfolios
ADD COLUMN IF NOT EXISTS author_id BIGINT;
DO $$
BEGIN
IF NOT EXISTS (
SELECT 1
FROM pg_constraint
WHERE conname = 'portfolios_author_id_fkey'
) THEN
ALTER TABLE portfolios
ADD CONSTRAINT portfolios_author_id_fkey
FOREIGN KEY (author_id) REFERENCES users (id)
ON UPDATE NO ACTION
ON DELETE SET NULL;
END IF;
END $$;
CREATE INDEX IF NOT EXISTS idx_portfolios_author_id ON portfolios (author_id);