fix(iwooos): clarify wazuh runtime closure

This commit is contained in:
ogt
2026-07-11 12:36:21 +08:00
parent a8077ca699
commit 34c942689b
3 changed files with 54 additions and 41 deletions

View File

@@ -16673,28 +16673,8 @@ function IwoooSSecurityToolClosureBoard() {
}, [])
const summary = data?.summary ?? SECURITY_TOOL_CLOSURE_BOOTSTRAP_SUMMARY
const runtimeClosureOpen = summary.tool_runtime_closure_percent < 100
const statusKey = readbackFresh
? runtimeClosureOpen ? 'open' : 'ready'
: failed ? 'bootstrap' : loading ? 'syncing' : 'bootstrap'
const statusTone: 'steady' | 'warn' = runtimeClosureOpen ? 'warn' : 'steady'
const tracks = data?.tool_tracks?.length ? data.tool_tracks : SECURITY_TOOL_CLOSURE_BOOTSTRAP_TRACKS
const queue = data?.next_executable_queue?.length ? data.next_executable_queue : SECURITY_TOOL_CLOSURE_BOOTSTRAP_QUEUE
const boundaryMarkers = data?.boundary_markers?.length ? data.boundary_markers : SECURITY_TOOL_CLOSURE_BOOTSTRAP_BOUNDARY_MARKERS
const primaryQueue = queue[0]
const primarySameRunRequired =
primaryQueue.same_run_required_stage_count ?? summary.wazuh_incident_response_same_run_required_stage_count ?? 0
const primarySameRunReady =
primaryQueue.same_run_source_stage_ready_count ?? summary.wazuh_incident_response_same_run_stage_ready_count ?? 0
const primaryHandoffReady =
primaryQueue.controlled_executor_handoff_preview_ready_count ??
summary.wazuh_controlled_executor_handoff_preview_ready_count ??
0
const runtimeSummary = runtimeData?.summary
const runtimeClosed = runtimeSummary?.runtime_closed_count ?? summary.wazuh_incident_response_runtime_closed_count ?? 0
const dispatchEnabled = runtimeSummary?.executor_policy_enabled_count ?? summary.wazuh_controlled_executor_dispatch_enabled_count ?? 0
const dispatchCandidate = runtimeSummary?.dispatch_candidate_count ?? 0
const checkModeFailed = runtimeSummary?.check_mode_failed_count ?? 0
const runtimePresent = runtimeSummary?.same_run_present_stage_count ?? runtimeClosed
const runtimeRequired = runtimeSummary?.same_run_required_stage_count ?? 1
const runtimeCompletion = runtimeSummary?.same_run_completion_percent ?? 0
@@ -16702,6 +16682,30 @@ function IwoooSSecurityToolClosureBoard() {
runtimeSummary?.runtime_execution_performed_count ??
summary.runtime_execution_performed_count ??
0
const runtimeClosureOpen = summary.tool_runtime_closure_percent < 100
const wazuhPostureClosed = runtimeClosed > 0
const statusKey = readbackFresh
? wazuhPostureClosed ? 'postureClosed' : runtimeClosureOpen ? 'open' : 'ready'
: failed ? 'bootstrap' : loading ? 'syncing' : 'bootstrap'
const statusTone: 'steady' | 'warn' = wazuhPostureClosed || !runtimeClosureOpen ? 'steady' : 'warn'
const tracks = data?.tool_tracks?.length ? data.tool_tracks : SECURITY_TOOL_CLOSURE_BOOTSTRAP_TRACKS
const queue = data?.next_executable_queue?.length ? data.next_executable_queue : SECURITY_TOOL_CLOSURE_BOOTSTRAP_QUEUE
const boundaryMarkers = data?.boundary_markers?.length ? data.boundary_markers : SECURITY_TOOL_CLOSURE_BOOTSTRAP_BOUNDARY_MARKERS
const primaryQueue = queue[0]
const primaryUsesLiveWazuhRuntime = primaryQueue.track_id === 'wazuh_detection_response' && runtimeSummary != null
const primarySameRunRequired = primaryUsesLiveWazuhRuntime
? runtimeRequired
: primaryQueue.same_run_required_stage_count ?? summary.wazuh_incident_response_same_run_required_stage_count ?? 0
const primarySameRunReady = primaryUsesLiveWazuhRuntime
? runtimePresent
: primaryQueue.same_run_source_stage_ready_count ?? summary.wazuh_incident_response_same_run_stage_ready_count ?? 0
const primaryHandoffReady =
primaryQueue.controlled_executor_handoff_preview_ready_count ??
summary.wazuh_controlled_executor_handoff_preview_ready_count ??
0
const dispatchEnabled = runtimeSummary?.executor_policy_enabled_count ?? summary.wazuh_controlled_executor_dispatch_enabled_count ?? 0
const dispatchCandidate = runtimeSummary?.dispatch_candidate_count ?? 0
const checkModeFailed = runtimeSummary?.check_mode_failed_count ?? 0
const runtimeFailureKey = runtimeData?.check_failure_class === 'ansible_target_unreachable'
? 'targetUnreachable'
: runtimeData?.check_failure_class === 'ansible_check_mode_timeout'
@@ -16858,6 +16862,8 @@ function IwoooSSecurityToolClosureBoard() {
{t('statusDetail', {
ready: summary.total_ready_signal_count,
required: summary.total_required_signal_count,
closed: summary.closed_tool_track_count,
tracks: summary.tool_track_count,
})}
</div>
<div style={{ display: 'flex', alignItems: 'center', gap: 6, color: '#526058', fontSize: 10.5, fontWeight: 800 }}>
@@ -17059,6 +17065,9 @@ function IwoooSSecurityToolClosureBoard() {
{tracks.map(track => {
const tone = securityToolClosureTone(track)
const width = `${Math.min(Math.max(track.source_readiness_percent, 0), 100)}%`
const runtimeStateKey = track.track_id === 'wazuh_detection_response' && wazuhPostureClosed
? 'manager_posture_closed_event_response_open'
: track.runtime_closure_state
return (
<div
key={track.track_id}
@@ -17088,7 +17097,7 @@ function IwoooSSecurityToolClosureBoard() {
</div>
<div style={{ display: 'flex', justifyContent: 'space-between', gap: 8, color: '#66706a', fontSize: 10, fontWeight: 800 }}>
<span>{track.ready_signal_count}/{track.required_signal_count}</span>
<span>{t(`states.${track.runtime_closure_state}` as never)}</span>
<span>{t(`states.${runtimeStateKey}` as never)}</span>
</div>
</div>
<div style={{ display: 'flex', justifyContent: 'space-between', gap: 7, alignItems: 'center' }}>