Currently, updates or the usage of PUT in the SWORD protocol isn't possible when the deposit_status is done.
In the SWORD documentation this modification should be possible.
6.5.2. Replacing the Metadata of a Resource
swordapp.github.io/SWORDv2-Profile/SWORDProfile.html
In SWH documentation
https://docs.softwareheritage.org/devel/swh-deposit/spec-api.html#put--1--collection-name---deposit-id--metadata-
Change the endpoint to accept deposit when status is done if X-Check-SWHID (optional) is given.
- The client sends (PUT) new/modified metadata on an already injected content.
- SWH checks that the SWHID in the deposit storage for the deposit_id is compatible with the X-Check-SWHID` HEADER.
- The metadata is injected to the metadata storage for the given SWHID
Remarks:
Q: Why do we need a SWHID from the client, since we have the SWHID attached to the deposit_id (for a done deposit)?
A: because we want to make sure that the information stored in the MetaData Storage is correct
there is no way to certify that the client has kept the right deposit_id except believing he did
and the fact matching the scenario without the SWHID is:
The client X has said Y on this deposit_id
we want to be sure that the fact is:
The client X has said Y on this SWHID