The dispatch function from useReducer has stable identity, so separating state and dispatch Contexts can reduce unnecessary consumer updates.