The common knowledge in this case turns out to be at odds with experimental results. Not trying to tread on toes here, but experiments contradict a lot of what we've been told.
For those less curious, here's the bottom line: Neither powder nor primer temperature is the likely culprit in temperature sensitivity in the range I tested (40F to 99F). If you want to know what happens when its REALLY cold, I don't have the answer.
A drop from 2750 to 2700 FPS for a 180 grain projectile is a drop of 108 ft-lbs of energy. That is only 35.4 calories, or enough energy to raise 454 grams of iron (about a pound) by just .7 degree C.
The rate of energy transfer between two bodies in contact is proportional to the difference in their temperatures.
The effect of temperature, as far as I could discover, is instantaneous. That rules out the temperature of the powder as being the main factor, since it requires a matter of minutes for powder temperature to equalize with ambient temperature or chamber temperature. You can separate powder temperature from firearm temperature and primer temperature if you're quick.
I ran a fancy statistical test that allows the testing of multiple variables at once, plus all of their interactions. One of the factors was primer temperature. The base of the test cartridges was squirted with circuit cooler and fired as quickly as possible, and well before the powder in the case could adjust. This separated primer temperature from powder temperature.
Findings:
Primer temperature doesn't matter, at least for the primers and temperatures I tested.
Barrel temperature near the chamber is by far the strongest variable affecting muzzle velocity change.
Ammunition temperature is about 1/3 as important as barrel temperature.
Given all the evidence, my conclusion was that the basic mechanism is that the barrel, the brass case, and the bullet rob heat energy out of the gas, and that cold metal robs more energy than hot metal.
In the experiment I ran, a temperature insensitive powder compensated for temperature by slightly adjusting its burn rate. Each powder is designed for a particular cartridge geometry, and works well in what it was designed for. H4350 matches the 30-06, and Varget matches the 308. But Varget is definitely not temperature stable in the 223.