Kuberwastaken/claurst · error

team memory pull failed with status

Error message

team memory pull failed with status {}

What it means

The team-memory pull GET (with ETag/bearer auth against the sync API) returned a non-success status other than the handled 404-no-data case — the formatted status is the server's answer, typically 5xx, rate limiting, or auth rejection. The pull aborts; local memory files stay as-is.

Solutions

  1. Retry the pull later; transient server errors resolve on their own
  2. If 401/403, refresh the sync token and pull again
  3. Check the repo name and API base are correct for the team workspace
Defensive patterns

Strategy: retry

When it happens

Trigger: Thrown at src-rust/crates/core/src/team_memory_sync.rs:161 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of Kuberwastaken/claurst@b0637c97ec (2026-09-10). Data as JSON: /api/errors/77a647fd5217e4d7. Report an issue: GitHub.

Appendix: source

Thrown at src-rust/crates/core/src/team_memory_sync.rs:161

            self.api_base,
            urlencoding::encode(&self.repo),
        );

        let response = client
            .get(&url)
            .bearer_auth(&self.token)
            .send()
            .await
            .context("team memory pull: HTTP request failed")?;

        let http_status = response.status();

        if http_status.as_u16() == 404 {
            return Ok(()); // No remote data yet
        }

        if !http_status.is_success() {
            anyhow::bail!("team memory pull failed with status {}", http_status);
        }

        // Capture ETag before consuming the response body
        if let Some(etag) = response
            .headers()
            .get("etag")
            .and_then(|v| v.to_str().ok())
        {
            state.last_known_etag = Some(etag.to_string());
        }

        let data: TeamMemoryData = response
            .json()
            .await
            .context("team memory pull: failed to parse response JSON")?;

        state.server_checksums.clear();

View on GitHub (pinned to b0637c97ec)