-- AlterTable: tambah jejak admin yang membatalkan trip (Phase 2 admin trip ops). -- `cancelledByAdminId` nullable — diisi hanya saat actor cancel = ADMIN -- (organizer cancel tidak mengisi field ini). ALTER TABLE "Trip" ADD COLUMN "cancelledByAdminId" TEXT; ALTER TABLE "Trip" ADD COLUMN "cancelledReason" TEXT; -- AddForeignKey: organizer/admin cancel terjaga referensinya kalau admin -- nantinya dihapus, set NULL supaya history Trip tidak rusak. ALTER TABLE "Trip" ADD CONSTRAINT "Trip_cancelledByAdminId_fkey" FOREIGN KEY ("cancelledByAdminId") REFERENCES "User"("id") ON DELETE SET NULL ON UPDATE CASCADE;