Single source of truth cho V2 — phân tích nghiệp vụ, design brief, Flutter demo Phase 1, decisions đã chốt. Mọi thứ trong 1 trang.
ST_DWithin + envelope)phase1_schema.sql + Python CLI import (80→34 shop · 534 review · dedupe place CID)Mobile iOS/Android + web build cùng codebase. Demo Phase 1 đã chạy với flow Splash → Welcome → Home → Map → Detail.
Anh có base .NET; SignalR sẵn cho Phase 3 real-time (luồng khẩn cấp 3 phút timeout).
Nhẹ ~150MB RAM. PostGIS chuẩn vàng cho geo query "shop quanh bạn". Free, không vendor lock.
Brief tổng hợp 1 file: actors, 3 luồng user, 2 nhóm dịch vụ, sequence khẩn cấp, quy tắc vàng, stack, lộ trình 6 phase.
Pain point cốt lõi từ case study "Hỏng xe giữa đường" + nghiệp vụ phía User chi tiết.
App tìm kiếm shop sửa xe — no auth, no booking. 4 màn: Welcome/GPS, Fallback, Map Home, Shop Detail.
3 bảng: shops (UUID v7 + JSONB + PostGIS), shop_types, shop_reviews. Mapping JSON crawl → DB, whitelist 10 loại, decision log 9 mục.
3 actors (User · Shop · Admin) + System; vai trò, quan hệ. Base cho DB design sắp tới.
Visualization map action → impact lên objects + actions khác + reports. Bumped v2.0.0 đồng bộ phân tích V2.
Uber-inspired: 4 màn mockup, color tokens, typography, components, OSM stack rationale, v1↔v2 diff.
Splash → Welcome (chỉ khi chưa grant) → Home (search · 10 chip · featured · theme toggle) → Map (sort distance) → Detail (sticky title + actions). iOS push transition. Mock 80 shop Hoàn Kiếm.
DDL phase1_schema.sql (3 bảng + indexes + GIST + GIN FTS + seed 10 types) · CLI Python phase1_import.py 4 lệnh (init-schema · import-json · reset · count). Test: 80 → 34 shop + 534 review.
Map · search · filter · sort · detail · gọi · chỉ đường — KHÔNG có auth/booking. Đang phân tích + scaffold xong.
Đăng ký User/Shop, JWT, đặt lịch trước với verified shop. State machine booking cần phân tích trước.
Luồng SOS — bán kính 5→10km, 3 phút timeout shop accept. SignalR push vị trí thợ. OSRM self-host tính route + ETA cập nhật khi thợ di chuyển.
Tiền mặt + chuyển khoản, hoá đơn qua app, lịch sử thanh toán.
Nhận đơn, báo giá, thống kê doanh thu, quản lý dịch vụ + giá.
Verify shop (UV → V), dispute, moderation, báo cáo hệ thống.
Chạy BE local (dotnet run) + mobile remote impl (shopRepositoryRemoteProvider) ↔ verify map re-query, district picker, detail reviews modal hoạt động end-to-end với data Postgres thật. Pytest đã verify BE contract — đây là smoke phía UI.
Phân tích: đăng ký shop, verify flow, dashboard nhận đơn, báo giá, chuyển trạng thái booking. Là input cho design Phase 2 + state machine booking.
Chọn token strategy (access/refresh, role claims user/shop/admin). Thiết kế bảng users + integrate ASP.NET Core Identity hay custom. Không code Phase 1.