# Phase 5 Checklist — Room Service / Delivery / Live ETA

Implemented on top of Phase 4 without replacing the unified order engine.

- [x] `009_room_service.sql` additive MySQL migration
- [x] `room_service_orders`
- [x] `room_service_deliveries`
- [x] `room_service_status_history`
- [x] ASAP room-service workflow
- [x] Scheduled room-service workflow
- [x] Configurable delivery allowance
- [x] Configurable schedule lead time
- [x] Automatic workflow creation during order checkout
- [x] Kitchen status synchronization
- [x] Kitchen completion does not prematurely mark room service SERVED
- [x] READY FOR DISPATCH state
- [x] Room-service staff assignment
- [x] Staff assignment tenant/role validation
- [x] Dispatch action
- [x] Delivered action
- [x] Delivery delay minutes/reason
- [x] Delivery ETA extension
- [x] Kitchen delay also extends room-service ETA
- [x] Guest live delivery ETA/status polling
- [x] Assignment/dispatch/delay/delivered guest notifications
- [x] Admin room-service operations dashboard
- [x] Admin order page room-service details
- [x] Central dashboard room-service metrics
- [x] Authenticated room-service REST API
- [x] DB-driven `room_service.view` / `room_service.manage` RBAC
- [x] Staff actions added to audit log
- [x] Open Phase 4 room-service backfill command
- [x] cPanel-compatible; no worker/Redis/Node requirement

## Upgrade commands

```bash
composer install --no-dev --optimize-autoloader
php bin/migrate.php
php bin/room-service-backfill.php   # once if upgrading a Phase 4 DB with open room-service orders
php bin/check.php
php tests/smoke.php
```
