Mirrors rendered pages to R2 so a custom domain can answer them without invoking the Worker.
R2 reads are metered (10M Class B a month, 333,333/day against the 100,000/day Worker ceiling),
so mirror to the optimum, not everything: call optimalOffWorker() instead of hardcoding a
share. CDN absorption is zero until an operator adds a cache rule (Cloudflare decides HTML
eligibility by extension, so an origin cache-control cannot buy it back).
See
scripts/measure/free-envelope.ts for the model this feeds
scripts/measure/cdn-absorption.ts for where its cdnAbsorption comes from
Mirrors rendered pages to R2 so a custom domain can answer them without invoking the Worker.
R2 reads are metered (10M Class B a month, 333,333/day against the 100,000/day Worker ceiling), so mirror to the optimum, not everything: call
optimalOffWorker()instead of hardcoding a share. CDN absorption is zero until an operator adds a cache rule (Cloudflare decides HTML eligibility by extension, so an origincache-controlcannot buy it back).See
cdnAbsorptioncomes from