Tente este local:
location ~ ^/calendar/event/(?<slug>\d+)$ {
rewrite ^ /calendar/event/old-$slug permanent;
}
Você não precisa fazer correspondência de regex complexa em rewrite
, quando todo o material necessário é feito dentro da location
regex. Um possível motivo para a falha de reescrita é o uso de variável numérica de localização.