20260716_30_workbench_layouts.py 593 B

12345678910111213141516171819202122
  1. """Add user-scoped workbench layouts."""
  2. from alembic import op
  3. revision = "20260716_30"
  4. down_revision = "20260716_20"
  5. branch_labels = None
  6. depends_on = None
  7. def upgrade() -> None:
  8. op.execute("""
  9. CREATE TABLE IF NOT EXISTS public.workbench_layouts (
  10. user_id UUID PRIMARY KEY REFERENCES public.users(id) ON DELETE CASCADE,
  11. layout_version INTEGER NOT NULL DEFAULT 1 CHECK (layout_version > 0),
  12. widgets JSONB NOT NULL,
  13. updated_at TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP
  14. );
  15. """)
  16. def downgrade() -> None:
  17. pass