1. Attendance API now joins with MerchantStaff to return staffName instead of showing truncated staffId 2. AuthService uses role-suffixed localStorage keys (aPOS_token_owner, aPOS_token_staff) to prevent staff and admin tokens from overwriting each other on the same origin Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>