How casolin/sagx works
SagX is an enterprise mission-management platform: users authenticate and work through role-gated workflows for missions, machines, alerts, and materials, with collaboration and operational status updates. The browser client communicates with the server over HTTP and sockets; the README documents live chat, calls, and screen sharing. The graph includes those documented capabilities, but sampled evidence does not expose all route and socket wiring, so some cross-system links are unverified. AI assignment is visible in the machine controller; the AI and reporting modules are represented without guessed internal links.
Main entry points: App.tsx Client application · mission.controller.ts Mission workflows · machine.controller.ts Machine workflows · socket.service.ts Socket client
Components 22
Web client
- Client application
client/src/App.tsx - Role-gated routes
client/src/routes/AppRouter.tsx - Client auth state
client/src/context/AuthContext.tsx - Socket client
client/src/services/socket.service.ts - Call interface
client/src/pages/CallPage.tsx
Operations workflows
- Mission workflows
server/src/modules/missions/mission.controller.ts - Mission rules
server/src/modules/missions/mission.service.ts - Machine workflows
server/src/modules/machines/machine.controller.ts - Material inventory
server/src/modules/materials/material.service.ts - Alert handling
server/src/modules/alert/alert.controller.ts - AI assignment
ai/assignment/solver.py
Collaboration
- Chat messaging
server/src/modules/message/message.controller.ts - Chat rooms
server/src/modules/room/room.controller.ts - Call signaling
server/src/sockets/call.socket.ts - Socket event service
server/src/sockets/socket.service.ts
Identity and insights
- Authentication
server/src/modules/auth/auth.service.ts - Two-factor auth
server/src/services/twoFactor.service.ts - User accounts
server/src/modules/users/user.model.ts - Operational KPIs
server/src/modules/kpi/kpi.service.ts - Notifications
server/src/modules/notification/notification.service.ts - Report generation
ai/rapport/generateRapport.py
Other components
- Staff users
Connections 24
- Staff users → Client application: uses
- Client application → Role-gated routes: renders
client/src/App.tsx - Client application → Socket client: initializes
client/src/App.tsx - Client application → Call interface: displays
client/src/App.tsx - Role-gated routes → Staff users: gates access
client/src/routes/AppRouter.tsx - Client application → Client auth state: reads auth
client/src/App.tsx - Client auth state → Socket client: initializes session
client/src/context/AuthContext.tsx - Socket client → Call signaling: signals calls
- Socket client → Socket event service: exchanges events
- Mission workflows → Mission rules: calls
server/src/modules/missions/mission.controller.ts - Mission workflows → Material inventory: consumes materials
server/src/modules/missions/mission.controller.ts - Machine workflows → Material inventory: resolves materials
server/src/modules/machines/machine.controller.ts - Machine workflows → Mission rules: creates mission
server/src/modules/machines/machine.controller.ts - Machine workflows → AI assignment: requests assignment
server/src/modules/machines/machine.controller.ts - Mission workflows → Operational KPIs: broadcasts updates
server/src/modules/missions/mission.controller.ts - Machine workflows → Operational KPIs: broadcasts updates
server/src/modules/machines/machine.controller.ts - Mission workflows → Notifications: creates notices
server/src/modules/missions/mission.controller.ts - Chat messaging → Notifications: creates notices
server/src/modules/message/message.controller.ts - Chat rooms → Notifications: creates notices
server/src/modules/room/room.controller.ts - Authentication → User accounts: reads accounts
server/src/modules/auth/auth.service.ts - Authentication → Two-factor auth: uses
server/src/modules/auth/auth.service.ts - Staff users → Chat messaging: collaborates
- Staff users → Call signaling: starts calls
- Staff users → Mission workflows: manages work