3. Firefox happens to ensure that identical calls to getUniformLocation
return the _same_ WebGLUniformLocation object, but I don't remember if/where
this is mandated by the spec? And if there is a test for that?

I don't think there is a test for that nor do I think it's in the spec.
Should it be?

It isn't currently in the spec. Similar text could be added as that
for getExtension().

I don't have a strong opinion about whether to make this change at the
current time. It seems minor and that it hasn't impacted application
compatibility. Benoit, if you feel strongly, would you sign up for the
spec change and the addition to the conformance suite?

I don't feel strongly at all about that. On the contrary, if Chrome hasn't been doing this and nobody's every complained about it, it probably means that it's not a useful feature. So we should keep the spec as-is and I'll remove this feature from Firefox which will also simplify code.

WebKit (both Safari and Chrome) hasn't been caching WebGLUniformLocations. No complaints as far as I have heard.