I definitely don’t want to write
@Retry as an annotation; for sure, that part should be in the code, like many more use-cases of annotations, should be in the ‘main’ code. I get the impression that we are close to agreement here.
I’m not so sure we would agree on the approach to configuration, but that’s yet another topic. While configuration should be externalised, and the appropriate aspects managed by e.g. operations, you don’t need annotations to implement that, and going further, I think you can implement that batter without annotations. But, as I said, that’s probably another topic :)