> We don't really have this problem in .NET 8, we mock stuff just fine using an in-memory database provider.

No, you don't. At best in-memory databases represent a test double that you can use in integration tests.

If you need to write unit tests, EF leaves you no better option than to add repositories to abstract out everything and anything involving DbContext.