Inform users of embargo expiration at end of project period
- Dominant language
- Python
- Stars
- 26
- Forks
- 21
- Avg merge
- 4d 23h
- Merged PRs (30d)
- 15
Description
Our [current embargo policy](https://docs.dandiarchive.org/terms-policies/policies/#access-and-reuse) mirrors the recent [NIH DMS Policy](https://grants.nih.gov/grants/guide/notice-files/NOT-OD-21-013.html).
> The final DMS Policy states that [s]hared scientific data should be made accessible as soon as possible, and no later than the time of an associated publication, or the end of the award/support period, whichever comes first.
It can be difficult to monitor that datasets are unembargoed when the corresponding manuscripts are published, but we can at least monitor the project end date of the grant and ensure that the data is unembargoed by then. Currently, all we do for embargoed datasets is ask for the grant ID, but we do no enforcement or even nudging to encourage respecting this NIH requirement. I propose we start with a light-handed approach:
1. When a user creates an embargoed dataset and enters a grant number, we use the reporter API to get the project end date. This could be done behind-the-scenes, but I think it should be done as a form validation. Then we can ensure that the grant exists and has not already ended.
2. we add that as the embargo end date in the metadata of the dandiset. There is an [`embargoedUntil` field](https://github.com/dandi/dandi-schema/blob/84bef7e6ca5068bbf3df79bb5d1d3d6759eec3b4/dandischema/models.py#L1098). Question: what happens currently when this date is passed? Does the dataset automatically unembargo, or is this just an annotation?
3. We display this date on embargoed pages.
4. If it is after that date, we display a "stinky" banner on the DLP stating that this dataset is beyond the embargo period and should be made public, linking to our policy and to the DMS policy we are mirroring
5. DANDI admins should have the ability to easily identify a list of embargoed datasets that are after the grant expiration date.
Related to
* #2378
* #865
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by tracing embargoed dataset creation and form validation, then inspect how the reporter API, the schema's embargoedUntil field, embargoed pages, and the DLP currently handle embargo dates. Review related issues #2378 and #865. Done means the proposed grant-date validation, metadata and page display, overdue banner, and admin identification are specified and implemented consistently.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- django, python
- Domain
- api, backend, web-dev
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100