828398b5ec
What players send (opt-in, unchanged switches) now describes the whole machine: CPU cores and base/boost clock, the GPU's maker, integrated or discrete and its VRAM, the drive under the game folder (NVMe/SSD/HDD), the screen (size, refresh, scale), on battery or mains, laptop or desktop. Perf, crash and bug items carry them in `system`; benchmark reports in `hardware`. No serials, host or user names, or paths. CONSENT_VERSION goes to 2, so players are asked again. The server keeps the new fields in `systems.extra` (the table is rebuilt once on old databases, ids kept). /v1/aggregate and /v1/benchmarks/summary add breakdowns by RAM class, VRAM class, drive, OS and integrated/discrete GPU; a class is published only with at least 3 different installs, never a raw value. website/scripts/benchmarks.mjs mirrors the classes on the shared fixtures. The summary's "not Horizon or plain vanilla" check returned None (accepted) instead of the rejection; it now matches the site's script. The launcher's "View what would be sent" and `data show` list every field. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>