DES-12 — Day 12 — Delegate app: tour programme, map & POS sheet
Tour programme (tabs, mini-map, ordered list), tours calendar, map and navigation, point-of-sale sheet.
| Field | Details |
|---|---|
| Task code | DES-12 |
| Phase | P0 — Foundations (cadrage, UX/UI, architecture & contract) |
| Product scope | V1 |
| Status | Planned |
| Start | Tue 3 Nov 2026 |
| Due | Tue 3 Nov 2026 |
| Responsible | Akram — UI/UX designer |
| Co-responsible | — |
| Effort | 1 person-day(s) planned · 1.25 from scratch · size S |
| Area · app | Delegate app design · design |
| Depends on | DES-11 |
| Unblocks | MDA-02, MDA-03, DES-13 |
| Milestones | — |
Summary
Tour programme (tabs, mini-map, ordered list), tours calendar, map and navigation, point-of-sale sheet.
Description
Day 12 designs the four hardest delegate screens: DA-06 tour programme, DA-07 tours calendar and history, DA-08 map and navigation, and DA-09 point-of-sale sheet. The delegate sees the ordered stops, gets to them and checks in only within the GPS tolerance (150 m with accuracy of 100 m or better, both settings). Inputs: the delegate-03-tour-program and delegate-04-map-navigation references (one navigation model kept), cahier §6.2 and §6.3, FLD-03/04/06/07/17/19, GEO-03, CRM-01/07/08, and the operations delegate.tours.list|get|start|suspend|resume|reorder|addVisit, delegate.visits.arrive and delegate.resellers.get. The list and the map must always show the same stops in the same order (FLD-06), and pins never differ by colour alone. Consumers: Imad's MDA-02 (DA-06, DA-07), MDA-03 (DA-08) and MDA-04 (DA-09); the same pin language returns in the back-office (BO-06, BO-22, BO-23).
Subtasks
| # | Subtask | Owner |
|---|---|---|
| 1 | DA-06 Programme de tournée: header with date, TRN-2026-000045 and TourStatus pill; counters prévues / réalisées / en retard; tabs À visiter / Terminées; list and mini-map with the same sequence numbers | Akram |
| 2 | DA-06 ordering and exceptions: Ordre imposé (no drag) vs Ordre recommandé (drag handle, pending-sync badge); Prioritaire flag; En retard (derived) with icon and label; add an unplanned visit; offline with the cached tour | Akram |
| 3 | DA-06 tour actions: « Démarrer la tournée » (time and position recorded), suspend with a reason (TOUR_SUSPEND_REASON) and resume | Akram |
| 4 | DA-07 Mes tournées: month and week views with TourStatus dots, past tours with results, read-only summary of a closed tour | Akram |
| 5 | DA-08 Carte et navigation: current position with accuracy halo; route polyline (done legs dashed grey); next-destination card (name, commune, ETA, distance as the crow flies « à 1,2 km ») with « Itinéraire » (external navigation app); recentre and zoom controls (44 dp) | Akram |
| 6 | DA-08 check-in gating: « Je suis arrivé » behind the GPS validation banner. States: acquiring, confirmed « Position confirmée · ± 12 m », out of tolerance GPS_OUT_OF_TOLERANCE « Vous êtes à 420 m du point de vente », weak accuracy « Signal GPS faible — patientez », GPS off, permission denied. Tiles not loaded → list fallback | Akram |
| 7 | Pin set from /docs/design/design-system#maps-and-pins: next (filled, numbered), planned (outline, numbered), done (✓), not done (×), late or priority badge (!), cluster with count, current position | Akram |
| 8 | DA-09 Fiche point de vente: photo header, ResellerStatus, CustomerType and potential pills, call and WhatsApp buttons, address and route, interaction history, open follow-ups, last visit reports, this reseller's orders (delegate scope), actions (start visit, invite, assisted order, edit); prospect vs active-reseller variants; offline | Akram |
| 9 | Annotate data sources and offline behaviour per element (cached tour, queued reorder, queued arrival with occurredAt) | Akram |
| 10 | Feasibility: maps package and custom markers, drag-to-reorder offline, battery impact of the live map, external navigation intent | Imad |
Deliverables
- Claude Design › Delegate App ›
DA · Tourwith DA-06…DA-09 (e.g.DA-08 · Map & navigation · out-of-tolerance,DA-06 · Tour programme · recommended-order-dragging) - GPS validation banner with all 6 states and the pin set applied on every map frame
- Annotated list ↔ map consistency rule and offline behaviour notes
Acceptance criteria
- The list and the map show the same stops in the same order on every frame
- Pins differ by shape and glyph as well as colour, and pass a deuteranopia simulation
- Check-in is only possible inside the tolerance; out-of-tolerance copy shows the actual distance
- Ordre imposé frames have no drag affordance
- Every TourStatus that DA-06 can show is designed, including Suspendue with its reason
- Imad's review answer is OK or OK with notes
Requirements covered
| Requirement | Title | Release |
|---|---|---|
| FLD-06 | Tour programme: list and map show the same visits in the same order; filters, delays, priorities | V1 |
| FLD-07 | Map and navigation: position, next destination with ETA and distance, external GPS navigation, arrival confirmation within tolerance | V1 |
Screens
| Screen | Name | App |
|---|---|---|
| DA-06 | Tour programme | DA |
| DA-07 | Tours calendar & history | DA |
| DA-08 | Map & navigation | DA |
| DA-09 | Point-of-sale sheet | DA |
Test measures
- Colour-blind simulation of the pin set and route
- Prototype walkthrough DA-05 → DA-06 → DA-08 → arrival, with Imad
- Thumb reach check of « Je suis arrivé » and « Itinéraire » on a 6.5-inch phone mock-up
Risks
- Map screens are heavy for mid-range Android — keep the mini-map static or lite on DA-06 and the full interactive map only on DA-08; agree with Imad.
- GPS accuracy indoors blocks legitimate check-ins — design the weak-accuracy state with a wait and a clear explanation; any override policy is a decision for Anis/HOCO.
KPI
- Delivered by Tue 3 Nov 2026 within 1 person-day(s).
- Every acceptance criterion above demonstrated before hand-off; linked requirements' acceptance criteria pass.
- Zero open critical defects, permission gaps or data-integrity regressions at sign-off.
Generated from content/plan/tasks.json by scripts/generate-team-tasks.mjs. Dates are computed by the scheduler (Sunday–Thursday weeks, holidays excluded) — change the plan, not this page.
DES-11 — Day 11 — Delegate app: access, home, profile
Splash, sign-in (incl. suspended), forgot password, permissions and location consent, home, profile hub, my zone, objectives, settings.
DES-13 — Day 13 — Delegate app: visit, report, prospects, follow-ups
Visit and check-in, not-done reason, visit report, prospects list/map, follow-ups.