think
16px
820px

Kesiapan Demo — 28 Agustus 2026

Status staging: 5a5f1eb6 live di 192.168.83.20:3520 · diverifikasi 18 Agustus 2026, 12:0x WIB
Sisa waktu: 10 hari


1. Yang sudah selesai hari ini

Tombol Keluar (logout) — SELESAI

Ada di header kanan atas, sebagai menu avatar. Menampilkan persona yang sedang
masuk, lalu Keluar.

Diverifikasi di browser sungguhan (Chromium headless) terhadap staging yang
sudah ter-deploy, bukan hanya di unit test:

login UI → verifikator_pt → /verifikator
avatar   → "Verifikator PT / Sedang masuk / Keluar"
Keluar   → /login, authToken = null, userRole.v2 = null

Logout bersifat client-side: autentikasi memakai bearer JWT di localStorage
yang diperiksa per request, jadi tidak ada sesi server yang perlu diakhiri —
membuang token itulah keseluruhannya. Persona (userRole.v2) ikut dibuang,
supaya halaman login tidak "berpakaian" seperti pengguna sebelumnya.

Sekaligus: footer sidebar dulu menampilkan "User" hardcoded (sisa era tanpa
auth). Sekarang menampilkan persona sungguhan, sama dengan avatar di header.

Kredensial & data PP staging — SELESAI

PP_REGISTRY_MOCK_USER_ID diganti 1198606822070 di
~/ahu-ai-staging/ocr/infra/env/shared.env (backup: shared.env.bak-2026-08-18).

Penyebab picker PP kosong: demo 6 Juli menghabiskan satu-satunya PP milik user
lama. User 822070 punya 7 PP aktif, dan ketiga endpoint sudah dicek:

Endpoint Hasil
/api/pp/perubahan 7 PP
/api/pp/perbaikan-pp 7 PP
/api/pp/pembubaran 7 PP

PP yang tersedia: DUBAI GOLD GLOBAL (681026), TAK NYANA BISA JAYA (694906),
KARPET SHOP GROSIR (682770), PANCA SIMBA QUALITY (905735), PEGADAIAX GALERI
DUAEMPAT (891779), ANGKASA TRAVEL TOUR (883203), MULTI KARYA SAMUDRA (709266).
Cadangan kalau ketujuhnya terpakai saat gladi bersih: user 51836 atau
193518 (masing-masing 7 PP).


2. Temuan penting: antrean Verifikator PT KOSONG

Ini risiko demo terbesar yang ditemukan, dan tidak terlihat dari mana pun
kecuali dengan membuka halamannya.

Sebelum: tabel VerifikasiPerubahan di staging berisi 0 baris. Artinya
serah-terima Notaris → Verifikator PT belum pernah sekali pun dijalankan di
staging
. Kalau baru ketahuan tanggal 28, tidak ada waktu memperbaiki.

Penyebabnya bukan bug: antrean Verifikator PT hanya menampilkan submission
PERUBAHAN_PT (dan keluarganya) yang berstatus COMPLETED. Staging punya 10
PERUBAHAN_PT, semuanya masih READY — belum ada yang di-submit Notaris.

Sudah dibuktikan berjalan. Satu submission dijalankan penuh lewat API
sungguhan:

POST /api/perubahan/submissions/:id/attestations   → 200
POST /api/perubahan/submissions/:id/submit         → 200 {"status":"COMPLETED"}
GET  /api/verifikator/submissions (verifikator_pt) → total: 1

Halaman review verifikator terbuka bersih: saran AI ("Waspada"), 12 hasil
validasi lulus + 2 temuan, pratinjau PDF asli, 24 field akta / 9 domisili / 90
field KTP / 2 NPWP. Nol error konsol, nol response 4xx/5xx.

Antrean sekarang berisi 1 item — jadi kalaupun submit langsung gagal saat
demo, layar verifikator tidak kosong.

sequenceDiagram participant N as Notaris participant S as Sistem participant V as Verifikator PT N->>S: Unggah akta → klasifikasi → ekstraksi N->>S: Setujui section + attestation N->>S: Submit (status → COMPLETED) S->>S: Buat VerifikasiPerubahan (MENUNGGU_VERIFIKATOR) Note over N,V: ← tombol Keluar dipakai di sini V->>S: Buka antrean S-->>V: 1 submission menunggu V->>S: Buka review → saran AI + validasi + PDF

Alur demo yang disarankan: Notaris submit → Keluar → masuk sebagai
Verifikator PT → submission muncul di antrean. Tombol logout membuat pergantian
persona ini mungkin dilakukan di panggung tanpa membuka devtools.


3. Yang sudah diverifikasi berjalan di staging

Yang dicek Hasil
Pipeline OCR ujung-ke-ujung Unggah 200 → klasifikasi 200 dalam 10,5 detik, confidence 0,9967
Semua upstream model 9 upstream lewat gateway :8200; vLLM, paddle-ocr, classifier, 7× Azure DI semua healthy
Kesehatan penyimpanan healthy: true — 415 dokumen, 484 objek, 0 orphan, 0 file hilang
18 halaman × 5 persona Semua render bersih — nol crash, nol error konsol, nol response API 4xx/5xx
Antrean Verifikator Apostille 3 item — tidak kosong
Login UI 5 persona ditawarkan: notaris, perseroan, umum, verifikator_pt, verifikator_apostille

Data demo yang tersedia di staging:

Alur READY COMPLETED ERROR
PENDIRIAN_PT 13 1
PENDIRIAN_PP 16 4 1
PERUBAHAN_PT 9 1 (baru)
PERUBAHAN_PP 13
PERALIHAN_PP_KE_PT 9 1
APOSTILLE 12 1
PENDIRIAN_YAYASAN 2
PERBAIKAN_DATA_PT 2

4. Yang masih perlu dikerjakan sebelum 28 Agustus

Diurutkan dari yang paling berisiko.

1. Gladi bersih tiap persona, ujung ke ujung — wajib

Yang sudah dibuktikan adalah halaman terbuka dan pipeline OCR jalan. Yang
belum dibuktikan adalah seorang manusia menyelesaikan satu alur penuh lewat
UI: unggah → klasifikasi → ekstraksi → review → setujui tiap section →
attestation → submit.

Temuan antrean kosong di atas persis jenis masalah yang hanya muncul saat
dijalankan sungguhan. Perkiraan: 2–3 jam untuk keempat alur demo.

2. Tentukan naskah demo, lalu bekukan datanya

Pilih submission tertentu untuk tiap adegan dan jangan disentuh sesudahnya. Saat
ini siapa pun yang membuka staging bisa mengubah data yang direncanakan.

3. klasifikasi-temp tidak pernah dibersihkan — 948 MB

1656 file menumpuk sejak 8 Juli, tidak pernah disapu. Itu 948 MB dari 1,3 GB
isi uploads/, dan tidak terlihat oleh storage reconciler (yang melaporkan
484 objek) — jadi /api/health/storage tetap hijau sementara direktori ini
membengkak.

Disk host GPU 88% penuh (60 GB sisa). Bukan penghalang demo, tapi ini yang
diam-diam menghabiskan box. Perbaikan: sapuan berbasis umur untuk
uploads/klasifikasi-temp, plus masukkan direktori ini ke jangkauan reconciler.

4. Instance dev berbagi gateway yang sama

Enam instance dev di valbox menunjuk ke gateway model yang sama dengan staging.
Kalau ada yang menjalankan batch saat demo, GPU-nya berebut. Minta semua dev
tidak menjalankan pekerjaan berat pada 28 Agustus pagi.

5. URL salah ketik → layar error mentah

Path yang tidak dikenal memunculkan ErrorBoundary bawaan React Router, bukan
halaman 404 yang ramah. Hanya penting kalau ada yang mengetik URL manual saat
demo. Perbaikan kecil.


5. Yang tidak akan diperbaiki sebelum demo

  • 3 submission ERROR (PENDIRIAN_PT, PENDIRIAN_PP, LAPORAN_RUPS_TAHUNAN) —
    sisa lama. Hindari saja; jangan dibersihkan mendadak sebelum demo.
  • Retensi dokumen — keputusan AHU, bukan keputusan teknis.
  • MinIO / object storage — ditunda sampai keputusan infrastruktur turun.

Lampiran: cara cepat memeriksa staging

# kesehatan
curl -s http://192.168.83.20:3520/api/health
curl -s http://192.168.83.20:3520/api/health/storage

# ambil token (SECURITY_ENFORCE=on — curl anonim akan 401)
SEC=$(ssh efran@192.168.83.20 'grep -h SECURITY_DEV_LOGIN_SECRET ~/ahu-ai-staging/ocr/infra/env/*.env | head -1' | cut -d= -f2-)
curl -s -X POST http://192.168.83.20:3520/api/auth/login \
  -H 'Content-Type: application/json' \
  -d "{\"role\":\"verifikator_pt\",\"secret\":\"$SEC\"}"

# antrean verifikator
curl -s http://192.168.83.20:3520/api/verifikator/submissions -H "Authorization: Bearer $TOKEN"