AuditLog at the type-level so new engineers don't forget to add the audit log when adding a new feature.AuditLog be provided, but there’s no guarantee that the implementation is actually usedauditProof, it’s just needed because I can’t figure out another way to enforce the type