c4efe4453b
- ✅ - ✅ - ✅
2.8 KiB
2.8 KiB
Setrip — Admin Roadmap (Index)
Status implementasi kemampuan admin agar admin dapat mengontrol seluruh aplikasi saat ada insiden, bukan hanya read-only dashboard.
Prinsip: admin adalah safety net terakhir saat sistem otomatis gagal atau ada bad actor. Setiap action admin harus auditable (siapa, kapan, alasan), idempotent, dan terbatas hanya untuk admin yang terdaftar di
ADMIN_EMAILS.
Baseline (yang BISA admin lakukan sekarang)
| Area | Fungsi | File |
|---|---|---|
| Dashboard | View count: verifikasi PENDING, refund per status, payout per status | app/admin/page.tsx |
| Verifikasi KYC | Approve / Reject organizer (KTP, liveness, bank) | app/admin/verifications/page.tsx |
| Refund | Create manual, approve, reject, mark SUCCEEDED, mark FAILED | app/admin/refunds/page.tsx |
| Payout | View per status, mark PAID setelah transfer manual | app/admin/payouts/page.tsx |
Auth admin: env ADMIN_EMAILS → cek di lib/admin.ts, dipassing ke session via lib/auth.ts.
Roadmap per area
| Roadmap | Prioritas | Status | File |
|---|---|---|---|
| Trip Operations (search, view, cancel manual) | 🔴 HIGH | ⏳ 0% | ADMIN_TRIP_OPS_ROADMAP.md |
| Payment Operations (booking detail, reconcile, dispute) | 🔴 HIGH | 🚧 ~15% | ADMIN_PAYMENT_OPS_ROADMAP.md |
| Audit & Investigation (search, filter, export) | 🔴 HIGH | ⏳ 0% | ADMIN_AUDIT_ROADMAP.md |
| User Management (search, suspend/ban) | 🟡 MEDIUM | ⏳ 0% | ADMIN_USER_MGMT_ROADMAP.md |
| Verification (reopen, re-upload request) | 🟡 MEDIUM | ⏳ 0% | ADMIN_VERIFICATION_ROADMAP.md |
| System Health (cron monitor, stale state alerts) | 🟡 MEDIUM | ⏳ 0% | ADMIN_SYSTEM_HEALTH_ROADMAP.md |
Legend status: ⏳ belum mulai · 🚧 partial · ✅ selesai
Urutan implementasi yang direkomendasikan
Berdasarkan ROI (frekuensi kebutuhan × dampak insiden):
- Trip Ops — paling sering dibutuhkan, infrastruktur service sudah lengkap (
tripService.closeTrip) - Payment Ops — kritikal saat webhook gagal; setengah infra sudah ada (
reconcileFromGateway) - Audit — compliance + investigasi dispute; data sudah lengkap (
reviewedBy,processedBy,adminNote), tinggal UI filter/export - User Management — moderation; butuh schema change (
User.suspended) - Verification — edge case rare; cuma butuh 1 service method + tombol
- System Health — operational visibility; butuh model baru (
CronRun)
Tiga roadmap pertama menutup ~90% skenario "admin powerless when shit hits the fan".