Published in openvibe-contracts v0.33.0 (docs/adr/ADR-021-analytics.md), rendered as is.

ADR-021: Analytics ownership and privacy bounds

Status: Accepted 2026-09-23. Contract now; extraction decision at Wave 22.

Context and current evidence

Three repositories carry their own analytics_events. Aggregation lives in Tools. No retention bound exists anywhere (baseline D07-D10).

Decision

Alternatives considered

Migration consequences

Each service adds a nightly prune (30 days) and maps its existing events to the contract fields.

Rollback

Pruning is the only destructive step. Export the rollups before enabling it.

Acceptance tests