it seems like an implementation detail to me. `EarlyNodeDeduper` can satisfy getSharedNode; whether or not it actually stores a reference isn't part of the contract