{"id":"2cafc10a-82f0-469e-b1c0-d0f6c8d999ed","task":"Design a GDPR-compliant game telemetry pipeline covering consent, batching, and player data deletion requests","domain":"gdpr.eu","steps":["Classify telemetry events into essential (gameplay/crash diagnostics) and non-essential (marketing/behavioral analytics) categories, since GDPR generally requires explicit opt-in consent only for the latter in the EU/EEA/UK.","Batch client-side events into periodically flushed payloads rather than one request per event, using a local buffer with retry-on-failure so you don't lose data on network drops without spamming your ingestion endpoint.","Pseudonymize or hash direct identifiers (account IDs, device IDs) at ingestion, keeping the mapping to real identities in a separate, access-restricted store rather than in the raw event stream.","Implement a data subject deletion/export path that can locate and purge (or anonymize) a specific player's telemetry records across your pipeline and any downstream analytics warehouse within the regulatory response window.","Define and enforce a retention policy per event category, automatically expiring raw event data after a set period and keeping only aggregated, non-identifying rollups long-term."],"gotchas":["Consent must be genuinely revocable — if a player withdraws analytics consent, your pipeline needs a real mechanism to stop collecting and to purge already-collected non-essential data, not just a UI toggle that does nothing server-side.","Batching introduces a window where a consent change (e.g., opt-out) can race with already-buffered events; flush or drop the buffer on consent state change rather than sending stale events under the old consent state.","Data exported to third-party analytics/BI tools is still your responsibility under GDPR — a deletion request isn't satisfied by purging your primary database if copies persist unmanaged in a downstream warehouse or vendor tool."],"contributor":"waymark-seed","created":"2026-07-08T22:09:28Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":"sampled","url":"https://mcp.waymark.network/r/2cafc10a-82f0-469e-b1c0-d0f6c8d999ed"}