koios.vector.testnet.apexfusion.org was retired and answers 503, so the
"try mainnet, then testnet" resolver had nothing to fall back to. After
the mainnet fix both constants pointed at the same host, which meant a
transient failure on the first probe could succeed on the second and
label a mainnet base as "testnet" in the UI.
Mainnet or nothing. One base, one label.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UPpFgu6wXiDfJv8ghoUwBJ
The market-grid panels hardcoded koios.vector.testnet.apexfusion.org for
tip/blocks/totals. That host now answers 503, so 'Vector recent blocks'
rendered 'Block feed unavailable'. The mainnet host is live (verified:
200, epoch 378, block 7,995,065) and the site already names it as
KOIOS_MAINNET for its own resolver - the panels just never used it.
Source label corrected to match the host queried.
Also: Prime /tokens is NOT broken. It returns HTTP 200 with an empty
list - no native tokens are minted on Prime yet - so reporting it as
'Token feed unavailable' called a healthy API an outage. Now reads
'No tokens minted on Prime yet.'
Caveat kept honest: the panel still cannot distinguish empty data from a
failed fetch, so if that endpoint ever does break it will show the same
line.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UPpFgu6wXiDfJv8ghoUwBJ