0aa126af1c
- CHANGELOG: Phase 5 (per-pkg commission, golden cleanup) + Phase 6 (deprecation, ConfigService MagicWallet)
- ROADMAP: Progress 83%→93%, timeline updated through Phase 6
- TASKS: Mark مرحله ۳ (پورسانت) ✅, add commits 607f791→7176fe4→d19c569
232 lines
9.4 KiB
Markdown
232 lines
9.4 KiB
Markdown
# 🗺️ نقشه راه، ریسکها و کارهای باقیمانده
|
||
|
||
> **Roadmap + Risk Register + Dependencies + Priorities**
|
||
> **آخرین بروزرسانی:** اسفند ۱۴۰۴ (بروزرسانی: تحول پکیجبیس فاز ۰-۶ + per-package commission + deprecation cleanup)
|
||
|
||
---
|
||
|
||
## ۱. وضعیت فعلی پروژه
|
||
|
||
```
|
||
██████████████████████████████████████████████████ 95%
|
||
|
||
Core Platform ████████████████████████████████████████████████ 98%
|
||
Club System ████████████████████████████████████████████████ 98%
|
||
E-Commerce ████████████████████████████████████████████████ 98%
|
||
Payment ████████████████████████████████████████████████ 97%
|
||
Magic Wallet ████████████████████████████████████████████████ 100%
|
||
Package-Based ██████████████████████████████████████████████░░ 93%
|
||
UI/UX █████████████████████████████████████████████░░░ 93%
|
||
Deployment ██████████████████████████████████████████████░░ 95%
|
||
Documentation ████████████████████████████████████████████████ 100%
|
||
```
|
||
|
||
---
|
||
|
||
## ۲. کارهای باقیمانده (Backlog)
|
||
|
||
### 🔴 اولویت بالا (High Priority)
|
||
|
||
| # | آیتم | حوزه | پیشنیاز | تخمین |
|
||
|---|------|------|---------|-------|
|
||
| H1 | Product Bundle | Business | Proto + Handler | ۳ روز |
|
||
| H2 | Mobile Responsive (Phase 7) | UI/UX | — | ۵ روز |
|
||
| H3 | API Rate Limiting | CMS | — | ۲ روز |
|
||
| H4 | Error Boundary (Global) | FO/BO | — | ۱ روز |
|
||
|
||
### 🟡 اولویت متوسط (Medium Priority)
|
||
|
||
| # | آیتم | حوزه | پیشنیاز | تخمین |
|
||
|---|------|------|---------|-------|
|
||
| M1 | Manual Payment System | Business | تصمیم مدیریت | ۳ روز |
|
||
| M2 | SignalR for Chatika | CMS | — | ۲ روز |
|
||
| M3 | Dark Mode | UI/UX | — | ۲ روز |
|
||
| M4 | SEO Meta Tags | FO | — | ۲ روز |
|
||
| M5 | Order Notifications (SMS) | CMS | — | ۱ روز |
|
||
| M6 | BackOffice Dashboard Charts | BO | — | ۳ روز |
|
||
|
||
### 🟢 اولویت پایین (Low Priority)
|
||
|
||
| # | آیتم | حوزه | پیشنیاز | تخمین |
|
||
|---|------|------|---------|-------|
|
||
| L1 | PWA Support | FO | Mobile first | ۳ روز |
|
||
| L2 | API Versioning | CMS | — | ۲ روز |
|
||
| L3 | Monitoring (Prometheus) | Infra | — | ۳ روز |
|
||
| L4 | Log Aggregation (Seq/ELK) | Infra | — | ۳ روز |
|
||
| L5 | Product Compare | FO | — | ۲ روز |
|
||
| L6 | Wishlist | FO | — | ۲ روز |
|
||
| L7 | Email Templates (HTML) | CMS | — | ۲ روز |
|
||
| L8 | Refund System | CMS/PYMS | — | ۵ روز |
|
||
|
||
### ⛔ بلاکشده (Blocked)
|
||
|
||
| # | آیتم | بلاکر | اقدام لازم |
|
||
|---|------|-------|-----------|
|
||
| B1 | وام دایا (Production) | API دایا تکمیل نشده | پیگیری تیم دایا |
|
||
| B2 | پرداخت دستی | تصمیمگیری مدیریت | جلسه با مدیر محصول |
|
||
|
||
---
|
||
|
||
## ۳. نقشه راه (Roadmap)
|
||
|
||
### Q1 1404 (فروردین-خرداد)
|
||
|
||
```mermaid
|
||
gantt
|
||
title Q1 1404 — فروردین تا خرداد
|
||
dateFormat YYYY-MM-DD
|
||
section Sprint 1 فروردین
|
||
H2 Mobile Responsive :a1, 2025-03-21, 5d
|
||
H1 Product Bundle :a2, after a1, 3d
|
||
M4 SEO Meta Tags :a3, after a2, 2d
|
||
section Sprint 2 اردیبهشت
|
||
M1 Manual Payment :b1, 2025-04-21, 3d
|
||
M2 SignalR Chatika :b2, after b1, 2d
|
||
M6 Dashboard Charts :b3, after b2, 3d
|
||
section Sprint 3 خرداد
|
||
M3 Dark Mode :c1, 2025-05-22, 2d
|
||
H3 Rate Limiting :c2, after c1, 2d
|
||
L1 PWA :c3, after c2, 3d
|
||
```
|
||
|
||
### Q2 1404 (تیر-شهریور)
|
||
|
||
```mermaid
|
||
gantt
|
||
title Q2 1404 — تیر تا شهریور
|
||
dateFormat YYYY-MM-DD
|
||
section Sprint 4 تیر
|
||
L3 Monitoring :d1, 2025-06-22, 3d
|
||
L4 Log Aggregation :d2, after d1, 3d
|
||
L2 API Versioning :d3, after d2, 2d
|
||
section Sprint 5 مرداد
|
||
L5 Product Compare :e1, 2025-07-23, 2d
|
||
L6 Wishlist :e2, after e1, 2d
|
||
L7 Email Templates :e3, after e2, 2d
|
||
section Sprint 6 شهریور
|
||
L8 Refund System :f1, 2025-08-23, 5d
|
||
Performance Optimization :f2, after f1, 3d
|
||
Security Audit :f3, after f2, 3d
|
||
```
|
||
|
||
---
|
||
|
||
## ۴. ریسکها (Risk Register)
|
||
|
||
### ۴.۱ ریسکهای فنی
|
||
|
||
| # | ریسک | احتمال | تأثیر | شدت | اقدام |
|
||
|---|------|--------|------|-----|--------|
|
||
| R1 | MSSQL 2022 عدم scalability | Medium | High | 🟡 | مانیتورینگ + index optimization |
|
||
| R2 | gRPC breaking changes هنگام ارتقا proto | Low | High | 🟡 | Backward compatible changes |
|
||
| R3 | Hangfire job failure (commission) | Low | Critical | 🔴 | Polly retry + alerting + manual trigger |
|
||
| R4 | ZarinPal downtime | Medium | High | 🟡 | Fallback queue + manual payment |
|
||
| R5 | Ingress-nginx CVE | Low | Critical | 🔴 | Regular updates + WAF |
|
||
| R6 | Disk space (SQL backups) | Medium | Medium | 🟡 | Auto cleanup + offsite backup |
|
||
|
||
### ۴.۲ ریسکهای بیزینسی
|
||
|
||
| # | ریسک | احتمال | تأثیر | شدت | اقدام |
|
||
|---|------|--------|------|-----|--------|
|
||
| R7 | دایا Loan API تغییر | High | Medium | 🟡 | Mock mode + adapter pattern |
|
||
| R8 | تغییر درصد تخفیف باشگاه | Low | Low | 🟢 | SystemConstants قابلتنظیم |
|
||
| R9 | رشد سریع کاربران (>10K) | Low | High | 🟡 | Load test + horizontal scale |
|
||
| R10 | تغییر قوانین مالیاتی | Medium | Medium | 🟡 | VAT configurable |
|
||
|
||
---
|
||
|
||
## ۵. وابستگیهای خارجی (External Dependencies)
|
||
|
||
| سرویس | وابستگی | وضعیت | SLA |
|
||
|--------|---------|--------|-----|
|
||
| **ZarinPal** | درگاه پرداخت IPG | ✅ فعال | 99.5% |
|
||
| **Kavenegar** | ارسال SMS (OTP) | ✅ فعال | 99% |
|
||
| **Daya Loan** | API وام | ⚠️ Mock mode | نامشخص |
|
||
| **Chatika** | AI Chat | ✅ فعال | 95% |
|
||
| **Docker Hub** | Base images | ✅ با mirror | — |
|
||
| **NuGet.org** | .NET packages | ✅ با Nexus cache | — |
|
||
| **Gitea** | Source control | ✅ Self-hosted | 99% |
|
||
|
||
---
|
||
|
||
## ۶. معیارهای کیفیت (Quality Metrics)
|
||
|
||
### ۶.۱ فعلی
|
||
|
||
| معیار | مقدار فعلی | هدف |
|
||
|-------|-----------|------|
|
||
| Build Success Rate | ~95% | 99% |
|
||
| Average Response Time | ~200ms | <150ms |
|
||
| gRPC Error Rate | ~2% | <1% |
|
||
| Test Coverage | ~0% | >60% |
|
||
| Uptime (Staging) | ~98% | 99% |
|
||
| Documentation Coverage | 100% | 100% ✅ |
|
||
|
||
### ۶.۲ اقدامات بهبود
|
||
|
||
| اقدام | اولویت | تأثیر |
|
||
|-------|---------|-------|
|
||
| Unit Tests اضافه شود | High | Test Coverage +40% |
|
||
| Integration Tests | Medium | Reliability +20% |
|
||
| Load Testing (k6/JMeter) | Medium | Performance insight |
|
||
| Structured Logging (Serilog) | Medium | Debug time -50% |
|
||
| Health check endpoints | Done ✅ | Uptime monitoring |
|
||
|
||
---
|
||
|
||
## ۷. Definition of Done — Release Checklist
|
||
|
||
### Pre-Release (Staging)
|
||
|
||
- [ ] همه تستها پاس شوند
|
||
- [ ] Review توسط حداقل ۱ نفر
|
||
- [ ] Migration scripts اجرا شوند
|
||
- [ ] Smoke test روی staging
|
||
- [ ] مستندات بروز باشد
|
||
|
||
### Production Release
|
||
|
||
- [ ] Staging sign-off
|
||
- [ ] Database backup
|
||
- [ ] Docker images tagged
|
||
- [ ] K8s rollout
|
||
- [ ] Health check green
|
||
- [ ] Post-deploy smoke test
|
||
- [ ] Rollback plan ready
|
||
|
||
---
|
||
|
||
## ۸. خلاصه اولویتبندی
|
||
|
||
```
|
||
DONE (اسفند ۱۴۰۴):
|
||
→ Documentation consolidation ✅
|
||
→ 🪄 Magic Wallet فاز 1-6 ✅ (کامل)
|
||
→ اصلاح VAT 9% → 10% ✅
|
||
→ فعالسازی درگاه ZarinPal (پروداکشن) ✅
|
||
→ تنظیمات محیطی Staging/Production ✅
|
||
→ بهبود UI ادمین (UserAutoComplete + نام کاربر در کیفپول) ✅
|
||
→ مرج پروداکشن هر ۳ ریپو (CMS + FO + BO) ✅
|
||
→ اجرای Migration روی پروداکشن ✅
|
||
→ 📦 تحول پکیجبیس فاز 0-6 ✅ (Domain → Migration → Business → Package → CRUD → Commission per-pkg → Deprecation)
|
||
|
||
NOW (این ماه):
|
||
→ 📦 فاز 7: UI (کاشیهای داینامیک + فیلتر پکیج + MyPackages)
|
||
→ EF Migration نهایی
|
||
→ تست کامل پروداکشن
|
||
|
||
NEXT (فروردین):
|
||
→ Mobile Responsive (H2)
|
||
→ Product Bundle (H1)
|
||
→ SEO (M4)
|
||
|
||
LATER (Q2):
|
||
→ Monitoring + Logging (L3, L4)
|
||
→ PWA (L1)
|
||
→ Refund (L8)
|
||
|
||
BLOCKED:
|
||
→ Daya Loan Production (B1) — waiting on Daya
|
||
→ Manual Payment (B2) — waiting on decision
|
||
```
|