Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Return/Add validation of dandiset.yaml upon upload? #1427

Open
yarikoptic opened this issue Apr 15, 2024 · 3 comments
Open

Return/Add validation of dandiset.yaml upon upload? #1427

yarikoptic opened this issue Apr 15, 2024 · 3 comments

Comments

@yarikoptic
Copy link
Member

prompted by @satra's question in

ATM:

I think, indeed, we should re-approach validation of the dandiset.yaml here.

  • we should add validation to --upload-dandiset-metadata option block with the same behavior as we have for assets in terms of --validation option.
  • generally local dandiset.yaml might differ from the metadata record on the server.
  • validating local one makes little sense unless it being uploaded (see above -- we will validate in that case)
  • if we are not uploading it, we should validate/inform user about state of the remote/on the server dandiset.yaml (also subject to --validation option)
  • I do not think we should preclude upload overall if dandiset metadata record is failing validation, as we do not preclude upload of an asset if some other asset is faulty.

WDYT @satra @jwodder ?

@satra
Copy link
Member

satra commented Apr 25, 2024

the key question is whether you expect to only get dandiset id from dandiset.yaml, or do you expect anything more than that. if the former, then it doesn't matter if the rest is valid or invalid.

however, i think the CLI is always an opportunity to inform the user to fix/update something. think npm serve as an analog. it always tells you which packages have critical issues, and also provides an autofix for some of the issues. thus the cli could start helping the user to automate more tasks (using LLMs or other similar tools as well).

@yarikoptic
Copy link
Member Author

ATM AFAIK we just care about dandiset id since we are not uploading.

yes -- client has an opportunity, hence this issue, but there are all those concerns especially about ensuring up-to-dateness of local dandiset.yaml.

@satra
Copy link
Member

satra commented Apr 25, 2024

i would still say remote is the keeper of record and cli could tell user locally to update (or just auto update).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants