@Override
    public Result reconcile(Request request) {
        client.fetch(User.class, request.name()).ifPresent(user -> {
            if (isDeleted(user)) {
                deleteUserConnections(request.name());
                removeFinalizers(user.getMetadata(), Set.of(FINALIZER_NAME));
                client.update(user);
                return;
            }
            addFinalizers(user.getMetadata(), Set.of(FINALIZER_NAME));
            ensureRoleNamesAnno(user);
            updatePermalink(user);
            handleAvatar(user);
            checkVerifiedEmail(user);
            client.update(user);
        });
        return new Result(false, null);
    }
@Test
    void permalinkForAnonymousUser() {
        when(client.fetch(eq(User.class), eq(AnonymousUserConst.PRINCIPAL)))
            .thenReturn(Optional.of(user(AnonymousUserConst.PRINCIPAL)));
        when(roleService.getRolesByUsername(AnonymousUserConst.PRINCIPAL)).thenReturn(Flux.empty());
        userReconciler.reconcile(new Reconciler.Request(AnonymousUserConst.PRINCIPAL));
        verify(client).update(any(User.class));
    }