Parent: #118
Problem
DynamicCollector.states_di declares mass, mass_frac, temp, while the implementation packs and unpacks mass_frac, mass, temp. Manual slicing hides the mismatch and metadata-driven unpacking would silently misassign values.
Acceptance criteria
- Add a regression test comparing metadata-driven and implementation state ordering.
- Make
states_di, initial packing, model unpacking, and result retrieval agree.
- Preserve numerical behavior apart from correcting the ordering contract.
- Keep this bug fix isolated from the wider StateLayout refactor.
Parent: #118
Problem
DynamicCollector.states_dideclaresmass, mass_frac, temp, while the implementation packs and unpacksmass_frac, mass, temp. Manual slicing hides the mismatch and metadata-driven unpacking would silently misassign values.Acceptance criteria
states_di, initial packing, model unpacking, and result retrieval agree.