Commit Graph

28 Commits

Author SHA1 Message Date
1134a3774a sync-status: dRPC-homogeneous block-lag status + fix never-used reference fallbacks
Match the dRPC gateway's per-chain "how many blocks behind is ok" model instead of a
fixed 2s/5s timestamp tolerance:
- check-health.sh: compare the reference head vs local head by BLOCK NUMBER and classify
  with the chain's dRPC lag thresholds (LAGGING_LAG/SYNCING_LAG, in blocks, from
  chains.yaml). dRPC uses the two thresholds inconsistently across chains (sometimes
  lagging<syncing, sometimes the reverse) so the smaller is the online boundary and the
  larger the syncing/drop boundary. Defaults 2/6 when a chain has no thresholds.
- multicurl.sh: also skip responses with result:null (a lagging endpoint lacking the
  requested block) so the fallback reference URLs are actually tried. Previously the first
  endpoint's {"result":null} was accepted as success -> fallbacks never ran, and the null
  reference hash made check-health report false "forked" (the online/forked flapping).
- sync-status.sh: resolve the lag thresholds (by drpc slug or chain id) and export
  LAGGING_LAG/SYNCING_LAG.
- reference-rpc-endpoint.sh: add --lags and --block-time-ms lookups.
- reference-rpc-endpoint.json: regenerated with per-chain block_time_ms + lagging_lag +
  syncing_lag (additive).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-16 05:55:55 +00:00
55433a4822 cosmos: fix CometBFT RPC .result wrapping in statesync + sync-status helpers
ct_configure_statesync read .block.header.height (null — CometBFT wraps in .result) so
statesync silently skipped -> gaiad fell back to genesis replay (panic). Use
'.result.X // .X' (robust to wrapped/unwrapped). Same fallback in check-health --cosmos.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-15 12:36:47 +00:00
78c78f5079 sync-status: add cosmos/CometBFT handler (gaiad + cosmos batch)
Cosmos-hub has NO EVM RPC — eth_blockNumber checks don't apply. Add a --cosmos
handler that probes the CometBFT /status method: sync_info.catching_up=false =>
online, else syncing; optional head-gap check vs the drpc reference. sync-status.sh
dispatches protocol=cosmos -> check-health.sh --cosmos. eth/starknet/aztec untouched.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-15 12:15:54 +00:00
goldsquid
3c20aac136 aztec maybe 2026-01-31 11:00:36 +07:00
rob
63b720f1e9 Add Starknet support to sync-status and check-health scripts
- sync-status.sh now detects Starknet paths and uses starknet_chainId
- Maps SN_MAIN/SN_SEPOLIA chain IDs to reference endpoints
- check-health.sh accepts --starknet flag for Starknet mode
- Uses starknet_getBlockWithTxHashes instead of eth_getBlockByNumber
- Handles decimal timestamps and block_hash field differences

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-15 09:10:52 +00:00
squidbear
0a1c490e87 fix for tron 2025-03-31 12:58:11 +02:00
squidbear
4c7560053d make mulitcurl follow redirects 2025-03-31 08:56:41 +02:00
squidbear
81888e7f1d allow upstream rpc to need 3 seconds befor erroring 2025-03-24 04:28:41 +01:00
squidbear
3b7a425edd less wait 2025-03-23 11:34:54 +01:00
squidbear
0e85af9526 use mulitple reference rpc 2025-03-23 11:27:14 +01:00
squidbear
33c57189f4 cleanup 2025-03-23 04:31:14 +01:00
Sebastian
a412965c27 more precision 2025-03-21 05:54:16 +01:00
Sebastian
42835e3e2c more precision 2025-03-21 05:53:45 +01:00
Sebastian
abdfab5d95 more precision 2025-03-21 05:52:11 +01:00
Sebastian
aca2301a2c better? 2025-03-21 05:34:32 +01:00
Sebastian
6bbba05710 timeout everytwhere 2025-03-18 13:13:52 +01:00
Sebastian
48efc4fc65 timeout everytwhere 2025-03-18 13:12:31 +01:00
Sebastian
e4484b1712 timeout everytwhere 2025-03-18 13:11:55 +01:00
Sebastian
97f0148e42 timeout everytwhere 2025-03-18 13:10:35 +01:00
Sebastian
2832ca186a timeout everytwhere 2025-03-18 13:09:29 +01:00
Sebastian
1ef4598ca0 timeout everytwhere 2025-03-18 13:06:51 +01:00
Sebastian
e50dc2deee timeout everytwhere 2025-03-18 13:04:25 +01:00
Sebastian
c139630997 timeout everytwhere 2025-03-18 13:02:42 +01:00
Sebastian
d887840138 timeout everytwhere 2025-03-18 12:58:58 +01:00
Sebastian
97c3396af0 we need to be gracious here 2025-03-18 12:35:57 +01:00
Sebastian
e8a5eb4bbf more reliable 2025-03-18 11:21:32 +01:00
Sebastian
78fb3dc32f more timeout for ref urls 2025-03-18 11:01:42 +01:00
Sebastian
0cebb54c00 refactor 2025-02-12 12:32:46 +01:00