I'm a little confused by crbug/1300585. My understanding is that this is a bug in Android Lint: the @IntDef isn't really defined by which constants are defined inside the interface, it's defined by which constants are passed into the annotation. If I don't pass NUM_ENTRIES into the annotation, why does Android Lint expect our code to handle it as if it's a valid value of that particular IntDef?
This seems to me like it's just a regression in Android Lint. If that's the case, then I think we should file a bug against the Android Lint project rather than changing our style guide to workaround this.