refactor: repo: separate concepts of 'expiry' and 'sync strategy'.

Related: RhBug:909856