set method
Sets the value of this node and notifies all active subscribers.
If newValue is equal to the current value (via ==), this is a
no-op: the value is unchanged and no subscribers are notified.
That includes AsyncData / AsyncLoading / AsyncError when their
payloads compare equal (for example AsyncData(sameUser) twice).
Do not re-set an equal value to kick side effects (resume a deferred scope, re-run sync, refresh listeners). Use invalidate to force a notification without changing the value, or model the signal on a dedicated node / callback instead of piggybacking on identity state.
If the node has been disposed, the call is silently ignored (a concise debug message is printed in debug mode). This soft-fail behavior prevents crashes from late async writes that land after scope disposal.
Implementation
@override
void set(T newValue) {
_validationResult = validator.validate(newValue);
super.set(newValue);
}