Files
merica-pipelines/RELEASE_NOTES.md
T

6.5 KiB

📦 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.
  • Zero-Dummy Policy: Seluruh 6 artefak pengujian dummy ad-hoc 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:
      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:
    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:
    python3 -c "import yaml; yaml.safe_load(open('configs/nama_pipeline.yaml'))"
    
  4. Commit dan push ke remote repository:
    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