This project reproduces an issue related to phased restarts in Puma. Specifically, it demonstates that if you delete the compiled native extensions that were used when the puma master started, the next phased restart will fail.
The error, and the specific steps to reproduce it, are described in a issue comment on the Puma repo.
docker build -t puma-restart-error .
docker run -it puma-restart-error