-
-
Landing page - how we solved?
-
The Impact - Calculated with real data
-
2D Game - for everyone to understand agents working
-
Game with all inputs and real time commands
-
Dashboard - Live Process pipeline
-
Summary with data distributed
-
Datahub Dashboard - real time data with working
-
Datahub working with datasets
-
Datahub each hospital data - details filtered
-
Agent live working
-
Agent Live Work Trace - based on custom input commands
-
Live data detection with maps - all by agent
Inspiration
Not a pitch deck — a late-night note about silent failures.
I kept hearing the same nightmare:
🏥 hospital renames ONE lab column
│
▼
🤖 sepsis model never gets the memo
│
▼
💚 dashboards stay green for months
│
▼
⚠️ patient risk scores quietly drift (~18 months… ~10% of patients)
DataHub already knew the lineage. The graph was sitting there. We just weren’t listening hard enough.
So Clinical Model Guardian exists to say:
- 💳 clinical AI deserves the same paranoia we give payment systems
- 🔍 agents should read schemas, not guess
- 🗣️ alerts should sound human
- 🎮 ops need a way to see the hospital network syncing
I’m not a clinician. I just refuse “silent failure” as an architecture.
What it does
Clinical Model Guardian watches the Sepsis Risk Model lineage in DataHub and catches problems in minutes, not months.
| ❌ Without CMG | ✅ With CMG |
|---|---|
| Schema drift invisible | Lineage polled ~every 45s → alerts fire |
| Lineage stuck in docs | Live chain you can click + query |
| No compliance story | Immutable audit log |
| Ops learn too late | Voice agents + hospital network + 2D game |
Core path
lab_results → sepsis_model_input → Sepsis Risk Model v2
(Epic Beaker) (feature store) (model serving)
Surfaces
| Surface | What you get |
|---|---|
| 📊 Dashboard | Lineage, simulate drift, clinical alerts, audit log |
| 🗂️ DataHub Ops | DBs, migrations, impact map, click-to-ask bot 💬 |
| 🤖 Agent Workspace | Voice/text commands + multi-agent live work trace |
| 🎮 2D Visualizer ⭐ | Minecraft-style hospital command center |
🎮 The game (signature wow)
🏥 AIIMS ──┐
🏥 Apollo ─┼──► 📡 DataHub Central ◄── 🤖 Guardian Agents
🏥 Fortis ─┤ ▲
🏥 Max ────┤ 📦 packets · ⚠️ drift · 🎙️ voice
🏥 Medanta ┘
Commands like trigger drift → send agent → show lineage hit real APIs, not fake UI.
How we built it
| Layer | Stack | Why |
|---|---|---|
| 🎨 Frontend | React 19 · Vite · Tailwind · Leaflet | Fast UI + map + game |
| ⚙️ Backend | Node · Express · SSE | Real-time agent/hospital stream |
| 🗂️ Context | DataHub GMS GraphQL (+ embedded GMS) | Lineage = source of truth |
| 🧠 LLM | OpenRouter (Gemini Flash) | Plain-English clinical alerts |
Flow
🏥 Hospital / lab feeds
│
▼
🗂️ DataHub GMS (lineage + schemas)
│
▼
⚙️ Express API ──SSE──► 🎨 React
│ ├ 📊 Dashboard
│ ├ 🗂️ Ops
│ ├ 🤖 Agents
│ └ 🎮 Game ★
▼
🧠 OpenRouter (alerts + agent polish)
Simulate change → ingest → schema diff → alert → audit → agent resolve. Voice via Web Speech. Same /api powers the game and the workspace.
Challenges we ran into
| Challenge | What we did |
|---|---|
| 🐳 No full Docker DataHub on every machine | Hybrid live APIs + embedded GMS shim |
| 🎭 “Is this real or mock?” | Stayed honest: core lineage path real; catalog sizes illustrative |
| 🎮 Game that isn’t just cosmetics | Wired commands to /api/simulate-change, /api/lineage, etc. |
| ☁️ Monorepo deploy | Render API + Vercel frontend + VITE_API_URL |
Also: voice + SSE + multi-agent traces + migrations in one demo loop = more late nights than expected ☕
Accomplishments that we're proud of
- 🛡️ A guardian that actually watches sepsis lineage, not just documents it
- 🎮 A playable 2D hospital + agent command center (the signature surface)
- 💭 Landing “why I started” typed as live code
- 🧭 Guided demo tour: Dashboard → DataHub → Agent → Game
- 🔍 Live agent work traces (command → intent → DataHub → response)
- ⚡ End-to-end wow loop: simulate → alert → agent → visualizer
What we learned
lineage without a watcher → just documentation
graphs ops can’t see → get ignored
agents that only chat → theater
agents that call tools → useful
silent failure → an architecture choice we refuse ❌
Clinical ML needs the same paranoia as payments — and sometimes a little game energy so people actually look at the graph 👀
What's next for Clinical Model Guardian
| Next | Goal |
|---|---|
| 📦 Official DataHub healthcare sample | Full GMS ingest (not just reference) |
| 🔐 Hardened deploy | Always-on API, real auth, less hybrid |
| ⚠️ More drift scenarios | Renames, type changes, stale feeds, multi-hospital |
| 🏥 Real ML-team path | Something a health-system team could run beside sepsis models |
Destination:
🏥 hospitals → 🗂️ DataHub → 🤖 loud agents → 🎮 visible ops → 💚 safer patients
Built With
- datahub
- express.js
- javascript
- leaflet.js
- node.js
- openrouter
- react
- server-sent-events
- tailwind-css
- vite
Log in or sign up for Devpost to join the conversation.