Scenario: Register to Promote
This scenario exercises ModelRegistry, ModelCompatibilityAnalyzer, MergeEngine, MergeValidation, EvaluationEngine, BenchmarkEngine, and DeploymentManager in sequence.Scenario: Evolution Run
- Seed population with 4 registered models.
- Start EvolutionEngine with NSGA-II (Deb et al. 2002).
- CandidateGenerator produces offspring via crossover and mutation.
- MergeEngine executes merges for each offspring.
- EvaluationEngine runs benchmarks on each candidate.
- FitnessEngine computes multi-objective fitness.
- Selection reduces population to configured size.
- Loop until max generations or convergence.
- Archive final population in ExperimentTracker.
Scenario: Offline Pack and Deploy
- Register a model with
emep model register. - Run
emep offline packto produce a self-contained package. - Transfer package to air-gapped environment.
- Load package via DeploymentManager.
- Validate inference with InferenceBackend.
- Promote to DEPLOYED.
Test Data
Integration tests use a curated set of small models and datasets stored in ArtifactStore. Model sizes are kept small to fit CI runners. Datasets use the Optimization Set split only; the Hidden Test Set is never used in integration tests.Backend Matrix
Failure Injection in Integration Tests
Selected integration tests inject controlled failures:- Kill MergeEngine mid-merge and verify ArtifactStore cleanup.
- Drop network to ModelRegistry and verify retry with exponential backoff.
- Corrupt a checkpoint file and verify ModelLoader error handling.
Integration Points
- CI: integration tests run on every commit and nightly.
- ExperimentTracker: each scenario is logged as an experiment.
- ArtifactStore: stores test outputs, logs, and failure artifacts.
- Performance Testing: selected scenarios also collect latency and memory metrics. See Performance Testing.