Hi Lucas,
Big picture -- you don't need to set up an MCMC for the predictive model. You just need to use `simulate` on the appropriate nodes in `ppSamplerNF`, including any y's that you want to sample from the predictive distribution.
That being said, you could run the MCMC to do the simulation as well, so long as you make sure the only samplers are the predictive samplers that sample the nodes of interest. But in that case you'd still need to make sure that any deterministic parents have their values properly calculated given the values you put into the parameters from the original MCMC, before running the predictive samplers, so I don't think there is any benefit to do that rather than just using `simulate`.
As far as why `s` and `y` don't appear, the 'branch' in 'posterior_predictive_branch' relates to the fact that such samplers sample the target node and all downstream predictive nodes as a group, since there are not downstream data nodes. It's just that the downstream nodes that are sampled are not indicated in the information printed out. E.g., consider this model: y ~ dnorm(theta, 1); theta ~ dnorm(0,1). If you don't set 'y' as data, then the whole thing is predictive and a posterior_predictive_branch sampler would be assigned to theta and would also include conditional sampling of y given the sampled value of theta.
I haven't looked in detail at your code to see why you're getting weird results, but hopefully the above helps you figure it out.
-chris