I have a lot of experience with enterprise architectures, and I would certainly not use the name repository because it is confusing. To me the approach looks quite complicated, having a bunch of constants in the SerializerHook like this:

   final static long OFFSET_SESSION_REPLICATION = 200:
   final static long OFFSET_HIBERNATE=300;

is the simplest approach and follows the KISS principle. So convince me that the current approach provides values compared to a bunch of constants.