{"record":{"id":"e5077571da4f26da","repo":"NousResearch/hermes-agent","slug":"no-checksum-entry-for-asset-name-in-checksum-fi-e50775","errorCode":null,"errorMessage":"No checksum entry for {asset_name} in {checksum_file.name}","messagePattern":"No checksum entry for (.+?) in (.+?)","errorType":"exception","errorClass":"RuntimeError","httpStatus":null,"severity":"error","filePath":"agent/secret_sources/bitwarden.py","lineNumber":301,"sourceCode":"        with urllib.request.urlopen(req, timeout=_BWS_DOWNLOAD_TIMEOUT) as resp:  # noqa: S310\n            with open(dest, \"wb\") as f:\n                shutil.copyfileobj(resp, f)\n    except urllib.error.URLError as exc:\n        raise RuntimeError(f\"Failed to download {url}: {exc}\") from exc\n\n\ndef _expected_sha256(checksum_file: Path, asset_name: str) -> str:\n    \"\"\"Parse the upstream ``bws-sha256-checksums-X.Y.Z.txt`` file.\n\n    Format is the standard ``sha256sum`` output: ``<hex>  <filename>``,\n    one per line.\n    \"\"\"\n    text = checksum_file.read_text(encoding=\"utf-8\", errors=\"replace\")\n    for line in text.splitlines():\n        parts = line.strip().split()\n        if len(parts) >= 2 and parts[-1] == asset_name:\n            return parts[0]\n    raise RuntimeError(\n        f\"No checksum entry for {asset_name} in {checksum_file.name}\"\n    )\n\n\ndef _sha256_file(path: Path) -> str:\n    h = hashlib.sha256()\n    with open(path, \"rb\") as f:\n        for chunk in iter(lambda: f.read(65536), b\"\"):\n            h.update(chunk)\n    return h.hexdigest()\n\n\ndef _pick_zip_member(zf: zipfile.ZipFile, binary_name: str) -> str:\n    \"\"\"Find the binary inside the upstream zip.\n\n    Historically the archive has been flat (``bws`` at the root) but we\n    tolerate a top-level directory just in case upstream changes.\n    \"\"\"","sourceCodeStart":283,"sourceCodeEnd":319,"githubUrl":"https://github.com/NousResearch/hermes-agent/blob/c896c09c42910c584c4c7d2325b58c14713ea42c/agent/secret_sources/bitwarden.py#L283-L319","documentation":"Error \"No checksum entry for {asset_name} in {checksum_file.name}\" thrown in NousResearch/hermes-agent.","triggerScenarios":"Thrown at agent/secret_sources/bitwarden.py:301 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Verify the downloaded checksums file matches the release asset names.","Re-download the release; the checksum file may be truncated or from a different release."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"c896c09c42910c584c4c7d2325b58c14713ea42c","analyzedAt":"2026-08-14T17:18:01.089Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}