Skip to content
13 changes: 12 additions & 1 deletion desktop/scripts/check-file-sizes.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -400,7 +400,18 @@ const overrides = new Map([
// transition lock doc broadened to cover all protected-PID transitions, and
// clear_agent_session_caches (per-pubkey retain) added alongside the
// per-key clear. Load-bearing identity-contract change; queued to split.
["src-tauri/src/app_state.rs", 1081],
// +8 (1081 -> 1089): mesh re-arm watchdog (#2304) adds mesh_ingress_dead_probes
// AtomicU32 counter on AppState for consecutive dead-probe debounce. Narrow
// counter field + init spars; still queued to split more AppState sections.
// +1 (1089 -> 1090): feature-gate the dead-probes initializer (micspiral #2304)
// so non-mesh builds compile under -D warnings; trailing-newline line count.
["src-tauri/src/app_state.rs", 1090],
// mesh_llm re-arm watchdog + Brad/micspiral correctness suite (#2304):
// probe/evict identity gate, bounded stop timeout, process-map filter,
// store-lock error persistence, consecutive-probe debounce, sentinel-cleared
// last_error. Load-bearing recovery path; queued to split re-arm helpers
// into mesh_llm/rearm.rs. Ratchet covers current size after rustfmt.
["src-tauri/src/commands/mesh_llm.rs", 1410],
// multi-slot splitting + no-op suppression (#1309): the ReadStateManager
// class grew from ~700 lines to ~1019 with the addition of
// splitContextsIntoBudgetedSlots (pure fn + 5 tests), publishSplitSlots,
Expand Down
9 changes: 9 additions & 0 deletions desktop/src-tauri/src/app_state.rs
Original file line number Diff line number Diff line change
Expand Up @@ -108,6 +108,13 @@ pub struct AppState {
/// In-process mesh-llm node started by Buzz Desktop.
#[cfg(feature = "mesh-llm")]
pub mesh_llm_runtime: AsyncMutex<Option<crate::mesh_llm::DesktopMeshRuntime>>,
/// Consecutive dead ingress probes observed by the coordinator watchdog
/// while a runtime handle was present. Used to debounce eviction so a
/// single transient stall (model load/reload, VRAM alloc, GC/mmap pause,
/// inference saturation) past the 3s probe budget does not cold-restart a
/// healthy runtime (micspiral review, #2304). Reset to 0 on a live probe.
#[cfg(feature = "mesh-llm")]
pub mesh_ingress_dead_probes: std::sync::atomic::AtomicU32,
/// Runtime-owned shared-compute coordinator. It publishes member-signed
/// discovery status and reconciles MeshLLM's admission roster; MeshLLM
/// itself owns direct QUIC/iroh connection establishment.
Expand Down Expand Up @@ -223,6 +230,8 @@ pub fn build_app_state() -> AppState {
#[cfg(feature = "mesh-llm")]
mesh_llm_runtime: AsyncMutex::new(None),
#[cfg(feature = "mesh-llm")]
mesh_ingress_dead_probes: std::sync::atomic::AtomicU32::new(0),
#[cfg(feature = "mesh-llm")]
mesh_coordinator: AsyncMutex::new(None),
pending_owned_channels: Mutex::new(std::collections::HashSet::new()),
}
Expand Down
Loading
Loading