package database import ( "RenewCMS/internal/domain/role" entity "RenewCMS/internal/infrastructure/persistence/models" "gorm.io/gorm" ) func BackfillInviteRoles(db *gorm.DB) error { if !legacyRoleColumnExists(db) { return nil } return db.Transaction(func(tx *gorm.DB) error { done, err := markerApplied(tx, inviteRolesMarker) if err != nil || done { return err } adminID, err := requireBuiltInRoleID(tx, role.AdminName) if err != nil { return err } if err := tx.Model(&entity.Invite{}).Where("role_id IS NULL OR role_id = 0").UpdateColumn("role_id", adminID).Error; err != nil { return err } return applyMarker(tx, inviteRolesMarker) }) }