Skip to content

Documentation · 04 / 06

API and RPC limitations

Heuristic extraction, explorer availability, public RPC limits, latest-block reads, caches.

Selector extraction is heuristic Link to Selector extraction is heuristic

Selectors are found by disassembling the runtime code and matching dispatcher comparisons. Unusual compilers, hand-written assembly or custom dispatch can hide functions. A verified function that extraction did not find is still listed, marked as not found in bytecode.

Explorer availability Link to Explorer availability

Verification data comes from Blockscout, which is intermittently behind a Cloudflare bot challenge. ENTROPY does not bypass it. When Blockscout is unavailable it falls back to Sourcify; if neither answers, verification is shown as UNKNOWN with the reason.

Public RPC limits Link to Public RPC limits

The public RPC is rate-limited. ENTROPY retries with backoff, staggers automatic reads, and samples the block height. Heavy use needs ENTROPY_RPC_URL. ENTROPY itself rate-limits clients and returns RATE_LIMITED with a retry time.

Latest-block reads Link to Latest-block reads

All reads use the latest block at request time and say which block. There are no historical reads in this release.

In-memory caches Link to In-memory caches

Results are cached in memory per server instance, keyed by address and code hash. Caches reset on restart and are not shared between instances.

Size limits Link to Size limits

  • Calldata: up to 128 KB.
  • Logs per request: up to 500.
  • Proxy hops followed: up to 3.
  • Selectors looked up per contract: up to 512.

Not available yet Link to Not available yet

Storage slot reads, disassembly listing, diamond facets, access-control findings, interface detection (ERC-20), deployer and balance, codegen targets other than viem, ABI compare, and transaction calldata decoding by hash.