Skip to content

three answer pages recommend an endpoint that was switched off - #2926

Merged
Flotapponnier merged 1 commit into
devfrom
fix/lava-discontinued
Oct 9, 2026
Merged

Flotapponnier merged 1 commit into
devfrom
fix/lava-discontinued

Conversation

@Flotapponnier

Copy link
Copy Markdown
Collaborator

Surfaced by the keyed-provider audit, verified directly.

Every Lava keyless host now answers:

{"error":"This endpoint has been discontinued."}

Confirmed on solana.lava.build, eth1.lava.build and base.lava.build.

Three answer pages still presented Lava as live, in six places, including the Solana page calling it one of "the 5 endpoints that actually answer keyless in 2026". Those pages exist to be cited by search and by models, so this is the worst place for the error to sit.

Counts corrected with the lists: seven to six on Ethereum and Arbitrum, five to four on Solana. Lava is named as discontinued rather than deleted, because a reader arriving from an older roundup needs to be told why it is gone.

The bench tables were already honest, rendering Lava at a 0 success rate with an unresponsive flag. Only the prose was wrong.

pnpm validate clean.

Every Lava keyless host now answers {"error":"This endpoint has been
discontinued."} - verified on solana.lava.build, eth1.lava.build and
base.lava.build.

Three answer pages still presented Lava as one of the endpoints that "sustain
continuous no-key probing" and are "ranked live above", including the Solana
page calling it one of "the 5 endpoints that actually answer keyless in 2026".
These pages exist to be cited by search and by models, so a dead endpoint
listed as live is the worst place for the error to sit.

Counts corrected with the lists: seven to six on Ethereum and Arbitrum, five to
four on Solana. Lava is now named as discontinued rather than deleted, because
a reader arriving from an older roundup needs to be told why it is gone.

The bench tables themselves were already honest, rendering Lava with a 0
success rate and an unresponsive flag; only the prose was wrong.

pnpm validate clean.
@Flotapponnier
Flotapponnier merged commit c2613ee into dev Oct 9, 2026
2 checks passed
Flotapponnier added a commit that referenced this pull request Oct 9, 2026
…oints (#2929)

* Ankr does serve Robinhood Chain, it just will not serve us (#2925)

The page said "does not list Robinhood Chain". It does: rpc.ankr.com/robinhood_mainnet
answers, and the refusal is -32052 "API key is not allowed to access blockchain",
which is a plan error. A chain Ankr did not route would not answer at all.

The distinction matters to a reader choosing a provider: "this chain is not
supported" and "this chain needs the Premium plan" lead to different decisions.

The other seven pages that exclude Ankr say "requires an API key" or "403
without an API key" and are all accurate; only Robinhood was wrong.

pnpm validate clean.

* three answer pages recommend an endpoint that was switched off (#2926)

Every Lava keyless host now answers {"error":"This endpoint has been
discontinued."} - verified on solana.lava.build, eth1.lava.build and
base.lava.build.

Three answer pages still presented Lava as one of the endpoints that "sustain
continuous no-key probing" and are "ranked live above", including the Solana
page calling it one of "the 5 endpoints that actually answer keyless in 2026".
These pages exist to be cited by search and by models, so a dead endpoint
listed as live is the worst place for the error to sit.

Counts corrected with the lists: seven to six on Ethereum and Arbitrum, five to
four on Solana. Lava is now named as discontinued rather than deleted, because
a reader arriving from an older roundup needs to be told why it is gone.

The bench tables themselves were already honest, rendering Lava with a 0
success rate and an unresponsive flag; only the prose was wrong.

pnpm validate clean.

* Dwellir joins the private cohort on the eight EVM chains (#2928)

* Dwellir joins the private cohort on the eight EVM chains

Dwellir was already half-wired: a canonical name, a registry entry and a logo
were committed, and only the key was missing. The key arrived, so this adds
the provider everywhere it can actually be measured.

Verified against the live endpoints before writing a line of spec: all eight
EVM chains answer eth_getBlockByNumber with the key, including the three where
our private cohort was thinnest. Hyperliquid, Robinhood Chain and Arc get
their first new keyed provider since the cohort was created.

Solana is deliberately absent. Dwellir publishes no Solana endpoint, their
networks index does not list it, and the harness skips a (provider, chain)
cell whose URL variable is unset, so that page keeps four providers with no
special casing.

Budget: the free tier is 100k responses a day, 1 response = 1 credit, so ~3M a
month across the three regions sharing the key. Eight chains cost 173k per
region per month at the 120 s cadence. The 1M per-region default is a runaway
guard, not a quota.

The logo was replaced, and that is worth explaining. The committed
dwellir.svg is the vendor's wordmark on an A4 artboard whose artwork runs past
the viewBox: it renders as a cropped "DWELL". Rendering it is how I found out.
Their only square mark is the favicon, so that is what ships, at 128px, which
is what getblock and chainstack already do.

preflight PASS on all nine pages including the 8 new dwellir-cold slugs, after
it caught the alias being written into the path map instead of ALIASES: the
same blank-chip bug this guard was written for.

pnpm validate clean, tsc clean, 495 tests pass, go build and go vet clean.

* Dwellir is on a paid Developer plan, not the free tier

I wrote "Free plan key, 100k responses per day" into all eight specs from the
public pricing page. The account is on the Developer plan: $49 a month, 25
million API responses, 100 responses per second, 1 RPC response = 1 API credit
with no compute units.

This is not cosmetic. Every keyed page promises a disclosed plan tier for every
provider in the cohort, so a wrong tier is a published factual error of the
same kind as the seven relays and the four oracle sources.

Two places needed it. The row tag, and the "Plan tiers, disclosed" methodology
bullet, which named four providers while the table is about to show five. That
bullet already runs 482 to 484 characters against a 500 cap, so Dwellir gets
its own bullet rather than a rewrite of other vendors' disclosures.

The budget comment said free tier too. Three regions share the key, so the plan
allows 8.3M per region; the eight chains cost 173k per region per month, under
1% of it. The 1M guard stays, correctly described now as a runaway guard rather
than a quota.

pnpm validate clean, go build and go vet clean, 495 tests pass.
Flotapponnier added a commit that referenced this pull request Oct 9, 2026
…2935)

A sweep of the 64 thin and unread RPC pages probed all 159 configured
endpoints with the call each chain actually speaks, and 14 pages had at
least one dead endpoint. The dominant cause is not random rot: PublicNode
stopped serving five of our chains. The identical request still succeeds
on ethereum-rpc.publicnode.com and 404s on moonbeam from the same edge
with DNS resolving, so this is a withdrawal, not an outage.

Repaired here, each replacement probed with eth_getBlockByNumber or the
chain's own method, kept only after returning the same head as another
source on 10 of 10 tries:

  moonbeam    publicnode and tenderly 404, and the Foundation endpoint
              refuses the TLS handshake from two independent stacks
              (LibreSSL 3.3.6 and OpenSSL 3.5.5), so it cannot be
              measured from our probes whatever the cause. Left drpc
              alone, added onfinality and unitedbloc.
  moonriver   same PublicNode withdrawal, same Foundation refusal. Added
              drpc and unitedbloc, both of which the spec had excluded in
              August for a dead route and dead DNS and which answer again.
  astar       1RPC answers about 15% of the time, the same ok_rate that
              already got it dropped from Oasis Sapphire. Added the Astar
              Foundation endpoint and drpc.
  cosmos-hub  Lava returns 410 Gone, consistent with its removal in #2926.
              Replaced with ecostake.
  gravity     Ankr requires a key on this chain now and answers 403, so it
              can never produce a sample. Replaced with thirdweb.

Two things found in passing and fixed:

  Moonbeam's intro claimed four endpoints and carried a clause with no
  subject. Moonriver's intro still listed its August cohort and named two
  providers as excluded that work today. Both rewritten against what is
  actually measured.

  gravity-official was published with no endpoint field at all, on a page
  whose own description promises URLs for every no-key endpoint. Added
  rpc.gravity.xyz, the host the harness has been probing all along.

Gravity keeps its "publicnode" provider label even though that row is the
Foundation's own host. Renaming it would start a new series and blank the
column for a full day, and the page already displays it correctly.

Not recovered, recorded here so the next sweep does not re-probe them:
dymension, nibiru, conflux, merlin, swellchain, regen and nolus have no
third keyless endpoint that answers, so they stay under the three-provider
gate.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant