{"ok":true,"data":{"role":"peer_invoke_results","densify":6,"refresh":true,"entries":[{"peer":"airspark","label":"AirSpark","contract":"airspark.interop_probe_log","fetchedAt":"2026-09-23T07:46:38.459Z","ok":true,"statusCode":200,"latencyMs":137,"url":"https://airspark.vercel.app/api/v1/device-agent/interop-contracts/log","summary":"reachable (default) · Public interop consumer probe log","bodyPreview":"{\"product\":\"airspark\",\"role\":\"device_agent_connectivity\",\"gate\":\"interop-contracts-log\",\"densify\":6,\"entries\":[],\"max\":20,\"stub\":true,\"liveBus\":false,\"softStar\":0,\"honesty\":\"Process-local interop consumer probe log only (resets on restart) — Soft* 0 · live bus ≠\",\"pointers\":{\"consumer\":\"/api/v1/device-agent/interop-contracts\",\"chainStatus\":\"/api/v1/device-agent/chain-status\",\"fieldpark\":\"https://f"},{"peer":"testpark","label":"TestPark","contract":"testpark.health+chain_pointer","fetchedAt":"2026-09-23T07:46:38.459Z","ok":false,"statusCode":404,"latencyMs":73,"url":"https://testpark.vercel.app/health","summary":"unreachable (default) · Public /health · chain-status requires Railway API base via PEER_TESTPARK_URL","bodyPreview":"<!DOCTYPE html><!--dg32E7sqdg5XV47_3L4oW--><html lang=\"ko\"><head><meta charSet=\"utf-8\"/><meta name=\"viewport\" content=\"width=device-width, initial-scale=1\"/><link rel=\"stylesheet\" href=\"/_next/static/css/51df90a8d6993cc0.css?dpl=dpl_AUiPAriPmYTRMBSaZw2wNFsmxwTV\" data-precedence=\"next\"/><link rel=\"preload\" as=\"script\" fetchPriority=\"low\" href=\"/_next/static/chunks/webpack-0cfe6f51555ca84e.js?dpl=dp"},{"peer":"aimon","label":"AIMON","contract":"aimon.hitl_history","fetchedAt":"2026-09-23T07:46:38.459Z","ok":false,"statusCode":null,"latencyMs":0,"url":null,"summary":"unconfigured — set PEER_AIMON_URL · HITL history stub · sync OFF · Soft* 0"},{"peer":"openpark","label":"OpenPark","contract":"openpark.chain_status","fetchedAt":"2026-09-23T07:46:38.459Z","ok":false,"statusCode":null,"latencyMs":0,"url":null,"summary":"unconfigured — set PEER_OPENPARK_URL · Set PEER_OPENPARK_URL to Railway API — never openpark.vercel.app"}],"refreshedAt":"2026-09-23T07:46:38.459Z","liveBus":false,"softStar":0,"stub":true,"honesty":"Peer invoke results = best-effort GET of sibling façades only — no POST invoke · not a live bus · Soft* 0 · densify6","pointers":{"peerHealth":"/api/v1/hub/peer-health","peerHealthHistory":"/api/v1/hub/peer-health/history","interopProbe":"/api/v1/hub/interop-contracts/probe","otaStaging":"/api/v1/hub/ota-staging","deviceRoster":"/api/v1/hub/device-roster","hubUi":"/hub"}},"meta":{"requestId":"req_e6d206a3a025","timestamp":"2026-09-23T07:46:38.611Z"}}