1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
//! Combined search + memory health screen (`[2]`) for the trusty-mpm TUI.
//!
//! Why: operators want one glance to confirm that the two daemons the
//! coordinator depends on — trusty-search and trusty-memory — are alive and
//! healthy, without leaving the TUI to run two `status` commands. Keeping the
//! poller, the typed wire shapes, and the pure rendering helpers here (away
//! from the coordinator chat in `dashboard.rs`) keeps both surfaces small and
//! independently testable.
//! What: [`HealthClient`] is a typed `reqwest` transport for one daemon's
//! `/health` + list endpoints; [`PanelData`] is the projected per-daemon
//! payload; [`PanelState`] is `Connecting` / `Online` / `Offline`;
//! [`HealthScreen`] holds both panels plus focus and renders the side-by-side
//! layout. A background tokio task drives polling and pushes [`HealthUpdate`]s
//! down a channel into the TUI event loop.
//!
//! This module is split into focused submodules (issue #607): `types` holds the
//! pure data types and constants, `activity` the palace activity/spinner
//! helpers, `format` the string formatters and panel-body builders, `probes`
//! the HTTP transport and JSON projections, `screen` the [`HealthScreen`] state
//! methods and pure line builders, and `render` the ratatui widget assembly.
//! This `mod.rs` is a thin facade that re-exports the public surface (so the
//! external `health::*` path is unchanged) and delegates the test suite to
//! the sibling `tests.rs` file.
//!
//! Test: `cargo test -p trusty-mpm` covers the wire projections, panel
//! line building, the focus toggle, and a `TestBackend` render smoke test.
pub use ;
pub use ;
pub use client_for;
pub use render;
pub use ;
pub use ;