Bring a persisted/session EqState to its canonical shape: every band carries an id
(withBandIds), the pass filters carry through untouched. Idempotent.
A band whose type is not one the desk declares is REFUSED by the row's own codec, not
rewritten here — the vocabulary is published and a value outside it is a fact the operator
should see, never a silent substitution.
Bring a persisted/session EqState to its canonical shape: every band carries an id (withBandIds), the pass filters carry through untouched. Idempotent.
A band whose
typeis not one the desk declares is REFUSED by the row's own codec, not rewritten here — the vocabulary is published and a value outside it is a fact the operator should see, never a silent substitution.