Ringkasan Perubahan (Summary of Changes)
Merge Request ini mengintegrasikan kapabilitas Search and Rescue (SAR) Mission Management, bilah alat (toolbar) kontrol simulator interaktif, pemantauan status plugin secara real-time, serta peningkatan ketahanan timeout pengiriman skenario dari branch dev-nawawi ke dev-master.
1. Integrasi Kontrol Simulator SAR & Bilah Alat Aksi
- Menambahkan tombol kendali operasional misi pada halaman manajemen terminal (
ManageStationPage.tsx):-
Mulai Misi (
sar/mission/command/start): Memulai fase pencarian aktif di simulator. -
Reposisi Pesawat (
sar/mission/command/reposition): Mengembalikan pesawat ke titik koordinat spawn awal misi. -
Batalkan Misi (
sar/mission/command/abort): Menghentikan misi dan mereset status simulator. -
Aksi Lanjutan: Skip/Advance Leg (
advance_leg), Toggle HUD Siswa (toggle_hud), Toggle Panah Arah 3D (toggle_direction), dan Muat Replay Misi (load_replay).
-
Mulai Misi (
- Mengintegrasikan feedback visual berbasis Sonner toast untuk setiap aksi simulator.
2. Pemantauan Kesehatan Plugin Real-Time (Health Monitoring)
- Client Agent (
agent.mjs) melakukan polling berkala setiap 2 detik ke endpoint HTTP REST Plugin (http://127.0.0.1:8087/api/health). - Data status kesehatan disematkan pada paket heartbeat UDP/TCP:
-
ready(boolean),state(Offline, Idle, Loaded, Running),missionLoaded(boolean),version.
-
- Menambahkan indikator lencana dinamis (dynamic badge) pada antarmuka Instructor Launcher (
SAR PLUGIN: READY / IDLE / LOADED / OFFLINE).
3. Penanganan REST JSON Dispatch & Ketahanan Timeout
- Memperbarui
agent.mjsdanStationAgent.cppuntuk meneruskan payload skenario misi berformat JSON melaluiPOST http://127.0.0.1:8087/api/mission. -
Mitigasi Timeout Terrain Probing:
- Menaikkan batas waktu HTTP POST di Client Agent dari
3000 msmenjadi8000 ms. - Menaikkan batas waktu IPC TCP & UDP dispatch di Main Process (
stationService.ts) dari4000 msmenjadi10000 ms. - Hal ini mengakomodasi proses penentuan elevasi kontur permukaan (uncached scenery terrain probing via
XPLMProbeTerrainXYZ) pada X-Plane 12 tanpa memicu pembatalan prematur.
- Menaikkan batas waktu HTTP POST di Client Agent dari
4. Sinkronisasi Dokumentasi Arsitektur
- Memperbarui dokumentasi teknis menyeluruh agar selaras dengan spesifikasi REST JSON Plugin terbaru:
-
docs/references/sar-mission-plugin.md(Spesifikasi REST API v1.0.0, format skenario JSON, dan integrasi UDP CMND). -
docs/architecture.md,docs/roadmap.md,docs/laporan-rnd.md, danREADME.md.
-
Daftar Commit yang Disertakan
-
99b7116fix(dispatch): extend mission dispatch and terrain probe timeouts -
07510cfdocs(readme): synchronize SAR mission plugin references to JSON format -
596f97efeat(integration): implement SAR simulation control toolbar and health monitoring -
93b5a2adocs: update SAR Mission Plugin reference and integration architecture
Verifikasi & Quality Gates
-
TypeScript Strict Check: npm run typecheck\rightarrow0 errors across node & web targets. -
Code & Diagram Linting: npm run lint\rightarrow0 errors, 0 warnings (ESLint 9 + Mermaid Lint 6 diagrams). -
End-to-End Simulation Test: - Pengujian otonom berhasil memindahkan helikopter Sikorsky S-76C ke Danau Alpine (
lat=47.58843, lon=12.98918). - Status lencana SAR Plugin berhasil berubah menjadi
LOADEDdi antarmuka Instructor PC.
- Pengujian otonom berhasil memindahkan helikopter Sikorsky S-76C ke Danau Alpine (