The sampler finished. That is not the same as the posterior being real.
Paste what the run gave you back — the settings, the warning block, the model as you
wrote it — and the az.summary() table beside it. Before you sign in, this
page does the arithmetic: it multiplies your chains by your draws and divides your divergences
into that, checks every R-hat and every effective sample size against the published thresholds
rather than the folklore ones, works out how many digits of each posterior mean survive the
Monte Carlo error, counts the elements your array declarations imply and compares them against
the rows your table actually carries, and finds the places where your prose and your numbers
disagree. Then three lanes work the fit.
Both examples ship with a saved model run for every lane, so you can see all three outputs end to end without signing in and without spending a credit.