dandi / dandi/dandi-archive

Remove blob_id from asset PUT/POST

Open
#392 3 comments 0 reactions 0 assignees View on GitHub
DX maintenance UX
Dominant language
Python
Stars
26
Forks
21
Avg merge
4d 23h
Merged PRs (30d)
15

Description

ATM to update metadata blob_id is needed, it shouldn't. Even to create a new asset we do not really need blob_id as there must be etag digest in metadata record, dandi-api can identify the blob from the etag digest and thus completely avoid requiring blob_id in the API call.

While addressing this issue, please do not just remove blob_id from the end point but allow for some deprecation cycle so already released clients remain functionable. Just needs to verify that blob_id provided matches the one detected I guess

PS from a discussion with @satra last week, but I think we forgot to file this isue.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by locating the asset PUT/POST endpoints and the metadata validation that currently requires blob_id. Trace how the etag digest identifies a blob, then verify the compatibility behavior for clients that still provide blob_id. Done means new requests can omit blob_id, while supplied values are checked against the detected blob during the deprecation cycle.

Written by the indexing model from the issue text.

Assessment

Tech stack
django, python
Domain
api, backend
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.