ET AI Hackathon 2026 · Problem Statement 1
India's plants don't lack safety data — they lack the layer that connects it. At Visakhapatnam Steel Plant (June 2026, 8 dead), a veteran foreman's warnings went unacted. At LG Polymers (2020, 12 dead), the tank alarms didn't function. At Bhilai (2018, 13 dead), a gas pipeline blast during maintenance. The pattern is never "no data" — it's "nothing connected the data."
SENTINEL fuses gas sensors, permit-to-work logs, maintenance records, CCTV events, and shift patterns into a single compound-risk picture — and escalates hours before any individual sensor crosses its alarm threshold.
- Compound Risk Detection — deterministic hazard rules (grounded in Ministry of Steel SG-28/SG-39 and Factories Act norms) + statistical signal analysis + cross-zone propagation produce a continuous 0–100 risk score per plant zone. The dangerous combinations — hot work near a rising CO trend while the local detector is maintenance-isolated during shift changeover — are caught when every individual reading still looks green.
- Sensor-health discrimination — a drifting electrochemical cell and a real gas rise look identical to a threshold alarm. SENTINEL cross-corroborates channels (sibling CO cells, %LEL, gas-main pressure) and routes "sensor dying" to maintenance instead of crying wolf — attacking alert fatigue, the reason real plants ignore alarms.
- Regulatory citations in every alert — clause-level retrieval over real Indian standards (Ministry of Steel SG guidelines, Factories Act, BIS). Alerts cite the actual SG-28 clause they enforce.
- Emergency Response Orchestrator — CRITICAL alerts activate an ordered response playbook (evacuation by zone adjacency, notification fan-out per Factories Act §40B/§45, SG-28 isolation/purge actions) and auto-draft a preliminary incident report with timeline, contributing factors, and CAPA.
- Honest evaluation — scenario suite with negative controls measuring false-negative rate, false-positive rate, and detection lead time against the single-sensor baseline plants have today (
backend/app/eval/). - Alert lifecycle & audit trail — ack/assign/shelve/resolve with escalate-on-no-ack (ISA-18.2-shaped), RBAC across operator / safety-officer / admin, and every action written to a durable append-only audit log.
- Operator self-monitoring — live heartbeat and dead-man detector on the dashboard, so a silently stalled backend is visible rather than mistaken for "all quiet".
- Site-calibrated thresholds under change control — safety setpoints are a versioned, approval-gated artifact, not a value buried in code.
- Multi-plant fleet view — N independent plant replays monitored side by side.
- Multilingual worker safety cards — alert summaries in Hindi, Telugu, and Odia for shop-floor use.
- Real CV on synthetic CCTV frames — actual OpenCV person / PPE / haze detection on rendered frames (no real camera footage in this build — scoped honestly).
- Safety knowledge graph — zones, sensors, hazard rules, and the regulations that ground them — assembled from data already verified in-code, explicitly not P&ID-derived.
- Regulatory grounding is real: Ministry of Steel SG-28 / SG-39, Factories Act 1948, BIS IS/IEC gas-detector standards.
- Simulator physics are cited: coke-oven gas composition (Thermopedia / ACCCI), sensor T90 response (IS/IEC 60079-29), thresholds (Factories Act Schedule II TWA 50 ppm; NIOSH REL 35 / ceiling 200 / IDLH 1200 ppm), permit categories (SG-28), shift rules (Factories Act §§51–59).
- Scenario sequences are simulated — labeled standards-grounded composites informed by documented incidents. We never claim to replay a specific incident.
Plant digital twin streams sensor / permit / maintenance / CCTV / shift events into a three-layer compound risk engine (signal health → hazard rules → scored fusion). That feeds the control-room dashboard, clause-cited alerts, and response playbooks.
A real deployment swaps the simulator for OPC-UA / historian adapters — the fusion layer is source-agnostic by contract (backend/app/contracts.py). Measured throughput: ~28,700 events/s single-process (scripts/benchmark_throughput.py).
Cold start → early compound signal → critical escalates with evidence and a draft incident report.
More frames in docs/screenshots/.
| Check | Where | Result |
|---|---|---|
| Eval vs single-sensor baseline (5 scenarios × 5 seeds + negative controls) | python -m app.eval.run |
~4.5 h lead on the compound scenario; baseline false-alarms on drift, SENTINEL doesn't |
| Adversarial red team (10 held-out scenarios) | python -m app.eval.redteam |
Failures reported, fixed, re-verified |
| Ablation (does each fusion layer earn its place?) | python -m app.eval.ablation |
Only the full 3-layer engine hits full detection with zero FP on negatives |
| CI (11 backend suites + frontend build) | .github/workflows/ci.yml |
fusion · RAG · API · audit · auth · config · CV · heartbeat · lifecycle · KG |
# Backend (Python 3.11+)
cd backend
python3 -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
python3 -m app.eval.run # reproduce the evaluation numbers
uvicorn app.api.main:app --port 8300
# Frontend
cd ../frontend
npm install && npm run dev # dashboard on http://localhost:5173No API keys required — everything runs offline. Setting ANTHROPIC_API_KEY optionally enables richer alert narratives, citation reranking, and polished incident reports (all failure-isolated with deterministic fallbacks).
| Path | What |
|---|---|
backend/app/simulator/ |
Plant digital twin: sensor physics, fault modes, scenario suite with ground truth |
backend/app/fusion/ |
Compound Risk Detection Engine |
backend/app/rag/ |
Clause-level regulatory retrieval |
backend/app/api/ |
FastAPI + websocket replay, lifecycle, audit, auth/RBAC, config/MOC, heartbeat |
backend/app/orchestrator/ |
Response playbooks + incident report generation |
backend/app/eval/ |
Evaluation, red-team, and ablation harnesses |
backend/app/cv/ |
OpenCV detection on synthetically rendered CCTV frames |
backend/app/kg/ |
Safety knowledge graph (zones, sensors, rules, regulations) |
frontend/ |
Control-room dashboard (React + Vite): risk map, fleet view, evidence panel |
Built during the ET AI Hackathon 2026 Phase 2 window (22 June – 22 July 2026). AI-assisted development is disclosed; architecture, domain research, integrity rules, and evaluation design are the team's.







