tinyhumansai/openhuman · error

[privacy] failed to persist meet auto-handoff setting:

Error message

[privacy] failed to persist meet auto-handoff setting:

What it means

Persisting the meet auto-handoff preference (setMeetAutoOrchestratorHandoff) failed in the Privacy panel toggle handler. Like the analytics toggle, the failure is only console-warned: the switch's optimistic state is not rolled back, so the UI may show a handoff setting that was never stored. (Meet itself has since been removed from the product, so this setting may be vestigial.)

Source

Thrown at app/src/components/settings/panels/PrivacyPanel.tsx:97

      cancelled = true;
    };
  }, []);

  const handleToggleAnalytics = async () => {
    const newValue = !analyticsEnabled;
    try {
      await setAnalyticsEnabled(newValue);
    } catch (error) {
      console.warn('[privacy] failed to persist analytics setting:', error);
    }
  };

  const handleToggleMeetAutoHandoff = async () => {
    const newValue = !meetAutoHandoff;
    try {
      await setMeetAutoOrchestratorHandoff(newValue);
    } catch (error) {
      console.warn('[privacy] failed to persist meet auto-handoff setting:', error);
    }
  };

  return (
    <SettingsPanel
      testId="settings-privacy-panel"
      description={t('pages.settings.account.privacyDesc')}>
      <>
        {/* Privacy Mode selector (#4435) — data-egress posture */}
        <PrivacyModeSection />

        {/* What leaves my computer */}
        <SettingsSection title={t('privacy.whatLeavesComputer')}>
          {loadState === 'loading' && (
            <p className="p-4 text-xs text-content-muted">{t('privacy.loading')}</p>
          )}
          {loadState === 'error' && (
            <p className="p-4 text-xs text-content-muted" data-testid="privacy-load-error">

View on GitHub (pinned to 7491200858)

Solutions

  1. Check the warned error to identify the failing RPC or store write
  2. Retry the toggle after the cause is fixed and verify via the next app-state snapshot
  3. If the setting no longer exists in the current product surface, remove the dead toggle instead of debugging the persist path
Defensive patterns

Strategy: try-catch

When it happens

Trigger: Thrown at app/src/components/settings/panels/PrivacyPanel.tsx:97 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of tinyhumansai/openhuman@7491200858 (2026-08-17). Data as JSON: /api/errors/3f01026fe4fda304. Report an issue: GitHub.