Drop7 Research

Privacy policy

Privacy without a black box

Effective August 23, 2026

Summary

Ordinary visits are measured on the server with first-party page-view analytics. There are no third-party analytics scripts, advertising pixels, cross-site trackers, or analytics cookies. Raw IP addresses, URL query strings, and signed-in identities are not added to analytics. If you choose to sign in with GitHub and submit a competition run, that optional feature necessarily handles the identity and game data described below.

Ordinary browsing

Drop7 Research does not use third-party client-side analytics, advertising technology, tracking pixels, or cross-site tracking. A small first-party navigation hook reports only the new pathname after in-site navigation so pages served from the browser's Next.js prefetch cache are counted. The server constructs the analytics event from that pathname and the request headers. The project does not sell personal information or combine site analytics with advertising data.

For each real page navigation, the server records the time, normalized page path and site host; referrer hostname and broad channel; a truncated user-agent string and accepted language; country, region, and city headers supplied by the hosting network when available; coarse device, browser, and operating-system families; and whether the request appears automated. It does not record URL query strings, referrer paths or queries, cookies, names, email addresses, GitHub IDs, or authentication state.

The source network address and user agent are combined with a secret in a one-way HMAC to make a pseudonymous visitor ID for aggregate visitor counts. The raw network address is discarded before the event enters analytics. This identifier is first-party, is not placed in your browser, and is not shared with an advertising or analytics provider.

Open-source transparency

The website code and its deployment configuration are public in the project repository. That includes the browser code, server-side event schema, authentication flow, admin access checks, and Firehose/Iceberg/Athena infrastructure definition. Any material change to that collection would be visible in the source and would require this policy to change.

Data kept in your browser

The playable game uses your browser's local storage to remember personal best scores. The competition game also uses local storage to preserve an unfinished move sequence and its local best. This information stays on your device and is not sent automatically. You can remove it at any time by clearing site data in your browser.

If you choose GitHub sign-in, the site sets a first-party, encrypted session cookie so you can remain signed in. It is essential to authentication, is not an advertising or analytics cookie, and may remain valid for up to 30 days. Signing out ends that session.

GitHub sign-in

Sign-in is optional and is only needed to submit a human competition score. The site asks GitHub for read-only access to basic profile data. During sign-in it processes your GitHub numeric account ID, username or display name, and other basic profile fields returned by GitHub for the session. The project does not request repository access and does not store your GitHub OAuth access token.

GitHub operates that authorization step under its own privacy statement. You can revoke the project's access from your GitHub application settings.

Competition submissions

Nothing is submitted merely because you play. After a run ends, you must explicitly choose to contribute it. A submission stores your GitHub provider and numeric account ID, GitHub username or display name, column choices, client and server-verified scores, move count, game/version identifiers, validation flags, and submission timestamps. The server may also write identity-linked validation or security events when it accepts or rejects a submission.

Your display name, score, move count, and submission time may appear publicly on the leaderboard and replay pages. The underlying competition ledger is intended to be a durable research record. Research datasets derived from human move streams are published without GitHub account identifiers.

Service providers

The site uses GitHub for optional authentication and Amazon Web Services for hosting and storage. First-party analytics events pass through Amazon Data Firehose and are stored as Parquet data in an Apache Iceberg table in Amazon S3, with metadata in AWS Glue and aggregate queries run by Amazon Athena. No separate analytics vendor receives those events. Like any internet host, AWS and GitHub may also process technical request data as needed to deliver, secure, and operate their services under their own terms.

Retention and your choices

Analytics query-result files expire after 7 days and failed Firehose delivery records expire after 30 days. The underlying Iceberg page-view table is retained until the project operator deletes or applies a table-retention policy to it. Authentication data in the encrypted session cookie lasts until sign-out, deletion, or expiry. Competition submissions are retained with the public research record for as long as the project maintains that competition, subject to applicable law.

You may browse and play without an account, clear local game data through your browser, sign out, or revoke GitHub authorization. For a privacy question or a reasonable request to access, correct, or remove competition information, use the contact options on the repository owner's GitHub profile. Do not post sensitive information in a public issue.

Children

This research site is not directed to children under 13, and the project does not knowingly collect personal information from them.

Changes to this policy

Material changes will be published on this page and in the public repository, with a new effective date. The current policy will always be linked from the site footer.