I design governance records for systems that touch people, and I keep hitting the same gap. Minimum necessary is something everyone can recite and almost nobody can hand you as a field list. So I tried to write the field list. I would like it broken by people who have actually operated these systems.
The constraint I set was: enough to govern, too little to surveil. If a record cannot answer what happened, whether the person agreed, and when this goes away, it is not doing governance work. If it answers much more than that, it has quietly become a profile.
Nine fields, three groups.
What happened
- event_id
- time
- system_action
- context
The human signal
- signal_type
- consent_state
Handling
- impact_level
- retention_rule
- review_status
What I deliberately left out:
- No identity field. The record points at a consent record, which points at a person. One hop. It means you can delete the person without shredding the audit trail.
- No free text. Free text is where protected information goes to hide. Every field is an enum or a timestamp except context, and context is a reference, not prose.
- No outcome field. Outcome is a later judgment about the event, and it belongs in the review, not in the record. Mixing them is how a log turns into a narrative.
The three I am least sure about:
consent_state as a single value is probably wrong. Consent is not a state, it is a history, and a system that stores only the current value cannot answer whether a collection was lawful at the moment it happened. I think this wants to be a pointer to a versioned consent record, but every time I try that the schema stops being minimal.
retention_rule living on the event rather than being derived from policy means a policy change does not reach records already written. That is arguably correct, since you should not retroactively extend retention. It is also arguably how you end up with a store nobody can age out.
review_status made me most uncomfortable, because it implies somebody reviews. A status field with no funded reviewer behind it is a lie that passes an audit.
I know minimum necessary is decades of law and practice and I am not claiming to have discovered anything. My claim is narrower: the gap between the principle and a concrete field list is where most implementations quietly get wide, and I would rather be corrected on a specific list than agreed with on a general one.
For those of you who have actually operated one of these: which of the nine would you cut, and which field am I missing that bites you every single time?