Nexa Intelligence Docs
Dashboard

Executive Briefing

Spesifikasi teknis modul Executive Briefing (/app/briefing atau /dashboard/briefing), perakitan ringkasan strategis berkala (Hari ini, Kemarin, 1 Minggu, 1 Bulan), serta pemetaan sumber daya Elasticsearch dan PDF engine.

Executive Briefing (/app/briefing / /dashboard/briefing)

Modul Executive Briefing mengompilasi lembar laporan intelijen pimpinan (Menteri, Kepala Lembaga, Direksi) dengan opsi filter periode multi-rentang (Hari ini, Kemarin, 2 Hari lalu, 1 Minggu, 1 Bulan, serta kalender kustom) dan ekspor berkas cetak resmi berformat PDF.

Arsitektur Perakitan Komposit (Zero-Redundancy)

Modul ini tidak memerlukan worker pipeline baru yang memproses ulang data mentah artikel. Modul ini murni bekerja di layer aplikasi/backend sebagai Composite Aggregator / Assembler yang merangkai hasil pra-agregasi harian (daily rollups) dari worker yang sudah ada: nexa-aggregation (national_dashboard) dan decision-worker (decision_intelligence & pillar_intelligence).


1. Arsitektur Alur Composite End-to-End

 ┌──────────────────────────────────────┐     ┌──────────────────────────────────────┐
 │          nexa-aggregation            │     │           decision-worker            │
 │   (Cron Job Harian 01:15 & 03:00)    │     │      (Cron Job Harian Dini Hari)     │
 └──────────────────┬───────────────────┘     └──────────────────┬───────────────────┘
                    │                                            │
                    ▼                                            ▼
      [Elasticsearch: national_dashboard]         [Elasticsearch: decision_intelligence]
      • national_{YYYY-MM-DD}                     • Isu prioritas KRITIS & TINGGI
      • total_event (Berita Terpantau)            • root_cause, impact, risk_score
      • active_sources (Sumber Media)             • recommended_actions, confidence
      • national_risk & stability score           • evidence artikel rujukan
      • intelligence_analysis:                                   │
        - high_risk_insight                                      ▼
        - economic_dynamic_insight                [Elasticsearch: pillar_intelligence]
        - calm_zone_insight                       • pillar_{key}_{YYYY-MM-DD}
                    │                             • Narasi analitik per sektor makro
                    │                                            │
                    └─────────────────────┬──────────────────────┘
                                          │
                                          ▼
                      [f1-api-backend / Briefing Composite Layer]
                                          │
        ┌─────────────────────────────────┴─────────────────────────────────┐
        ▼ (Mode 1: Single Date Preset)                                      ▼ (Mode 2: Multi-Window Preset)
   "Hari ini", "Kemarin", "2 hari lalu"                                "1 Minggu", "1 Bulan", Datepicker
   • Direct Point Get ID: national_{date}                              • Date range filter ES query
   • Direct filter decision_intelligence                               • Sum total_event, avg national_risk
   • Latensi super cepat (< 20ms)                                      • Top 5 isu Kritis terakumulasi
        │                                                                   │
        └─────────────────────────────────┬─────────────────────────────────┘
                                          │
                     ┌────────────────────┴────────────────────┐
                     ▼                                         ▼
         [GET /ew/briefing?from=...&to=...]         [GET /ew/briefing/pdf?from=...&to=...]
                     │                                         │
                     ▼                                         ▼
       Frontend: ExecutiveBriefing.jsx            Backend PDF Renderer (Puppeteer/PDFKit)
    (KPI Cards, Narasi AI, Prioritas Modal)         (Stream Berkas PDF Siap Cetak A4)

2. Tabel Pemetaan Komponen ke PostgreSQL & Elasticsearch

Komponen / Bagian UIPostgreSQL (Tabel & Kolom Kunci)Elasticsearch (Indeks & Field Kunci)Alur Event / Pemrosesan
KPI & Ringkasan Harian
GET /ew/briefing?from=...&to=...
- (Tidak diakses langsung)• national_dashboard
  ↳ total_event, active_sources, national_risk, intelligence_analysis
• pillar_intelligence
  ↳ Narasi analitik per sektor makro
Point get instan national_{date} (harian) atau rollup ringan (multi-hari).
Prioritas Tindak Lanjut
(Modal & daftar isu mendesak)
• articles
  ↳ Link bukti artikel rujukan
• decision_intelligence
  ↳ issue, priority, risk_score, impact, recommended_actions, evidence
Filter isu priority IN ['KRITIS', 'TINGGI'] diurutkan berdasarkan risk_score DESC.
Ekspor PDF Eksekutif
GET /ew/briefing/pdf?from=...&to=...
• briefing_archives
  ↳ (Opsional) Snapshot hash & metadata legal
Mengambil payload JSON dari /ew/briefingOn-demand rendering (Puppeteer/PDFKit) ke file binary %PDF-1.4.

3. Resolusi Periode Cepat vs Rentang Bebas

Antarmuka menyediakan 5 tombol preset cepat dan 2 pemilih tanggal kustom:

A. Periode Harian Tunggal (Hari ini, Kemarin, 2 Hari lalu)

Untuk tombol preset harian:

  • Hari ini: Backend mengambil dokumen national_{today} dan dokumen decision_intelligence bertanggal hari ini.
  • Kemarin: Backend mengambil dokumen national_{today - 1}.
  • 2 Hari lalu: Backend mengambil dokumen national_{today - 2}.

Keuntungan Efisiensi: Operasi ini merupakan direct point lookup berdasarkan ID dokumen di Elasticsearch. Tidak ada pemindaian penuh indeks, latensi respons < 20ms, dan sama sekali tidak mengonsumsi kuota token LLM.

B. Periode Multi-Hari (1 Minggu, 1 Bulan, Kustom Datepicker)

Untuk rentang multi-hari:

  • Metrik Numerik: Backend mengeksekusi agregasi ringan atas rentang dokumen national_* pada rentang from s.d. to (misal 7 dokumen untuk seminggu).
  • Prioritas Isu: Mengambil 5 isu teratas dari decision_intelligence yang terjadi dalam jendela waktu tersebut.
  • Narasi: Menggunakan draf narasi pilar terkini atau menggabungkan sintesis profil risiko rentang berjalan.

4. Spesifikasi Kontrak API (GET /ew/briefing)

Kontrak JSON yang disajikan oleh backend untuk dikonsumsi ExecutiveBriefing.jsx:

{
  "summary_ai": true,
  "first_date": "2026-10-01T00:00:00.000Z",
  "last_date": "2026-10-07T23:59:59.000Z",
  "stats": {
    "risk": 42.5,
    "stability": 57.5,
    "total": 5812,
    "srcs": 60
  },
  "summary_overview": "Stabilitas nasional secara umum terkendali pada indeks 84.5/100. Terdapat atensi khusus pada volatilitas harga pangan dan ketersediaan BBM solar subsidi di simpul jalur logistik antarprovinsi.",
  "summary_sections": [
    {
      "category": "ekonomi",
      "n": 2400,
      "neg_pct": 38,
      "region": "Jawa Barat, DKI Jakarta, Lampung",
      "text": "Kenaikan harga beras medium di beberapa pasar induk regional mencapai deviasi 8-12% di atas HET akibat jeda panen raya dan biaya angkut."
    },
    {
      "category": "keamanan",
      "n": 1800,
      "neg_pct": 26,
      "region": "Sumatera Bagian Selatan",
      "text": "Kepadatan antrean pengisian solar di SPBU jalur logistik Trans-Sumatera berhasil diurai melalui penempatan personel dan penambahan kuota harian."
    }
  ],
  "priorities": [
    {
      "id": "pilkada-dki",
      "tier": "kritis",
      "theme": "Polarisasi Kampanye Pilkada",
      "region": "DKI Jakarta",
      "total": 376,
      "score": 88,
      "confidence": 95,
      "impact": "Meningkatnya polarisasi masyarakat dan potensi konflik sosial berbasis agama yang mengancam stabilitas keamanan regional.",
      "prediction": "Atensi publik diproyeksikan tetap tinggi dalam 3-7 hari ke depan seiring eskalasi debat publik.",
      "timeline": [
        "Sinyal eskalasi sentimen di media sosial",
        "Pemeriksaan pelanggaran oleh Bawaslu daerah",
        "Resonansi meluas ke simpul wilayah penyangga"
      ],
      "recos": [
        { "p": "Tinggi", "t": "Bawaslu dan aparat penegak hukum meningkatkan pengawasan kampanye digital" },
        { "p": "Sedang", "t": "KPU dan Pemda mengintensifkan edukasi publik mengenai kerukunan" }
      ],
      "articles": [
        {
          "id": "art-101",
          "title": "Bawaslu Periksa Sejumlah Saksi Terkait Dinamika Kampanye Daerah",
          "url": "https://antaranews.com",
          "date": "2026-10-06T06:30:00.000Z",
          "kategori": "politik",
          "sentimen": "Negatif"
        }
      ]
    }
  ]
}

5. Generator Dokumen PDF Eksekutif (GET /ew/briefing/pdf)

Untuk kebutuhan rapat pimpinan (BOD Meeting) atau nota dinas cetak:

  1. Pemicu On-Demand: Pengguna mengklik tombol "Ekspor PDF" di antarmuka web dengan membawa parameter query string periode (?from=...&to=...).
  2. Kompilasi Data: Backend mengambil data JSON yang sama dengan yang dihasilkan oleh handler /ew/briefing.
  3. Injeksi Template HTML: Data disuntikkan ke template dokumen resmi (Header Lambang Garuda/NEXA, Grid KPI 4 kolom, narasi eksekutif, serta tabel prioritas dan QR-Code validasi).
  4. Rendering Headless: Modul rendering (Puppeteer atau PDFKit) mengonversi dokumen HTML ke binary %PDF-1.4 (ukuran kertas A4, margin standar).
  5. Streaming Download: Berkas langsung di-stream ke browser pengguna dengan nama NEXA_Briefing_{tanggal}.pdf.

On this page