BE Spike: Create/Edit/Derive Bib >What happens to a unsaved link when a MARC authority record is updated before user saves bib record
Description
Environment
Potential Workaround
is cloned by
is defined by
relates to
requires
Checklist
hideTestRail: Results
Activity

Khalilah Gambrell June 6, 2023 at 10:21 PM
Hey - Created the UI story. It is in draft state until I create the toast notification message.

Valery_Pilko June 6, 2023 at 2:27 PM
Hi
Do we need a UI story to provide some changes in toast notification according to this Spike?

Khalilah Gambrell May 20, 2023 at 1:02 AM
Hey Pavlo. Looks good. Please proceed in creating user stories.
Pavlo Smahin April 20, 2023 at 9:44 AM
, could you please explain what we should do with optimistic locking? For example, if Authority 1XX changed and a bib has a saved link to this authority?

Valery_Pilko April 20, 2023 at 7:57 AM
Hi
I think the following scenario also could be a requirement:
WHEN a linked bib field that has not been saved ($0 has populated from "001" of "MARC authority" record because there is no "010" in "MARC authority")
AND at the same time, another user has added the linked authority record "010 $a" subfield
WHEN user Saves the bib record
THEN the bib field "$0" is updated with the new "010 $a" value.
Details
Details
Assignee
Reporter

Objective
Implement consistent behavior for when a user is creating/editing/deriving a bib record WITH a linked bib field that has not been saved AND at the same time another user has a.) edited the linked authority record 010 subfield a (if it populated the linked bib field subfield 0, b.) edited the 1XX number or the 1XX controlled subfield value, OR c.) deleted the authority record before the user has saved the bib record.
Requirements
Authority 010 $a change: If the authority record 010 $a is the value used to populate a linked bib field's $0 AND that 010 $a is edited WHEN user Saves the bib record THEN the bib field $0 is updated with the new 010 $a value.
Authority 010 $a addition: If authority 010 $a has been added to an authority record (and is eligible to populate bib subfield 0) AND linked bib fields $0 were populated with authority 001 WHEN user Saves the bib record THEN the bib field $0 is updated with the new 010 $a value.
Authority 1XX change: If the authority record 1XX controlling subfield values have been updated or removed or added WHEN user Saves the bib record THEN the linked bib field controlled values should be updated.
Authority 1XX number change: If the authority 1XX is changed to another 1XX WHEN user Saves the bib record THEN unlink the bib field from authority record AND continue to Save record. Must inform user that the field is no longer linked. Implementation options outlined under Linked status update notification options section.
Authority 1XX has removed or added a $t and bib field is no longer eligible to be linked: WHEN user Saves the bib record THEN unlink the bib field from authority record continue to Save record. Must inform user that the field is no longer linked. Implementation options outlined under Linked status update notification options section.
Authority record deleted: WHEN user Saves the bib record THEN unlink the bib field and keep the metadata that was provided by the now deleted authority record AND continue to Save record. Must inform user that the field is no longer linked. Implementation options outlined under Linked status update notification options section.
Validation
Verify updates on
View source
Instance record
Create/Edit/Derive MARC bib record
Browse contributors/subjects
Expectation: Update Success toast notification with a note that link updates are in progress SHOULD display this notification when one bib field is linked to an authority record.
--------------------------------------------------------------------
Spike
Define technical requirements to apply this check on all unsaved/saved links when user Saves bib record
Requirements should consider any performance impact.
Requirements should consider scenario when a lot bib fields are linked AND many linked authority records have been updated and/or deleted
Assume we might need a loading/progress screen when there are many links with lots of updates?
Determine which Linked status update notification option (or combination of options) is best to communicate to users when link validation results in bib fields being unlinked
Approach should consider what can be implemented in Poppy, even if it is not the full implementation.
Present findings to team