{"ok":true,"schema_version":1,"data":{"agent_readiness":{"blocker_level":"missing-data","blockers":[{"code":"missing-docs","field":"docs_url","message":"No public documentation link is recorded.","next_action":"Add an official docs URL or document that no public docs exist.","severity":"missing-data"}],"missing_fields":["docs_url"],"status":"callable"},"categories":["baseline-augmented","baseline-curated","compute","dashboard","identity-reviewed","official-source-repo","official-website"],"completeness_score":93,"contract_version":"2026-07-03.2","example_count":0,"examples":[],"generated_at":"2026-07-27T10:51:25.049Z","integration_readiness":100,"name":"Compute Horde","netuid":12,"readiness":{"components":{"active_lifecycle":true,"auth_clarity":true,"callable_now":true,"documented":true,"has_callable_api":true,"has_candidate_api":true,"has_public_docs":false,"has_source_repo":true,"profile_complete":true},"readiness_tier":"buildable","readiness_version":2,"score":100,"readiness_verified":true},"schema_version":1,"service_count":5,"services":[{"auth":{"location":"header","name":"Authorization","scheme":"api-key","value_format":"<api-key>"},"auth_required":true,"auth_schemes":["apiKey","http"],"authority":"community","base_url":"https://grafana.bittensor.church/api/dashboards/uid/subnet","capability":"Compute Horde Grafana subnet dashboard by uid","description":"Public no-auth GET /api/dashboards/uid/subnet on grafana.bittensor.church returning the metagraph-subnet dashboard JSON already tracked by the registered dashboard URL (fetched by uid). Same Grafana host; live-verified 2026-07-21: HTTP 200 application/json. Note: /api/health on this instance returns 403 under anonymous access, so auth posture is not assumed from Templar.","eligibility":{"callable":true,"reasons":["not-bittensor-base-layer"],"live_status":"ok"},"fixture":{"artifact_path":"/metagraph/fixtures/sn-12-compute-horde-grafana-dashboard-subnet.json","captured_at":"2026-07-27T10:51:25.372Z","request":{"method":"GET","url":"https://grafana.bittensor.church/api/dashboards/uid/subnet"},"response":{"content_type":"application/json","status":200}},"fixture_status":{"artifact_path":"/metagraph/fixtures/sn-12-compute-horde-grafana-dashboard-subnet.json","captured_at":"2026-07-27T10:51:25.372Z","reason":null,"status":"available"},"health":{"status":"ok","classification":"live","latency_ms":1010,"last_ok":"2026-07-27T23:00:18.289Z","last_checked":"2026-07-27T23:00:18.289Z","stale":false,"observed_by":"live-cron-prober"},"kind":"subnet-api","provider":"compute-horde","schema_artifact":"/metagraph/schemas/sn-12-compute-horde-grafana-openapi.json","schema_source":{"artifact":"/metagraph/schemas/sn-12-compute-horde-grafana-openapi.json","hash":"c26d1fcb920e4cf3da3b55dab3d2eac30e2f13321a32c6fcca10e0837bdb93ec","match":"same-origin-openapi","observed_at":"2026-07-27T10:51:25.372Z","status":"captured","surface_id":"sn-12-compute-horde-grafana-openapi","url":"https://grafana.bittensor.church/public/openapi3.json"},"schema_status":"machine-readable","schema_url":"https://grafana.bittensor.church/public/openapi3.json","snippets":{"curl":"curl -sS 'https://grafana.bittensor.church/api/dashboards/uid/subnet' \\\n  -H 'Authorization: <api-key>'","python":"import requests\n\nresp = requests.get(\"https://grafana.bittensor.church/api/dashboards/uid/subnet\", headers={\"Authorization\": \"<api-key>\"})\nresp.raise_for_status()\nprint(resp.json())","typescript":"const resp = await fetch(\"https://grafana.bittensor.church/api/dashboards/uid/subnet\", {\n  headers: { \"Authorization\": \"<api-key>\" },\n});\nif (!resp.ok) throw new Error(`HTTP ${resp.status}`);\nconst data = await resp.json();"},"surface_id":"sn-12-compute-horde-grafana-dashboard-subnet"},{"auth":{"location":"header","name":"Authorization","scheme":"api-key","value_format":"<api-key>"},"auth_required":true,"auth_schemes":["apiKey","http"],"authority":"community","base_url":"https://grafana.bittensor.church/public/openapi3.json","capability":"Compute Horde Grafana HTTP API OpenAPI","description":"Public no-auth OpenAPI 3.0.3 schema (title \"Grafana HTTP API.\", 215 paths) at grafana.bittensor.church/public/openapi3.json. Served on the same Grafana host already registered as this file's dashboard surface (metagraph subnet dashboard for var-subnet=12; bactensor.io redirects here). Same publish convention already accepted for Templar (SN3) and Grail (SN81) Grafana OpenAPI surfaces.","eligibility":{"callable":false,"reasons":["not-bittensor-base-layer"],"live_status":"unknown"},"fixture":{"artifact_path":"/metagraph/fixtures/sn-12-compute-horde-grafana-openapi.json","captured_at":"2026-07-27T10:51:25.372Z","request":{"method":"GET","url":"https://grafana.bittensor.church/public/openapi3.json"},"response":{"content_type":"application/json","status":200}},"fixture_status":{"artifact_path":"/metagraph/fixtures/sn-12-compute-horde-grafana-openapi.json","captured_at":"2026-07-27T10:51:25.372Z","reason":null,"status":"available"},"health":{"status":"unknown","classification":null,"latency_ms":null,"last_ok":null,"last_checked":null,"stale":false,"observed_by":"unavailable"},"kind":"openapi","provider":"compute-horde","schema_artifact":"/metagraph/schemas/sn-12-compute-horde-grafana-openapi.json","schema_source":{"artifact":"/metagraph/schemas/sn-12-compute-horde-grafana-openapi.json","hash":"c26d1fcb920e4cf3da3b55dab3d2eac30e2f13321a32c6fcca10e0837bdb93ec","match":"surface-id","observed_at":"2026-07-27T10:51:25.372Z","status":"captured","surface_id":"sn-12-compute-horde-grafana-openapi","url":"https://grafana.bittensor.church/public/openapi3.json"},"schema_status":"machine-readable","schema_url":"https://grafana.bittensor.church/public/openapi3.json","snippets":{"curl":"curl -sS 'https://grafana.bittensor.church/public/openapi3.json' \\\n  -H 'Authorization: <api-key>'","python":"import requests\n\nresp = requests.get(\"https://grafana.bittensor.church/public/openapi3.json\", headers={\"Authorization\": \"<api-key>\"})\nresp.raise_for_status()\nprint(resp.json())","typescript":"const resp = await fetch(\"https://grafana.bittensor.church/public/openapi3.json\", {\n  headers: { \"Authorization\": \"<api-key>\" },\n});\nif (!resp.ok) throw new Error(`HTTP ${resp.status}`);\nconst data = await resp.json();"},"surface_id":"sn-12-compute-horde-grafana-openapi"},{"auth":{"location":"header","name":"Authorization","scheme":"api-key","value_format":"<api-key>"},"auth_required":true,"auth_schemes":["apiKey","http"],"authority":"community","base_url":"https://grafana.bittensor.church/api/org","capability":"Compute Horde Grafana current org","description":"Public no-auth GET /api/org on grafana.bittensor.church returning the current Grafana organization JSON. Same host as the already-registered dashboard and OpenAPI surfaces; anonymous viewer access is enabled on this instance even though the OpenAPI schema declares a global auth requirement. Live-verified 2026-07-21: HTTP 200 application/json.","eligibility":{"callable":true,"reasons":["not-bittensor-base-layer"],"live_status":"ok"},"fixture":{"artifact_path":"/metagraph/fixtures/sn-12-compute-horde-grafana-org.json","captured_at":"2026-07-27T10:51:25.372Z","request":{"method":"GET","url":"https://grafana.bittensor.church/api/org"},"response":{"content_type":"application/json","status":200}},"fixture_status":{"artifact_path":"/metagraph/fixtures/sn-12-compute-horde-grafana-org.json","captured_at":"2026-07-27T10:51:25.372Z","reason":null,"status":"available"},"health":{"status":"ok","classification":"live","latency_ms":349,"last_ok":"2026-07-27T23:00:18.289Z","last_checked":"2026-07-27T23:00:18.289Z","stale":false,"observed_by":"live-cron-prober"},"kind":"subnet-api","provider":"compute-horde","schema_artifact":"/metagraph/schemas/sn-12-compute-horde-grafana-openapi.json","schema_source":{"artifact":"/metagraph/schemas/sn-12-compute-horde-grafana-openapi.json","hash":"c26d1fcb920e4cf3da3b55dab3d2eac30e2f13321a32c6fcca10e0837bdb93ec","match":"same-origin-openapi","observed_at":"2026-07-27T10:51:25.372Z","status":"captured","surface_id":"sn-12-compute-horde-grafana-openapi","url":"https://grafana.bittensor.church/public/openapi3.json"},"schema_status":"machine-readable","schema_url":"https://grafana.bittensor.church/public/openapi3.json","snippets":{"curl":"curl -sS 'https://grafana.bittensor.church/api/org' \\\n  -H 'Authorization: <api-key>'","python":"import requests\n\nresp = requests.get(\"https://grafana.bittensor.church/api/org\", headers={\"Authorization\": \"<api-key>\"})\nresp.raise_for_status()\nprint(resp.json())","typescript":"const resp = await fetch(\"https://grafana.bittensor.church/api/org\", {\n  headers: { \"Authorization\": \"<api-key>\" },\n});\nif (!resp.ok) throw new Error(`HTTP ${resp.status}`);\nconst data = await resp.json();"},"surface_id":"sn-12-compute-horde-grafana-org"},{"auth":{"location":"header","name":"Authorization","scheme":"api-key","value_format":"<api-key>"},"auth_required":true,"auth_schemes":["apiKey","http"],"authority":"community","base_url":"https://grafana.bittensor.church/api/search","capability":"Compute Horde Grafana dashboard search","description":"Public no-auth GET /api/search on grafana.bittensor.church returning the anonymous-viewer dashboard/folder search listing. Same Grafana host as the registered OpenAPI schema; live-verified 2026-07-21: HTTP 200 application/json.","eligibility":{"callable":true,"reasons":["not-bittensor-base-layer"],"live_status":"ok"},"fixture":{"artifact_path":"/metagraph/fixtures/sn-12-compute-horde-grafana-search.json","captured_at":"2026-07-27T10:51:25.372Z","request":{"method":"GET","url":"https://grafana.bittensor.church/api/search"},"response":{"content_type":"application/json","status":200}},"fixture_status":{"artifact_path":"/metagraph/fixtures/sn-12-compute-horde-grafana-search.json","captured_at":"2026-07-27T10:51:25.372Z","reason":null,"status":"available"},"health":{"status":"ok","classification":"live","latency_ms":441,"last_ok":"2026-07-27T23:00:18.289Z","last_checked":"2026-07-27T23:00:18.289Z","stale":false,"observed_by":"live-cron-prober"},"kind":"subnet-api","provider":"compute-horde","schema_artifact":"/metagraph/schemas/sn-12-compute-horde-grafana-openapi.json","schema_source":{"artifact":"/metagraph/schemas/sn-12-compute-horde-grafana-openapi.json","hash":"c26d1fcb920e4cf3da3b55dab3d2eac30e2f13321a32c6fcca10e0837bdb93ec","match":"same-origin-openapi","observed_at":"2026-07-27T10:51:25.372Z","status":"captured","surface_id":"sn-12-compute-horde-grafana-openapi","url":"https://grafana.bittensor.church/public/openapi3.json"},"schema_status":"machine-readable","schema_url":"https://grafana.bittensor.church/public/openapi3.json","snippets":{"curl":"curl -sS 'https://grafana.bittensor.church/api/search' \\\n  -H 'Authorization: <api-key>'","python":"import requests\n\nresp = requests.get(\"https://grafana.bittensor.church/api/search\", headers={\"Authorization\": \"<api-key>\"})\nresp.raise_for_status()\nprint(resp.json())","typescript":"const resp = await fetch(\"https://grafana.bittensor.church/api/search\", {\n  headers: { \"Authorization\": \"<api-key>\" },\n});\nif (!resp.ok) throw new Error(`HTTP ${resp.status}`);\nconst data = await resp.json();"},"surface_id":"sn-12-compute-horde-grafana-search"},{"auth":null,"auth_required":false,"auth_schemes":[],"authority":"community","base_url":"https://raw.githubusercontent.com/backend-developers-ltd/ComputeHorde/master/validator/app/src/compute_horde_validator/validator/collateral_abi.json","capability":"ComputeHorde collateral contract ABI","description":"Public no-auth machine-readable JSON ABI for ComputeHorde's on-chain collateral smart contract, committed in the official backend-developers-ltd/ComputeHorde source repository (whose README declares \"Subnet 12 of Bittensor\"). The contract carries a NETUID accessor plus the deposit / reclaim / finalizeReclaim / collaterals interface that SN12 miners and validators use for the subnet's economic-security collateral flow — a standalone machine-readable reference artifact the registry did not yet capture.","eligibility":{"callable":true,"reasons":["not-bittensor-base-layer"],"live_status":"ok"},"fixture_status":{"artifact_path":null,"captured_at":null,"reason":"non-json response","status":"capture-failed"},"health":{"status":"ok","classification":"live","latency_ms":339,"last_ok":"2026-07-27T23:00:18.289Z","last_checked":"2026-07-27T23:00:18.289Z","stale":false,"observed_by":"live-cron-prober"},"kind":"data-artifact","provider":"compute-horde","schema_artifact":null,"schema_source":null,"schema_status":null,"schema_url":null,"snippets":{"curl":"curl -sS 'https://raw.githubusercontent.com/backend-developers-ltd/ComputeHorde/master/validator/app/src/compute_horde_validator/validator/collateral_abi.json'","python":"import requests\n\nresp = requests.get(\"https://raw.githubusercontent.com/backend-developers-ltd/ComputeHorde/master/validator/app/src/compute_horde_validator/validator/collateral_abi.json\")\nresp.raise_for_status()\nprint(resp.json())","typescript":"const resp = await fetch(\"https://raw.githubusercontent.com/backend-developers-ltd/ComputeHorde/master/validator/app/src/compute_horde_validator/validator/collateral_abi.json\");\nif (!resp.ok) throw new Error(`HTTP ${resp.status}`);\nconst data = await resp.json();"},"surface_id":"sn-12-computehorde-collateral-abi"}],"slug":"sn-12","subnet_type":"application","operational_observed_at":"2026-07-27T23:00:18.289Z","health_source":"live-cron-prober"},"meta":{"artifact_path":"/metagraph/agent-catalog/12.json","cache":"standard","contract_version":"2026-07-03.2","generated_at":"2026-07-27T10:51:25.049Z","published_at":"2026-07-27T10:51:25.049Z","source":"live-cron-prober","operational_observed_at":"2026-07-27T23:00:18.289Z"}}