tinyhumansai/openhuman · error

Querit returned non-2xx status {status}

Error message

Querit returned non-2xx status {status}

What it means

The Querit search endpoint answered a non-2xx HTTP status; the body is logged (length only) and not embedded. Transport succeeded — this is Querit's own refusal (auth, quota, bad request).

Source

Thrown at src/openhuman/search/tools/querit.rs:489

            .header("Content-Type", "application/json")
            .header("Accept", "application/json")
            .json(&body)
            .send()
            .await
            .map_err(|e| {
                tracing::warn!("[querit] request failed: {e}");
                anyhow::anyhow!("Querit search request failed: {e}")
            })?;

        let status = resp.status();
        if !status.is_success() {
            let body_text = resp.text().await.unwrap_or_default();
            tracing::warn!(
                status = %status,
                body_len = body_text.len(),
                "[querit] non-2xx response from Querit"
            );
            anyhow::bail!("Querit returned non-2xx status {status}");
        }

        let search_resp = Self::decode_response(resp.json().await.map_err(|e| {
            tracing::warn!("[querit] failed to read response JSON: {e}");
            anyhow::anyhow!("Failed to read Querit response JSON: {e}")
        })?)?;

        if search_resp.error_code != 0 && search_resp.error_code != 200 {
            tracing::warn!(
                error_code = search_resp.error_code,
                error_msg_len = search_resp.error_msg.chars().count(),
                "[querit] application-level error from Querit"
            );
            anyhow::bail!("Querit returned error_code {}", search_resp.error_code);
        }

        tracing::debug!(
            result_count = search_resp.results.result.len(),

View on GitHub (pinned to 7491200858)

Solutions

  1. Check the Querit credentials and quota for 401/403
  2. Retry for transient 5xx/429 responses
  3. Inspect the logged body length / warn line for the request shape
Defensive patterns

Strategy: retry

When it happens

Trigger: Thrown at src/openhuman/search/tools/querit.rs:489 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/9b61d92fd3923f92. Report an issue: GitHub.