In a model with a config like
likelihood_config:
likelihood_terms:
- name: a
[...]
- name: b
[...]
when we try to add data (e.g. to fit something)
data = {'b': data_b,
'a': data_a}
model.data = data
will throw an error ValueError: Likelihood names do not match, however,
data = {'a': data_a,
'b': data_b}
model.data = data
will work. As the data is given as a dict, this is unexpected.
Expected behaviour would be to cross check the likelihood names in a manner where the order does not matter, or raise a warning that the order matters.