How backendarchitectx/networksecurity works
Network Security Decision Platform serves versioned threat scoring and manages durable, fenced retraining. Clients submit predictions to the API, which validates and bounds requests before calling the model runtime; administrators submit durable jobs that a separate worker claims, trains, and may promote. Training proceeds through ingestion, validation, transformation, and model selection before staging and fenced promotion. The README documents key reliability capabilities; unsampled modules are represented only where their role or connections are documented or indexed.
Main entry points: training_pipeline.py Training orchestrator · app.py HTTP API · training_worker.py Training worker · model_runtime.py Model runtime
Components 21
Serving plane
- HTTP API
networksecurity/api/app.py - Request admission
networksecurity/api/middleware.py - API contracts
networksecurity/api/contracts.py - Model runtime
networksecurity/services/model_runtime.py
Training control
- Training job store
networksecurity/services/training_jobs.py - Training worker
networksecurity/services/training_worker.py - SQLite job database
Training workflow
- Training orchestrator
networksecurity/pipeline/training_pipeline.py - Data ingestion
networksecurity/components/data_ingestion.py - Data validation
networksecurity/components/data_validation.py - Data transformation
networksecurity/components/data_transformation.py - Model selection
networksecurity/components/model_trainer.py
Model lifecycle
- Immutable model registry
networksecurity/services/model_registry.py - Schema registry
networksecurity/services/schema_registry.py
Shared foundations
- Training artifacts
networksecurity/entity/artifact_entity.py - Runtime settings
networksecurity/config/runtime.py
Other components
- Prediction client
- Administrator
- Prometheus metrics
- MongoDB source
- S3 mirror
Connections 24
- Prediction client → HTTP API: submits predictions
README.md - Administrator → HTTP API: submits jobs
README.md - HTTP API → Request admission: admits requests
networksecurity/api/app.py - HTTP API → API contracts: uses contracts
networksecurity/api/app.py - HTTP API → Model runtime: requests inference
networksecurity/api/app.py - HTTP API → Training job store: submits and reads jobs
networksecurity/api/app.py - HTTP API → Prometheus metrics: exports metrics
README.md - Training job store → SQLite job database: persists jobs
networksecurity/services/training_jobs.py - Training worker → Training job store: claims and updates
networksecurity/services/training_worker.py - Training worker → Training orchestrator: runs training
networksecurity/services/training_worker.py - Training worker → Immutable model registry: checks fence
networksecurity/services/training_worker.py - MongoDB source → Data ingestion: provides records
networksecurity/components/data_ingestion.py - Training orchestrator → Data ingestion: starts ingestion
networksecurity/pipeline/training_pipeline.py - Training orchestrator → Data validation: starts validation
networksecurity/pipeline/training_pipeline.py - Training orchestrator → Data transformation: transforms data
README.md - Training orchestrator → Model selection: selects model
README.md - Training orchestrator → Immutable model registry: stages and promotes
networksecurity/pipeline/training_pipeline.py - Training orchestrator → Schema registry: loads schema
networksecurity/pipeline/training_pipeline.py - Training orchestrator → S3 mirror: mirrors after promotion
networksecurity/pipeline/training_pipeline.py - Model runtime → Immutable model registry: loads model bundles
networksecurity/services/model_runtime.py - Model runtime → Schema registry: checks compatibility
networksecurity/services/model_runtime.py - HTTP API → Runtime settings: configures service
networksecurity/api/app.py - Training worker → Runtime settings: configures worker
networksecurity/services/training_worker.py - Training orchestrator → Training artifacts: passes stage results
networksecurity/pipeline/training_pipeline.py