Concerns about functionality of Mark item Missing from Items Out

Bug #1998605 reported by Lindsay Stratton
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Evergreen
Fix Released
Medium
Unassigned
3.10
Fix Released
Medium
Unassigned
3.11
Fix Released
Medium
Unassigned

Bug Description

version 3.8

The MARK_ITEM_MISSING permission allows staff to mark missing an item that is currently checked out. There is a warning - "Item #### is checked out. Do you wish to check it in and continue marking it Missing?" but no override or other check on the action. Once marked missing, there is no indication that the item had been an active circ - the fines stopped reason is CHECKIN.

IMO, a "missing" item is something that should be on a shelf somewhere but is not.

An item that is checked out, and, theoretically, in the possession of a patron, would be claimed never checked out, claimed returned, or lost. FWIW, marking an item Claims Never Checked Out also changes the status to missing, but with the fines stopped reason CLAIMSNEVERCHECKEDOUT, which clearly indicates the actions taken on the transaction/item.

Ideally, active circs should not be marked missing. Alternatively, an override specifically for marking active circ items missing should be added - this would be similar to other "not ideal status" overrides.

Revision history for this message
Benjamin Kalish (bkalish) wrote :

I'm inclined to believe that marking a checked out item missing should simply be impossible in a single step. I'm OK with no user having permission to do this.

Revision history for this message
Elaine Hardy (ehardy) wrote :

+1

Revision history for this message
Galen Charlton (gmc) wrote (last edit ):

Looks like the last time this was touched in any significant fashion was in 2019. Bug 1779467 has a fair amount of additional context, including some discussion of handling of items that are currently checked out.

If my skim is correct, prior to that change Mark Item Missing would unconditionally change the item's status to missing regardless of whether it was checked. That change added some guardrails, but on the face of it I see no bar to adding further guardrails to either outright forbid marking a checked-out item missing or giving the staff user the option to instead mark it as lost (which has the implication that the patron is responsible for the loss). Or, as Lindsay suggests, just add an override permission.

Revision history for this message
Lindsay Stratton (lstratton) wrote :

I personally am entirely pro preventing active circ items from being marked missing. I can't think of any use case where that would be necessary and would not be otherwise better accomplished using one of the other options for disputed checkouts. If a patron will not be held responsible, check the item in, resolve any fines, and then mark the item missing. This may be a longer process, but there is a clear trail of actions taken.

If there is use case where an active circ should be directly made missing, then an override would offer that flexibility.

Revision history for this message
Susan Morrison (smorrison425) wrote :

Not sure if this would need to be a separate bug, but in permissions testing, I found that UPDATE_COPY allows the same behavior of being able to mark items missing, whether they are checked out or not, without the need for MARK_ITEM_MISSING.

Revision history for this message
Dan Briem (dbriem) wrote :

Here's a branch for testing that takes the approach of not allowing checked out items to be marked missing: https://git.evergreen-ils.org/?p=working/Evergreen.git;a=shortlog;h=refs/heads/user/dbriem/lp1998605_prevent_mark_missing_when_checked_out

I think items can be marked missing from:
- patron items out
- patron holds
- catalog record holdings tab (already blocks checked out items from being marked missing)
- pull list
- hold shelf
- item status (detail and list views)

This removes the option from the items out grids, open-ils.circ.mark_item_missing no longer allows a checkin attempt if the item's checked out, and (since attempts may error out more often now) the AngularJS circ service tries to keep the promise chain alive when marking multiple items missing (this is consistent with the Angular behavior).

tags: added: pullrequest
Revision history for this message
Elizabeth Davis (elidavis) wrote :

Mark Item Missing is no longer visible in the Patron Item Out screen.

When I am looking at an item that is checked out in the Item Status, the Mark Item Missing option is still available, but I get the warning that it couldn't be marked missing since it is checked out.

The Catalog Record Holdings Tab is not loading any holdings.

Revision history for this message
Susan Morrison (smorrison425) wrote :

To add to Elizabeth's comments:

- Confirmed that Mark Item Missing is not an option on Patron Items Out screen.
- Confirmed that in the following, the Mark Item Missing option was available, but I could not mark a checked out item missing and received an error or fail alert:
    - Holdings View
    - View Holds
    - Item Status

From the Holdings View, there was a little oddity with the fail alerts. Once I clicked Mark Missing, an alert for "1 Item(s) Failed to be Marked Missing" pops up for a split second and then the fail toast at the bottom appears. I didn't know if both alerts should happen, and if so, the first one should appear on the screen longer or for the user to click OK, like in the alert from Item Status. I attached a video to show what it looks like. Other than that, I didn't see any issues and can sign off if the alerts are fine as is.

Revision history for this message
Andrea Neiman (aneiman) wrote :

Also tested, it's working as expected but I agree with Susan about the Angular alert being more persistent (as well as giving more info like in AngularJS - "Item CONC4000094 could not be marked missing because it is currently checked out."

However, I don't think that should block merge of this so I'll go ahead and give it a signoff.

I consent to signing off on this with my name, Andrea Buntz Neiman, and email, <email address hidden>.

tags: added: signedoff
Changed in evergreen:
status: New → Confirmed
importance: Undecided → Medium
milestone: none → 3.12-beta
tags: removed: needsdiscussion
Changed in evergreen:
assignee: nobody → Terran McCanna (tmccanna)
Revision history for this message
Terran McCanna (tmccanna) wrote :

Thanks Dan, Susan, and Andrea! This is an excellent fix that will prevent lots of circulation and billing issues!

Fix committed and pushed back as far as 3.10.

Changed in evergreen:
status: Confirmed → Fix Committed
assignee: Terran McCanna (tmccanna) → nobody
Changed in evergreen:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.