In the end, assuming we push the parsing 'version' logic within the gnu lister (D2147),
we can have a sufficientely generic 'tar' loader as the following.
For more specific use case than gnu's, it can be passed a list of keys to use to build a composite primary key.
That primary key is solely used to check if we already downloaded the artifacts or not.
Those default keys are the one needed for gnu origins.
When D2025 lands, we will have the choice to either 1. pass along that list of keys for each scheduled tasks.
Or 2. even create in this module a dedicated task which set those.
I prefer 1. as it's more explicit.