evaluateSynchronous and singlepassmode should be equivalent in terms of their calculation outcome/flow, so it sounds like the singlepass state is getting cleared somehow. it's plausible it could be a bug on our our side or there may be a clue in the rest of your macro somewhere.
setting single pass mode, holds the system in synchronous evaluation state until it's cleared, the benefit being so you don't have to use our vendor evaluate endpoint as a 1:1 replacement everywhere in your macro.
internal activity on IBM's side has pulled me off the github api site for a while now, but i do want to ramp back up there with some updates and the issue status'.
it doesn't sound like you're missing anything, please continue to work with us on a support case but I'll push internally as I can.
------------------------------
Ted Phillips
IBM
------------------------------