Files
Qris-Soundbox/CODEX_HANDOFF.md
2026-05-25 08:22:12 +07:00

56 lines
3.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# CODEx Handoff — QRIS Soundbox Platform
## Current status
- Fokus terakhir: sinkronisasi UI dan smoke test pada stack yang sudah aktif.
- Implementasi backend dan UI sudah mulai dikerjakan di repository (tidak lagi hanya dokumentasi).
- Smoke test Fase1 jalannya:
- `smoke:cleanup`
- `smoke:flow` ❌ saat dijalankan langsung (karena server belum jalan di `localhost:3100`)
- `smoke:e2e` ✅ setelah server auto-start di port 3100 (cleanup + full flow berhasil).
## Files baru/terbaru yang sudah dibuat
- [UI: admin-system-dashboard](/home/wira/work/codex/qris-soundbox-platform/ui/admin-system-dashboard/index.html)
- Dashboard API wiring dipastikan terhubung ke backend untuk token admin, endpoint summary, dan retry/realtime UI.
- [UI: merchant-onboarding-flow](/home/wira/work/codex/qris-soundbox-platform/ui/merchant-onboarding-flow/index.html)
- Form onboarding disinkron ke API (create merchant, outlet, terminal, device, binding) + status badge flow.
- [UI: merchant-detail-view](/home/wira/work/codex/qris-soundbox-platform/ui/merchant-detail-view/index.html)
- Detail merchant kini ambil data API untuk merchant/outlet/transactions list.
- [UI: device-technical-detail](/home/wira/work/codex/qris-soundbox-platform/ui/device-technical-detail/index.html)
- Device detail sinkronisasi data API: detail device, binding terbaru, heartbeats, events, metrics device, dan stream log.
- [UI: transaction-history-monitoring](/home/wira/work/codex/qris-soundbox-platform/ui/transaction-history-monitoring/index.html)
- Search/filter outlet-terminal dan path transaksi sudah memakai endpoint API admin.
- [README](/home/wira/work/codex/qris-soundbox-platform/README.md)
- Sudah ada script dan langkah smoke test (`smoke:cleanup`, `smoke:flow`, `smoke:e2e`) siap dipakai.
- [DECISIONS_LOG.md](/home/wira/work/codex/qris-soundbox-platform/DECISIONS_LOG.md)
- Sudah memuat keputusan merchant bank account: kini arah keputusan ke rekening milik merchant (bukan escrow/terpusat) agar menghindari kebutuhan izin tambahan di awal.
## Keputusan penting yang harus diikuti saat lanjut
1. Fase 1 Step 14 harus tetap jalan berurutan sebelum pengembangan Fase 2.
2. Backend target Postgres di local (`qris_soundbox_platform`) sudah dipakai di smoke test.
3. Jalankan smoke dari kondisi bersih (`smoke:cleanup`) untuk hasil yang konsisten.
4. Untuk sementara, pencairan dana mengikuti pola rekening merchant sendiri (sesuai permintaan terakhir), bukan rekening terpusat.
5. Pertahankan format error API yang konsisten: `code`, `message`, `details`, `request_id`, `timestamp`.
## Urutan kerja selanjutnya (disarankan)
1. Backend/backend sanity lanjut dari titik terakhir:
- Pastikan endpoint untuk sinkronisasi screen sudah stabil (terutama filter/search transaksi dan heartbeat/ events).
- Lengkapi pemeriksaan 13 (dalam flow kamu, yaitu smoke point 13) yang belum dites manual via UI.
2. Ambil data smoke yang sudah tercipta di e2e (`merchant`, `device`, `transaction`) lalu smoke-test:
- Merchant detail page
- Merchant list/filter
- Device technical detail
- Device list + heartbeat view
- Transaction history + outlet/terminal filter
3. Jika ada regresi, cek log server di `/tmp/qris-smoke-e2e-server.log`.
4. Setelah UI flow stabil, lanjut fitur ops:
- `A.6 Migration + Seed` (jika ada gap)
- `B.1B.3` + `C.1C.3` + `D.1D.4` untuk full DoD Fase 1.
## Note kalau meneruskan sesi berikutnya
- Kode dan screen yang sudah dimodifikasi tidak perlu diulang dari nol; lanjut dari state saat ini.
- Prioritas saat lanjut: verifikasi “jalur UI sinkron API” lalu lanjutkan smoke flow end-to-end berkala.
- Gunakan [DECISIONS_LOG.md] sebagai rujukan wajib untuk keputusan yang sudah disepakati.
## Selesai untuk off
- Sudah ada gabungan perubahan di repo: doc + UI + API integration + smoke validation.