# Staff Mobile App - Change Log ## [v0.0.1-m3] - Milestone 3 - 2026-02-15 ### Added - Authentication & Onboarding - Phone number authentication with OTP verification - Staff onboarding flow with profile setup - Personal information collection (name, bio, languages) - Preferred work locations selection - Skills and industry selection ### Added - Home Dashboard - Welcome screen with personalized greeting - Today's shifts section showing confirmed shifts - Tomorrow's shifts preview - Recommended shifts section based on profile - Quick action buttons (Find Shifts, Availability, Messages, Earnings) ### Added - Shift Management - Find Shifts functionality to discover available work - Shift details view showing: - Business name and location - Hourly rate and estimated earnings - Date, start time, end time - Job requirements - Map integration with directions - Shift booking/application process - Booking confirmation dialog - My Shifts view with week-by-week navigation - Color-coded shift status (Confirmed, Pending, Completed) ### Added - Clock In/Out - Clock In page with slider interaction - Clock Out page with slider interaction - Automatic timestamp recording - Shift status updates upon clock in/out - Visual status indicators (green for checked in) ### Added - Profile Management - Profile tab with personal information - Emergency Contact management: - Contact name - Relationship - Phone number - Bank Account linking for direct deposit - Tax Forms section: - W-4 form access - I-9 form access - Time Card view: - Historical shift records - Hours worked tracking - Earnings history ### Added - Navigation - Bottom navigation bar with 5 tabs: - Shifts - Payments - Home - Clock In - Profile - Tab bar hiding on specific pages ### Technical Features - Firebase authentication integration - Data Connect backend integration - Google Maps integration for locations - Phone verification system - OTP code handling ### Known Limitations - Newly created orders don't appear immediately in Find Shifts (requires vendor approval) - Limited to one-time order types in this milestone --- ## [v0.0.1-m4] - Milestone 4 - 2026-03-05 ### Added - Enhanced Authentication & Session Management - Authentication session persistence across app restarts - Automatic login with valid session tokens - Improved user experience with seamless session handling ### Added - Enhanced Shift Details - Google Maps location display in shift details view - Interactive map showing shift location - Directions integration - Shift requirements section showing: - Required attire items (MUST HAVE) - Preferred attire items (NICE TO HAVE) - Other shift-specific requirements ### Added - Attire Management - Dedicated Attire screen in profile - Camera and gallery support for attire photo capture - Local image preview before submission - Upload attire images for verification - MUST HAVE attire items list - NICE TO HAVE attire items list - Attire photo gallery in profile - Submit attire for review workflow - Attire verification status tracking (Pending, Approved, Rejected) - Attestation checkbox for attire accuracy confirmation - Filtered attire items based on requirements ### Added - Documents & Certificates Management - Documents section in profile with verification status tracking - Upload documents (ID, licenses, etc.) with: - Camera or gallery selection - File type validation - Upload progress tracking - Verification metadata - Certificates management: - Upload certificates with expiry dates - Certificate number field - Certificate type selection - View existing certificates - Delete certificates - Verification status (Not Verified, Verified, Expired) - Mandatory document flagging - Document verification workflow ### Added - Profile Enhancements - FAQ (Frequently Asked Questions) screen - Privacy and Security settings screen: - Profile visibility toggle ("Hide account from business") - Terms of Service document access - Privacy Policy document access - Preferred locations management: - Dedicated edit screen - Location search functionality - Display selected locations - Language selection interface: - Spanish language support - Success feedback on language change - Persistent language preference - Benefits overview section: - Benefits listing with circular progress indicators - Benefits dashboard integration - Profile completion tracking for: - Personal information - Emergency contacts - Experience - Attire - Documents - Certificates ### Added - Profile Completion Gating - Navigation restrictions for incomplete profiles - Only Home and Profile tabs accessible until profile is complete - Profile completion checklist - Guided onboarding completion flow ### Improved - User Experience - Enhanced shift details UI with better information hierarchy - Improved profile section organization - Better navigation flow for profile completion - UiEmptyState widgets for better empty state handling: - Bank account page empty state - Home page when no shifts available - Improved onboarding flow with refactored experience and personal info pages - Enhanced emergency contact screen with info banner - Refactored profile header with profile level badge ("KROWER I") - Benefits card components with improved styling - Bottom navigation bar show/hide based on route - Tax forms page with progress overview - Improved notice and file type banners for uploads - Enhanced navigation robustness with proper error handling - Immediate ID token refresh after sign-in to prevent unauthenticated requests ### Fixed - Profile completion status now updates correctly for emergency contacts - Session handling improved to prevent data loss - Navigation errors redirect to appropriate home page - Locale synchronization by reloading from persistent storage after change ### Technical Features - Enhanced backend validation for shift acceptance - Overlapping shift prevention - Improved session management - Document upload and storage integration - Signed URL generation for file uploads - Camera and gallery native device access - File visibility controls (public/private) - Core API services integration (verification, file upload, LLM) - ApiService with Dio for standardized API requests - Device services abstraction layer ### Known Limitations - Cannot accept overlapping shifts - Shifts require manual confirmation in some cases - Attire verification requires manual client approval ---