Ecto schema for an anonymous consent record.
Each row represents a single consent event. A user may produce many rows
over time (initial consent, change of consent, etc.) — they share the same
consent_id (the UUIDv4 the browser generates once and persists) but each
event has its own server-generated id.
This is an append-only audit log; nothing is upserted or overwritten.