Files
FE_CPONE/PR_PROMPT.md
2026-06-29 10:39:48 +07:00

88 lines
3.0 KiB
Markdown

# Prompt Standar Pembuatan Pull Request
Gunakan prompt berikut saat meminta AI untuk membuat PR. Isi bagian dalam kurung `[ ]` sesuai konteks.
---
## Prompt
```
Buatkan PR dari branch [HEAD_BRANCH] ke [BASE_BRANCH] dengan detail berikut:
**Kode Task:** [TASKCODE]
**Latar Belakang Masalah:**
[Jelaskan root cause masalah atau kebutuhan bisnis.
Contoh: "Fungsi post_transaction_daily tidak memfilter T_TestIsPrice sehingga
pemeriksaan non-price ikut terkirim ke AIS dan menyebabkan transaksi ditolak."]
**Perubahan yang Dilakukan:**
- [Perubahan 1, spesifik per fungsi/komponen]
- [Perubahan 2]
- [dst...]
**File yang Terkait:**
- `path/to/file1` — [deskripsi singkat perubahan]
- `path/to/file2` — [deskripsi singkat perubahan]
**Skenario Test untuk QA:**
- Normal: [flow utama yang harus berjalan]
- Edge case: [kondisi batas yang harus ditangani]
- Negatif: [kondisi yang harus ditolak/error]
- Regression: [fitur lain yang harus dipastikan tidak rusak]
```
---
## Contoh Hasil PR yang Diharapkan
### Title
`FHM290626CPONE01 - fix filter T_TestIsPrice pada post_transaction`
### Body
```markdown
## Latar Belakang Masalah
Fungsi `post_layanan_all` di `Masterdata.php` hanya mendaftarkan layanan dengan
`T_TestIsPrice = 'Y'` ke master layanan AIS. Namun fungsi `post_transaction_*`
tidak memfilter hal yang sama — semua pemeriksaan dengan `T_TestIsActive = 'Y'`
ikut terkirim sebagai transaksi, termasuk yang `T_TestIsPrice = 'N'`.
Akibatnya AIS menolak transaksi karena `LayananID` tidak terdaftar di master layanan.
## Perubahan
- Menambahkan kondisi `AND T_TestIsPrice = 'Y'` pada semua JOIN ke tabel `t_test`
di fungsi `post_transaction_daily_by_date`, `post_transaction_daily`,
dan `post_transaction_by_labnumber`.
## File yang Diubah
| File | Fungsi/Bagian | Keterangan |
|---|---|---|
| `path/to/Component.vue` | `post_transaction_*` | 21 titik JOIN diupdate |
| `application/controllers/ais/Transactionv3.php` | `post_transaction_*` | 21 titik JOIN diupdate |
| `application/controllers/ais/Transactionv4.php` | `post_transaction_*` | 21 titik JOIN diupdate |
| `application/controllers/ais/Transactionv5.php` | `post_transaction_*` | 21 titik JOIN diupdate |
## Test yang Harus Dilakukan QA
- [ ] **Normal:** Kirim transaksi dengan pemeriksaan yang `T_TestIsPrice = 'Y'`
harus berhasil masuk ke AIS tanpa error.
- [ ] **Edge case:** Order yang mengandung campuran pemeriksaan `IsPrice = 'Y'`
dan `IsPrice = 'N'` — hanya yang `'Y'` yang terkirim ke AIS.
- [ ] **Negatif:** Kirim transaksi yang seluruh pemeriksaannya `T_TestIsPrice = 'N'`
— tidak boleh ada layanan yang terkirim ke AIS.
- [ ] **Regression:** Pastikan total tagihan, RegpasNominal, dan TrxBayar
tetap terhitung dengan benar setelah filter diterapkan.
```
---
## Catatan
- Selalu gunakan kode task dari user sebelum membuat PR.
- Token Gitea tersimpan di `.env` dengan key `GITEA_TOKEN`.
- Base URL Gitea: `https://devone.aplikasi.web.id/gitea`
- Repo: `fajri/BE_CPONE` (BE) atau sesuai repo aktif.