What should recompute when a (hash) helper is updated?

Hello! I’m observing a (hash) helper behaviour that feels odd, and I’m hoping to get a steer one way or the other.

I have a <Form component that yields some params down into a <Form::Body subcomponent. Here is a simplified example:

{{yield
  (hash
    formIsInvalid=@formIsInvalid 
    trackedFields=@trackedFields
  )
}}

Both formIsInvalid and trackedFields are tracked properties. The former contains a Boolean and the latter a POJO, where each entry is an instance of a class that has some nested tracked properties.

When formIsInvalid changes, the entires in trackedFields are recomputing. Is this expected behaviour for the (hash) helper; does dirtying one item in the hash cause all others to become dirty too?

Interestingly, while I can see it in my app using 3.26 and 3.27, I can’t replicate the issue with Ember Twiddle using 3.18. All hints welcome (i.e. S.O.S.!) :slight_smile: