perf: guard AuthManager @Observable setters against redundant writes
The @Observable macro fires the observation registrar on every set,
even when the value is unchanged, so each token refresh was
invalidating every observer of isAuthenticated / userDID / userHandle
/ userAvatar — including GrainApp.body, which cascaded a full
rebuild of the tab hierarchy. Equality-check each assignment so
routine refreshes become no-ops.
authored by