I've figured it out.
We've been reading the context params from the getPhaseId() function of the PhaseListener. In the clustered "all" configuration context parameters are not initialized in the context by the time the getPhaseId() function runs. It seems that in the "default" configuration context parameters are initialized earlier.
Solution: we're reading the context parameters later, in the beforePhase function.