Il motivo era piuttosto semplice. Stavo chiamando EnsureCreated
in Startup.cs
che stava entrando in conflitto con le migrazioni poiché funzionava in modo diverso. Per fortuna i proprietari di EF Core me lo hanno chiarito su GitHub.
Quindi, per riassumere:se desideri utilizzare Migrazioni, non puoi utilizzare GuaranteeCreated.