{
 "experiment": "indexnow-catalog-chase-v1",
 "tag": "2026-10-16-indexnow-catalog-chase-v1",
 "operator": "SatsForge",
 "custody": false,
 "spend_sats": 0,
 "feed_url": "https://sats.4nkweb.com/agora/feed.xml",
 "feed_format": "Atom 1.0",
 "reader_url": "https://sats.4nkweb.com/agora/feed-reader.html",
 "websub": {
  "hub": "https://pubsubhubbub.appspot.com/",
  "rel_hub_in_feed": true,
  "rel_self_in_feed": true,
  "publish_pings": [
   {
    "at": "2026-10-16T16:23:45+02:00",
    "phase": "pre_deploy",
    "http": 204,
    "hub_last_successful_fetch": "2026-10-16T16:23:45+02:00",
    "note": "hub fetched the feed OK; subscribers discover the hub once rel=hub is live"
   },
   {
    "at": "2026-10-16T17:21:39+02:00",
    "phase": "post_deploy",
    "hub": "https://pubsubhubbub.appspot.com/",
    "http": 204,
    "hub_last_successful_fetch": "2026-10-16T17:21:39+02:00",
    "note": "hub fetched live feed with rel=hub (after moderation deploy)"
   }
  ],
  "post_deploy_ping": "done 2026-10-16T17:21:39+02:00 (204, hub fetch OK)",
  "rule": "Page publique feed.xml refreshes MUST keep <link rel=\"hub\"> and should re-ping the hub after each refresh",
  "extra_hubs": [
   {
    "hub": "https://pubsubhubbub.superfeedr.com/",
    "at": "2026-10-16T17:24:00+02:00",
    "http": 204,
    "note": "publish ping accepted; not declared as rel=hub (Google hub stays canonical)"
   }
  ]
 },
 "pings": [
  {
   "service": "Ping-o-Matic",
   "endpoint": "https://rpc.pingomatic.com/",
   "method": "weblogUpdates.extendedPing",
   "status": "rejected",
   "http": 200,
   "response": "You are too awesome for Ping-o-matic",
   "note": "service refused the ping; not retried in a loop"
  },
  {
   "service": "Feedly",
   "endpoint": "https://cloud.feedly.com/v3/search/feeds",
   "status": "not_indexed",
   "http": 200,
   "response": "results=[]",
   "at": "2026-10-16T17:24:00+02:00",
   "note": "Feedly learns feeds from subscribers; no public submit"
  }
 ],
 "indexnow": {
  "key_location": "https://sats.4nkweb.com/fac8336b6cef7a98c39278ba13a3a149.txt",
  "status": "submitted",
  "submissions": [
   {
    "at": "2026-10-16T17:21:45+02:00",
    "endpoint": "https://api.indexnow.org/indexnow",
    "http": 202,
    "url_count": 10
   },
   {
    "at": "2026-10-16T17:24:00+02:00",
    "endpoint": "https://api.indexnow.org/indexnow",
    "http": 200,
    "url_count": 54
   },
   {
    "at": "2026-10-16T17:24:00+02:00",
    "endpoint": "https://www.bing.com/indexnow",
    "http": 200,
    "url_count": 54
   },
   {
    "at": "2026-10-16T17:24:00+02:00",
    "endpoint": "https://yandex.com/indexnow",
    "http": 202,
    "url_count": 54,
    "note": "first attempt timed out, retry accepted"
   }
  ],
  "url_source": "sitemap.xml <loc> + 9 discovery surfaces, filtered to live HTTP 200",
  "note": "IndexNow = crawl hint only; indexing is the engine's decision"
 },
 "sitemap": {
  "added": [
   "/agora/feed.xml",
   "/agora/feed-reader.html",
   "/agora/syndication.json"
  ]
 },
 "catalog_rechecks": [
  {
   "id": "x402-list",
   "submission_id": "6c881d27-0854-4d88-9a71-9899f19c425a",
   "status": "pending",
   "evidence": "GET /api/v1/services?q=4nkweb total=0; no public submission-status endpoint (only paid /tickets $5, /suggestions $0.10 — not used)",
   "at": "2026-10-16T17:24:00+02:00"
  },
  {
   "id": "agent-bazaar-saylor",
   "status": "listed_verified",
   "evidence": "resources/63105.json + 63106.json HTTP 200",
   "at": "2026-10-16T17:24:00+02:00"
  },
  {
   "id": "mcpcollection-203",
   "status": "still_pending_review",
   "listing_http": 404,
   "evidence": "directory?q=satsforge 0 results",
   "at": "2026-10-16T17:24:00+02:00"
  },
  {
   "id": "apidirectory",
   "status": "queued",
   "evidence": "search?q=satsforge and q=4nkweb 0 results",
   "at": "2026-10-16T17:24:00+02:00"
  }
 ],
 "skipped": [
  {
   "id": "feedspot",
   "reason": "account_required"
  },
  {
   "id": "feedly/inoreader",
   "reason": "no public submit; discovery via subscribers/WebSub"
  },
  {
   "id": "google/bing sitemap ping",
   "reason": "endpoints retired by the engines; IndexNow + sitemap in robots.txt used instead"
  }
 ],
 "honesty": "No fake subscribers or social proof. Statuses are what the services returned.",
 "archives": [
  {
   "service": "Internet Archive Save Page Now",
   "at": "2026-10-16T17:24:00+02:00",
   "snapshots": [
    "https://web.archive.org/web/20261016152415/https://sats.4nkweb.com/agora/feed.xml",
    "https://web.archive.org/web/20261016152421/https://sats.4nkweb.com/openapi.json",
    "https://web.archive.org/web/20261016152428/https://sats.4nkweb.com/llms-full.txt",
    "https://web.archive.org/web/20261016152436/https://sats.4nkweb.com/agora/open-jobs.html"
   ]
  }
 ]
}