bee-check 0.6.0

Retrievability checker for Ethereum Swarm references. Multi-vantage stewardship probes, per-chunk drill-down, and one-shot re-seed.
Documentation
# Quick start

This page gets you to a working probe in under a minute, twice — once
from the CLI, once from the browser.

<div
  class="asciinema-player"
  data-src="casts/quick-start.cast"
  data-theme="asciinema"
  data-loop="false"
></div>

## Prerequisites

You need access to **at least one Bee node** with an HTTP API you can
reach. That can be:

- a node you run locally at `http://localhost:1633`, or
- a remote node whose `cors-allowed-origins` is configured to allow
  the SPA's origin (only matters for the web UI).

You also need a **Swarm reference** to check — a 64-hex (32-byte)
address. If you don't have one handy, upload anything with `swarm-cli`
or `curl -X POST .../bzz` first.

## CLI: install and probe

```bash
cargo install bee-check
bee-check <your-64-hex-ref> --bee http://localhost:1633
```

A successful run prints something like:

```
ref     c79394a6c311f816373ec9945365325e7fc0784cfa9a62deec1524d2c2bdc36a
status  Retrievable

vantages:
  http://localhost:1633  retrievable       312 ms  nb 71 PO 3
```

The `nb 71 PO 3` tail means: the probed Bee's overlay sits in
neighborhood `71`, and the proximity-order between that overlay and
the reference is 3. See [Overlay, neighborhood, proximity
order](./concepts/proximity.md) for what those numbers tell you.

Multi-vantage in one command:

```bash
bee-check <ref> \
  --bee http://localhost:1633 \
  --bee https://my-other-bee.example.com
```

Add `--per-chunk` to walk the manifest and probe every reachable
chunk on every vantage. Add `--gateway https://api.gateway.ethswarm.org`
to fold a public gateway HEAD probe into the same report.

## Web: open the SPA

Visit [`ethswarm-tools.github.io/bee-check-web`](https://ethswarm-tools.github.io/bee-check-web/),
paste your reference, paste your Bee URL, click **Check**.

If you get a CORS error in the browser console, see
[Setup and CORS](./web/index.md) — your Bee node needs to allow the
page's origin.

If you point at `http://...` instead of `https://...` (and not
`localhost`), the browser will block the call as mixed-content. Same
chapter covers the fix.

## What to read next

- [Concepts overview]./concepts/index.md — what the report fields
  actually mean.
- [Cookbook]./cookbook/index.md — solving specific problems.
- [Command reference]./cli/commands.md — every flag.