Allow for new source values for shadow Instances

CSP Request Details

None

CSP Rejection Details

None

CSP Approved

None

Description

Purpose: Per the ECS architects, new source values are needed to distinguish "shadow" instances in member library tenants from regular instances. To that end, FOLIO will add the following source values:

  • MARC-shared (UI value) = CONSORTIUM-MARC (BE value): used for shadows of Shared instances with Source = MARC

  • FOLIO-shared (UI value) = CONSORTIUM-FOLIO (BE value): used for shadows of Shared instances with Source = FOLIO

User story

  • As a user working with Instances in a member library tenant,

  • I want to be able to identify not only whether an Instance has a source of MARC or FOLIO, but also whether that instance is a "shadow" version of a Shared instance whose master record lives in the Central consortial tenant, or is an Instance that is local to the member library tenant

  • So that I (and FOLIO) can be aware of the differing implications in terms of editing shared and local instances, and assign permissions accordingly

Requirements

  • Central consortial tenant: will show Instance source values of MARC or FOLIO

  • Member library tenant: will show Instance source values of MARC or FOLIO for local instances, and MARC-shared or FOLIO-shared for shadow versions of shared instances, whose master versions are stored in the central consortial tenant. All fields of these shadow instances will be locked from editing, unless the user has permission to edit shared instances (see UIIN-2448)

  • Non-consortial tenant (all existing tenants in production): will show Instance source values of MARC or FOLIO, and should not be affected by this change

Scenarios:

  1.  Scenario 1: Shared MARC instances in Member library tenant

    • Given that an Instance is in a member library tenant's Inventory

    • When it is designated as shared (has a central consortial tenant HRID and is linked to, and controlled by, an Instance in the central consortial tenant)

    • And that central consortial Instance has Source = MARC

    • Then assign the UI Source value of MARC-shared to the member library instance (based on BE value of CONSORTIUM-MARC)

  2.  Scenario 2: Shared FOLIO instances in Member library tenant

    • Given that an Instance is in a member library tenant's Inventory

    • When it is designated as shared (has a central consortial tenant HRID and is linked to, and controlled by, an Instance in the central consortial tenant)

    • And that central consortial Instance has Source = FOLIO

    • Then assign the UI Source value of FOLIO-shared to the member library instance (based on BE value of CONSORTIUM-FOLIO)

  3.  Scenario 3: Shared instances in Member library tenant

    • Given that an Instance is in a member library tenant's Inventory

    • When it has Source value of MARC-shared or FOLIO-shared

    • Then disallow editing of that Instance in the member library tenant

    • Unless the user has Central Library Tenant permission to edit instances

  4.  Scenario 4: Local instances in Member library tenant (already in place?)

    • Given that an Instance is in a member library tenant's Inventory

    • When it is designated as local (created in the individual member library tenant and not linked to a central shared consortial instance)

    • Assign the usual Source values of MARC or FOLIO

    • And allow the instance to be edited as long as the user has the standard Inventory: View, create, edit instances permission for that member library tenant

  5.  Scenario 5: Instances in Central consortial tenant (already in place?)

    • Given that an Instance is in a Central consortial tenant's Inventory

    • When assigning Source values

    • Then use the standard values of MARC or FOLIO

    • And do not assign values of MARC-shared or FOLIO-shared (which are only used for shadow instances, not the master instances)

  6.  Scenario 6: Instances in non-consortial tenant (already in place)

    • Given that an Instance is in a non-consortial tenant's Inventory

    • When assigning Source values

    • Then use the standard, existing values

    • And do not assign values of MARC-shared or FOLIO-shared (which are only used for shadow instances in consortial/member environments, not non-consortial environments)

Testing

  1. Member library tenant: check Source field for local MARC instances, local FOLIO instances, shared MARC instances, and shared FOLIO instances

  2. Consortial tenant: check Source field for MARC instances and FOLIO instances

  3. Non-consortial tenant: check Source field for MARC instances and FOLIO instances

Environment

None

Potential Workaround

None

Attachments

2

relates to

Checklist

hide

TestRail: Results

Activity

Show:

Oleksandr Hladchenko July 18, 2023 at 8:05 AM

This ticket will be tested in scope of MODINV-817. Close this ticket.

Ann-Marie Breaux July 6, 2023 at 3:25 PM

  Regarding ECS: Spitfire is responsible for the first 2 panes of Inventory (except the "New" action in the second pane menu. Folijet is responsible for the 3rd pane (Instance detail view) and the 3rd pane Action menu.

Denys Bohdan July 6, 2023 at 3:15 PM

Hi , thank you! Just wanted to confirm that so we don't do the same work twice.

Ann-Marie Breaux July 6, 2023 at 1:00 PM

Hi I'll take that question - no, Folijet is not doing any of the work on searching or facets. That would be on Spitfire, and I think has a story that covers it, but copying her just to confirm

Denys Bohdan July 6, 2023 at 11:04 AM

Hey , does this ticket include work to update the Source facet to work with new values?

Done

Details

Assignee

Reporter

Priority

Story Points

Sprint

Development Team

Folijet

Fix versions

Release

Poppy (R2 2023)

TestRail: Cases

Open TestRail: Cases

TestRail: Runs

Open TestRail: Runs

Created June 13, 2023 at 1:08 PM
Updated October 13, 2023 at 3:09 PM
Resolved July 18, 2023 at 8:05 AM
TestRail: Cases
TestRail: Runs