JITlib random fade times when sent to constant

I’m wondering why I’m getting seemingly random fade times when swapping synthdefs inside the same Ndef.

a = Ndef(\a).set(\fadeTime, 0.7).play;
(a[0] = \setsrc -> Pbind(
    \dur, 2,
	\source, Pseq([
		{ arg freq =600, amp = 0.3; amp * LFTri.ar(freq) },
		{ arg freq =600, amp = 0.3; amp * SinOsc.ar(freq) }
], inf)))

The problem is that fade times don’t seem constant. Sometimes there’s a lot dipping when the switch happens, and sometimes there isn’t. The fadeTime is much greater than the control block duration, so that (jitter) can’t be the issue.

For the record, I know how to get something like this more reliably, but slightly more complicated, with explicit envelopes, SelectX etc. I’m just wondering why the default JITlib envelopes seemingly are so random, at least their timing relative to each other.

Actually, I suspect I know what happens here. Since the two synths (Sin & Tri) aren’t actually running (or started) at the same time, their phases are probably not aligned, so I’m guessing that’s why when summed they look like that, sometimes with a big dip and sometimes not.