Status

Ingest health. This page reads the ingest run log in D1 directly and renders even when the snapshot store is empty. The weekly indexation report is built by the same worker.

Snapshot age
1 min
2026-09-30 09:12 UTC
Snapshot store
readable
55 contracts cached
Last ingest
ok
5896 ms · 2026-09-30 09:12 UTC
Minute tick, last hour
clean · 60 of 60
Hyperliquid mark and funding · every tick records, so one that never ran shows here
Failures in last 24 runs
0
24 runs recorded

Bindings and worker version

Three deploy steps the build cannot see, all checked here. A missing KV binding SNAPSHOT fails loudly, on purpose: pages answer 503. The other two fail quietly: every page still renders.

CheckStateWhat a wrong value means
KV binding SNAPSHOTattachedPages would serve 503 rather than fall back to the upstream API — deliberately, so a missing binding cannot hide behind a working-looking site.
D1 binding DBattachedPages still render, and the ingest worker still writes through its own binding, but nothing on the site can read what it wrote: the “Last ingest”, “Minute tick, last hour” and “Failures in last 24 runs” cards above say “unreadable”, “Per-venue coverage, last run” prints “—” for every venue, “Recent runs” below says “Run log unreadable”, and /open-interest cannot say how much of its open interest is new.
Ingest worker versioncurrent Deployed 3f775d930f91, site expects 3f775d930f91. The bundle is pasted into the dashboard by hand, so it can sit behind this repository with nothing to say so — whatever the newer worker was meant to write is simply absent.

External corroboration

What a signed-out reader gets when they follow the one external link this site would publish about itself. It is published only while this says published: a link that does not resolve is worse corroboration than none, and nothing here has to be edited either way.

URLStateLast anonymous GET
https://github.com/coinliqui/coinliquiunreachableHTTP 429, checked 16h ago

Series coverage

A published contract with no series behind it renders a page-shaped hole: the chart panel is simply absent, every other figure is fine, and nothing above this line would notice. The counts are against the 55 contracts currently published.

SeriesCoveredRefresh intervalMissing or stale
15-minute candles
drives the 15m and 30m charts
55 / 552 h
last full refresh 2026-09-30 08:52 UTC
none
Hourly candles
drives the liquidation map and the 1H/4H charts
55 / 552 h
last full refresh 2026-09-30 07:27 UTC
none
Daily candles
drives the 1D/1W charts and leverage survival
55 / 5512 h
last full refresh 2026-09-30 06:02 UTC
none
Funding history
drives the funding chart and 30-day standing on each contract page
55 / 556 h
last full refresh 2026-09-30 08:37 UTC
none

Per-venue coverage, last run

A venue silently dropping out of the upstream response looks like success: the run still writes rows, just fewer. A count at zero here is that failure.

VenueRows last run
Hyperliquid HlPerp55
Binance BinPerp52
Bybit BybitPerp51

Recent runs

WhenSourceStatusmsResult
2026-09-30 09:12 UTChyperliquid2005896ok
2026-09-30 09:07 UTChyperliquid2006528ok
2026-09-30 09:02 UTChyperliquid2006631ok
2026-09-30 08:57 UTChyperliquid2006504ok
2026-09-30 08:52 UTChyperliquid2007819ok
2026-09-30 08:47 UTChyperliquid2008575ok
2026-09-30 08:42 UTChyperliquid2007633ok
2026-09-30 08:37 UTChyperliquid2007771ok
2026-09-30 08:32 UTChyperliquid2008853ok
2026-09-30 08:27 UTChyperliquid2009249ok
2026-09-30 08:22 UTChyperliquid2008466ok
2026-09-30 08:17 UTChyperliquid2006096ok
2026-09-30 08:12 UTChyperliquid2006454ok
2026-09-30 08:07 UTChyperliquid2005909ok
2026-09-30 08:02 UTChyperliquid2007030ok
2026-09-30 07:57 UTChyperliquid2006382ok
2026-09-30 07:52 UTChyperliquid2005772ok
2026-09-30 07:47 UTChyperliquid2005895ok
2026-09-30 07:42 UTChyperliquid2006600ok
2026-09-30 07:37 UTChyperliquid2006294ok
2026-09-30 07:32 UTChyperliquid2006518ok
2026-09-30 07:27 UTChyperliquid2007206ok
2026-09-30 07:22 UTChyperliquid2007644ok
2026-09-30 07:17 UTChyperliquid2007754ok

Announcement channel

IndexNow is the only route from this site into the indexes that are not Google, and it needs no account. A URL is announced once, when it first appears — never on a price change. The Worker submits to all five endpoints rather than trusting the aggregator's fan-out, so a backlog against one of them is that endpoint's refusal rather than a site fault. Consecutive failures against the two Microsoft-run endpoints mean the shared Cloudflare egress is being throttled; the fix is npm run indexnow:drain, which sends the same backlog from somewhere else.

EndpointURLs owedConsecutive refusalsNext attempt
api.indexnow.org1235held until 2026-09-30 18:52 UTC
bing.com1858held until 2026-09-30 10:22 UTC
yandex.com0—next pass
search.seznam.cz0—next pass
searchadvisor.naver.com0—next pass

143 URLs recorded as published. Last accepted by any endpoint 2026-09-28 08:17 UTC.

2 endpoints are refusing. api.indexnow.org (35x, 12 owed), bing.com (58x, 18 owed). The retry rate decays from five minutes to a twelve-hour cap, so a URL owed here is not lost — it is waiting. What it is not is announced.

Contact route

The published address is hello@coinliqui.com, protected from edge rewriting. Directly below is the same address deliberately left unprotected, as a live test of whether the rewriting is switched on at all: hello@coinliqui.com. If those two differ, the edge is rewriting and the protection on every other page is what is keeping the site reachable.