feat(api): complete M5 swap and dispatch backend slice
This commit is contained in:
@@ -99,9 +99,16 @@ Current backend behavior:
|
||||
- stores the reason
|
||||
- emits `SHIFT_SWAP_REQUESTED`
|
||||
- exposes the shift in the replacement pool
|
||||
- starts the swap-expiry window used by backend auto-cancellation
|
||||
|
||||
This is enough for the current staff UI.
|
||||
It is not yet the full manager-side swap resolution lifecycle.
|
||||
Manager/ops review happens through:
|
||||
|
||||
- `GET /client/coverage/swap-requests`
|
||||
- `GET /client/coverage/dispatch-candidates`
|
||||
- `POST /client/coverage/swap-requests/:swapRequestId/resolve`
|
||||
- `POST /client/coverage/swap-requests/:swapRequestId/cancel`
|
||||
|
||||
If the swap request expires without coverage, backend auto-cancels it and alerts the manager path plus the original worker.
|
||||
|
||||
### Submit completed shift for approval
|
||||
|
||||
|
||||
Reference in New Issue
Block a user