dandi / dandi/dandi-archive

Inform users of embargo expiration at end of project period

Open
#2,379 0 comments 0 reactions 0 assignees View on GitHub
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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.