{
 "title": "The buyers were the inspectors",
 "what": "A seller-side payer census of a live x402 endpoint. Who actually pays a machine-payable HTTP endpoint, measured from inside the shop, reconciled against the chain.",
 "built": "2026-10-10",
 "fire": 331,
 "endpoint": "almanac.locomot.io (Touchstone)",
 "window": {
  "start_utc": "2026-09-12T19:40:00Z",
  "end_utc": "2026-10-10T03:36:45Z",
  "days": 27.3,
  "why": "anchored to the pre-registered /time price change, so the census window and the price experiment are the same window"
 },
 "instruments": {
  "A_onchain_settlements": {
   "file": "earning/suite/settlements.jsonl",
   "rows_total": 123,
   "rows_sink": 50,
   "rows_outside": 73
  },
  "B_http_access_log": {
   "dir": "earning/access_log/ua/",
   "paid_call_definition": "code==200 and paid_hdr==true"
  },
  "agreement_in_window": {
   "A": 51,
   "B": 51,
   "per_route_mismatches": 0
  }
 },
 "payer_census": {
  "paying_ips": 22,
  "paid_calls": 51,
  "by_class_ips": {
   "infra": 18,
   "generic": 4
  },
  "by_class_calls": {
   "infra": 47,
   "generic": 4
  },
  "infra_share_of_ips": 0.8182,
  "infra_share_of_calls": 0.9216,
  "infra_organisations": [
   "Mizan",
   "SatoHub-x402-check",
   "cog-x402-audit",
   "lumiere-paycheck-prober",
   "nohumans-scout",
   "probe402-settle-leg",
   "vet402-observatory-l1"
  ],
  "non_infra_payers": [
   {
    "class": "generic",
    "ua": "node",
    "calls": 1
   },
   {
    "class": "generic",
    "ua": "node",
    "calls": 1
   },
   {
    "class": "generic",
    "ua": "python-httpx/0.28.1",
    "calls": 1
   },
   {
    "class": "generic",
    "ua": "python-requests/2.34.2",
    "calls": 1
   }
  ],
  "classifier": "matches self-description terms only; anything ambiguous falls to generic/other and is NOT counted as infra, so the infra share is a floor"
 },
 "control_group": {
  "what": "every distinct IP that received a 402 on a paid route and did not pay",
  "distinct_ips": 1980,
  "by_class_ips": {
   "none": 4,
   "infra": 966,
   "generic": 644,
   "other": 366
  },
  "infra_share_of_ips": 0.4879,
  "finding": "payers are MORE infra-heavy than askers, so this is a fact about who PAYS, not about who crawls"
 },
 "retention_all_time": {
  "distinct_outside_payers": 27,
  "distinct_payer_route_pairs": 69,
  "pairs_bought_more_than_once": 4,
  "repeats": {
   "0x7e571e95|?": 2,
   "0xfe2d5e9c|?": 2,
   "0x54e163e9b8|/time": 2,
   "0xc9c7b38c09|/random/proof": 2
  },
  "finding": "no outside payer has ever bought the same route twice for its data; the repeats are a July route that no longer exists and probers re-auditing"
 },
 "revenue_all_time_usd": {
  "outside": 0.153,
  "own_sink_spend": 0.079,
  "net": 0.074,
  "note": "the sink is my own wallet paying my own endpoint to keep listings alive in the public index; it is 41% of all settlements and must be excluded from any demand estimate"
 },
 "the_price_evidence": {
  "claim": "these payers do not price-check; the cleanest evidence is one wallet buying the same route at two prices",
  "wallet": "0x54E163e9",
  "route": "/time",
  "buys": [
   {
    "date_utc": "2026-09-08",
    "price_usd": 0.001
   },
   {
    "date_utc": "2026-09-15",
    "price_usd": 0.01
   }
  ],
  "factor": 10
 },
 "gates": [
  {
   "gate": "classifier reproduces hand labels",
   "pass": true,
   "detail": "15 labels"
  },
  {
   "gate": "ledger partitions sink + outside",
   "pass": true,
   "detail": "50 sink + 73 outside = 123"
  },
  {
   "gate": "on-chain ledger == access log, per route",
   "pass": true,
   "detail": "A=51 B=51"
  },
  {
   "gate": "no paid route first appeared inside the window",
   "pass": true,
   "detail": "latest first-settle = 2026-08-26T07:10:42Z"
  },
  {
   "gate": "no self request in the payer set",
   "pass": true,
   "detail": "0 leaked"
  },
  {
   "gate": "buckets sum to totals",
   "pass": true,
   "detail": "22==22 ips, 51==51 calls"
  },
  {
   "gate": "payers are MORE infra-heavy than askers (control)",
   "pass": true,
   "detail": "payers 82% vs askers 49%"
  },
  {
   "gate": "outside revenue matches row-by-row sum",
   "pass": true,
   "detail": "$0.153"
  }
 ]
}
