HOCO B2B
Team tasksImad

MOB-12 — Staging integration — real API, edge states, performance

Switch both apps from the mock to staging, walk every flow, fix contract mismatches, cold-start and list performance on a mid-range Android.

FieldDetails
Task codeMOB-12
PhaseP1 — V1 build & integration
Product scopeV1
StatusPlanned
StartTue 15 Dec 2026
DueThu 17 Dec 2026
ResponsibleImad — Mobile developer (Flutter)
Co-responsibleAnis
Effort2 person-day(s) planned · 5 from scratch · size M
Area · appMobile quality · mobile
Depends onMDA-12, SRV-23, SRV-18, SRV-19, SRV-24, SRV-26
UnblocksMOB-13, QA-03
Milestones—

Summary

Switch both apps from the mock to staging, walk every flow, fix contract mismatches, cold-start and list performance on a mid-range Android.

Description

Until now both apps ran against the Prism mock; this task proves them against the real staging server and fixes every mismatch before acceptance testing (NFR-01, NFR-04). Scope: point the staging flavor at api-staging.hoco.dz, walk every RA and DA flow on seeded data, log and fix contract mismatches on both sides, verify edge states (forced update, maintenance, pending, suspended, out-of-tolerance, offline replay, SSE live updates, push) and measure cold start and list performance on a mid-range Android. Anis contributes seeded accounts, server fixes and SSE/proxy configuration; Imad owns the walkthrough and the app fixes. It depends on SRV-23 (sync), SRV-18 (billing), SRV-19 (promotions), SRV-24 (support) and SRV-26 (SSE) being on staging. QA-03 and MOB-13 start from the build produced here.

Subtasks

#SubtaskOwner
1Staging flavor on https://api-staging.hoco.dz/v1, contract re-pinned to the deployed openapi.json and client regeneratedImad
2Seed staging with test accounts: guest-ready catalog with attributes, resellers of each customer type (SUPER_GROS, DEMI_GROS, DETAIL), pending and suspended resellers, two delegates with today's tours, promotions, invoices, a delivered order for returns and claimsAnis
3Flow walkthrough checklist over RA-01…RA-41 and DA-01…DA-28, each screen checked against the real API with results recordedImad
4Contract mismatch log as GitHub issues labelled contract with the op id, payload sample and requestId; fixes on the app sideImad
5Server-side fixes for mismatches and missing fields found during the walkthroughAnis
6Edge states on staging: AppVersionPolicy forced update and maintenance, ACCOUNT_SUSPENDED, ACCOUNT_PENDING_VALIDATION, GPS_OUT_OF_TOLERANCE, VISIT_LOCKED, IDEMPOTENCY_KEY_REUSED, OCCURRED_AT_OUT_OF_RANGEImad
7SSE through the staging reverse proxy (buffering off, timeouts) verified with the reseller app; push end-to-end from staging eventsAnis
8Performance on a mid-range Android (profile mode): cold start, catalog first page and facets, orders list, tour programme with 30 stops; image caching and list jank fixesImad
9Offline replay against the real SRV-23: 30 queued mutations including photos, replayed twice, zero duplicatesImad

Deliverables

  • Firebase App Distribution build 0.9.0 (staging) of both apps
  • Walkthrough checklist with per-screen status (docs/integration-checklist.md in hoco-mobile)
  • Closed contract-mismatch issues in hoco-mobile and AnisBetehi/hoco
  • Performance measurements (cold start, first catalog page, list frame times) recorded in the repo

Acceptance criteria

  • Every V1 screen of both apps works against staging with no open contract mismatch
  • Cold start to an interactive home is under 3 s and catalog/filter results under 3 s on a mid-range Android on 4G (NFR-01)
  • Lists scroll without dropped frames visible in DevTools on the catalog grid and tour programme
  • Order status changed in the dashboard reaches the open reseller app live via SSE and the backgrounded app via push
  • A replayed offline batch produces no duplicate visit, photo, prospect or note

Requirements covered

RequirementTitleRelease
NFR-01Performance: app opens and search/filter results in under 3 s on a normal mobile connection; API p95 targetsV1
NFR-04Android first on mid-range phones; iOS on client decisionV1

Test measures

  • Manual walkthrough checklist executed on two devices (mid-range Android 10 and Android 14)
  • integration_test suites (auth, checkout, visit) pointed at staging
  • Profile-mode performance traces saved for cold start and lists

Risks

  • Staging data not representative (few products, no attributes) hides performance issues — seed at production scale (catalog import from SRV-27 data)
  • Late server changes reopen mismatches — freeze the contract version for the walkthrough window

KPI

  • Delivered by Thu 17 Dec 2026 within 2 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.

On this page