1. Core Principles: Local-First & Limited Use
Diverge (歧路) ("we", "us", or "our") is a dual-engine chess review and human intuition analysis workbench. Our foundational architectural principle is 100% In-Browser Local Processing:
- Zero Remote User Databases: We maintain no remote databases that collect, track, or monitor your personal profile or chess match records. No account registration is ever required.
- Client-Side Inferences: Both Stockfish 19 (WebAssembly) and Maia-3 deep neural networks run directly inside your client device's browser memory (CPU/GPU).
- Strict Limited Use: We commit never to sell, license, or monetize your data, and never to use your data for advertising, remarketing, or credit/lending scoring.
2. Disclosure of Locally Processed Data (Chrome Store Requirement)
Per Google Chrome Web Store Developer Program Policies and the User Data FAQ, even when user data is processed solely on the client machine and never sent to a remote server, developers must disclose its scope, purpose, and handling:
(1) Webpage Content & Chess Board Data
- Scope: When you navigate analysis boards, studies, puzzles, or concluded match archives on supported platforms (
lichess.org and chess.com), the extension's content scripts read directly from the active tab's runtime memory:
- Board position strings (FEN) and legal move coordinates;
- Notation records (SAN / UCI / PGN move lists);
- Public player usernames and platform ratings;
- Match termination evidence (active clock countdown, resignation buttons, game-over banners).
- Purpose: Exclusively to drive client-side Maia-3 attention heatmap rendering, compute human intuition probabilities, execute Stockfish 19 centipawn evaluations, and display player labels on the review studio. Furthermore, our
FairPlayGuard uses clock and result states to guarantee complete engine lockout during live matches in accordance with fair-play rules.
- Retention: This information is processed strictly in temporary tab memory and is instantaneously discarded upon tab closure or position change. It is never logged or uploaded to any remote server.
(2) Local Client Storage (chrome.storage.local)
- Stored Items:
- Default target intuition Elo rating (1100, 1500, 1900, 2200);
- Interface language preference (
zh-CN / en);
- Visual overlay toggles (heatmap toggle, candidate arrows toggle);
- Floating panel minimized state and floating ball dock coordinates.
- Privacy Boundary: These values remain entirely within your local Chrome profile sandbox. We have zero remote access to them, and they are never synced to our servers.
3. Network Requests & Edge Proxy Audit
To enable PGN imports and neural network weight loading in a secure web environment, the extension engages in the following transparent network calls:
(1) Public Game Imports & Edge Proxy Requests
When you import a finished match in the Full Game Analysis studio:
- Lichess: The extension sends a direct, unauthenticated GET request to Lichess's public API (
https://lichess.org/game/export/{gameId}) to retrieve public PGNs.
- Chess.com: Due to CORS and browser-side CSP restrictions, the extension queries a dedicated Cloudflare Pages edge proxy endpoint:
https://4chess.cc/api/chesscom?id={gameId}.
Edge Proxy Safety & Transparency:
• The proxy code is fully open-source (located in functions/api/chesscom.js);
• Only public numeric Game IDs (8–16 digits) are transmitted to fetch public match callbacks from Chess.com;
• Stateless Operation: The edge endpoint never logs, collects, inspects, or stores personal credentials, cookies, session identifiers, user IP addresses, or browsing history;
• The communication is strictly one-way and read-only. Data is passed directly to the client browser without remote retention.
(2) Neural Network Model Weights Delivery
- Operation: Upon initial use or model switching, the extension downloads Maia-3 open-source neural network weights (5M model ~28MB, 23M model ~104MB) from our high-speed static CDN (
https://weights.4chess.cc/...).
- Client Cache: The binary weights are saved directly to your browser's local IndexedDB (
ModelCache) for instant subsequent launches and offline review capability.
- No Telemetry: This is a purely static GET file transfer without telemetry, analytics, or user fingerprinting.
4. Third-Party Sharing
We do not share, sell, or transfer any user data to third parties, data brokers, or advertising networks:
- The extension contains zero tracking SDKs, zero advertising modules, and zero third-party telemetry libraries (such as Google Analytics).
- All network communication is restricted exclusively to public chess exports and static model delivery as detailed above.
5. Children's Privacy
Diverge is a general-purpose chess review utility and does not knowingly collect personal information from children under 13. Because our architecture handles data locally without server-side user profiles, all users operate within the identical private, local sandbox.
6. Your Rights & Data Deletion
Because no personal information or chess games are stored on our servers, there is no remote account or database record to request deletion for:
- Wiping Local Data: You can permanently erase all local preferences, cached boards, and IndexedDB model weights at any moment by navigating to
chrome://extensions, clicking Details on Diverge, and selecting Clear data, or by simply uninstalling the extension.
7. Contact Us
If you have any questions or feedback regarding this Privacy Policy or our local data practices, please contact: