zeroclaw-labs/zeroclaw · error · anyhow::Error

invalid SHA256SUMS entry for '{asset_name}'

Error message

invalid SHA256SUMS entry for '{asset_name}'

What it means

Error "invalid SHA256SUMS entry for '{asset_name}'" thrown in zeroclaw-labs/zeroclaw.

Source

Thrown at src/commands/update.rs:569

        .path_segments()?
        .next_back()
        .filter(|name| !name.is_empty())
        .map(str::to_string)
}

fn expected_sha256_for_asset<'a>(sums_text: &'a str, asset_name: &str) -> Result<&'a str> {
    for line in sums_text.lines() {
        let mut parts = line.split_whitespace();
        let Some(digest) = parts.next() else {
            continue;
        };
        let Some(name) = parts.next() else {
            continue;
        };
        let name = name.trim_start_matches('*');
        if name == asset_name {
            if parts.next().is_some() {
                bail!("invalid SHA256SUMS entry for '{asset_name}'");
            }
            if !is_sha256_hex(digest) {
                bail!("invalid SHA256SUMS entry for '{asset_name}'");
            }
            return Ok(digest);
        }
    }

    bail!("asset '{asset_name}' not found in SHA256SUMS")
}

fn is_sha256_hex(value: &str) -> bool {
    value.len() == 64 && value.bytes().all(|b| b.is_ascii_hexdigit())
}

fn main_binary_name() -> &'static str {
    if cfg!(windows) {
        "zeroclaw.exe"

View on GitHub (pinned to 88bb9c8533)

Solutions

  1. Re-fetch SHA256SUMS; a malformed entry may be transient or from a partial download.
  2. Verify the asset name matches an entry in SHA256SUMS and retry the update.

When it happens

Trigger: Thrown at src/commands/update.rs:569 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of zeroclaw-labs/zeroclaw@88bb9c8533 (2026-08-23). Data as JSON: /api/errors/52d5dc9a660ce97a. Report an issue: GitHub.