It’s just an np.arange of length 143. You should probably use time_idxs (the one created by pd.factorize) instead. That way if there are missing data between groups it will be accounted for.
The best would be something like t = time_idxs / max(time_idxs) so it runs from 0 to 1 (your poisson mean will be less likely to overflow) and automatically accounts for missing data/heterogeneous lengths.