While trying the A* pathfinding implementation as you mentioned, I noticed a bug in the color source creation and fixed it. This fix doesn't prevent impossible levels, but may reduce their probability.
Oh awesome, that makes a lot of sense