- Set moved_to_warehouse_at with UTC timestamp when a carton is first marked as moved
- Preserve existing moved_to_warehouse update and duplicate-scan behavior
- Return and store moved-to-warehouse timestamp in scan result/history models
- Add SQLite history compatibility column for stored successful scans
- Show "Moved To Warehouse At" in successful scan history UI, with "-" for null values
- Add configurable moved_to_warehouse_at column mapping
- Add SQLite-backed scan history storage with configurable database path and retention limit
- Register scan history DbContext and persist recent scan records across app restarts
- Update shipment verification flow to mark matched cartons as moved to warehouse
- Treat verification as successful only when the record exists and the shipment flag update succeeds
- Rename verification flag configuration to use moved_to_warehouse
- Make scan history APIs async and update controllers/services accordingly
- Improve dashboard scan handling for pasted QR values and prevent duplicate submissions
- Update UI branding to SHIPPING MARK and simplify the dashboard status layout
- Display scan history timestamps in local time