Blueprints should not compile with missing interface implementations

I have a Blueprint Interface called BPI_Previewable. I’ve added a dummy function to it called Foooo that returns some integer:

I’ve then hooked this up to another actor so that it calls Foooo on a BP_Constructible class marked as implementing BPI_Previewable:

Except I’ve never implemented Foooo on BP_Constructible. My expectation would be that I would get a compile error, or at least a runtime error to alert me that I’ve forgotten to implement Foooo on BP_Constructible, but instead, 0 gets printed to the screen. A default Foooo function shown in the first image is getting run after I forgot to implement it on BP_Constructible.

This seems to defeat the entire purpose of an interface: to guarantee that some functionality is provided by a class. In the case of Blueprint Interfaces though, it seems there are no such guarantees, and my project is now prone to cryptic bugs that happen when Unreal silently calls some default interface function rather than alerting me. There should be a compile error or at least a runtime error if a class marked as implementing an interface does not explicitly implement 100% of the interface’s functions.