{
  "schema": 1,
  "shelf": "board-showcase",
  "api_version": "0.4.7",
  "observed_at": "2026-09-12T01:11:57Z",
  "status": "MEASURED",
  "unknown_parts": [],
  "read_this_first": "Every part below is either measured or marked UNKNOWN with the reason. Nothing is reported as zero because it could not be read. `observed_at` is this host's UTC clock; the mirror is served by the same host that answers this, so the comparison is one host's two surfaces and not two independent observers.",
  "quota": {
    "status": "MEASURED",
    "limit": 80,
    "live_objects": 80,
    "headroom": 0,
    "live_bytes": 3682508,
    "at_ceiling": true,
    "basis": "manifest rows carrying both a digest and a size; rows that are link-only are not content-addressed, are not served from this shelf, and are not counted",
    "meaning": "a count, not a rate: it does not reset on a schedule, so `headroom` is how many new objects fit right now and nothing else"
  },
  "mirror": {
    "verify_requested": false,
    "catalog_generation": 144,
    "mirror_generation": 144,
    "mirror_written_at": "2026-09-11T23:02:52Z",
    "lag_generations": 0,
    "in_sync": true,
    "live_objects_counted": 80,
    "live_objects_not_in_mirror": [],
    "live_objects_not_in_mirror_count": 0,
    "live_objects_missing_from_disk": [],
    "live_objects_missing_from_disk_count": 0,
    "mirror_files_not_live": [],
    "mirror_files_not_live_count": 0,
    "mirror_files_not_live_present": [],
    "mirror_files_not_live_absent": [],
    "meaning": "`live_objects_not_in_mirror` is work the next publish would do; `live_objects_missing_from_disk` are live objects whose file is not there — a mirror that lost bytes while keeping the name; `mirror_files_not_live_present` are names the mirror still serves whose rows are gone, which is where a stale read lives; `mirror_files_not_live_absent` are names the snapshot claims and the disk does not have. The two `live_objects_*` lists overlap: an object that was never published is missing by both measures, so a reader must not add them. All of this is name sets and one stat per object — it does not say whether the CONTENT of a present file drifted.",
    "digest_checked": false,
    "digest_note": "content digests were not read: repeat with ?verify=1 to hash the files the snapshot names. Until then, agreement here is about names, generations and presence — not about content.",
    "status": "MEASURED"
  },
  "open_operations": {
    "in_flight_operations": [],
    "in_flight_count": 0,
    "terminal_states": [
      "ACCEPTED",
      "REFUSED"
    ],
    "operations_basis": "/var/lib/daedalus-shelf/operations: one file per operation, read directly",
    "unfinished_uploads": [],
    "unfinished_uploads_count": 0,
    "reserved_bytes": 0,
    "reserved_basis": "UploadStore.reserved_bytes(): the same accounting the write path uses",
    "meaning": "an upload session that has not committed still holds a reservation; a session past its staging window holds nothing and is not listed because reading state is not the place to expire anything",
    "status": "MEASURED"
  },
  "not_visible_from_here": [
    "whether a reader's own cached copy is stale: this reads the origin, not your cache",
    "any mirror served by a different host: the Pages outbox is not on this machine",
    "why an object is absent: a withdrawn digest and a digest that never existed both read as absent here; /v1/by-sha256/{digest} answers that question specifically",
    "the future: no field here is a prediction, and `headroom` is a count, not a rate"
  ],
  "fence": {
    "schema": 1,
    "roles": {
      "host_role": {
        "denotes": "one machine answering as both the API and the static mirror",
        "observed_at": "this response, and PUBLIC_DIR/snapshot.json on that same host"
      },
      "api": {
        "denotes": "the service answering /v1/* on this host",
        "observed_at": "this response body"
      },
      "mirror": {
        "denotes": "the files served under /board-showcase/ on this host",
        "observed_at": "PUBLIC_DIR/snapshot.json, hashed on this host",
        "snapshot_sha256": "3c3fa1e1aeb9776a9ae047dfdac2fa3e68be1ae2780e9e37445d2b698f0190cf"
      },
      "clock": {
        "denotes": "the UTC clock of that host",
        "observed_at": "the observed_at field of this response"
      }
    },
    "roles_sha256": "250b7f30591a8728cd6f53c8b46cab342550a55083f351bc9412f7e018f7132b",
    "roles_basis": "sha256 over each role's `denotes` and `observed_at` only; the values beside them change per reading and are deliberately outside the digest",
    "meaning": "two receipts are comparable only if their roles_sha256 matches: the same digest means the same declared substrate, not merely the same words. If it differs, the meaning of a role changed and agreement between the readings is about different things."
  }
}
