Sólo he editar una migración existente si se puede comprobar que aún no se ha ejecutado por otros desarrolladores o alguna configuración construcción automatizado. Para estar seguro, no debería editar un archivo de migración comprometido a menos que el error fuera tan grave que la migración no se ejecutara en primer lugar (en cuyo caso ¿por qué lo cometió?)
Además, se debe tener especial cuidado con las migraciones llamando al código de otra parte de la aplicación para que, cuando se ejecuten, se ejecuten utilizando la versión correcta del código. De lo contrario, los cambios sutiles en sus modelos realmente pueden arruinar sus migraciones anteriores.