Spring rate is irrelevant. The length of the spring and the length of the shackle dictates how far apart things should be on the frame. Spring rate is relative, as the infinitely variable force applied to the springs (weight of rig can change, how you are loading the springs, etc) is a variable. To ensure that things work properly under all circumstances, it's necessary to place things on the frame based on the spring length.
People say 35-40* because that's the ball park that the math I posted will put you at at ride height (my 64"s are about 35.7* w/ a 6" shackle at ride height, and about 41.5* completely flat so I have room for the bushings to deflect). 35-40* only applies to stock (read almost flat) springs. A lift spring (more arc) would require you to run less shackle angle (more perpendicular to the ground), otherwise in the event that you were able to (not that they flex at all) compress them they would be likely to invert. The same ideas apply to lift springs as apply to springs with a high spring rate. You need to set your angle based on the length, not ride height or spring rate. Let's say you're jumping the truck, carrying a heavy load, towing, going around a corner fast, twisted up funny on a trail, etc.. In a situation like those, you are exerting a quantity of force on the spring that you aren't going to be able to calculate for all circumstances.
On the front, you guys are right about just making things so they don't hit the frame. The way these GM frames are shaped, the rail acts as a bumpstop on the spring eye before you get any bind issues (shackle inversion).
There is a solution to the pos/neg arc issues that GMs have. Move the frame eye forward with the ORD or DIY4x parts

, or use a longer shackle (depending on what springs you're using).
Or you could just lower your bumpstops a ton. But if you're going to sacrifice ride quality and travel, why mess with the stock stuff in the first place?