Backpuffing is typically caused by combining weak draft with a very low primary air control setting. The weak draft is caused by a combination of warm outside temperatures and/or short chimney. The problem can be made better or worse by selection of wood (resinous woods and walnut are most likely to cause the problem, in my experience).
In an ideal world, you supply fresh air to the stove at the minimum rate required to support combustion of the volatile gasses coming off the wood. However, if the wood is off-gassing very quickly, and your primary air control set very low, you run into a situation where the gasses are building up in the firebox more quickly than they can combust (due to lack of oxygen from fresh air). These gasses build up, while fresh air is slowly leaking into the stove. Eventually, sufficient oxygen mix is achieved for combustion, and *whoosh*, backpuff. This immediately uses up the oxygen in the firebox, and the stove again stalls. Air slowly leaks in... repeat.
When this starts happening, I have to rely on experience to judge my course of action. Opening the air supply will make it stop, as you're now supplying sufficient make-up air to maintain constant combustion. In fact, I think Woodstock PH owner rideau once said, "if I don't see continuous flame, I can expect back-pufffing." Going back a year, this was always my course of action, too. However, then I'd sometimes find the stove running hotter than I like.
More recently, if I find the backpuffing start up in the 5 - 20 minutes after turning down the stove, I will sometimes just wait it out. The theory there is that the present burn rate is too high for the air I'm supplying, but that having just turned down the stove, the present burn rate should soon slow (and the back-puffing thus subside). If you find the stove backpuffing, and it's been more than 20 minutes since you made an air adjustment, then obviously the off-gassing is on the rise for your current setting, and it's time to give it a bit more air.
By "a bit more air", I find that VERY small adjustments of the air control help. Unless the reaction is so violent, to where you're worried it's going to blow the stove doors open, make your adjustments very small and wait a good couple minutes between adjustments. It will only take one or two small adjustments to make the back-puffing go away.
edit: almost forgot to add... I have run the same stove on three different chimneys:
1. 5' stove pipe + 10' of 8" clay tile flue: back-puffing was almost un-avoidable. Constant problem.
2. 5' stove pipe + 10' of insulated 6" flex liner: back-puffing is avoidable, as long as I don't shut air control to 0%. Leave at 5% - 10%, and it runs great.
3. 5' of stove pipe + 27' of insulated 6" flex liner: back-puffing never happens. I will occasionally get the, "die, then flare up," type behavior, but never strong enough to push any smoke out thru the inlets. I run this configuration with the air completely shut to 0%.