Sustainability of EIC software
Each project is assessed against 26 criteria in 6 categories, with levels anchored to observable evidence (rubrics). The goal is comparison across projects and over time, and concrete next steps for each project. Each project page lists its actions by priority.
0Absent1Initial2Established3Sustained
–Not applicable
| Project | Overall | Code health & engineering practices | Code health & engineering practices | Documentation & usability | Documentation & usability | Community & governance | Community & governance | Infrastructure & distribution | Infrastructure & distribution | EIC ecosystem integration | EIC ecosystem integration | Impact & long-term viability | Impact & long-term viability | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| change-control | ci | testing | static-quality | modularity | user | developer | contributing | responsiveness | contributors | bus-factor | governance | conduct | packaging | releases | dependencies | reproducibility | portability | reuse | data-model | environment | currency | license | citation | adoption | support | ||||||||
| ACTS reconstructionupstream | 2.3 | 3 | 3 | 3 | 3 | 3 | 3.0 | 1 | 3 | 2 | 2.0 | 1 | 2 | 2 | 1 | 2 | 1.6 | 2 | 2 | 2 | 2 | 3 | 2.2 | 3 | 3 | 2 | 3 | 2.8 | 2 | 2 | 3 | 2 | 2.2 |
| ROOT analysisupstream | 2.2 | 2 | 1 | 3 | 3 | 2 | 2.2 | 2 | 3 | 2 | 2.3 | 1 | 3 | 2 | 1 | 1 | 1.6 | 3 | 3 | 1 | 2 | 3 | 2.4 | 3 | 3 | 2 | 3 | 2.8 | 1 | 2 | 3 | 2 | 2.0 |
| EDM4hep data-modelupstream | 2.0 | 1 | 2 | 2 | 2 | 3 | 2.0 | 1 | 2 | 1 | 1.3 | 2 | 2 | 2 | 1 | 1 | 1.6 | 3 | 1 | 1 | 2 | 2 | 1.8 | 3 | 3 | 2 | 3 | 2.8 | 2 | 2 | 3 | 2 | 2.2 |
| DD4hep geometryupstream | 1.9 | 1 | 2 | 2 | 1 | 3 | 1.8 | 1 | 3 | 1 | 1.7 | 2 | 3 | 2 | 1 | 1 | 1.8 | 3 | 1 | 1 | 2 | 2 | 1.8 | 3 | 2 | 2 | 2 | 2.2 | 1 | 2 | 3 | 2 | 2.0 |
| podio data-modelupstream | 1.8 | 2 | 1 | 2 | 2 | 3 | 2.0 | 1 | 3 | 2 | 2.0 | 1 | 2 | 1 | 0 | 1 | 1.0 | 3 | 1 | 1 | 1 | 2 | 1.6 | 3 | 3 | 2 | 3 | 2.8 | 1 | 0 | 3 | 1 | 1.2 |
| EIC containers infrastructurecore | 1.8 | 2 | 3 | 1 | 2 | 2 | 2.0 | 1 | 2 | 2 | 1.7 | 1 | 1 | 1 | 0 | 1 | 0.8 | 3 | 1 | 2 | 3 | 3 | 2.4 | 3 | – | 3 | 2 | 2.7 | 0 | 0 | 3 | 1 | 1.0 |
| ePIC geometry geometrycore | 1.7 | 3 | 1 | 2 | 2 | 2 | 2.0 | 1 | 1 | 1 | 1.0 | 1 | 1 | 1 | 1 | 1 | 1.0 | 3 | 1 | 1 | 2 | 2 | 1.8 | 3 | 2 | 2 | 3 | 2.5 | 2 | 1 | 3 | 1 | 1.8 |
| EICrecon reconstructioncore | 1.6 | 1 | 3 | 1 | 2 | 2 | 1.8 | 1 | 1 | 2 | 1.3 | 1 | 1 | 1 | 1 | 1 | 1.0 | 3 | 1 | 1 | 1 | 2 | 1.6 | 1 | 2 | 3 | 2 | 2.0 | 1 | 2 | 3 | 2 | 2.0 |
| Geant4 simulationupstream | 1.6 | 0 | 0 | 1 | 1 | 2 | 0.8 | 1 | 2 | 1 | 1.3 | 1 | 2 | 2 | 2 | 1 | 1.6 | 3 | 2 | 1 | 2 | 2 | 2.0 | 3 | 2 | 2 | 2 | 2.2 | 0 | 1 | 3 | 3 | 1.8 |
| EDM4eic data-modelcore | 1.6 | 3 | 1 | 1 | 0 | 2 | 1.4 | 1 | 2 | 1 | 1.3 | 1 | 2 | 2 | 1 | 0 | 1.2 | 3 | 1 | 1 | 1 | 1 | 1.4 | 1 | 2 | 1 | 3 | 1.8 | 2 | 2 | 3 | 2 | 2.2 |
| Firebird tooling | 1.6 | 2 | 2 | 2 | 1 | 3 | 2.0 | 2 | 1 | 2 | 1.7 | 1 | 1 | 1 | 1 | 1 | 1.0 | 2 | 1 | 1 | 1 | 2 | 1.4 | 2 | 2 | 1 | 2 | 1.8 | 2 | 0 | 3 | 1 | 1.5 |
| JANA2 reconstructioncore | 1.5 | 1 | 2 | 2 | 0 | 2 | 1.4 | 1 | 1 | 1 | 1.0 | 0 | 2 | 0 | 1 | 1 | 0.8 | 3 | 2 | 1 | 1 | 3 | 2.0 | 3 | 2 | 1 | 3 | 2.2 | 1 | 1 | 3 | 2 | 1.8 |
| G4OCCT geometry | 1.4 | 1 | 2 | 3 | 2 | 3 | 2.2 | 1 | 2 | 1 | 1.3 | 2 | 1 | 0 | 1 | 1 | 1.0 | 2 | 2 | 1 | 1 | 1 | 1.4 | 2 | 2 | 1 | 2 | 1.8 | 2 | 0 | 1 | 1 | 1.0 |
| npsim simulationcore | 1.3 | 2 | 2 | 1 | 1 | 1 | 1.4 | 0 | 1 | 1 | 0.7 | 1 | 1 | 1 | 0 | 1 | 0.8 | 3 | 1 | 1 | 1 | 2 | 1.6 | 3 | 2 | 2 | 3 | 2.5 | 0 | 0 | 3 | 1 | 1.0 |
| HEPMC_Merger generatorcore | 1.3 | 3 | 1 | 1 | 0 | 1 | 1.2 | 1 | 1 | 1 | 1.0 | 1 | 1 | 1 | 1 | 1 | 1.0 | 3 | 1 | 1 | 1 | 1 | 1.4 | 3 | 2 | 1 | 2 | 2.0 | 0 | 0 | 3 | 1 | 1.0 |
| algorithms reconstructioncore | 1.3 | 2 | 1 | 0 | 1 | 2 | 1.2 | 0 | 1 | 1 | 0.7 | 1 | 0 | 1 | 1 | 1 | 0.8 | 3 | 1 | 1 | 1 | 1 | 1.4 | 3 | 2 | 1 | 2 | 2.0 | 2 | 0 | 3 | 1 | 1.5 |
| epic-capybara tooling | 1.2 | 1 | 1 | 1 | 0 | 1 | 0.8 | 1 | 1 | 1 | 1.0 | 1 | 1 | 1 | 1 | 1 | 1.0 | 2 | 1 | 1 | 1 | 1 | 1.2 | 3 | 2 | 1 | 2 | 2.0 | 2 | 0 | 3 | 1 | 1.5 |
| eic-smear simulation | 1.2 | 1 | 1 | 0 | 1 | 1 | 0.8 | 1 | 2 | 1 | 1.3 | 1 | 1 | 1 | 1 | 1 | 1.0 | 3 | 1 | 1 | 1 | 1 | 1.4 | 1 | 1 | 1 | 2 | 1.2 | 2 | 0 | 3 | 1 | 1.5 |
| afterburner generatorcore | 1.2 | 3 | 1 | 1 | 0 | 1 | 1.2 | 1 | 1 | 1 | 1.0 | 0 | 1 | 1 | 0 | 1 | 0.6 | 3 | 1 | 1 | 1 | 1 | 1.4 | 1 | 2 | 2 | 2 | 1.8 | 0 | 0 | 3 | 1 | 1.0 |
| IRT (Indirect Ray Tracing) reconstructioncore | 1.1 | 1 | 1 | 0 | 1 | 1 | 0.8 | 1 | 1 | 1 | 1.0 | 1 | 1 | 1 | 0 | 1 | 0.8 | 3 | 1 | 1 | 1 | 1 | 1.4 | 1 | 1 | 1 | 2 | 1.2 | 1 | 0 | 3 | 1 | 1.2 |
| TimeframeBuilder simulation | 1.1 | 1 | 1 | 1 | 0 | 2 | 1.0 | 1 | 1 | 1 | 1.0 | 0 | 1 | 1 | 0 | 1 | 0.6 | 3 | 1 | 1 | 1 | 1 | 1.4 | 1 | 2 | 1 | 2 | 1.5 | 0 | 0 | 3 | 1 | 1.0 |
| eic-shell infrastructurecore | 1.0 | 2 | 1 | 0 | 0 | 0 | 0.6 | 1 | 1 | 1 | 1.0 | 1 | 0 | 1 | 0 | 1 | 0.6 | 1 | 0 | 1 | 2 | 1 | 1.0 | 3 | – | 1 | 2 | 2.0 | 0 | 0 | 3 | 0 | 0.8 |
| epic-analysis analysis | 0.8 | 2 | 1 | 1 | 0 | 1 | 1.0 | 1 | 1 | 1 | 1.0 | 0 | 1 | 1 | 0 | 1 | 0.6 | 1 | 1 | 1 | 1 | 1 | 1.0 | 1 | 1 | 0 | 1 | 0.8 | 1 | 0 | 1 | 0 | 0.5 |
| ai-epic-background simulation | 0.8 | 1 | 1 | 0 | 0 | 1 | 0.6 | 1 | 1 | 1 | 1.0 | 1 | 0 | 0 | 0 | 1 | 0.4 | 1 | 0 | 1 | 1 | 1 | 0.8 | 2 | 1 | 1 | 2 | 1.5 | 1 | 0 | 0 | 0 | 0.2 |
Category score: mean level of the category's applicable criteria. Overall: mean of the category scores. Click a column header to sort; click a cell for the evidence. Data: latest.json.