Skip to main content

Mountain/IPC/StatusReporter/
mountain_get_health_status.rs

1#![allow(non_snake_case)]
2
3//! `mountain_get_health_status` Tauri command - returns the
4//! current `HealthMonitor::Struct` (score + active issues).
5
6use tauri::Manager;
7
8use crate::{
9	IPC::StatusReporter::{HealthMonitor::Struct as HealthMonitor, Reporter::Struct as Reporter},
10	dev_log,
11};
12
13#[tauri::command]
14pub async fn mountain_get_health_status(app_handle:tauri::AppHandle) -> Result<HealthMonitor, String> {
15	dev_log!("lifecycle", "Tauri command: get_health_status");
16
17	if let Some(reporter) = app_handle.try_state::<Reporter>() {
18		reporter.get_health_status()
19	} else {
20		Err("StatusReporter not found in application state".to_string())
21	}
22}