The current DOI updater uses the most recent update draft to formulate its new action (create, update, published update). However, some historic update drafts do not actually contain all the necessary metadata, such as concept_id.
New System to Identify Existing Drafts
Existing drafts tied to a concept_id were previously identified based on a matching draft.update['concept_id']. However, since not all doi drafts have a concept_id, we need to use a dual pronged approach.
Unpublished Create Drafts - these should have a concept_id
Everything Else - search the actual database for a matching concept_id, then search the updates for the most recent matching model_instance_uuid.
New System to Create Update Draft Contents
Basically, if an unpublished update draft exists which does not have a concept_id
The current DOI updater uses the most recent update draft to formulate its new action (create, update, published update). However, some historic update drafts do not actually contain all the necessary metadata, such as concept_id.
New System to Identify Existing Drafts
Existing drafts tied to a concept_id were previously identified based on a matching draft.update['concept_id']. However, since not all doi drafts have a concept_id, we need to use a dual pronged approach.
Unpublished Create Drafts - these should have a concept_id Everything Else - search the actual database for a matching concept_id, then search the updates for the most recent matching model_instance_uuid.
New System to Create Update Draft Contents
Basically, if an unpublished update draft exists which does not have a concept_id