pub async fn record(db: &Db, entry: LogEntry<'_>) -> Result<(), Error>Expand description
Write one row to the action log.
Validates that user_id, model_name, and object_id are all
present before touching the DB — a missing field returns
Error::Internal and the caller propagates that as a 500. That
behaviour is deliberate: the admin spec requires “no logging =
FAIL”, so a broken audit pipeline must be visible, not silent.