Alur Status Metadata Lengkap
Diperbarui 20 Juli 2026
Alur Status Metadata Lengkap
Halaman ini menjelaskan setiap status yang dapat dimiliki sebuah metadata, transisi yang mungkin terjadi, dan siapa yang dapat melakukannya.
Daftar Status
| Status | Arti | Visibilitas |
|---|---|---|
| DRAFT | Sedang dikerjakan Produsen | Hanya Produsen + Admin |
| QCQE_PROCESS | Menunggu/sedang pemeriksaan | Produsen, Pemeriksa, Admin |
| REVIEW | Menunggu review Walidata | Produsen, Pemeriksa, Walidata, Admin |
| PUBLISHED | Terbit — aktif di katalog publik | Semua orang |
| PRIVATE | Tersembunyi sementara | Hanya pengguna terautentikasi |
| REJECTED | Ditolak, dikembalikan ke Produsen | Produsen + Admin |
Diagram Transisi Lengkap
DRAFT
│
├─[Produsen: Submit]──────────────────────► QCQE_PROCESS
│ │
│ ┌──────────────┼──────────────────────┐
│ │ │ │
│ [Pemeriksa: [Pemeriksa: [Pemeriksa:
│ Form QC/QE] Upload PDF] Lewati]
│ │ │ │
│ kirim ke atasan langsung ke REVIEW langsung ke REVIEW
│ │
│ Mode STRICT:│ PENDING_ATASAN
│ Mode PARALEL:│ PENDING_APPROVAL (+ REVIEW)
│ │
│ [Atasan konfirmasi email]
│ │
│ auto-TTE
│ │
│ ▼
│ REVIEW ◄────────────── (dari Upload/Lewati)
│ │
│ ┌──────────┴──────────┐
│ │ │
│ [Walidata: Setujui] [Walidata: Tolak]
│ │ │
│ PUBLISHED REJECTED ───► DRAFT (Produsen edit ulang)
│ │
│ ┌─────────────────┐
│ │ │
│ [Walidata: Toggle] [Tetap publik]
│ │
│ PRIVATE
│ │
│ [Walidata: Toggle kembali]
│ │
└─────────────► PUBLISHED
Detail Tiap Transisi
DRAFT → QCQE_PROCESS
- Siapa: Produsen (role PRODUSEN)
- Syarat: field wajib terisi (judul, abstrak, BBOX, topik, ≥1 kontak custodian)
- Efek: notifikasi ke Pemeriksa instansi (email + in-app), opsional lampiran SPD
- Proteksi concurrent: sistem mengunci metadata saat submit untuk mencegah double-submit
QCQE_PROCESS → REVIEW (via Form QC/QE)
- Siapa: Pemeriksa
- Syarat: minimal 1 draft QC atau QE tersimpan; data atasan terisi
- Alur STRICT: status QC/QE → PENDING_ATASAN → (atasan konfirmasi) → PENDING_APPROVAL → (auto-TTE) → REVIEW
- Alur PARALEL: metadata langsung ke REVIEW; status QC/QE → PENDING_APPROVAL → (atasan konfirmasi kapan pun) → auto-TTE
- Proteksi TOCTOU: kunci row MetadataRecord dengan SELECT FOR UPDATE di dalam transaksi untuk cegah race concurrent submission
QCQE_PROCESS → REVIEW (via Upload PDF atau Lewati)
- Siapa: Pemeriksa
- Langsung: tidak ada step atasan
REVIEW → PUBLISHED
- Siapa: Walidata (role WALIDATA atau ADMIN)
- Syarat: QA diisi dan dikonfirmasi atasan (atau langsung disetujui)
- Efek: metadata terbit, sinkron CSW + GeoNode, PDF QA di-generate dan disimpan di MinIO
REVIEW → REJECTED
- Siapa: Walidata
- Syarat: catatan penolakan wajib diisi
- Efek: Produsen dan Pemeriksa mendapat notifikasi
REJECTED → QCQE_PROCESS
- Siapa: Produsen (submit ulang setelah memperbaiki)
PUBLISHED ↔ PRIVATE
- Siapa: Walidata (atau Admin)
- Kapan saja setelah PUBLISHED
- Tidak menghapus data; metadata tetap ada di DB dan bisa dikembalikan ke PUBLISHED
QCQE_PROCESS → DRAFT (kembalikan)
- Siapa: Pemeriksa (mengembalikan ke Produsen sebelum QC/QE selesai)
- Syarat: catatan alasan wajib diisi
Status Internal QCQERecord
Selain status MetadataRecord, setiap dokumen QC/QE/QA memiliki status tersendiri:
| Status | Keterangan |
|---|---|
| DRAFT | Disimpan, belum dikirim ke atasan |
| PENDING_ATASAN | Menunggu konfirmasi atasan (STRICT) |
| PENDING_APPROVAL | Siap TTE — menunggu konfirmasi atasan (atau sudah dikonfirmasi, TTE belum jalan) |
| SIGNED | Ditandatangani (TTE berhasil) |
| REJECTED | Ditolak (misal BSRE error) |