{
  "checker": {
    "claims": [
      {
        "claim": "Output is byte-for-byte libbzip2's and every block and stream CRC is checked",
        "command": "/tmp/rust-user/cargo/bin/cargo run --release --example windows -- /tmp/mibz-out/claim-1 /tmp/mibz-data/sample.txt.bz2",
        "evidence": "every block CRC checked: identical in libbzip2, lbzip2, mibz2 scalar, mibz2 simd, mibz2 simd 3t, mibz2 decode_blocks\n1 blocks, 5200 bytes, 0 windows failed\n    Finished `release` profile [optimized + debuginfo] target(s) in 0.21s\n     Running `target/release/examples/windows /tmp/mibz-out/claim-1 /tmp/mibz-data/sample.txt.bz2`\n",
        "expected": "decoded blocks identical in libbzip2 and lbzip2 with CRC checked",
        "input": "sample.txt.bz2 (bzip2 -9 of a 5200-byte text)",
        "kind": "claim",
        "outcome": "Real input produced the expected result: every block CRC checked: identical in libbzip2, lbzip2",
        "returncode": 0,
        "source": "Its output is byte for byte libbzip2's, and every block CRC and stream CRC is checked.",
        "source_checked": true,
        "source_file": "README.md",
        "verdict": "yes"
      },
      {
        "claim": "Documented windows example command decodes a .bz2 window file",
        "command": "/tmp/rust-user/cargo/bin/cargo run --release --example windows -- /tmp/mibz-out/claim-2 /tmp/mibz-data/sample.txt.bz2",
        "evidence": "1 blocks, 5200 bytes, 0 windows failed\n    Finished `release` profile [optimized + debuginfo] target(s) in 0.24s\n     Running `target/release/examples/windows /tmp/mibz-out/claim-2 /tmp/mibz-data/sample.txt.bz2`\n",
        "expected": "1 blocks, 5200 bytes, 0 windows failed",
        "input": "sample.txt.bz2",
        "kind": "claim",
        "outcome": "Real input produced the expected result: 1 blocks, 5200 bytes, 0 windows failed",
        "returncode": 0,
        "source": "cargo run --release --example windows -- OUT w.bin...",
        "source_checked": true,
        "source_file": "README.md",
        "verdict": "yes"
      }
    ],
    "cycle_checks": [
      {
        "claim": "Scheduled or looping main behavior",
        "command": "",
        "evidence": "Inspected README, src, examples, Justfile and .github workflows: mibz2 is a bzip2 decoder library and CLI-style examples (bzcat, windows); it has no scheduler, cron, daemon, loop, webhook, --once or --now entry point, so there is no product cycle to trigger.",
        "expected": "identify the product trigger",
        "input": "source inspection",
        "kind": "cycle",
        "outcome": "Inspected README, src, examples, Justfile and .github workflows: mibz2 is a bzip2 decoder library and CLI-style examples (bzcat, windows); it has no scheduler, cron, daemon, loop, webhook, --once or --now entry point, so there is no product cycle to trigger.",
        "source": "repository entry points",
        "verdict": "yes"
      }
    ],
    "details": {
      "argv": [
        "/tmp/rust-user/cargo/bin/cargo",
        "run",
        "--release",
        "--example",
        "windows",
        "--",
        "/tmp/mibz-out/probe",
        "/tmp/mibz-data/sample.txt.bz2"
      ],
      "kind": "cli",
      "needs_browser": false,
      "needs_credentials": false,
      "returncode": 0,
      "scope": "product operation",
      "stderr": "    Finished `release` profile [optimized + debuginfo] target(s) in 0.22s\n     Running `target/release/examples/windows /tmp/mibz-out/probe /tmp/mibz-data/sample.txt.bz2`",
      "stdout": "sample.txt: 1 whole blocks (bits 32..752), 1 streams ended, 5200 bytes decoded, every block CRC checked: identical in libbzip2, lbzip2, mibz2 scalar, mibz2 simd, mibz2 simd 3t, mibz2 decode_blocks\n1 blocks, 5200 bytes, 0 windows failed",
      "working": true
    },
    "evidence_strength": "readme_checked",
    "example_checks": [
      {
        "claim": "Repository Python test suite (CI pytest step) runs against the installed mibz2 package",
        "command": "/tmp/mibz-venv/bin/pytest -q --import-mode=importlib <guest-path>",
        "deferred": false,
        "evidence": "..............                                                           [100%]\n14 passed in 0.68s",
        "expected": "all tests pass",
        "input": "python/tests",
        "kind": "example",
        "outcome": "command completed successfully",
        "returncode": 0,
        "source": "README.md ## Python",
        "verdict": "yes"
      }
    ],
    "status": "PASS"
  },
  "deviations": [
    "Guest cargo was 1.75 (distro), too old for Cargo.lock v4 and rust-version 1.80. Installed Rust 1.99.1 with rustup-init into /tmp/rust-user (CARGO_HOME/RUSTUP_HOME there); plain rustup.sh refused because a system Rust was on PATH, so RUSTUP_INIT_SKIP_PATH_CHECK=yes was set. Probes use the absolute cargo path.",
    "'windows' example needs lbzip2 (it compares output against lbzip2; not documented in README). Ran sudo apt-get update, then apt-get install lbzip2 (first install attempt failed: 'Unable to locate package' because the index was stale).",
    "pip install mibz2 resolved to PyPI 0.1.5, while the pinned commit's Rust crate is 0.1.3; the Python tests were run against the PyPI wheel, not a build of the pinned commit.",
    "pytest run from the checkout failed to import (\"No module named mibz2._mibz2\") because the repo's python/ source dir shadowed the installed wheel. Re-ran with --import-mode=importlib from /tmp; 14 passed.",
    "Python API (mibz2.decompress, mibz2.open) and bzcat (cargo run --release --example bzcat -- 4 < f.bz2 > f) were not replayed as probes: no documented Python CLI exists, and the checker's stdin is UTF-8 text so binary .bz2 input cannot be passed. The windows example exercises the same decoder on real .bz2 data.",
    "No cycles: mibz2 has no scheduler/daemon/webhook entry point."
  ],
  "fault_owner": null,
  "main_blocker": null,
  "operation": "Decode a real bzip2 (.bz2) file with mibz2 and verify its output and CRCs against libbzip2 and lbzip2, using the README's documented windows example command, plus the repo's Python test suite against the installed wheel.",
  "operation_scope": "Linux x86-64 guest (Ubuntu, Python 3.12.3, Rust 1.99.1 user-local). Covers the README Install step (pip install mibz2, from PyPI, version 0.1.5) and the Rust example 'cargo run --release --example windows'. Not covered: the README's Python API calls (mibz2.decompress / mibz2.open) and bzcat, because the README has no Python CLI and the checker's stdin is UTF-8 text, which cannot carry binary .bz2 data.",
  "outcome": "working",
  "plain_failure": null,
  "steps": [
    "git init; git remote add origin https://github.com/lmmx/mibz2; git fetch --depth 1 origin 24169e657c1fe7a4d1d2eb741178266fcf38dea4; git reset --mixed FETCH_HEAD",
    "python3 -m venv /tmp/mibz-venv; /tmp/mibz-venv/bin/pip install mibz2  (README: pip install mibz2)",
    "bzip2 -9 sample.txt -> sample.txt.bz2 (test input, outside the checkout)",
    "cargo run --release --example windows -- /tmp/mibz-out/probe /tmp/mibz-data/sample.txt.bz2  (README: cargo run --release --example windows -- OUT w.bin...)",
    "/tmp/mibz-venv/bin/pytest -q --import-mode=importlib python/tests  (repo's CI pytest step): 14 passed",
    "<env-var>=<guest-path> python3 -I <guest-path> --validate --replay: valid true, replay PASS"
  ],
  "stuck_step": null,
  "suggested_fix": null
}
