Files
pos-system/ROADMAP.md

13 KiB

GoodGo Platform — Roadmap & Development Tracker

Last updated: 2026-03-06 Maintained by: CTO & Agents Team Status convention: DONE | IN-PROGRESS | TODO | BLOCKED | SKIPPED


I. Platform Overview

Metric Current Phase 1 Target Phase 2 Target Phase 3 Target
Services production-ready 8/24 12/24 16/24 20/24
Test coverage (estimated) ~40% 70% 80% 85%
POS verticals fully working 2/5 2/5 (stable) 4/5 5/5
Payment methods live 0 2 3 4+
Real-time features 0 KDS + Orders Full POS Full
Mobile apps Template Template iOS v1 iOS + Android
Environment Dev only Staging Staging + Prod Prod (SLA 99.9%)

II. Microservices Status

Production-Ready (8)

Service Controllers Tests Notes Last Updated
iam-service 12 30 OAuth2, RBAC, MFA, Sessions, Access Reviews 2026-03-06
storage-service 11 10 Multipart uploads, versioning, signed URLs 2026-03-06
merchant-service 10 2 Shop lifecycle, subscription plans (NEW) 2026-03-06
wallet-service 5 5 Balance, loyalty points, holds 2026-03-06
order-service 3 2 Full order lifecycle, POS dashboard 2026-03-06
membership-service 2 12 Tier management, loyalty 2026-03-06
promotion-service 5 5 Vouchers, campaigns, discounts 2026-03-06
chat-service 3 6 SignalR + Redis backplane 2026-03-06

In-Progress (11)

Service Status What's Done What's Missing Priority
fnb-engine Controllers OK Kitchen/Reservation/Session/Table controllers Handler logic, 0 tests P0
catalog-service Basic CRUD Products, Categories controllers Variants, advanced queries P1
inventory-service Basic CRUD Create/Update/Delete items Auto-deduction, alerts, tests P0
booking-service 7 controllers API structure, entities defined Handler completion P1
social-service Core domain Relationships, Blocks, Follows API integration P2
mining-service Skeleton Controllers + entities defined Business logic P3
mission-service Controllers exist Missions, CheckIns Workflow handlers P2
ads-manager 7 controllers Campaign/Ad/AdSet/Audience structure Campaign logic P3
ads-analytics Read-heavy Metrics/Insights structure Aggregation logic P3
ads-billing Core entities BillingAccount/Invoice/Charge Invoice flow P3
ads-serving Skeleton API structure Real-time serving P3

Scaffold / Not Started (5)

Service Status Note
ads-tracking Scaffold Template only, not in docker-compose
mkt-facebook Scaffold Facebook API not connected
mkt-whatsapp Scaffold WhatsApp API not connected
mkt-x Scaffold X/Twitter API not connected
mkt-zalo Scaffold Zalo API not connected

III. Frontend Apps Status

App Status Components Notes
web-client-tpos-net (POS) PRODUCTION-READY 181 Multi-layout, multi-vertical, real API integration
web-client-base-net (Portal) IN-PROGRESS 16 Basic page structure
app-client-base-swift (iOS) IN-PROGRESS 34 files MVVM + Combine, auth + home
app-client-base-net (MAUI) SCAFFOLD 2 VMs Template phase
web-docs (VitePress) MINIMAL Placeholder docs

POS Vertical Status

Vertical Backend Frontend Order Flow Payment Status
Karaoke DONE DONE DONE UI-ONLY WORKING
Restaurant DONE DONE DONE UI-ONLY WORKING
Cafe DONE DONE PARTIAL UI-ONLY PARTIAL
Spa/Beauty PARTIAL DONE PARTIAL UI-ONLY PARTIAL
Retail TODO UI-ONLY TODO UI-ONLY TODO

IV. Critical Gaps Tracker

P0 — Must Fix Before Launch

# Gap Status Owner Sprint Notes
1 Payment Gateway — VN Pay TODO Backend #1 Phase 1 / W1-2 wallet-service integration
2 Payment Gateway — Momo TODO Backend #2 Phase 1 / W1-2 wallet-service integration
3 Real-time SignalR Hub TODO Backend #3 Phase 1 / W1-2 KDS + order push updates
4 Kitchen → Inventory Deduction TODO Backend #1 Phase 1 / W2 fnb-engine → inventory-service
5 Multi-tenant Row-Level Security TODO Backend #2 Phase 1 / W2-3 All services, DB level
6 Payment UI Completion TODO Frontend Blazor Phase 1 / W1-2 Connect to real gateway
7 Integration Test Suite TODO QA Engineer Phase 1 / W3 Order lifecycle e2e
8 Staging Deployment TODO DevOps Phase 1 / W3-4 K8s + monitoring

P1 — Required for Full Feature Set

# Gap Status Owner Sprint Notes
9 Retail POS Workflow TODO Backend + Frontend Phase 2 / W5-6 Scan, stock, return/exchange
10 Spa Backend Domain Logic TODO Backend Phase 2 / W5-6 Appointments, therapist scheduling
11 EOD Reports + Daily Close TODO Frontend Blazor Phase 1 / W4 order-service queries
12 FnB Engine Test Coverage TODO QA Engineer Phase 1 / W3 0 tests currently
13 Cafe Workflow Completion TODO Backend + Frontend Phase 2 / W5-6 Loyalty stamps, barista queue

P2 — Enhancement

# Gap Status Sprint Notes
14 Marketing — Zalo OA TODO Phase 3 mkt-zalo-service
15 Marketing — Facebook TODO Phase 3 mkt-facebook-service
16 Ads Platform TODO Phase 3 5 ads services
17 Mobile iOS v1 TODO Phase 3 app-client-base-swift
18 Mobile MAUI v1 TODO Phase 3 app-client-base-net
19 Observability Stack TODO Phase 2 Prometheus + Grafana + Loki

V. Phase Roadmap

Phase 1: Production MVP (Week 1-4)

Goal: Karaoke + Restaurant verticals ready for real customers

Week 1-2: Payment & Real-time

Task Agent Status Depends On
VN Pay payment gateway integration Senior Backend #1 TODO wallet-service
Momo payment gateway integration Senior Backend #2 TODO wallet-service
SignalR hub for real-time updates Senior Backend #3 TODO
KDS push notifications via SignalR Senior Backend #3 TODO SignalR hub
Payment UI — connect to real gateway Senior Frontend TODO Payment backends
Order status push to POS Senior Backend #3 TODO SignalR hub

Week 2-3: Data Integrity & Security

Task Agent Status Depends On
Kitchen → Inventory auto-deduction Senior Backend #1 TODO fnb-engine, inventory
Row-level security (all services) Senior Backend #2 TODO
Rate limiting audit DevOps TODO
Input sanitization audit QA TODO
FnB Engine unit tests QA TODO
Order lifecycle integration tests QA TODO Payment done

Week 3-4: Polish & Deploy

Task Agent Status Depends On
EOD reports + daily close workflow Senior Frontend TODO order-service
Full regression testing QA TODO All P0 done
Staging K8s deployment DevOps TODO
Grafana monitoring dashboards DevOps TODO Observability stack
Production deploy checklist DevOps + CTO TODO Staging verified
Load testing (100 concurrent users) QA + DevOps TODO Staging live

Phase 2: Multi-Vertical Expansion (Week 5-8)

Goal: Cafe + Spa + Retail verticals fully operational

Week 5-6: Vertical Completion

Task Agent Status Depends On
Spa domain logic (appointments, therapists) Senior Backend TODO booking-service
Retail POS workflow (scan, stock, returns) Senior Backend TODO catalog, inventory
Cafe-specific (loyalty stamps, barista queue) Senior Backend TODO membership
Vertical-specific UI refinement Senior Frontend TODO Backend done
Multi-branch management features Senior Backend TODO merchant-service

Week 7-8: Advanced Features

Task Agent Status Depends On
Advanced reports (revenue, staff perf) Backend + Frontend TODO order-service
Customer-facing menu (QR code) Frontend TODO catalog-service
Mobile-responsive POS layout Frontend TODO
E2E tests per vertical (Playwright) QA TODO Verticals done
Observability stack activation DevOps TODO
Production deployment (Karaoke + Restaurant) DevOps + CTO TODO Phase 1 stable

Phase 3: Growth Features (Week 9-12)

Goal: Marketing, Ads, Mobile apps

Week 9-10: Marketing & CRM

Task Agent Status Depends On
Zalo OA integration Backend TODO mkt-zalo-service
Facebook Messenger integration Backend TODO mkt-facebook-service
CRM dashboard (segments, campaigns) Frontend TODO membership + social
Marketing automation UI Frontend TODO mkt backends
WhatsApp integration Backend TODO mkt-whatsapp-service

Week 11-12: Mobile & Ads

Task Agent Status Depends On
iOS app v1 (customer-facing) Senior Mobile (Swift) TODO API stable
MAUI cross-platform app v1 Senior MAUI Dev TODO API stable
Ads serving + billing completion Backend TODO ads-* services
CDN + edge caching setup DevOps TODO
Full platform production launch CTO + All TODO All phases done

VI. Recently Completed

2026-03-06

Task Agent Details
Account Management (Admin Settings) Backend + Frontend Full profile/merchant CRUD via BFF
Subscription System Backend + Frontend Merchant entity + EF + API + dynamic UI
User → Enterprise Plan Backend + DB hongochai10@icloud.com set to Enterprise (unlimited)
Subscription Controller Backend GET /me, /plans, /usage + POST /subscribe
ChangePassword Validator Backend FluentValidation for IAM auth
Traefik Route (subscriptions) DevOps /api/v1/subscriptions → merchant-service
Admin Settings 5-Tab UI Frontend Tai khoan, Bao mat, Goi dich vu, Thong bao, He thong

2026-03-05

Task Agent Details
IAM Service — EF Config for ApplicationUser Backend Private field mapping (first_name, last_name, etc.)
Merchant Profile — NullRef Fix Backend Enumeration.FromValue pattern for EF-ignored nav properties
BFF Proxy — Account endpoints Backend 15 endpoints proxying to IAM + Merchant services
AdminSettings.razor — Full implementation Frontend 846-line Blazor component with 5 tabs

VII. Architecture Decisions Log

Date Decision Rationale Status
2026-03-06 Subscription stored in Merchant aggregate Simple, no separate service needed for MVP ACTIVE
2026-03-06 Static plan definitions in frontend + backend 4 fixed tiers sufficient for MVP launch ACTIVE
2026-03-05 BFF pattern for frontend-backend proxy Single entry point, auth forwarding, response normalization ACTIVE
2026-03-05 Neon PostgreSQL for staging/prod Serverless, auto-scaling, branching for dev ACTIVE
Clean Architecture + CQRS Separation of concerns, testability ACTIVE
MediatR pipeline (Log → Validate → Transaction → Handle) Cross-cutting concerns ACTIVE
Bilingual docs (EN + VI) Team accessibility ACTIVE

VIII. Environment & Access

Environment URL Database Status
Local (Docker) localhost:3001 (POS), :5001 (IAM), :5005 (Merchant) PostgreSQL local container ACTIVE
Local (dotnet run) localhost:5092 (POS), :5001 (IAM), :5005 (Merchant) Neon PostgreSQL ACTIVE
Staging api.staging.goodgo.vn Neon PostgreSQL TODO
Production goodgo.vn / admin.goodgo.vn Neon PostgreSQL TODO

Test Accounts

Email Password Role Subscription
hongochai10@icloud.com Test@12345 Admin / Owner Enterprise (unlimited)

IX. How to Update This File

  1. When starting a task: Change status to IN-PROGRESS
  2. When completing: Change to DONE and add to "Recently Completed"
  3. When blocked: Change to BLOCKED and add note
  4. Weekly: CTO reviews and reprioritizes
  5. After each sprint: Update metrics in Section I

Agent Workflow

CTO → Analyze requirement → Update ROADMAP.md with new tasks
Tech Lead → Breakdown tasks → Assign to agents
Backend Dev → Implement → Update status to DONE
Frontend Dev → Implement → Update status to DONE
QA → Test → Report issues or confirm DONE
DevOps → Deploy → Update environment status
CTO → Review → Move to "Recently Completed"

This file is the single source of truth for GoodGo Platform development progress. All agents should consult this file before starting work and update it after completing tasks.