Why does EF Core delete an entity when a required relationship is nulled out?

I'm using EF Core 3.1 and I have a model with entities Contract and ContractType. The Contract has a required (non-nullable) ContractTypeId field and a ContractType navigation property. If I select a Contract object from the DB, make sure its ContractType is loaded in memory (I use lazy loading) and then set the ContractType property to null, the Contract object is marked in the ChangeTracker as deleted (and it's actually deleted from the DB if I call SaveChanges).

I understand that that's in line with the documentation for the Cascade delete behavior:


I'm having trouble understanding the logic behind it. It seems dangerous that if you just mess up a required relationship (the navigation property was being set to null because of a bug in my code), EF decides to delete your main entity (in this case Contract). Am I missing something? Maybe the real question here is why is Cascade Delete the default behavior?