Understand the Driver schedule gate
Driver App can place a schedule screen before the authenticated workspace when client schedule validation is enabled and the locally available Driver schedule does not include the current client time.
The screen says You can't login, explains that you are outside the established schedule, can show a Next time, and provides Go back. This is a client-side gate based on the schedule and clock available to the app. It is not server eligibility, a confirmed current schedule, or proof that the running backend applied the same decision.
Availability
The gate can appear after Driver App has restored a signed-in session and finished its current startup checks, when schedule validation is configured and the local schedule calculation sets a block.
If no schedule is available or enabled in the local account state, the reviewed client does not use this screen to prove that the Driver is eligible. Absence of the gate is not authorization to work or to accept, update, or complete an order.
State and result matrix
| Local condition | Visible result | What it means | What remains unproven |
|---|---|---|---|
| Schedule validation not enabled | Schedule gate is not selected for this rule. | The client skips this local check. | Server eligibility or current account schedule |
| Signed-in account has no enabled schedule interval | The reviewed calculation does not establish a block from schedule intervals. | The client lacks an enabled interval to compare. | Permission to enter or perform delivery work |
| Current client time is inside an enabled interval | Authenticated navigation can continue past this schedule condition. | The local time comparison found a matching interval. | Server time, schedule freshness, or task eligibility |
| Current client time is outside the available interval | You can't login schedule screen can appear. | The local calculation set the schedule block. | That the displayed reason is the only blocker |
| Next interval derived | Next time shows a translated weekday and 24-hour time. | The client selected a locally calculated candidate interval. | That it is the actual next current interval or will admit access later |
| No valid next interval | The gate can fail to render its next-time content because the formatter is not guarded for a missing candidate. | The local input/calculation did not provide a usable display value. | Any server-side fallback or safe rendered error |
| Go back selected | The screen invokes the client session logout function. | Local session cleanup is requested. | Server-session invalidation, cleanup completion, or a guaranteed next screen |
The local next-time algorithm uses the device clock and schedule ordering. In some outside-today cases, it can select an earlier interval from the same day. Treat Next time as guidance from current local state, not a currentness guarantee.
Effects and boundaries
| Boundary | Client behavior | Safe interpretation |
|---|---|---|
| Account schedule | Uses schedule data already available in the local session user. | The app does not prove when or from which deployed service that data became current. |
| Device time | Compares the current client day and time with enabled intervals. | Device clock/time-zone correctness and server time are separate. |
| Schedule configuration | Enables or bypasses this client gate. | Configuration visibility does not prove server enforcement. |
| Next time | Formats the selected local interval. | Display is not a reservation, guarantee, or automatic unlock time. |
| Go back | Calls client logout from the blocked screen. | It is not an API logout/session-deletion receipt. |
| Authenticated workspace | Can be selected when this local gate does not block. | Navigation admission does not authorize an order action. |
The screen has no refresh, schedule-edit, override, or contact control. Driver schedule configuration belongs to the account/operator workflow, not to this gate.
Platform and lifecycle variations
- The translated weekday and time are derived from the current client schedule input and device clock.
- Language and theme change visible labels and presentation.
- Backgrounding, foregrounding, or account refresh can update user state independently of this screen, but no automatic currentness guarantee is documented.
- The reviewed screen uses the same local schedule calculation on iOS and Android; device clock and locale conditions can still differ.
Troubleshooting
| What you see | What to check | Safe recovery |
|---|---|---|
| The gate appears during an expected work interval | Device day/time/time zone and the schedule shown by the account owner | Do not change an order or device clock to bypass it. Record the visible weekday/time without account details and contact the schedule owner. |
| Next time is earlier than now or looks incorrect | The local algorithm can select schedule data that is not a reliable next interval. | Treat it as unverified guidance and ask the account/operator owner to confirm the current schedule. |
| No Next time appears | The local schedule input lacks a usable next interval. | Do not infer unrestricted access; contact the schedule owner. |
| The schedule gate is blank or unusable | A missing next candidate can reach an unguarded formatter instead of a safe fallback. | Do not infer access or keep retrying. Record the visible state without account data and contact the app/schedule owner. |
| Go back does not leave the screen | Local session cleanup or root navigation did not produce the expected visible result. | Press once only, then report the visible state without tokens or account data. |
| The tabs appear without this gate | The client did not set the local schedule block. | Do not treat tab visibility as server eligibility or permission to perform an order action. |
| The schedule differs from another product | Products can use different state, timing, configuration, or authority. | Ask the account/operator owner which schedule governs; do not copy values between products. |
Related guides: Driver App overview · Startup and loading · Navigate the Driver App · Sessions