# Free-Tier Survival Plan — leaksnipe.win estate Verified against the live account + Cloudflare docs, 2026-10-24 (Truffle). Replaces the Grok roadmap draft (its zone-multiplication premise is false — see §1). ## 1. The caps that actually bind (all ACCOUNT-level, Cloudflare docs "Account plan limits") - Workers: 100,000 requests/day · 10 ms CPU/invocation · 50 subrequests/request · 100 workers - Cron triggers: **5 per account total** - KV: 100k reads/day · 1,000 writes/day · 1 GB - D1: 5M reads/day · 100k writes/day · 5 GB - R2: 10 GB free, egress free on every plan - Durable Objects (free): 100k requests/day · 13,000 GB-s/day · SQLite classes only - Zones do NOT multiply any of this. Subdomain zones are Enterprise-only (API refuses subdomain zone creation: error 1116, verified live 2026-10-24). - Zone plan (Pro Website on leaksnipe.win) is separate from the Workers Paid subscription. The Oct 26 deadline is the Workers subscription ($84.77 invoice). ## 2. Estate state (measured tonight) - 64 workers · ~150,700 requests/day (7-day GraphQL analytics) before tonight's fix - kalshi-ladder-worker alone: ~105,800/day (70% of all traffic) - All 7 DO namespaces: `use_sqlite: true` → free-safe, no migrations owed - No Images / Browser Rendering / Vectorize / Queue bindings anywhere - Containers: containers-template + leaksnipe-beta would stop on free (paid-only); both non-production (~4 req/week) - Cron triggers: 9 → 8 after cutting dead vvv-price-alert (VVV route ended Oct 19/20) ## 3. Done tonight - **Edge-cache rule for ladder.leaksnipe.win GETs, 60s TTL** (zone cache ruleset, last position so it wins for this host). Why it's safe: the worker serves a *cached window state* refreshed on its 3-min cron and self-reports `fetched_at` — the body cannot change between refreshes, so 60s of edge TTL loses no freshness that exists. Effect (analytics, 20-min window after deploy): ladder invocations 18 vs ~1,460 baseline expectation. Projected estate total: **~47k/day — under the cap.** Rollback: delete the rule described "free-tier survival 2026-10-24" from the http_request_cache_settings entrypoint. - vvv-price-alert cron deleted (worker untouched). - UVIX router de-gated + dex-direct.leaksnipe.win created and registered (uvix:dex, uvix:dex-direct, manifest v1.3.2) — all agent surfaces answer unauthenticated. ## 4. Staged, not fired (only bind if the plan actually drops) - **Cron cut 8 → 5**: script `apply-cron-cut-when-downgraded.py` in this directory. Keep: kalshi-ladder-worker, scalper-market-data, wecryp-price-proxy, kodak-market-archiver, kodak-collector. Cut: muse-mcp (warmer only — bridge still answers live), mem-gateway (daily maintenance), leaksnipe-files (hourly janitor). NOT fired tonight: on the paid plan these crons do real work; cutting them now buys nothing. - **DO-alarm substitution**: the three cut jobs can move into Durable Object alarms (alarms are not cron triggers) on the existing SQLite DOs. Code change per worker; alarms burn the DO free budget (100k req/day) — precision tool, spec only. - **dex-rugcheck subrequest fix (Grok-side code)**: ~136 RPC calls/check vs the 50-subrequest free cap. JSON-RPC batching collapses it to a handful of fetches. Without this, the checker breaks on free no matter what else is done. - **Static-assets offload**: Workers Static Assets requests are unmetered; only code-routed paths count. Candidate: maurofanellijr-home (~1.3k/day). Requires a homepage-worker redeploy — do not touch while v8 awaits Mauro's verdict. ## 5. The structural lever (his build, with Grok) High-frequency internal polling is the load. Tailscale Serve (svc:grokdex pattern) moves agent-to-agent traffic off Cloudflare entirely — unmetered, and immune to the billing state of the account. Every internal read that moves to the tailnet is a request the free cap never sees. ## 6. Bottom line With the ladder cache rule in place, the estate fits under the free cap as measured (~47k/day projected vs 100k). The remaining free-tier breaks, in order: dex-rugcheck subrequests (code, Grok), cron 8>5 (staged script), Containers templates (accepted loss), 10 ms CPU on the heavy fan-out workers (unmeasured risk). Paying the $84.77 by Oct 26 still erases the entire question.