Small update. I determined that the engine timing was a few degrees off. It ran great up top, but didn’t have much for low end. Timing S54s can be really frustrating - the instructions that, say, Beisan gives are kind of flawed, and the BMW instructions require a some very expensive tools that I won’t buy.
Luckily, the “correct” answer is to eyeball a timing offset when you set the cam sprockets. Do it right, and the engine will be in time after you rotate it. Problem solved - VANOS works correctly.
Now, it’ll out drag a 2WD Model 3 on an on-ramp.
Good enough for my purposes.
Unfortunately, my AC compressor gave up the magic smoke. I think all the revs burned up the clutch. Sigh.