fix: support `underscore_attrs_are_private` with generic models