Offer nearby stops without making location mandatory
The first screen demands location before showing any journeys. A rider who declines cannot search by station even though the timetable supports it.
- Focused work estimate
- 1h 45m + prerequisites
- Priority in the scenario
- Medium
- Engineering practice
- Permission design · Privacy · Mobile UX
Estimated field mix
- Privacy engineering60%
- Mobile40%
Field percentages are editorial estimates of the ticket's engineering focus. They total 100%; they are not measured time, proficiency scores, or ownership evidence.
Review it, then add it to your workspace.
The board opens an editable draft; nothing is saved until you confirm it. Sign-in and workspace permissions apply, and Demo boards remain ephemeral.
Project context
The fictional Northline commuter app plans bus and rail trips from synthetic timetable and alert feeds. Riders save journeys and choose optional reminders. The scope excludes ticket purchases, safety guarantees, and continuous location collection.
Setup prerequisites
- Synthetic timetable with explicit time zones and service dates
- Departure, alert, and permission adapters with failure fixtures
Preceding work
Complete these dependencies, or supply their agreed outputs before taking this ticket.
Acceptance criteria
- Station search and saved journeys work without location permission.
- Nearby stops request location only after an explicit action and show how approximate results are used.
- Denial, timeout, and unavailable location return to a usable manual search without repeated prompts.
Implementation constraints
- Use a one-shot coarse-location adapter and do not persist coordinates in generic analytics.
Verification to include
- Deny location on first use and complete a manual station search.
- Return an approximate fix and then a timeout; nearby results disclose approximation and manual search remains accessible.
Deliverables
- Optional nearby-stop flow and permission-free journey check
Rollout and recovery
Release manual search before nearby suggestions; disable the location adapter if denial recovery or privacy checks fail.
Value of the work
For the engineer: Practice temporal modeling, feed reconciliation, battery-conscious refresh, and mobile permission design.
For the team: Review how an engineer communicates uncertainty and keeps a consumer app useful under unreliable data.
Evidence boundaries
Outcome Evidence: Tests, patches, and runbooks are requested deliverables. They become Outcome Evidence only through a qualified Mission and immutable Evidence IDs.
Ownership Evidence: Independent adaptation must be observed under a declared verification policy and cite immutable Evidence IDs. Completing a planning ticket establishes no Ownership Evidence.