I'm not really convinced either. I would prefer something more descriptive, (like the way EXT_texture_swizzle handles this, for example), rather than listing every combination we use in an enum.
I don't think that gains us a lot(and how do you describe something like YUV conversions?) These texture fixups apply to the shader, while GL_EXT_texture_swizzle applies to the texture.
With GL_EXT_texture_swizzle we would not set any shader conversion flag for most formats(except YUV ones) and instead configure the texture_swizzle in basetexture.c when creating a new texture name.