😬 UH OHPLAY UH OH →

What happens to your data

Updated September 21, 2026.

Your replies and scoring

When you submit a reply, your browser sends it with the selected language and scenario to UH OH’s server on Cloudflare. In live mode, the server sends the scenario, your reply and judging instructions to TypeSafe’s Jev service. Demo mode calculates simulated feedback without sending the reply to TypeSafe.

The current game does not write replies to an application database or intentionally log their text. That does not mean no service processes or retains request information: Cloudflare handles network requests and abuse protection, and TypeSafe processes live scoring requests under its own policy.

TypeSafe’s privacy policy states that input is not used to train or fine-tune its models, and describes its retention and service providers. UH OH does not promise a fixed deletion period on TypeSafe’s behalf. See also Cloudflare’s privacy policy.

Friend challenges

A challenge link contains a signed score, language, level set, completed-level count, pack version and creation time. It does not contain your reply text. Anyone who receives the link can see its challenge information. Signing prevents undetected changes; it does not make the link private.

Usage statistics

We use our self-hosted Umami service on Vercel to understand page visits, referral sources, languages and how people play. Game events include starts, successful and failed judgments, result screens, replays, challenge links created or opened, successful link copies, completed native-share requests and score-card download requests. Event properties may include language, scoring mode, level, HP, completed levels, duration and a fixed error category.

Umami receives the page path and title, referring site origin, browser language and screen size. We remove URL queries and fragments, including challenge tokens, and do not send answer text or full referring URLs. Umami provides visitor and session estimates; event totals can include repeat plays. Its Vercel host receives network information needed to process requests.

We also keep limited event counts in Cloudflare D1: landing visits, starts, first judgments, result screens and challenge links created, grouped by language, broad source and scoring mode. These event payloads do not include answers, challenge tokens or IP addresses.

We do not set analytics cookies or write browser storage for tracking. We respect Do Not Track, Global Privacy Control and the Umami opt-out setting, and skip local development and debug visits. Cloudflare and Vercel still process network requests; provider retention and operational logs are separate from the event fields described above.

Sharing tools and questions

Opening the challenge dialog may load a QR-code library from jsDelivr. Native sharing uses your device’s share sheet only when you choose to share. For project questions, see the maintainer information on About UH OH. Avoid entering sensitive personal information in a game reply or public feedback.

中文说明

提交回答后,浏览器会把回答、语言和场景发到 UH OH 的 Cloudflare 服务。正式评分时,服务再把场景、回答和评分指令发送给 TypeSafe 的 Jev;Demo 模式不发送给 TypeSafe。

当前游戏不会把回答写入应用数据库,也不会主动记录回答文本。Cloudflare 和 TypeSafe 仍会按各自服务规则处理请求;这不等于整个处理链路“零留存”。供应商政策见上方链接。

好友链接只包含分数、题包、关卡、完成数量和生成时间等信息,不含回答文本;拿到链接的人可以查看挑战信息。

我们使用托管在 Vercel 的自部署 Umami 统计页面访问、来源站点、浏览器语言、屏幕大小,以及开玩、每关结果与失败、局末结果、重玩和分享操作。事件可能包含语言、评分模式、关卡、HP、完成数量、耗时和固定错误类别。页面网址会去掉查询参数和片段,来源网址只保留站点地址;不发送回答文本或挑战令牌。Umami 提供访客与会话估算,重复游戏可产生多次事件。Cloudflare D1 同时保留少量分类事件计数。我们不设置分析 Cookie,也不写入浏览器存储用于追踪;尊重 Do Not Track、Global Privacy Control 和 Umami 的退出设置,跳过本地开发与调试访问。Cloudflare 和 Vercel 仍需处理网络信息以提供服务。