Parent: #11066. Producer: the prober container class.
The largest untouched observable surface we have
We already serve ip:port for every neuron through get_subnet_serving and
get_chain_prometheus. None of it has ever been probed. The reason is precise and not a
priority call: src/health-probe-core.ts:113 allowlists exactly http, https, ws, wss, and
axons listen on arbitrary ports.
So the registry publishes an address and can say nothing about whether anything is listening at it —
which, for a registry whose product is "how to call this subnet", is the gap closest to the core
claim.
Scope
- A new operational surface kind for axon/prometheus endpoints, added to the probe-eligible set
- TCP connect result and connect latency per endpoint
- Where the endpoint speaks a known protocol, a protocol-level check rather than a bare connect
- Aggregate per subnet: what fraction of registered UIDs are actually reachable
The number this makes serveable
"This subnet has 256 registered UIDs and 31 reachable axons" is a fact about a subnet that nothing
in the ecosystem publishes, and it is directly comparable across subnets. Pair it with the existing
metagraph data and it prices participation honestly.
Care required
These are third-party hosts and we are opening thousands of connections. Cadence, concurrency and
per-host backoff need stating up front, and the existing SSRF guards (src/health-probe-core.ts:56-160)
must apply to raw TCP targets too — an ip:port from chain data is caller-influenced input and a
private-range address is a probe we must refuse.
Acceptance
Parent: #11066. Producer: the prober container class.
The largest untouched observable surface we have
We already serve
ip:portfor every neuron throughget_subnet_servingandget_chain_prometheus. None of it has ever been probed. The reason is precise and not apriority call:
src/health-probe-core.ts:113allowlists exactlyhttp,https,ws,wss, andaxons listen on arbitrary ports.
So the registry publishes an address and can say nothing about whether anything is listening at it —
which, for a registry whose product is "how to call this subnet", is the gap closest to the core
claim.
Scope
The number this makes serveable
"This subnet has 256 registered UIDs and 31 reachable axons" is a fact about a subnet that nothing
in the ecosystem publishes, and it is directly comparable across subnets. Pair it with the existing
metagraph data and it prices participation honestly.
Care required
These are third-party hosts and we are opening thousands of connections. Cadence, concurrency and
per-host backoff need stating up front, and the existing SSRF guards (
src/health-probe-core.ts:56-160)must apply to raw TCP targets too — an
ip:portfrom chain data is caller-influenced input and aprivate-range address is a probe we must refuse.
Acceptance
absent is null