What version of pymc are you using? When I run this (a simplified version of your code):
import pymc as pm
coords = {
"obs_id": [0,1,2,3,4],
}
with pm.Model(coords=coords) as rugby_model:
item_idx = pm.Data('item_idx',[0,1,2,3,4], dims="obs_id", mutable=False)
a = pm.Normal("a", 0.0, sigma=10.0, shape=5)
theta = a[item_idx]
sigma = pm.HalfCauchy("error", 0.5)
y = pm.Normal("y", theta, sigma=sigma, observed=[3,2,6,8,4])
idata= pm.sample()
I get this:
In [6]: idata
Out[6]:
Inference data with groups:
> posterior
> log_likelihood
> sample_stats
> observed_data
> constant_data
The constant data is this:
In [7]: idata.constant_data
Out[7]:
<xarray.Dataset>
Dimensions: (obs_id: 5)
Coordinates:
* obs_id (obs_id) int64 0 1 2 3 4
Data variables:
item_idx (obs_id) int32 0 1 2 3 4
Attributes:
created_at: 2022-05-17T21:29:44.899657
arviz_version: 0.11.4
inference_library: pymc
inference_library_version: 4.0.0b6