4runr-os 2.10.45 → 2.10.47
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/mk3-tui/src/app.rs
CHANGED
|
@@ -3011,16 +3011,24 @@ impl App {
|
|
|
3011
3011
|
let inner_h = self.state.portal_monitoring.viewport_lines.max(5);
|
|
3012
3012
|
let sw = self.state.portal_monitoring.summary_clip_width.max(24);
|
|
3013
3013
|
let max_scroll = portal_monitoring_scroll_max(&self.state, sw, inner_h);
|
|
3014
|
+
let logs_selected_and_open = self
|
|
3015
|
+
.state
|
|
3016
|
+
.advanced_monitoring
|
|
3017
|
+
.monitoring_state
|
|
3018
|
+
.selected_section
|
|
3019
|
+
== Some(MonitoringSection::Logs)
|
|
3020
|
+
&& self
|
|
3021
|
+
.state
|
|
3022
|
+
.advanced_monitoring
|
|
3023
|
+
.monitoring_state
|
|
3024
|
+
.sections
|
|
3025
|
+
.get(&MonitoringSection::Logs)
|
|
3026
|
+
.map(|section| section.expanded)
|
|
3027
|
+
.unwrap_or(false);
|
|
3014
3028
|
|
|
3015
3029
|
match key.code {
|
|
3016
3030
|
KeyCode::Up => {
|
|
3017
|
-
if
|
|
3018
|
-
.state
|
|
3019
|
-
.advanced_monitoring
|
|
3020
|
-
.monitoring_state
|
|
3021
|
-
.selected_section
|
|
3022
|
-
== Some(MonitoringSection::Logs)
|
|
3023
|
-
{
|
|
3031
|
+
if logs_selected_and_open {
|
|
3024
3032
|
self.state.portal_monitoring.scroll_offset =
|
|
3025
3033
|
self.state.portal_monitoring.scroll_offset.saturating_sub(1);
|
|
3026
3034
|
self.request_immediate_render("portal_obs_scroll");
|
|
@@ -3034,13 +3042,7 @@ impl App {
|
|
|
3034
3042
|
}
|
|
3035
3043
|
}
|
|
3036
3044
|
KeyCode::Down => {
|
|
3037
|
-
if
|
|
3038
|
-
.state
|
|
3039
|
-
.advanced_monitoring
|
|
3040
|
-
.monitoring_state
|
|
3041
|
-
.selected_section
|
|
3042
|
-
== Some(MonitoringSection::Logs)
|
|
3043
|
-
{
|
|
3045
|
+
if logs_selected_and_open {
|
|
3044
3046
|
self.state.portal_monitoring.scroll_offset =
|
|
3045
3047
|
(self.state.portal_monitoring.scroll_offset + 1).min(max_scroll);
|
|
3046
3048
|
self.request_immediate_render("portal_obs_scroll");
|
|
@@ -619,7 +619,7 @@ fn build_body_lines(state: &AppState, summary_width: usize) -> Vec<Line<'static>
|
|
|
619
619
|
} else {
|
|
620
620
|
(
|
|
621
621
|
SectionStatus::Unknown,
|
|
622
|
-
"Press
|
|
622
|
+
"Press S for CLI/host stats".to_string(),
|
|
623
623
|
)
|
|
624
624
|
}
|
|
625
625
|
}
|
|
@@ -720,8 +720,7 @@ fn build_body_lines(state: &AppState, summary_width: usize) -> Vec<Line<'static>
|
|
|
720
720
|
"If results stay empty, nothing may be writing to the Gateway log ring buffer yet.".into(),
|
|
721
721
|
],
|
|
722
722
|
MonitoringSection::System => vec![
|
|
723
|
-
"Press
|
|
724
|
-
"Press S to run diagnostics (Gateway verify + TUI WebSocket details).".into(),
|
|
723
|
+
"Press S to fetch CLI process + host OS stats and run diagnostics.".into(),
|
|
725
724
|
String::new(),
|
|
726
725
|
"MK3 TUI runtime".into(),
|
|
727
726
|
format!(
|
|
@@ -789,7 +788,7 @@ fn build_body_lines(state: &AppState, summary_width: usize) -> Vec<Line<'static>
|
|
|
789
788
|
}
|
|
790
789
|
if matches!(section, MonitoringSection::System) && expanded {
|
|
791
790
|
out.push(Line::from(vec![Span::styled(
|
|
792
|
-
" Phase 4:
|
|
791
|
+
" Phase 4: S = CLI/host stats + diagnostics. Disk is intentionally marked unavailable until a native probe exists.",
|
|
793
792
|
Style::default().fg(TEXT_DIM),
|
|
794
793
|
)]));
|
|
795
794
|
}
|
|
@@ -1042,7 +1041,7 @@ pub fn render(f: &mut Frame, state: &mut AppState) {
|
|
|
1042
1041
|
Line::from(" R full snapshot refresh without closing your current section"),
|
|
1043
1042
|
Line::from(" L jump to Logs + fetch Gateway logs"),
|
|
1044
1043
|
Line::from(" H jump to Metrics + toggle trends → Metrics drill ← leave drill"),
|
|
1045
|
-
Line::from(" T jump to Dependencies detail S jump to System diagnostics"),
|
|
1044
|
+
Line::from(" T jump to Dependencies detail S jump to System stats + diagnostics"),
|
|
1046
1045
|
Line::from(" A toggle live auto-refresh (off by default for stable reading)"),
|
|
1047
1046
|
Line::from(" E export diagnostics JSON to the current working directory"),
|
|
1048
1047
|
Line::from(""),
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "4runr-os",
|
|
3
|
-
"version": "2.10.
|
|
3
|
+
"version": "2.10.47",
|
|
4
4
|
"type": "module",
|
|
5
|
-
"description": "4Runr AI Agent OS - Secure terminal interface for AI agents. v2.10.
|
|
5
|
+
"description": "4Runr AI Agent OS - Secure terminal interface for AI agents. v2.10.47: Clarifies Portal Monitoring System stats use S while R remains global refresh. v2.10.46: Restores Portal Monitoring section navigation after closing Logs.",
|
|
6
6
|
"main": "dist/index.js",
|
|
7
7
|
"bin": {
|
|
8
8
|
"4runr": "dist/index.js",
|