The approach I'd thought didn't work: I planned on extending AuditEventListener, overriding onPostUpdate and adding a new AddWorkUnit before calling super() so it would add the ModWorkUnit. However, AuditProcess#addWorkUnit discards it because the (entityName, entityId) is already present in usedIds.
This behavour is expected.
We need to create a second SessionFactory in parallel, used only to create revisions for non audited entities. About the revision to be used, I would create a "default" non-audited revision.
This has some impacts that must be considered. In my use case I can live with a second SF as long as the Audit become usable.
There is another situation which must be considered that is when you try to fetch the audit entities and the entity itself has a audit entry but a related one (N-1) don't.