4runr-os 2.10.50 → 2.10.51

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.
@@ -2855,9 +2855,9 @@
2855
2855
  }
2856
2856
  },
2857
2857
  "node_modules/@smithy/core": {
2858
- "version": "3.24.1",
2859
- "resolved": "https://registry.npmjs.org/@smithy/core/-/core-3.24.1.tgz",
2860
- "integrity": "sha512-3mT7o4qQyUWttYnVK3A0Z/u3Xha3E81tXn32Tz6vjZiUXhBrkEivpw1hBYfh84iFF9CSzkBU9Y1DJ3Q6RQ231g==",
2858
+ "version": "3.24.2",
2859
+ "resolved": "https://registry.npmjs.org/@smithy/core/-/core-3.24.2.tgz",
2860
+ "integrity": "sha512-IKS7qX59fAGCYBmt5JChcDswQDupZqT2Yn2ZBA3UgTlsjRNNkQzZobbn95xoAAdtTyJmBiJB3Y02qR3rgy3Zog==",
2861
2861
  "license": "Apache-2.0",
2862
2862
  "dependencies": {
2863
2863
  "@aws-crypto/crc32": "5.2.0",
@@ -2869,12 +2869,12 @@
2869
2869
  }
2870
2870
  },
2871
2871
  "node_modules/@smithy/credential-provider-imds": {
2872
- "version": "4.3.1",
2873
- "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-4.3.1.tgz",
2874
- "integrity": "sha512-0S/acwHnqX4WrjXzhdiDRxsG2s9SC0cpPIK9nZ1R6UOHd+j7uL28+4bHu22urbLk2TVw3fkp6na/+fkUt/pLNQ==",
2872
+ "version": "4.3.2",
2873
+ "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-4.3.2.tgz",
2874
+ "integrity": "sha512-iYr9ekBjmZ+FwkiHEopqGscBbl78X62cq3p5Dd0eC+gNd7fybNZFQQdDuOQjTVmFymleuA8YRWZnuXWZ8B3kKA==",
2875
2875
  "license": "Apache-2.0",
2876
2876
  "dependencies": {
2877
- "@smithy/core": "^3.24.1",
2877
+ "@smithy/core": "^3.24.2",
2878
2878
  "@smithy/types": "^4.14.1",
2879
2879
  "tslib": "^2.6.2"
2880
2880
  },
@@ -2883,12 +2883,12 @@
2883
2883
  }
2884
2884
  },
2885
2885
  "node_modules/@smithy/fetch-http-handler": {
2886
- "version": "5.4.1",
2887
- "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.4.1.tgz",
2888
- "integrity": "sha512-r7bN6spQ+caZC8AnyvSxkRUb57zt2jhhRw3Z+2Ez8hjq6coIikDBFUUI/+CQ1xx9K6eX1Gx6wUKo4ylU66TIqw==",
2886
+ "version": "5.4.2",
2887
+ "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.4.2.tgz",
2888
+ "integrity": "sha512-3wF40g8OOCA5BnwQUvwtzZqYBbWWftDjpAlWIUo6Yld3ZzJaMAKqg7MWQBPjE8oLaqvZQUE7tVGlZPsae6A4bQ==",
2889
2889
  "license": "Apache-2.0",
2890
2890
  "dependencies": {
2891
- "@smithy/core": "^3.24.1",
2891
+ "@smithy/core": "^3.24.2",
2892
2892
  "@smithy/types": "^4.14.1",
2893
2893
  "tslib": "^2.6.2"
2894
2894
  },
@@ -2909,12 +2909,12 @@
2909
2909
  }
2910
2910
  },
2911
2911
  "node_modules/@smithy/node-http-handler": {
2912
- "version": "4.7.1",
2913
- "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.7.1.tgz",
2914
- "integrity": "sha512-BdEYko85f/ldp68uH8XEyIvo810xFk6eyPH81SRggTOApYHWA+Xu7B2EzLuHbe37WVLaUA7F1fWR3/zBeme2WA==",
2912
+ "version": "4.7.2",
2913
+ "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.7.2.tgz",
2914
+ "integrity": "sha512-EdksTZ8UXYxGUgQ4mpIKrHoaj9WVGsp66TpZuixLAz1Jex8YDLnS4RH9ktGED5aOpN0OJlEtrsC9IGt76go1eA==",
2915
2915
  "license": "Apache-2.0",
2916
2916
  "dependencies": {
2917
- "@smithy/core": "^3.24.1",
2917
+ "@smithy/core": "^3.24.2",
2918
2918
  "@smithy/types": "^4.14.1",
2919
2919
  "tslib": "^2.6.2"
2920
2920
  },
@@ -2923,12 +2923,12 @@
2923
2923
  }
2924
2924
  },
2925
2925
  "node_modules/@smithy/signature-v4": {
2926
- "version": "5.4.1",
2927
- "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-5.4.1.tgz",
2928
- "integrity": "sha512-728lZZEWYWubBESrfntNslZQYDKRlJDY4dcDnYbL50+gu35pGPLblu4S0/RH/RDLF6me1M87ECHsHELGL7dA/Q==",
2926
+ "version": "5.4.2",
2927
+ "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-5.4.2.tgz",
2928
+ "integrity": "sha512-1km1OjdLRFuITWpCPofjFqzZ+tbeWuB72ZhcYjbjkCxZ21tTPfIs4GUxRrelMyKMLxLghGD58RENnXorU/O8cw==",
2929
2929
  "license": "Apache-2.0",
2930
2930
  "dependencies": {
2931
- "@smithy/core": "^3.24.1",
2931
+ "@smithy/core": "^3.24.2",
2932
2932
  "@smithy/types": "^4.14.1",
2933
2933
  "tslib": "^2.6.2"
2934
2934
  },
@@ -3046,9 +3046,29 @@ impl App {
3046
3046
  .map(|section| section.expanded)
3047
3047
  .unwrap_or(false);
3048
3048
 
3049
+ let system_selected_and_diagnostics = self
3050
+ .state
3051
+ .advanced_monitoring
3052
+ .monitoring_state
3053
+ .selected_section
3054
+ == Some(MonitoringSection::System)
3055
+ && self
3056
+ .state
3057
+ .advanced_monitoring
3058
+ .monitoring_state
3059
+ .sections
3060
+ .get(&MonitoringSection::System)
3061
+ .map(|section| section.expanded)
3062
+ .unwrap_or(false)
3063
+ && self
3064
+ .state
3065
+ .portal_monitoring
3066
+ .section_overrides
3067
+ .contains_key(&MonitoringSection::System);
3068
+
3049
3069
  match key.code {
3050
3070
  KeyCode::Up => {
3051
- if logs_selected_and_open {
3071
+ if logs_selected_and_open || system_selected_and_diagnostics {
3052
3072
  self.state.portal_monitoring.scroll_offset =
3053
3073
  self.state.portal_monitoring.scroll_offset.saturating_sub(1);
3054
3074
  self.request_immediate_render("portal_obs_scroll");
@@ -3062,7 +3082,7 @@ impl App {
3062
3082
  }
3063
3083
  }
3064
3084
  KeyCode::Down => {
3065
- if logs_selected_and_open {
3085
+ if logs_selected_and_open || system_selected_and_diagnostics {
3066
3086
  self.state.portal_monitoring.scroll_offset =
3067
3087
  (self.state.portal_monitoring.scroll_offset + 1).min(max_scroll);
3068
3088
  self.request_immediate_render("portal_obs_scroll");
@@ -878,7 +878,7 @@ pub fn render(f: &mut Frame, state: &mut AppState) {
878
878
  ]);
879
879
 
880
880
  let keys_hint = Line::from(vec![Span::styled(
881
- "R full refresh · L logs · wheel/Pg scroll · H metrics trends · → metrics drill · T dependencies · S system · A live",
881
+ "R full refresh · L logs · wheel/Pg scroll · ↑↓ scroll when Logs or System (S) diag · H metrics trends · → metrics drill · T dependencies · S system · A live",
882
882
  Style::default().fg(TEXT_DIM),
883
883
  )]);
884
884
 
@@ -1035,7 +1035,7 @@ pub fn render(f: &mut Frame, state: &mut AppState) {
1035
1035
  Line::from(
1036
1036
  " ↑/↓ select section Enter/Space expand/collapse PgUp/PgDn/mouse scroll",
1037
1037
  ),
1038
- Line::from(" When Logs is selected, ↑/↓ scroll log content first."),
1038
+ Line::from(" When Logs is selected, or System with diagnostics (after S), ↑/↓ scroll that content first."),
1039
1039
  Line::from(" ESC close help / return to Main"),
1040
1040
  Line::from(""),
1041
1041
  Line::from("Actions"),
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "4runr-os",
3
- "version": "2.10.50",
3
+ "version": "2.10.51",
4
4
  "type": "module",
5
- "description": "4Runr AI Agent OS - Secure terminal interface for AI agents. v2.10.50: Portal Monitoring S toggles System diagnostics (hide without cancelling observability; S during load aborts fetch). Preserves System/Dependencies on full observability refresh.",
5
+ "description": "4Runr AI Agent OS - Secure terminal interface for AI agents. v2.10.51: Portal Monitoring ↑/↓ scroll System diagnostics (after S), same as Logs. v2.10.50: S toggles diagnostics; preserves System/Dependencies on observability refresh.",
6
6
  "main": "dist/index.js",
7
7
  "bin": {
8
8
  "4runr": "dist/index.js",