tinyhumansai/openhuman · error

[onboarding:context] auto-advance failed

Error message

[onboarding:context] auto-advance failed

What it means

Catch around the auto-advance navigation in ContextGatheringStep: after the context-gathering probe finished successfully (and the user had not clicked the background link), the delayed onNext() call to move to the next onboarding step rejected. The warn is logged instead of surfacing an error screen — the step stays on screen and the user can still advance manually.

Source

Thrown at app/src/pages/onboarding/steps/ContextGatheringStep.tsx:375

        window.clearTimeout(timer);
        inFlight = false;
      }
    };

    void probe();
    const interval = window.setInterval(probe, ALIVE_PROBE_INTERVAL_MS);
    return () => {
      cancelled = true;
      window.clearInterval(interval);
    };
  }, [stillWorking, finished, hasError]);

  // Auto-navigate on successful completion (skip if user already clicked background link)
  useEffect(() => {
    if (finished && !hasError && !backgroundClickedRef.current) {
      const t = setTimeout(() => {
        void Promise.resolve(onNext()).catch(e => {
          console.warn('[onboarding:context] auto-advance failed', e);
          // Mirrors the manual click capture in ContextPage so the auto-
          // advance failure mode is not a Sentry blind spot (#2081). The
          // step tag distinguishes it from `continue-to-chat` clicks in
          // the dashboard.
          Sentry.captureException(e, {
            tags: { flow: 'onboarding-complete', step: 'auto-advance' },
          });
          setHasError(true);
        });
      }, 800);
      return () => clearTimeout(t);
    }
  }, [finished, hasError, onNext]);

  if (finished && hasError) {
    return (
      <div className="rounded-2xl border border-line bg-surface p-8 shadow-soft animate-fade-up">
        <div className="flex flex-col items-center justify-center gap-5">

View on GitHub (pinned to 7491200858)

Solutions

  1. Click Next / the advance control manually — the step is still interactive
  2. Check the router/state error in the console warn for the underlying rejection cause
  3. Reload the onboarding if navigation state is wedged
Defensive patterns

Strategy: try-catch

When it happens

Trigger: Thrown at app/src/pages/onboarding/steps/ContextGatheringStep.tsx:375 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/ddcab7f87f27a933. Report an issue: GitHub.