Reliability fixes and day-to-day polish
How this release fixes several everyday workflow bugs and improves lists, reservations, tags, exports, and the gear scanner.
Inventory and setup fixes
Gear marked lost, decommissioned, or archived can be set back to Active again when you edit and save the record. The UI was already sending the right data; the update API now clears the inactive reason instead of keeping the old value.
Categories and locations are safer to manage when legacy data has duplicate names. Deleting one row no longer removes every row with the same name, and trying to add a duplicate name shows a single clear message instead of a generic server error.
Dashboard, scanner, and repairs
The dashboard’s Recently closed repairs section now lists only completed work orders. Open tickets no longer appear there with a misleading Closed badge.
If the gear scanner camera fails to start, you see one clear error instead of a stack of repeated toasts. The scanner still retries a few times in the background; use Reset to try again manually.
Lists, reservations, and gear details
Gear, repair tickets, categories, locations, and users now sort alphabetically in lists and dropdowns. Access logs and reservations still sort by date and time.
On Reservations in list view, filter by All, Upcoming, or Past. Upcoming is the default and includes active and scheduled events; Past shows completed reservations, newest first. Calendar view is unchanged.
On the gear form, click a tag to rename it instead of removing and re-adding it. View mode shows tags as read-only badges that match the inventory list.
Clearer reports and exports
Inventory reports and CSV exports now separate checkout status, inventory status, and lifecycle status. They also include parent gear, verification checklist flags, and whether an item can contain other gear.
Gear access and user exports are flattened for spreadsheets: Gear ID and gear names resolve correctly, verification and contained-gear details appear as plain text instead of [object Object], and user rows show Name, Email, Role, and related fields.
Release breakdown
The full release notes for this update, grouped the same way as the changelog index.
Reservations list filters
Filter the reservations list by All, Upcoming, or Past. Upcoming is the default and includes active and scheduled events; Past shows completed reservations, newest first.
Reservations docsLists sort alphabetically
Gear, repair tickets, categories, locations, and users appear in alphabetical order in lists and dropdowns. Access logs and reservations still sort by date and time.
Edit gear tags after adding
On the gear form, click a tag to change its name instead of removing and re-adding it. View mode shows tags as read-only badges.
Gear docsClearer inventory and access reports
Inventory exports include lifecycle status, checkout status, parent gear, and verification checklist flags. Gear access CSVs show Gear ID and readable names, with verification and contained-gear details as plain text instead of [object Object].
Reports docsGear lifecycle status can return to Active
Items marked lost, decommissioned, or archived can be set back to Active again when editing and saving the gear record.
Gear status docsDashboard shows only recently closed repairs
Newly submitted repair tickets no longer appear under Recently closed repairs on the dashboard. That section now lists only completed work orders.
Categories and locations delete and duplicate names
Deleting one category or location with a duplicate name no longer removes every row with that name. Adding a name that already exists shows a clear message instead of a generic error.
Categories docsScanner no longer spams camera errors
If the camera fails to start on the gear scanner, you see one clear error instead of a stack of repeated toasts. The scanner still retries a few times in the background; use Reset to try again.
Scanner docs