mirror of
https://github.com/tinyhumansai/openhuman.git
synced 2026-07-30 06:32:24 +00:00
The frontend ping loop only runs while React is active, but the Rust backend keeps skills running independently. This adds a PingScheduler (modeled after CronScheduler) that pings all running skills every 5 minutes from a background Tokio task and acts on auth/network failures. The redundant frontend ping loop is removed since SkillProvider already listens for the Tauri events the Rust scheduler emits. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
29 lines
965 B
Rust
29 lines
965 B
Rust
//! QuickJS skill runtime module.
|
|
//!
|
|
//! Provides a persistent JavaScript execution environment for skills
|
|
//! using the QuickJS engine via `rquickjs`.
|
|
//!
|
|
//! Note: The skill runtime is only available on desktop platforms.
|
|
//! On mobile (Android/iOS), the skill runtime is disabled.
|
|
|
|
// Platform-agnostic modules
|
|
pub mod loader;
|
|
pub mod manifest;
|
|
pub mod preferences;
|
|
pub mod socket_manager;
|
|
pub mod types;
|
|
|
|
// QuickJS modules - desktop only (not available on Android/iOS)
|
|
#[cfg(not(any(target_os = "android", target_os = "ios")))]
|
|
pub mod bridge;
|
|
#[cfg(not(any(target_os = "android", target_os = "ios")))]
|
|
pub mod cron_scheduler;
|
|
#[cfg(not(any(target_os = "android", target_os = "ios")))]
|
|
pub mod ping_scheduler;
|
|
#[cfg(not(any(target_os = "android", target_os = "ios")))]
|
|
pub mod skill_registry;
|
|
#[cfg(not(any(target_os = "android", target_os = "ios")))]
|
|
pub mod qjs_engine;
|
|
#[cfg(not(any(target_os = "android", target_os = "ios")))]
|
|
pub mod qjs_skill_instance;
|