Pm.sample_ppc breaks with AttributeError

OK, having a look at your data, the problem is:
mu = pm.Deterministic('mu', eta + delta * x1_shift)
resulting in a 2D tensor which does not play well in the mixture class. In this case I would suggest writing a custom mixture logp function for PoissonMixture. You can have a look in our doc the example for NormalMixture custom logp implementation.