Skip to content

Prepare Driver 0.1.15 completion, ETA, and recovery UX - #61

Open
OziinG wants to merge 4 commits into
devfrom
cc-240-completion-flow
Open

Prepare Driver 0.1.15 completion, ETA, and recovery UX#61
OziinG wants to merge 4 commits into
devfrom
cc-240-completion-flow

Conversation

@OziinG

@OziinG OziinG commented Sep 10, 2026

Copy link
Copy Markdown
Contributor

Outcome

  • combine editable actual completion time, optional POD proof, and confirmation in one delivery sheet
  • show the server-persisted final-sequence stop ETA and elapsed time from pickup without inventing a completion ETA
  • add the approved administrator-issued password recovery guidance and clear invalidated local sessions
  • prepare app version 0.1.15, Android versionCode 26, and iOS build 15

Constraints

  • actual completion time remains separate from Rolling ETA
  • password reset stays administrator-link based; no SMS or guessed API contract
  • server PR #413 is deployed, but the DSV web reset UI must be merged and deployed before this recovery flow is announced

Validation

  • npm run check:workspace: 167 tests passed
  • npm run lint: passed
  • npx expo install --check: dependencies up to date
  • Android and iOS Expo/Hermes exports: passed
  • Android prebuild: versionName 0.1.15 and versionCode 26 verified
  • git diff --check: passed

Not tested

  • physical-device camera/gallery and end-to-end POD upload
  • signed Play/App Store artifacts and store submission
  • browser E2E for the still-unreleased DSV web password reset UI

Refs EVNSolution/clever-change-control#240
Refs #1

Combine the completion time, optional POD photo, and final confirmation in one flow while preserving the existing server event and media contracts.

Constraint: The selected time is actual completion evidence and must stay separate from Rolling ETA.
Rejected: Separate completion and proof dialogs | They split one delivery decision across two confirmations.
Confidence: high
Scope-risk: moderate
Directive: Keep completion time and predicted arrival labels distinct in future UI changes.
Tested: npm run check:workspace; git diff --check
Not-tested: Physical camera and gallery selection; production proof upload.
Keep reset credential entry on the DSV HTTPS page while exposing login help and invalidated-session cleanup in the app.

Constraint: Approved server contract uses administrator-issued 30-minute one-time HTTPS links and no SMS OTP or app reset endpoint
Rejected: Add app reset API or deep-link handling | no approved contract
Confidence: high
Scope-risk: narrow
Directive: Keep reset token handling on DSV web unless the server contract changes
Tested: npm run check:workspace; npm run lint; npx expo install --check; npm run build; git diff --check
Not-tested: physical-device interaction
Present the persisted last stop arrival and server pickup-to-arrival duration on the Driver delivery screen while preserving the existing next-stop ETA and completion flow.

Constraint: The deployed DSV contract owns stop ETA, pickup time, route sequence, and timezone
Rejected: Calculate ETA from device time, distance, or final service time | those inputs are not an approved completion ETA contract
Confidence: high
Scope-risk: narrow
Directive: Keep this value labeled as final-stop arrival until the server exposes a completion ETA
Tested: npm run check:workspace; npm run lint; npx expo install --check; npm run build; git diff --check
Not-tested: physical device or emulator UI because none was connected or booted
Advance the public version beyond the deployed Play build and keep Android and iOS build identifiers explicit for local validation.

Constraint: Google Play already serves versionCode 25 and App Store Connect already received build 14.
Rejected: Reusing 0.1.14 or a versionCode below 26 | Store uploads require monotonically increasing identifiers.
Confidence: high
Scope-risk: narrow
Directive: Do not lower versionCode or buildNumber when regenerating native projects.
Tested: npm run check:workspace; npm run lint; npx expo install --check; git diff --check
Not-tested: Signed store builds and device installation.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant