https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42383 Tomás Cohen Arazi (tcohen) <tomascohen@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|Failed QA |Signed Off --- Comment #51 from Tomás Cohen Arazi (tcohen) <tomascohen@gmail.com> --- Thanks a lot Matt! One follow-up per point, so you can review them one by one: 1) Make returning error responses opt-in in HttpClient - new return_error_response flag, only used by checkins.create. DELETE/COUNT behave as before. 2) Escape the item type check-in message (escaped, then newlines to <br>, like html_line_break). 3) Do not check in items from the barcode URL param - ?barcode= only prefills the input now. 4) Apply barcode filters on check-in by barcode (barcodedecode in POST /checkins). 5) Update the holds queue on check-in (BatchUpdateBiblioHoldsQueue when RealTimeHoldsQueue is on; hold cancellation already enqueues via Koha::Hold->cancel). 6) Play audio alerts after each check-in (and when a confirmation modal opens). 7) Print the recall pickup slip for recalls (uses recall_id). 8) Fix xt/tt_script_tidy.t for circ/checkin.tt. 9) Add Cypress tests for the check-in page - 10 end-to-end tests on real data, outcomes verified in the DB: simple check-in, unknown barcode, ?barcode= prefill, escaped checkin message, blocked (withdrawn), hold here, hold elsewhere + transfer, hold cancellation, return transfer with TransfersBlockCirc, recall. Also: Make basic_workflow.t check in for real (drives the Vue page and checks the DB). Writing them uncovered: Do not return $__ from the check-in components (Vue warning on every mount), and a 43486 Cypress patron-data issue, fixed there. 10) Set confirmed holds waiting at the check-in desk. 11) Use the returning patron for check-in notices (regression test included). 12) Tell 'hold not found' from 'item on loan' - 409 hold_not_found vs item_checked_out. 13) Two patches: Reject follow-up actions on stale checkins (409 stale_checkin if it is not the item's latest checkin), and Require a token for checkin follow-up actions - POST /checkins returns action_tokens (JWT tied to checkin, staff user and action, 15 minutes) and the 5 sub-resource endpoints require it. 14) Map the check-in page to the manual. 15) Use the API client to resolve return claims (only reports success on success). 16) Show the configured date format for the return date (it was already flatpickr). 17) Use APIClient for libraries and translate store strings. 18) and 20) Format patron names with $patron_to_html (also makes 'Patron #%s' translatable). 19) Restore hold group handling in the hold modal (group info, 'View patron's holds', 'Cancel all holds in hold group'). 21) Add API tests for recall_confirmation. 22) Prevent module policies from overriding globals. 23) Send module policies as plain JSON - agreed, the JWT added nothing there. Known leftovers, happy to file separate bugs: - Cancelling a record-level hold (no item assigned) with a cancellation fee raises a 500 in Koha::Hold->cancel; the legacy page had the same code path. - Column visibility settings and export buttons for the checked-in table are not there yet. Setting back to Signed Off for your re-review. -- You are receiving this mail because: You are watching all bug changes.