Date: February 13, 2026 Project: FoodProject SOC Platform (Wazuh + Shuffle + IRIS-web + SOC Integrator)
The MVP platform is operational and running end-to-end in the lab environment. Core integrations are in place:
All major containers are currently up, and key health checks are passing.
run-combined-stack.sh)up, down, logs, status, helpwazuh, iris, shuffle, pagerduty, integrator)soc-status.sh)POST /mvp/incidents/ingestPOST /mvp/ioc/evaluatePOST /mvp/vpn/evaluateGET /mvp/config/policiesPUT /mvp/config/policiesGET /mvp/health/dependenciessoc-integrator-db)scripts/send-wazuh-test-events.shREADME.md.gitignoreCurrent stack status: UP
Healthy/available components:
Endpoint checks:
/health: OK@startuml
title FoodProject SOC Platform - System Architecture (MVP)
skinparam componentStyle rectangle
actor "Analyst" as analyst
cloud "External Log Sources" as logs
rectangle "SOC Shared Docker Network" {
node "Wazuh Stack" as wazuh {
component "Wazuh Manager" as wazuh_mgr
component "Wazuh Indexer" as wazuh_idx
component "Wazuh Dashboard" as wazuh_dash
}
node "Shuffle Stack" as shuffle {
component "Shuffle Frontend" as shuf_fe
component "Shuffle Backend" as shuf_be
component "Shuffle Orborus" as shuf_orb
component "Shuffle OpenSearch" as shuf_os
}
node "IRIS-web Stack" as iris {
component "IRIS Web App" as iris_app
database "IRIS DB" as iris_db
component "IRIS RabbitMQ" as iris_mq
}
node "SOC Integrator Stack" as integ {
component "soc-integrator API" as soc_api
database "soc-integrator-db" as soc_db
}
component "PagerDuty Stub" as pd_stub
}
logs --> wazuh_mgr : Security events
wazuh_mgr --> wazuh_idx : Index alerts
analyst --> wazuh_dash : Investigate alerts
wazuh_dash --> wazuh_idx : Query data
wazuh_mgr --> soc_api : Alert/incident input
soc_api --> soc_db : Persist incidents\npolicies\naudit
soc_api --> iris_app : Create/update cases
soc_api --> pd_stub : Escalation (MVP)
soc_api --> shuf_be : Trigger automation
shuf_fe --> shuf_be : UI/API
shuf_be --> shuf_os : Read/write workflow data
shuf_orb --> shuf_be : Execution queue polling
shuf_orb --> shuf_os : Workflow state interactions
iris_app --> iris_db : Case data
iris_app --> iris_mq : Async jobs
@enduml
Fine-tune Wazuh rules/decoders for customer log patterns and false-positive reduction
Use-case calibration
Validate risk/severity mapping per approved use cases
Tune exception list and threshold logic (especially VPN geo anomaly)
UAT evidence package
Capture deterministic UAT scenarios and outputs for:
Production hardening items
Rotate default/local secrets used in lab config
Lock down internal API keys and access boundaries
Next milestone: MVP UAT Completion
Target outputs: