1. 01 jan., 2026 1 validation
    • Hamadou Ba's avatar
      Correction bug calcul L total (nombre moyen de clients) · f1fb7ecd
      Hamadou Ba a écrit
      Problèmes corrigés:
      1. average_customers_in_system était toujours 0 (non calculé)
      2. Comparaison utilisait γ₀ au lieu de λ₀ (erreur 101%)
      
      Modifications:
      - simulation.py: Ajout calcul L = λ₀ × W (Loi de Little)
      - jackson.py: Ajout champ external_arrival_rate (λ₀)
      - comparison.py: Utilisation de λ₀ au lieu de γ₀ pour L total
      - analytics.py: Mise à jour API response model
      - simulation.ts: Ajout external_arrival_rate dans types
      f1fb7ecd
  2. 31 déc., 2025 1 validation
    • Hamadou Ba's avatar
      feat: Phase 5 - Backend API implementation · 0190fc49
      Hamadou Ba a écrit
      Complete REST API with FastAPI for simulation, scenarios, and analytics
      
      API Endpoints - Simulation (/api/simulation):
      - POST /start: Start new simulation with custom config
        - Accepts SimulationConfigModel (Pydantic validation)
        - Returns session_id for result retrieval
        - Runs simulation synchronously
      
      - GET /results/{session_id}: Get simulation results
        - Returns complete SimulationResultsModel
        - Includes coordinator and server statistics
        - Stability assessment
      
      - DELETE /results/{session_id}: Clean up session
      - GET /sessions: List all active sessions
      
      API Endpoints - Scenarios (/api/scenarios):
      - GET /: List all 5 predefined scenarios
        - Returns scenario metadata (id, name, description)
      
      - GET /{scenario_id}: Get scenario configuration
        - Returns full SimulationConfigModel
        - Ready to use or modify
      
      - GET /scenario_5/variations: Get parameter sensitivity variations
        - Returns all variations for scenario 5
      
      - POST /{scenario_id}/run: Execute predefined scenario
        - Runs scenario and stores results
        - Returns session_id for retrieval
      
      API Endpoints - Analytics (/api/analytics):
      - POST /jackson: Analyze with Jackson's theorem
        - Input: SimulationConfigModel
        - Output: Analytical results (L, W, ρ, stability)
        - No simulation required
      
      - GET /compare/{session_id}: Compare analytical vs simulation
        - Requires existing simulation session
        - Returns detailed comparison with percentage differences
        - Per-queue and system-wide metrics
      
      - POST /stability: Quick stability check
        - Input: Configuration
        - Output: Stability conditions for all queues
        - Utilization calculations
      
      Architecture:
      - Modular router design (simulation, scenarios, analytics)
      - Pydantic models for validation and serialization
      - In-memory session storage (could use Redis in production)
      - Comprehensive error handling
      - CORS enabled for frontend integration
      
      Testing:
      - test_api.py: Complete API test suite
        - Tests all endpoints
        - End-to-end workflow
        - Includes examples of usage
      
      Documentation:
      - Auto-generated OpenAPI docs at /docs
      - ReDoc documentation at /redoc
      - Comprehensive endpoint descriptions
      
      Features:
      - Type-safe API with Pydantic validation
      - Automatic request/response serialization
      - Built-in API documentation
      - CORS support for React frontend
      - Session management for results
      
      Phase 5 Complete ✓
      Next: Phase 6 - Frontend React dashboard
      0190fc49
  3. 30 déc., 2025 1 validation
    • Hamadou Ba's avatar
      feat: Phase 1 - Project setup and infrastructure · 5568088c
      Hamadou Ba a écrit
      Initialize Turborepo monorepo with Python backend and React frontend
      
      - Setup Turborepo configuration with workspaces
      - Configure Python FastAPI backend
        - Create project structure (core, analytics, api, models)
        - Add requirements.txt with FastAPI, Uvicorn, Pydantic, etc.
        - Basic FastAPI app with health endpoints
        - CORS middleware for frontend integration
      - Configure React + TypeScript + Vite frontend
        - Install dependencies (Chart.js, D3.js, Zustand, Axios)
        - Setup Tailwind CSS with PostCSS
        - Create component directory structure
        - Basic landing page with Tailwind styling
      - Add comprehensive README files
      - Configure .gitignore for Python and Node.js
      
      Phase 1 Complete ✓
      Next: Phase 2 - Core simulation engine implementation
      5568088c