trust roadmap

This commit is contained in:
arifal
2026-05-09 00:55:40 +07:00
parent 5e0232d909
commit 54cd984a7e
14 changed files with 628 additions and 281 deletions
+11 -1
View File
@@ -162,7 +162,17 @@ export function verifyMidtransSignature(
/**
* Map kombinasi `transaction_status` + `fraud_status` Midtrans ke `PaymentStatus` internal.
* Tabel rujukan ada di PAYMENT_ROADMAP.md PR C.
*
* | Midtrans | fraud_status | PaymentStatus |
* |---------------------|--------------|---------------|
* | capture | accept | PAID |
* | capture | challenge | AWAITING |
* | settlement | — | PAID |
* | pending | — | AWAITING |
* | deny | — | FAILED |
* | expire | — | EXPIRED |
* | cancel | — | CANCELLED |
* | refund / partial | — | REFUNDED |
*/
export function mapMidtransStatus(
transactionStatus: string,
+7
View File
@@ -1,6 +1,13 @@
/** Minimal trip sebagai organizer untuk badge "Trip leader" (heuristik MVP). */
export const TRIP_LEADER_MIN_TRIPS = 2;
/**
* Minimal sample (trip selesai + trip dibatalkan) sebelum completion rate
* ditampilkan ke publik. Mencegah angka menyesatkan untuk organizer baru:
* mis. 1 trip dibatalkan dari 1 trip = 0% — tidak fair sebagai sinyal trust.
*/
export const COMPLETION_RATE_MIN_SAMPLE = 3;
/** Bentuk data minimal untuk cek status verifikasi organizer. */
type WithOrganizerVerification = {
organizerVerification?: { status: "PENDING" | "APPROVED" | "REJECTED" } | null;