Add sync job component templates for HAF apps
Composable building blocks for sync jobs: - .haf_app_sync_variables - common directory and compose variables - .haf_app_sync_setup - docker login and git safe.directory - .haf_app_fetch_haf_cache - fetch HAF replay data from local/NFS - .haf_app_copy_datadir - copy datadir and fix ownership - .haf_app_copy_blockchain - copy block_log to docker directory - .haf_app_sync_shutdown - checkpoint, collect logs, compose down - .haf_app_sync_save_cache - save to local and push to NFS - .haf_app_sync_cleanup - after_script cleanup - .haf_app_sync_artifacts - standard artifacts pattern Apps can compose their sync job using !reference tags to include only the pieces they need, while keeping app-specific logic inline.