There are a set of three very good books on this subject written by David Burgreen. Unfortunately, they are out of print. Good technical libraries may have copies you can borrow.
You should consider Figure 302.3.5 in B31.3 (and the analogous Table 102.3.2(C) in B31.1) as definitive on this issue. Under B31.3, when f=1.0, and assuming that Sh = Sc, your allowable stress range is 1.5 * (2/3 Yield), or Sy. But this is a stress range, so that at either end of the cycle (after the system has shaken down) the peak stress should be 1/2 Sy.
You talk about a calculated thermal expansion stress, but I assume you mean a thermal expansion stress range. The underlying assumption of the B31 codes is that alternating stress ranges cause local yielding (thermal ratcheting) until the magnitudes of the peak stresses in the hot condition and in the cold condition are essentially equal. This is certainly a valid assumption for highly stressed systems, and for systems that are not highly stressed, we really don't care if this happens or not.
Your discussion also assumes that the material allowable stress is based on yield. In reality, most carbon steels have allowable stresses based on tensile, rather than yield, strength. Even taking f=1.2, you would need an Sc of 33.3 in order to be allowed to design a system to a 60 ksi thermal stress range (33.3 x 1.5 x 1.2 = 60). There are a few materials that would qualify, but this is far beyond the capacity of even API 5L X80, which is a carbon steel grade that has a specified minimum yield of 80 ksi.
So, IF you have a material that can support a thermal stress range of 60 ksi with an f of 1.2, and IF you indeed load your piping to that extent, under B31.3 your predicted fatigue life of the system is about 3,000 cycles. You could use equation (1c) from paragraph 302.3.5 to calculate it to more significant digits, but nobody's going to count the actual number of cycles that precisely anyway. And unless you're as old as Luf or Breen, if you design a system with a fatigue life of 3000 cycles, it's probably going to fail in your working lifetime. Then you're going to have to waste a lot of time and energy defending yourself, brcause the owner is going to conveniently forget (a) that you ever explained to him that the system was going to have a design life of 3,000 cycles, or (B) that he approved it, or (C) that he even understands what fatigue life means.
I think you may have assumed that a 30 ksi yield steel can support a 60 ksi thermal stress range. Neither B31.1 nor B31.3 would agree with you. I am on their side.
I also think that, even though you are correct that a calculated secondary stress beyond yield is fictitious, you don't want to go there. Don't forget, even though the secondary stresses are displacement based, once the material yields the primary stresses are still being applied. And primary stresses are NOT self-limiting. An implicit assumption in the phenomenon of thermal ratcheting is that the yielding is sufficiently localized to limit gross damage as a result of the primary stress field. Once you get to the point that you are calculating thermal stress ranges of 2X yield, I don't think that assumption is valid any more.
_________________________
CraigB