feat(iwooos): add wazuh incident closure contract
Some checks failed
CD Pipeline / workflow-shape (push) Successful in 0s
CD Pipeline / cancel-stale-cd (push) Has been skipped
CD Pipeline / build-and-deploy (push) Has been cancelled
CD Pipeline / post-deploy-checks (push) Has been cancelled
CD Pipeline / tests (push) Has been cancelled

This commit is contained in:
ogt
2026-07-10 20:53:15 +08:00
parent 2d2349a292
commit 98557b01ed
9 changed files with 1030 additions and 3 deletions

View File

@@ -778,6 +778,13 @@ const SECURITY_TOOL_CLOSURE_BOOTSTRAP_QUEUE: IwoooSSecurityToolClosureQueueEntry
required_signal_count: 6,
missing_signal_count: 0,
required_verifier: 'wazuh_registry_fim_vulnerability_alert_receipt_post_verifier',
same_run_required_stage_count: 9,
same_run_source_stage_ready_count: 5,
same_run_closure_candidate_ready_count: 0,
incident_response_packet_validation_endpoint:
'/api/v1/iwooos/wazuh-incident-response-closure/validate-incident-response-packet',
next_gate_after_packet_acceptance:
'route_to_iwooos_controlled_executor_for_bounded_execution_and_post_verifier_writeback',
controlled_apply_policy_allowed: true,
},
{
@@ -16945,6 +16952,8 @@ function IwoooSSecurityToolClosureBoard() {
const missing = item.missing_signal_count ?? Math.max(required - ready, 0)
const nextAction = publicSecurityToolClosureAction(item.next_executable_action ?? item.next_action)
const verifier = publicSecurityToolClosureAction(item.required_verifier)
const sameRunRequired = item.same_run_required_stage_count ?? 0
const sameRunReady = item.same_run_source_stage_ready_count ?? 0
return (
<div
@@ -16974,6 +16983,11 @@ function IwoooSSecurityToolClosureBoard() {
{t('compact.missing')}: {missing}
</span>
</div>
{sameRunRequired > 0 ? (
<span style={{ border: '0.5px solid #d6e1d9', borderRadius: 8, background: '#fff', color: sameRunReady >= sameRunRequired ? '#315f43' : '#9a5d1d', padding: '5px 7px', fontSize: 10, fontWeight: 900, ...textWrap }}>
{t('compact.sameRun')}: {sameRunReady}/{sameRunRequired}
</span>
) : null}
<div style={{ color: '#5f5b52', fontSize: 10.5, lineHeight: 1.35, fontWeight: 800, ...textWrap }}>
{t('compact.action')}: {nextAction}
</div>

View File

@@ -812,6 +812,11 @@ export interface IwoooSSecurityToolClosureQueueItem {
required_signal_count?: number
missing_signal_count?: number
required_verifier?: string
same_run_required_stage_count?: number
same_run_source_stage_ready_count?: number
same_run_closure_candidate_ready_count?: number
incident_response_packet_validation_endpoint?: string
next_gate_after_packet_acceptance?: string
controlled_apply_policy_allowed: boolean
}