How sahinurrahman-debug/missionsync works
MissionSync is a prototype live emergency-drill operations board. Net control enters field reports or views the shared picture; the backend parses and merges reports, assesses terrain and urgency, ranks incidents, recommends capability-matched unit deployments, and publishes snapshots to the dashboard. The simulator supplies evolving scenarios and xBD-derived evaluation truth. The graph reflects the documented pipeline and sampled API wiring; persistence, authentication, and other planned production capabilities are not shown as implemented.
Main entry points: orchestrator.py Pipeline orchestrator · llm.py LLM client · App.tsx Live board · main.py FastAPI app
Components 17
Dashboard
- Live board
frontend/src/App.tsx
API and delivery
- FastAPI app
backend/missionsync/main.py - Snapshot hub
backend/missionsync/main.py
Operations pipeline
- Pipeline orchestrator
backend/missionsync/orchestrator.py - World state
backend/missionsync/models.py
Agents and scenarios
- Report parsing
backend/missionsync/agents.py - Terrain assessment
backend/missionsync/agents.py - Urgency scoring
backend/missionsync/agents.py - Unit matching
backend/missionsync/agents.py - Recommendations
backend/missionsync/agents.py - LLM client
backend/missionsync/llm.py - Scenario simulator
backend/missionsync/simulator.py - xBD loader
backend/missionsync/xbd.py
Other components
- Drill user
- Map tiles
- Groq API
- Kaggle dataset
Connections 24
- Drill user → Live board: uses
- Live board → FastAPI app: submits reports
- FastAPI app → Pipeline orchestrator: injects report
- FastAPI app → Snapshot hub: joins WebSocket
- Snapshot hub → Pipeline orchestrator: reads snapshots
- Pipeline orchestrator → Snapshot hub: broadcasts snapshots
- Live board → FastAPI app: receives snapshots
- Live board → Map tiles: loads tiles
- Pipeline orchestrator → Scenario simulator: advances scenario
- Scenario simulator → xBD loader: loads seed records
- xBD loader → Kaggle dataset: downloads annotations
- Pipeline orchestrator → Report parsing: parses signals
- Pipeline orchestrator → World state: updates incidents
- Pipeline orchestrator → Terrain assessment: assesses terrain
- Pipeline orchestrator → Urgency scoring: scores incidents
- Terrain assessment → Urgency scoring: supplies assessment
- Pipeline orchestrator → Unit matching: matches units
- Pipeline orchestrator → Recommendations: builds recommendations
- Report parsing → LLM client: requests JSON
- Terrain assessment → LLM client: requests JSON
- Urgency scoring → LLM client: requests JSON
- Unit matching → LLM client: requests JSON
- Recommendations → LLM client: requests JSON
- LLM client → Groq API: calls model