Katalog & Strategi Data Uji
Sumber kebenaran untuk semua data uji blackbox. Setiap berkas diberi ID stabil dan diunggah ke Google Drive dengan penamaan konsisten.
1. Prinsip
- Positive case = dokumen yang semestinya lolos verifikasi sistem (field lengkap, konsisten, valid).
- Negative case = dokumen yang semestinya ditolak/di-flag (akta expired, NIK mismatch, dokumen kurang, format salah, kuorum tak terpenuhi, dsb).
- Dua sumber: (a) PDF sintetis (data fiktif, aman PII, untuk kasus terkendali) dan (b) subset
backend/uploads/nyata (untuk kesetiaan OCR). Yayasan/Perkumpulan/PP juga punya sample nyata didocs/samples/danbackend/uploads/sp-*-pp/.
2. Konvensi penamaan (lokal & Drive)
{domain}/{fitur}/{positive|negative}/{id}__{deskripsi-singkat}.pdf
contoh: PT/pendirian/negative/D-NEG-01__akta-expired.pdf
Struktur folder Drive:
Blackbox-Test-Data/
PT/{pendirian,perubahan,perbaikan,peralihan-pp-pt,pembubaran,merger,akuisisi,laporan-rups}/{positive,negative}/
PP/{pendirian,perubahan,perbaikan,pembubaran}/{positive,negative}/
Apostille/{intake,classification,eligibility,verifier,legalisasi}/{positive,negative}/
_sintetis/ # duplikat semua yang sintetis (aman PII)
_nyata/ # dari uploads/ (mengandung PII — sesuai keputusan user)
3. Inventaris sumber yang sudah ada
| Sumber | Lokasi | Bentuk | Kegunaan |
|---|---|---|---|
| PT corpus | backend/src/services/__tests__/fixtures/*.txt |
Teks | Uji logika klasifikasi/ekstraksi (bukan OCR) |
| Yayasan sample | docs/samples/yayasan/akta/*.pdf |
PDF nyata | Referensi born-digital vs scan |
| Perkumpulan sample | docs/samples/perkumpulan/akta/*.pdf |
PDF nyata | Referensi |
| PP surat pernyataan | backend/uploads/sp-{pendirian,perbaikan,perubahan}-pp/ |
PDF+DOCX | PP flows |
| PP schema | backend/src/ocr/__tests__/fixtures/sp_pendirian_pp_v{3,4}_sample.json |
JSON | Validasi schema |
| Uploads nyata | backend/uploads/ (±4.159) |
PDF/JPG | Kesetiaan OCR (perlu dilabeli) |
4. Rencana pembuatan (yang harus dibuat)
4.1 PDF sintetis (via e2e/helpers/pdf-factory.ts)
| ID | Domain/Fitur | Tipe | Deskripsi |
|---|---|---|---|
| D-POS-01 | PT/Pendirian | Positive | Akta pendirian lengkap & konsisten |
| D-NEG-01 | PT/Pendirian | Negative | Akta dengan tanggal kedaluwarsa |
| D-NEG-02 | PT/Pendirian | Negative | KTP NIK tidak cocok roster |
| D-NEG-03 | PT/Pendirian | Negative | Checklist dokumen kurang (tanpa NPWP) |
| D-POS-10 | PT/Perubahan | Positive | Akta perubahan + risalah RUPS kuorum terpenuhi |
| D-NEG-10 | PT/Perubahan | Negative | RUPS kuorum tidak terpenuhi |
| D-POS-20 | PP/Pendirian | Positive | Surat pernyataan pendirian lengkap + BO valid |
| D-NEG-20 | PP/Pendirian | Negative | BO kriteria tidak lengkap (submission-mode) |
| D-POS-30 | Apostille/Intake | Positive | KTP + ijazah ber-TTE (marker BSrE) |
| D-NEG-30 | Apostille/Eligibility | Negative | Konvensional + petugas tak terdaftar (butuh Keterangan Keabsahan) |
| D-POS-40 | Apostille/Legalisasi | Positive | Dokumen untuk negara non-Apostille |
Daftar di atas adalah kerangka minimum; tiap supervisor MENAMBAH negative case per aturan validasi flow-nya (lihat brief handoff).
4.2 Pelabelan backend/uploads/
Orkestrator menjalankan pass klasifikasi ringan (baca teks halaman-1 tiap PDF, cocokkan kata kunci: "PENDIRIAN", "PERUBAHAN", "PEMBUBARAN", "RUPS", "KTP", dst) lalu menghasilkan e2e/data/uploads-index.json (path → dugaan flow + confidence). Supervisor memilih dari index ini untuk uji OCR nyata.
5. Upload ke Google Drive
- Tool: Google Drive MCP (
create_file/share_file). - Waktu: setelah tiap fitur selesai diuji (data final), atau batch di Fase 2.
- PII: folder
_nyata/berisi akta/KTP asli — sesuai keputusan user, tetap diunggah; tanggung jawab kepatuhan pada user. Folder_sintetis/bebas PII. - Sertakan
MANIFEST.mddi root folder Drive: tabel ID data → deskripsi → flow → positive/negative → sumber (sintetis/nyata).
6. Manifest master (diisi berjalan)
| ID | Domain | Fitur | Tipe | Sumber | Berkas | Ekspektasi | Drive path |
|---|---|---|---|---|---|---|---|
| D-POS-01 | PT | Pendirian | Positive | Sintetis | akta-pendirian-valid.pdf | Lolos | PT/pendirian/positive/ |
| ... |