Setup: hotkey 5GbhZBYMunT3Rv7Bd1twYjHPNX6v7af4Zi4LMqJJLJgBLzcW (UID 254, netuid 105), repo v0.2.1, Python 3.10, mainnet endpoints from docs.
What works: /auth/challenge + /auth/verify succeed (API key issued), NATS control connects to tls://orch-gateway.b1m.ai:4222, worker registration works (worker connects to our gateway).
What fails: every register message returns register_error: orchestrator_not_routable.
Evidence it is not a reachability problem:
- Advertised
url/gateway_url tested as both http://212.43.154.172:8000 and https://212-43-154-172.sslip.io (valid TLS cert)
GET /health returns 200 from the public internet on both; WebSocket upgrade on /ws/... responds correctly
- Tested regions
EU/europe/north-america, uid set and unset - identical rejection
- Across 5,000+ registration attempts, access logs (direct and via reverse proxy) show zero inbound HTTP requests from BeamCore to the advertised URL - the check never contacts the orchestrator
Questions: What does the routability check validate? Are new orchestrator registrations open, or is onboarding gated/allowlisted? If gated, what is the approval process?
Client-side bugs found while debugging (separate but related):
SubnetCoreClient.start_polling() is awaited during FastAPI lifespan startup, before uvicorn binds the port - any live probe at first registration would always fail; a fresh install can never register if the check probes synchronously.
Field(env=...) names in neurons/orchestrator/core/config.py are silently ignored by pydantic-settings v2 - e.g. documented ORCHESTRATOR_WORKER_GATEWAY_URL does nothing; only WORKER_GATEWAY_URL (the uppercased field nameworks. Same forORCHESTRATOR_UIDvsUID`.
Setup: hotkey
5GbhZBYMunT3Rv7Bd1twYjHPNX6v7af4Zi4LMqJJLJgBLzcW(UID 254, netuid 105), repo v0.2.1, Python 3.10, mainnet endpoints from docs.What works:
/auth/challenge+/auth/verifysucceed (API key issued), NATS control connects totls://orch-gateway.b1m.ai:4222, worker registration works (worker connects to our gateway).What fails: every
registermessage returnsregister_error: orchestrator_not_routable.Evidence it is not a reachability problem:
url/gateway_urltested as bothhttp://212.43.154.172:8000andhttps://212-43-154-172.sslip.io(valid TLS cert)GET /healthreturns 200 from the public internet on both; WebSocket upgrade on/ws/...responds correctlyEU/europe/north-america,uidset and unset - identical rejectionQuestions: What does the routability check validate? Are new orchestrator registrations open, or is onboarding gated/allowlisted? If gated, what is the approval process?
Client-side bugs found while debugging (separate but related):
SubnetCoreClient.start_polling()is awaited during FastAPI lifespan startup, before uvicorn binds the port - any live probe at first registration would always fail; a fresh install can never register if the check probes synchronously.Field(env=...)names inneurons/orchestrator/core/config.pyare silently ignored by pydantic-settings v2 - e.g. documentedORCHESTRATOR_WORKER_GATEWAY_URLdoes nothing; onlyWORKER_GATEWAY_URL(the uppercased field nameworks. Same forORCHESTRATOR_UIDvsUID`.