This is based on my understanding of how it currently works, and
this comment by @moranegg: https://forge.softwareheritage.org/D637#inline-3321
I introduced the following changes:
- introduced the concept of "gatherer" as a metadata provider, as a catch-all for everything that does not fit in the other types, eg. if we decide on implementing this: https://forge.softwareheritage.org/T833#31999 We can discard it afterward if we don't need it.
- Dropped the concept of 'tool'. As far as I understand, they are an intermediary between the provider and the SWH archive. IMO they only complicate stuff if we plan on extracting metadata from providers without any change.
- Changed the described endpoints to drop the concept of "provider id" (you know I don't like extrinsic identifiers by now :) )
- Changed the described endpoints to give consistent names to the parameters.