zed-industries/zed · error

OAuth callback server was cancelled by another sign-in attem

Error message

OAuth callback server was cancelled by another sign-in attempt

What it means

Supersession signal in the callback server loop: a request hit the /cancel path, meaning a newer sign-in attempt evicted this server; the pending receiver is resolved with this error so the stale attempt fails cleanly rather than hanging until timeout.

Source

Thrown at crates/oauth_callback_server/src/oauth_callback_server.rs:298

                };

                let raw_url = request.url().to_string();
                let raw_path = raw_url.split('?').next().unwrap_or(&raw_url);
                if raw_path == CANCEL_PATH {
                    let response = tiny_http::Response::from_string("Cancelled")
                        .with_status_code(200)
                        .with_header(
                            tiny_http::Header::from_str("Content-Type: text/plain")
                                .expect("failed to construct response header"),
                        )
                        .with_header(
                            tiny_http::Header::from_str("Connection: close")
                                .expect("failed to construct response header"),
                        );
                    if let Err(err) = request.respond(response) {
                        log::error!("Failed to send OAuth cancel response: {}", err);
                    }
                    let _ = tx.send(Err(anyhow!(
                        "OAuth callback server was cancelled by another sign-in attempt"
                    )));
                    return;
                }

                let result = handle_oauth_callback_request(&request, expected_path);

                let (status_code, body) = match &result {
                    Ok(_) => (
                        200,
                        oauth_callback_page(
                            "Authorization Successful",
                            "You can close this tab and return to Zed.",
                            false,
                        ),
                    ),
                    Err(err) => {
                        log::error!("OAuth callback error: {}", err);

View on GitHub (pinned to f4178619ac)

Solutions

  1. Ignore the stale attempt and complete the newest sign-in flow
  2. If no new sign-in started, restart the OAuth flow
Defensive patterns

Strategy: retry

When it happens

Trigger: Thrown at crates/oauth_callback_server/src/oauth_callback_server.rs:298 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of zed-industries/zed@f4178619ac (2026-08-20). Data as JSON: /api/errors/e48c097682683a19. Report an issue: GitHub.