If you remove a monitor from your config, it doesn't get deleted on the backend
Monitors should have a unique key AND a unique name according to Cronitor support, since the API looks up by both. They may fix that issue at some point.
They recommend one monitor for all environments, but you can't have distinct alert groups per environment for a monitor. Per-environment alert groups are on their roadmap, however.
https://github.com/cronitorio/cronitor-python#configuring-monitors