Files
merica-pipelines/RELEASE_NOTES.md
T

101 lines
6.5 KiB
Markdown
Raw Normal View History

# 📦 Catatan Rilis: MERICA Pipeline Bundles v1.0 (General Availability)
> **Versi Rilis**: `v1.0.0 (GA)`
> **Tanggal Rilis**: 07 Oktober 2026
> **Repositori**: `merica-pipeline-bundles.git` (Commit: `604456c`)
> **Target Pengguna**: Tim Data Engineer, Analis Data DLH, Walidata BPKP, dan Pengembang Studio
> **Standar Kompatibilitas**: Apache Airflow 3.3.2 Native `GitDagBundle`, dbt Core 1.10+, Great Expectations 0.18+
---
## 🌟 1. Sorotan Rilis (Release Highlights)
Repositori **`merica-pipeline-bundles`** diinisialisasi sebagai repositori terpisah (*decoupled repository*) untuk menampung seluruh aset analitik data lakehouse di lingkungan produksi, memisahkan logika bisnis dari kode sumber mesin platform.
### Poin Utama Rilis v1.0 GA:
* **4 Konfigurasi Deklaratif Pipeline Kanonikal (`configs/*.yaml`)**: Difokuskan murni pada use case strategis Dinas Lingkungan Hidup (DLH), mencakup replikasi CDC izin lingkungan (AMDAL), telemetri IoT kualitas udara (SPKU), digitalisasi rekapitulasi limbah Google Sheets, serta pipeline referensi Medallion harian.
* **Kebijakan Produksi Terstandar (Production Compliance)**: Seluruh artefak eksperimental non-kanonikal telah dibersihkan secara permanen dari repositori produksi.
* **8 Model SQL Transformasi Medallion (`dbt/models/`)**: 4 model Silver Clean (deduplikasi CDC, parsing regex, sanitasi batas sensor, dan sliding window lookback) serta 4 model Gold Mart (KPI perizinan harian, agregasi limbah, publikasi ISPU harian, dan tabel fakta multidimensi).
* **Integrasi Great Expectations Native Deklaratif**: Seluruh kontrak skema data dan aturan kualitas diekspresikan secara deklaratif di dalam konfigurasi YAML (`rules:` dan `queries:`), diuji secara otomatis di Bronze dan Silver layer.
* **Mekanisme GitOps Otomatis (Airflow 3 `GitDagBundle`)**: Setiap perubahan yang disimpan melalui kanvas visual MERICA Studio langsung di-commit ke repositori ini dan disinkronkan secara otomatis oleh Airflow 3 DAG Processor dalam interval 30 detik tanpa restart kontainer.
* **Metadata Kanvas Visual (`metadata/*.json`)**: Menyimpan topologi visual node ReactFlow untuk pengalaman visual pipeline builder dua arah (bidirectional visual sync).
---
## 🔄 2. Peningkatan dari Hasil Sandbox Riset (`experimental/`)
Selama fase inkubasi di sandbox `experimental/`, aset analitik data sebelumnya tercampur dengan kode engine platform. Pada rilis v1.0 GA ini:
1. **Pemisahan Total Logika Bisnis & Platform Engine**:
* Walidata DLH dapat memperbarui rumus analitik SQL atau aturan batas kewajaran sensor tanpa menyentuh repositori platform `merica-beta`.
2. **Standardisasi Format Great Expectations**:
* Menghilangkan seluruh skrip imperatif Python/psycopg2 inline. Rule validasi kini menggunakan format standar deklaratif:
```yaml
rules:
- expectation: expect_column_values_to_not_be_null
kwargs: { column: "permit_id" }
- expectation: expect_column_values_to_be_between
kwargs: { column: "pm25", min_value: 0, max_value: 500 }
```
3. **Penyelarasan Model dbt dengan Dynamic Bundle Loader**:
* Model SQL dbt kini menggunakan relasi modular dan referensi standar `{{ source(...) }}` dan `{{ ref(...) }}` yang dipindai secara dinamis oleh platform engine.
---
## 📋 3. Inventarisasi Aset Rilis v1.0 GA
### A. Daftar 4 Konfigurasi Pipeline Kanonikal (`configs/`)
1. `example_permits_medallion_dbt_postgres.yaml`: Pipeline referensi Medallion harian lengkap (Sling CDC $\rightarrow$ GE Bronze $\rightarrow$ dbt Silver $\rightarrow$ GE Silver $\rightarrow$ dbt Gold $\rightarrow$ SITOMAT Callback).
2. `ingestion_db_environmental_permits_cdc.yaml`: Replikasi CDC 15-menitan untuk data transaksional izin lingkungan hidup (AMDAL/UKL-UPL).
3. `ingestion_api_spku_air_quality.yaml`: Pipeline ELT near-realtime (5 menit) telemetri sensor kualitas udara dan penyusunan ISPU harian.
4. `ingestion_gws_waste_reports.yaml`: Ekstraksi harian (02:00 WIB) spreadsheet laporan limbah dan sampah perkotaan dengan forward-fill merged cells.
### B. Daftar 8 Model Transformasi dbt Medallion (`dbt/models/`)
* **Lapisan Silver Clean**:
* `silver_environmental_permits_clean.sql`: Deduplikasi idempoten `ROW_NUMBER()` berdasarkan `updated_at`.
* `silver_gws_waste_reports_clean.sql`: Sanitasi regex string numerik bercampur teks dan normalisasi tanggal.
* `silver_spku_sensor_clean.sql`: Pengalihan nilai sensor di luar batas kewajaran (*sensor sanity*) ke `NULL`.
* `stg_spku_realtime.sql`: Staging query dengan sliding lookback window 3 jam.
* **Lapisan Gold Mart**:
* `gold_permits_summary_daily.sql`: Ringkasan metrik persetujuan izin dan kepatuhan SLA pemrosesan.
* `gold_waste_management_summary.sql`: Agregasi volume sampah organik vs anorganik per kecamatan.
* `gold_ispu_daily_summary.sql`: Publikasi harian nilai ISPU per parameter pencemar untuk masyarakat.
* `fct_spku_daily_mart.sql`: Star schema fakta pengukuran sensor kualitas udara untuk BI / dashboard.
---
## 🛠️ 4. Panduan Kontribusi & Authoring Pipeline Baru
Bagi Walidata atau Data Engineer yang ingin menambahkan atau memperbarui pipeline:
### Opsi A: Melalui UI Canvas MERICA Studio (Direkomendasikan)
1. Buka MERICA Studio di `http://<host>:8950`.
2. Susun atau modifikasi visual pipeline pada kanvas.
3. Klik tombol **Publish Pipeline**. Backend akan membuat komit Git baru secara otomatis.
### Opsi B: Melalui Git Langsung
1. Buat branch fitur dari `development`:
```bash
git checkout -b feature/nama-pipeline-baru
```
2. Tambahkan berkas konfigurasi di `configs/nama_pipeline.yaml` dan model SQL di `dbt/models/...`.
3. Validasi sintaksis YAML:
```bash
python3 -c "import yaml; yaml.safe_load(open('configs/nama_pipeline.yaml'))"
```
4. Commit dan push ke remote repository:
```bash
git commit -m "feat(pipeline): add new pipeline for ..."
git push origin feature/nama-pipeline-baru
```
5. Buat Merge Request ke branch `development`.
---
## 📚 5. Dokumentasi Teknis Terkait
* 🧪 [TESTING.md](file:///mnt/c/project/bpkp/dlh/tech/merica-pipeline-bundles/TESTING.md) — Panduan Validasi & Pengujian Asset Pipeline
* 📑 [Dokumen 39: Panduan Implementasi Dual-Repo Git DAG Bundles](file:///mnt/c/project/bpkp/dlh/tech/docs/39_panduan_implementasi_dual_repo_git_dag_bundles_dan_ci_cd_merica_beta.md)
* 🚀 [Dokumen 40: Laporan Resmi Rilis GA v1.0 & Katalog Pipeline Bundles](file:///mnt/c/project/bpkp/dlh/tech/docs/40_laporan_resmi_rilis_merica_beta_v1_dan_katalog_pipeline_bundles.md)
* 🧪 [Dokumen 41: Panduan & Laporan Pengujian Riil E2E](file:///mnt/c/project/bpkp/dlh/tech/docs/41_panduan_dan_laporan_pengujian_riil_e2e_merica_beta_dan_pipeline_bundles.md)