Registro público
Informe de salud del softwareesquema 0.27.0 · métricas 2.5.0 · 2026-07-30 17:18 UTC

Open-Systems-Pharmacology / PK-Sim

PK-Sim® is a comprehensive software tool for whole-body physiologically based pharmacokinetic modeling

C#Licencia propia★ 169 estrellas⑂ 66 forksdesde feb 2017Ver en GitHub ↗

Open-Systems-Pharmacology/PK-Sim tiene un índice de salud de 81 sobre 100, lo que lo sitúa en la banda Excelente. Su puntuación más alta es Vitality (90/100) y la más baja, Community & Adoption (53/100). Se actualizó por última vez hoy. 2 personas concentran la mayor parte del trabajo reciente.

81
global / 100
Excelente

Índice de salud del software

Las métricas se agrupan en categorías ponderadas sobre una escala estandarizada de 1 a 100. El resultado global parte de su media ponderada, calibrada contra la distribución del registro público para que las bandas tengan significado percentil; cuando la evidencia pública activa la Política de Jurisdicciones de Alto Riesgo, la calificación se ajusta y recibe un límite «En riesgo» de 34.

81
Excepcional93-100El nivel más alto del registro (≈ el 5% superior); cumple prácticamente todos los criterios evaluados
Excelente80-92Sólido en todos los frentes; carencias menores
Bueno65-79Saludable; carencias limitadas y manejables
Moderado50-64Aceptable con carencias notables; se recomienda revisión
Débil35-49Debilidades sustanciales en varias áreas
En riesgo20-34Debilidades significativas; su adopción exige cautela
Crítico1-19Problemas graves (proyecto abandonado, un solo mantenedor, sin higiene)
VitalidadComunidad yAdopciónSostenibilidady GobernanzaCalidad deIngenieríaSeguridadPreparaciónpara IA

Perfil de puntuación

Cada eje es una categoría. La forma importa más que la media: un proyecto sano llena toda la figura, mientras que un perfil de picos y cráteres indica que la fortaleza en una dimensión enmascara el riesgo en otra.

El resultado global ponderado 69 se calibra a 81 en la escala publicada del índice (calibración del registro 2026-08-02).

Titularidad

332 seguidores401 repositorios públicosdesde ene 2017

Este repositorio está respaldado por una organización: una custodia compartida y responsable que puede sobrevivir a cualquier mantenedor individual.

Métricas por categoría

Vitalidad

¿Está vivo el proyecto: se escribe código y se publican versiones?

90Excelente · 21% del índice global
Cómo se puntúa
36/36Recencia de push — último push hace 0 días
34.6/36Cadencia de commits — 50/52 semanas con commits
18/18Volumen de commits — 525 commits en el último año
10/10OpenSSF Scorecard: Maintained — 30 commit(s) and 20 issue activity found in the last 90 days -- score normalized to 10
Datos de entrada utilizados
commits_last_year525
human_commit_share1
days_since_last_push0
active_weeks_last_year50
Cómo se puntúa
27/27Publica versiones — 19 versiones publicadas
36/36Recencia de las versiones — última versión hace 23 días
12.6/27Cadencia de publicación — una versión cada ~188,9 días
0/10OpenSSF Scorecard: Signed-Releases — Project has not signed or included provenance with any releases.
Datos de entrada utilizados
releases_count19
latest_release_tagv12.3.173
releases_from_tagsno
days_since_latest_release23
mean_days_between_releases188,9

Comunidad y Adopción

¿Tiene el proyecto usuarios, descargas, atención y unas condiciones acogedoras para quienes contribuyen?

53Moderado · 17% del índice global
Cómo se puntúa
36.1/60Estrellas — 169 estrellas
15.1/25Forks — 66 forks
3.9/15Observadores — 6 observadores
Datos de entrada utilizados
forks66
stars169
watchers6
growth_stateunverified
growth_factor_pct100
growth_unverified_reasonno_history
Cómo se puntúa
22.5/22.5README
16.9/22.5Licencia — archivo de licencia presente, no es una licencia reconocida
0/18Guía CONTRIBUTING
0/13.5Código de conducta
0/7.2Plantilla de issues
6.3/6.3Plantilla de PR
Datos de entrada utilizados
has_readme
has_license
readme_badges
has_contributingno
has_issue_templateno
has_code_of_conductno
readme_badge_services
has_pull_request_template

Sostenibilidad y Gobernanza

¿Sobrevivirá el proyecto a sus personas: factor bus, capacidad de respuesta, quién lo respalda y mantenimiento del paquete?

71Bueno · 23% del índice global
Cómo se puntúa
25.2/54Factor bus — la mitad de los commits recae en 2 contribuyente(s)
11.6/22.5Distribución de commits — el principal contribuyente firma el 49% de los commits
13.5/13.5Amplitud de contribuyentes — 10 contribuyentes
10/10OpenSSF Scorecard: Contributors — project has 4 contributing companies or organizations
Datos de entrada utilizados
bus_factor2
contributors_sampled10
top_contributor_share0,486
Cómo se puntúa
33.3/42Resolución de issues — 79% de issues cerradas
28.3/30Aceptación de PR — 1218/1292 PR decididos fusionados
0/13Newcomer PR acceptance — ningún PR de un contribuyente primerizo decidido en 30 d
10.5/15OpenSSF Scorecard: Code-Review — Found 16/22 approved changesets -- score normalized to 7
Datos de entrada utilizados
merged_prs1218
open_issues459
closed_issues1757
prs_merged_7d
prs_decided_7d
prs_merged_30d
prs_decided_30d
issue_closed_ratio0,793
closed_unmerged_prs74
first_time_authors_30d
first_time_prs_merged_30d
first_time_prs_decided_30d
Excluidos de la puntuación (sin datos o no aplicable): newcomer_pr_acceptance. Los pesos restantes se han renormalizado.
Cómo se puntúa
30/30Respaldo de la propiedad — propiedad de una organización
0/20Dominio verificado
18.1/25Alcance del propietario — 332 seguidores de Open-Systems-Pharmacology
25/25Trayectoria — 401 repos públicos, cuenta de ~9 años
Datos de entrada utilizados
followers332
owner_typeOrganization
is_verified
owner_loginOpen-Systems-Pharmacology
public_repos401
account_age_days3485

Calidad de Ingeniería

¿Existen unas prácticas mínimas de ingeniería y documentación?

74Bueno · 19% del índice global
Cómo se puntúa
24/24Flujos de trabajo de CI — 6 flujo(s) de trabajo
24/24Pruebas presentes
0/16Configuración de linter
0/9.6Hooks de pre-commit
0/6.4.editorconfig
18/20OpenSSF Scorecard: CI-Tests — 20 out of 21 merged PRs checked by a CI test -- score normalized to 9
Datos de entrada utilizados
has_ci
has_tests
has_editorconfigno
has_linter_configno
has_precommit_configno

Documentación

85Excelente
Cómo se puntúa
30/30README
25/25Directorio de documentación
0/15Sitio de documentación / página del proyecto
10/10Descripción del repositorio
10/10Topics — 2 topics
10/10Wiki
Datos de entrada utilizados
topicspk-sim, suite-components
has_wiki
homepage
has_readme
has_docs_dir
has_description

Seguridad

¿Son sólidas las prácticas visibles de seguridad y de cadena de suministro, sin exposición jurisdiccional de alto riesgo sin resolver?

56Moderado · 16% del índice global
Cómo se puntúa
6/7.5Binary-Artifacts — binaries present in source code
4.5/7.5Branch-Protection — branch protection is not maximal on development and all release branches
2.2/2.5CI-Tests — 20 out of 21 merged PRs checked by a CI test -- score normalized to 9
0/2.5CII-Best-Practices — no effort to earn an OpenSSF best practices badge detected
5.2/7.5Code-Review — Found 16/22 approved changesets -- score normalized to 7
2.5/2.5Contributors — project has 4 contributing companies or organizations
10/10Dangerous-Workflow — no dangerous workflow patterns detected
0/7.5Dependency-Update-Tool — no update tool detected
0/5Fuzzing — project is not fuzzed
2.2/2.5Licencia — license file detected
7.5/7.5Maintained — 30 commit(s) and 20 issue activity found in the last 90 days -- score normalized to 10
5/5Packaging — packaging workflow detected
0/5Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
4/5SAST — SAST tool is not run on all commits -- score normalized to 8
0/5Security-Policy — security policy file not detected
0/7.5Signed-Releases — Project has not signed or included provenance with any releases.
0/7.5Token-Permissions — detected GitHub workflow tokens with excessive permissions
7.5/7.5Vulnerabilities — 0 existing vulnerabilities detected
Datos de entrada utilizados
sourceopenssf_scorecard
checks_evaluated18
scorecard_versionv5.5.0
checks_inconclusive0
scorecard_aggregate5,4
Cómo se puntúa
14/35Dependencias directas libres de avisos conocidos — 1 afectados: Newtonsoft.Json 11.0.2 (high 7.5)
0/25Dependencias indirectas libres de avisos conocidos — el conjunto transitivo no es separable de las dependencias de desarrollo y prueba en este alcance
33.7/40Sin avisos pendientes — 1 paquete(s) con avisos sin atender más allá de 90 días; el más antiguo publicado hace 1499 días
Datos de entrada utilizados
sourceosv
advisories4
affected_packages3
assessed_packages90
unassessed_packages0
affected_by_severityhigh 2, moderate 1
direct_affected_packages1
Excluidos de la puntuación (sin datos o no aplicable): Dependencias indirectas libres de avisos conocidos. Los pesos restantes se han renormalizado. Se cotejaron 90 dependencias resueltas con OSV. Este repositorio no publica ningún paquete que el índice resuelva, por lo que se evaluó en su lugar el grafo de dependencias del repositorio. Ese grafo mezcla fijaciones de desarrollo y prueba con las dependencias distribuidas, de modo que solo se puntúan las dependencias declaradas en tiempo de ejecución; los hallazgos transitivos se informan como contexto y quedan excluidos de la puntuación. No se analiza la alcanzabilidad.

Preparación para IA

¿Hasta qué punto está el repositorio preparado para desarrollarse y mantenerse con agentes de codificación de IA? Tiene un peso deliberadamente pequeño (4%): las herramientas para agentes son una señal real de mantenimiento, pero un repositorio sin ninguna puede alcanzar igualmente 100/100.

55Moderado · 4% del índice global
Cómo se puntúa
0/45Instrucciones para agentes — sin CLAUDE.md / AGENTS.md / reglas de editor
0/15Documentación legible por máquinas (llms.txt)
38.9/40Historial de commits legible — 73 de 100 commits humanos declaran su intención (asunto estructurado o cuerpo explicativo)
Datos de entrada utilizados
has_llms_txtno
legible_history_share0,73
agent_instruction_files
agent_instruction_max_bytes
Cómo se puntúa
12.6/18Arranque con un solo comando — src/PKSim.Assets/PKSim.Assets.csproj, src/PKSim.BatchTool/PKSim.BatchTool.csproj, src/PKSim.CLI.Core/PKSim.CLI.Core.csproj (convención del toolchain, sin ejecutor de tareas)
22/22Pruebas automatizadas
0/11Configuración de lint / formato
11/11Verificación estática de tipos — C# (tipado estático)
0/10Entorno reproducible
10/10Práctica demostrada con agentes — 8 de los últimos 100 commits con autoría o crédito de agente
0/8Mantenimiento automatizado — no se observan actualizaciones automáticas de dependencias
0/10OpenSSF Scorecard: Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
Datos de entrada utilizados
has_nixno
has_tests
lockfiles
has_dockerfileno
typed_language
bootstrap_files
has_devcontainerno
has_linter_configno
typecheck_configs
agent_commit_share0,08
toolchain_manifestssrc/PKSim.Assets/PKSim.Assets.csproj, src/PKSim.BatchTool/PKSim.BatchTool.csproj, src/PKSim.CLI.Core/PKSim.CLI.Core.csproj, src/PKSim.CLI/PKSim.CLI.csproj, src/PKSim.Core/PKSim.Core.csproj, src/PKSim.Infrastructure/PKSim.Infrastructure.csproj, src/PKSim.Presentation/PKSim.Presentation.csproj, src/PKSim.R/PKSim.R.csproj, src/PKSim.Starter/PKSim.Starter.csproj, src/PKSim.UI/PKSim.UI.csproj, src/PKSim/PKSim.csproj, tests/PKSim.R.Tests/PKSim.R.Tests.csproj, tests/PKSim.Tests/PKSim.Tests.csproj, tests/PKSim.UI.Tests/PKSim.UI.Tests.csproj
dependency_bot_commit_share0
Cómo se puntúa
45/45Código verificable por tipos — C# (tipado estático)
55/55Tamaños de archivo manejables — 3/3708 archivos fuente de más de 60 KB
Datos de entrada utilizados
primary_languageC#
largest_source_bytes180.785
source_files_sampled3708
oversized_source_files3
Cómo se puntúa
0/40Esquema de API (OpenAPI/GraphQL/proto)
0/20Servidor MCP
40/40Ejemplos ejecutables — examples
Datos de entrada utilizados
example_dirsexamples
has_mcp_signalno
api_schema_files

Datos clave

169estrellas de GitHub
10contribuidores
525commits en los últimos 12 meses
0días desde el último push
19versiones publicadas
2factor bus
459issues abiertas
ecosistemas de paquetes

Advertencias de recopilación de datos

  • Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token

Más detalle

Historial de estrellas y forks 0 ★ / 66 ⇿
0Estrellas
66Forks
19Versiones

Cuándo se añadió cada estrella y fork, recopilado de GitHub y agrupado por día. El crecimiento acumulado se sitúa justo encima de las adiciones diarias que lo componen, de modo que ambos se leen en conjunto: la acumulación orgánica sostenida no se parece en nada a un pico abrupto y efímero. Cuando esa diferencia es medible, se informa como autenticidad del crecimiento.

01325385063756632017-032021-112026-07
Mayor 0Menor 0Parche 10

Cada punto abarca 9 días.

OpenSSF Scorecard 5.4 / 10
5.4agregado

Evaluación de seguridad independiente y agnóstica en cuanto a herramientas, procedente del proyecto de código abierto OpenSSF Scorecard. Cada comprobación premia una práctica de seguridad, no la herramienta de un proveedor concreto. Las comprobaciones que Scorecard no pudo determinar se marcan como n/d y se excluyen de la puntuación de seguridad (nunca se cuentan como cero).Scorecard v5.5.0 · 2026-07-30 17:18 UTC

8Binary-Artifactsbinaries present in source code
6Branch-Protectionbranch protection is not maximal on development and all release branches
9CI-Tests20 out of 21 merged PRs checked by a CI test -- score normalized to 9
0CII-Best-Practicesno effort to earn an OpenSSF best practices badge detected
7Code-ReviewFound 16/22 approved changesets -- score normalized to 7
10Contributorsproject has 4 contributing companies or organizations
10Dangerous-Workflowno dangerous workflow patterns detected
0Dependency-Update-Toolno update tool detected
0Fuzzingproject is not fuzzed
9Licenselicense file detected
10Maintained30 commit(s) and 20 issue activity found in the last 90 days -- score normalized to 10
10Packagingpackaging workflow detected
0Pinned-Dependenciesdependency not pinned by hash detected -- score normalized to 0
8SASTSAST tool is not run on all commits -- score normalized to 8
0Security-Policysecurity policy file not detected
0Signed-ReleasesProject has not signed or included provenance with any releases.
0Token-Permissionsdetected GitHub workflow tokens with excessive permissions
10Vulnerabilities0 existing vulnerabilities detected
Dependencias directas 89
RegistroPaqueteRestricción de versiónManifiesto
NuGetOSPSuite.Assets13.0.141src/PKSim.Assets/PKSim.Assets.csproj
NuGetOSPSuite.Assets.Images13.0.141src/PKSim.Assets/PKSim.Assets.csproj
NuGetOSPSuite.Core13.0.141src/PKSim.Assets/PKSim.Assets.csproj
NuGetDevExpress.Win.Design25.2.7src/PKSim.BatchTool/PKSim.BatchTool.csproj
NuGetOSPSuite.Core13.0.141src/PKSim.BatchTool/PKSim.BatchTool.csproj
NuGetOSPSuite.Assets13.0.141src/PKSim.BatchTool/PKSim.BatchTool.csproj
NuGetOSPSuite.FuncParser5.0.0.3src/PKSim.BatchTool/PKSim.BatchTool.csproj
NuGetOSPSuite.SimModel5.0.0.80src/PKSim.BatchTool/PKSim.BatchTool.csproj
NuGetOSPSuite.SimModelSolver_CVODES5.0.0.53src/PKSim.BatchTool/PKSim.BatchTool.csproj
NuGetMicrosoft.Data.Sqlite10.0.7src/PKSim.BatchTool/PKSim.BatchTool.csproj
NuGetSQLitePCLRaw.bundle_e_sqlite33.0.3src/PKSim.BatchTool/PKSim.BatchTool.csproj
NuGetOSPSuite.Assets13.0.141src/PKSim.CLI.Core/PKSim.CLI.Core.csproj
NuGetOSPSuite.Utility5.0.0.11src/PKSim.CLI.Core/PKSim.CLI.Core.csproj
NuGetOSPSuite.Core13.0.141src/PKSim.CLI.Core/PKSim.CLI.Core.csproj
NuGetOSPSuite.CLI.Core13.0.141src/PKSim.CLI.Core/PKSim.CLI.Core.csproj
NuGetCommandLineParser2.9.1src/PKSim.CLI/PKSim.CLI.csproj
NuGetMicrosoft.Extensions.Logging.Console9.0.2src/PKSim.CLI/PKSim.CLI.csproj
NuGetOSPSuite.Core13.0.141src/PKSim.CLI/PKSim.CLI.csproj
NuGetOSPSuite.Presentation13.0.141src/PKSim.CLI/PKSim.CLI.csproj
NuGetOSPSuite.Assets13.0.141src/PKSim.CLI/PKSim.CLI.csproj
NuGetOSPSuite.Utility5.0.0.11src/PKSim.CLI/PKSim.CLI.csproj
NuGetOSPSuite.FuncParser5.0.0.3src/PKSim.CLI/PKSim.CLI.csproj
NuGetOSPSuite.SimModel5.0.0.80src/PKSim.CLI/PKSim.CLI.csproj
NuGetOSPSuite.SimModelSolver_CVODES5.0.0.53src/PKSim.CLI/PKSim.CLI.csproj
NuGetMicrosoft.Data.Sqlite10.0.7src/PKSim.CLI/PKSim.CLI.csproj
NuGetSQLitePCLRaw.bundle_e_sqlite33.0.3src/PKSim.CLI/PKSim.CLI.csproj
NuGetNewtonsoft.Json13.0.3src/PKSim.Core/PKSim.Core.csproj
NuGetOSPSuite.Utility5.0.0.11src/PKSim.Core/PKSim.Core.csproj
NuGetOSPSuite.Core13.0.141src/PKSim.Core/PKSim.Core.csproj
NuGetOSPSuite.Assets13.0.141src/PKSim.Core/PKSim.Core.csproj
NuGetOSPSuite.Assets.Images13.0.141src/PKSim.Core/PKSim.Core.csproj
NuGetOSPSuite.Infrastructure.Import13.0.141src/PKSim.Core/PKSim.Core.csproj
NuGetSystem.ComponentModel.Annotations5.0.0src/PKSim.Core/PKSim.Core.csproj
NuGetFluentNHibernate3.4.0src/PKSim.Infrastructure/PKSim.Infrastructure.csproj
NuGetLumenWorksCsvReader4.0.0src/PKSim.Infrastructure/PKSim.Infrastructure.csproj
NuGetMarkdownLog.NS200.10.1src/PKSim.Infrastructure/PKSim.Infrastructure.csproj
NuGetMicrosoft.Extensions.Logging9.0.2src/PKSim.Infrastructure/PKSim.Infrastructure.csproj
NuGetMicrosoft.Extensions.Logging.Abstractions9.0.2src/PKSim.Infrastructure/PKSim.Infrastructure.csproj
NuGetNewtonsoft.Json.Schema4.0.1src/PKSim.Infrastructure/PKSim.Infrastructure.csproj
NuGetNewtonsoft.Json13.0.3src/PKSim.Infrastructure/PKSim.Infrastructure.csproj
NuGetNHibernate.Extensions.Sqlite10.0.1src/PKSim.Infrastructure/PKSim.Infrastructure.csproj
NuGetOSPSuite.Assets13.0.141src/PKSim.Infrastructure/PKSim.Infrastructure.csproj
NuGetOSPSuite.Core13.0.141src/PKSim.Infrastructure/PKSim.Infrastructure.csproj
NuGetOSPSuite.Infrastructure13.0.141src/PKSim.Infrastructure/PKSim.Infrastructure.csproj
NuGetOSPSuite.Infrastructure.Castle13.0.141src/PKSim.Infrastructure/PKSim.Infrastructure.csproj
NuGetOSPSuite.Infrastructure.Export13.0.141src/PKSim.Infrastructure/PKSim.Infrastructure.csproj
NuGetOSPSuite.Infrastructure.Import13.0.141src/PKSim.Infrastructure/PKSim.Infrastructure.csproj
NuGetOSPSuite.Infrastructure.Serialization13.0.141src/PKSim.Infrastructure/PKSim.Infrastructure.csproj
NuGetOSPSuite.Utility5.0.0.11src/PKSim.Infrastructure/PKSim.Infrastructure.csproj
NuGetMicrosoft.Data.Sqlite10.0.7src/PKSim.Infrastructure/PKSim.Infrastructure.csproj
NuGetSQLitePCLRaw.bundle_e_sqlite33.0.3src/PKSim.Infrastructure/PKSim.Infrastructure.csproj
NuGetOSPSuite.Assets13.0.141src/PKSim.Presentation/PKSim.Presentation.csproj
NuGetOSPSuite.TeXReporting3.0.1.3src/PKSim.Presentation/PKSim.Presentation.csproj
NuGetOSPSuite.Utility5.0.0.11src/PKSim.Presentation/PKSim.Presentation.csproj
NuGetOSPSuite.Presentation13.0.141src/PKSim.Presentation/PKSim.Presentation.csproj
NuGetOSPSuite.Presentation.Serialization13.0.141src/PKSim.Presentation/PKSim.Presentation.csproj
NuGetOSPSuite.Core13.0.141src/PKSim.Presentation/PKSim.Presentation.csproj
NuGetOSPSuite.Assets13.0.141src/PKSim.R/PKSim.R.csproj
NuGetOSPSuite.R13.0.141src/PKSim.R/PKSim.R.csproj
NuGetOSPSuite.Utility5.0.0.11src/PKSim.R/PKSim.R.csproj
NuGetOSPSuite.Core13.0.141src/PKSim.R/PKSim.R.csproj
NuGetOSPSuite.FuncParser5.0.0.3src/PKSim.R/PKSim.R.csproj
NuGetOSPSuite.SimModel5.0.0.80src/PKSim.R/PKSim.R.csproj
NuGetOSPSuite.SimModelSolver_CVODES5.0.0.53src/PKSim.R/PKSim.R.csproj
NuGetMicrosoft.Data.Sqlite10.0.7src/PKSim.R/PKSim.R.csproj
NuGetSQLitePCLRaw.bundle_e_sqlite33.0.3src/PKSim.R/PKSim.R.csproj
NuGetOSPSuite.Presentation13.0.141src/PKSim.Starter/PKSim.Starter.csproj
NuGetOSPSuite.UI13.0.141src/PKSim.Starter/PKSim.Starter.csproj
NuGetOSPSuite.Core13.0.141src/PKSim.Starter/PKSim.Starter.csproj
NuGetOSPSuite.Infrastructure13.0.141src/PKSim.Starter/PKSim.Starter.csproj
NuGetMicrosoft.Extensions.Logging9.0.2src/PKSim.UI/PKSim.UI.csproj
NuGetMicrosoft.Extensions.Logging.Debug9.0.2src/PKSim.UI/PKSim.UI.csproj
NuGetOSPSuite.Assets13.0.141src/PKSim.UI/PKSim.UI.csproj
NuGetOSPSuite.DataBinding4.0.0.5src/PKSim.UI/PKSim.UI.csproj
NuGetOSPSuite.DataBinding.DevExpress7.0.0.6src/PKSim.UI/PKSim.UI.csproj
NuGetOSPSuite.Utility5.0.0.11src/PKSim.UI/PKSim.UI.csproj
NuGetOSPSuite.Presentation13.0.141src/PKSim.UI/PKSim.UI.csproj
NuGetOSPSuite.UI13.0.141src/PKSim.UI/PKSim.UI.csproj
NuGetOSPSuite.Core13.0.141src/PKSim.UI/PKSim.UI.csproj
NuGetDevExpress.Win.Design25.2.7src/PKSim.UI/PKSim.UI.csproj
NuGetOSPSuite.Assets13.0.141src/PKSim/PKSim.csproj
NuGetOSPSuite.Core13.0.141src/PKSim/PKSim.csproj
NuGetOSPSuite.FuncParser5.0.0.3src/PKSim/PKSim.csproj
NuGetOSPSuite.SimModel5.0.0.80src/PKSim/PKSim.csproj
NuGetOSPSuite.SimModelSolver_CVODES5.0.0.53src/PKSim/PKSim.csproj
NuGetMicrosoft.Data.Sqlite10.0.7src/PKSim/PKSim.csproj
NuGetSQLitePCLRaw.bundle_e_sqlite33.0.3src/PKSim/PKSim.csproj
NuGetOSPSuite.Presentation13.0.141src/PKSim/PKSim.csproj
NuGetOSPSuite.TeXReporting3.0.1.3src/PKSim/PKSim.csproj
Todas las dependencias 90

Conjunto completo de dependencias resueltas según el grafo de dependencias de GitHub: 59 paquetes directos y 31 indirectos (transitivos). El cierre transitivo es completo cuando el repositorio incluye un lockfile.

RegistroPaqueteVersiónRelación
NuGetCommandLineParser2.2.1directa
NuGetCommandLineParser2.4.3directa
NuGetCommandLineParser2.9.1directa
NuGetDevExpress.Win.Design25.2.7directa
NuGetFluentNHibernate2.0.3.0directa
NuGetFluentNHibernate3.4.0directa
NuGetLumenWorksCsvReader4.0.0directa
NuGetMarkdownLog.NS200.10.1directa
NuGetMicrosoft.Data.Sqlite10.0.7directa
NuGetMicrosoft.Extensions.Logging9.0.2directa
NuGetMicrosoft.Extensions.Logging.Abstractions2.0.1directa
NuGetMicrosoft.Extensions.Logging.Abstractions2.2.0directa
NuGetMicrosoft.Extensions.Logging.Abstractions9.0.2directa
NuGetMicrosoft.Extensions.Logging.Console9.0.2directa
NuGetMicrosoft.Extensions.Logging.Debug9.0.2directa
NuGetNewtonsoft.Json11.0.2directa
NuGetNewtonsoft.Json13.0.3directa
NuGetNewtonsoft.Json.Schema4.0.1directa
NuGetNHibernate.Extensions.Sqlite10.0.1directa
NuGetOSPSuite.Assets13.0.141directa
NuGetOSPSuite.Assets7.4.0.2directa
NuGetOSPSuite.Assets9.0.1directa
NuGetOSPSuite.Assets.Images13.0.141directa
NuGetOSPSuite.CLI.Core13.0.141directa
NuGetOSPSuite.Core13.0.141directa
NuGetOSPSuite.Core7.4.0.2directa
NuGetOSPSuite.Core9.0.1directa
NuGetOSPSuite.DataBinding2.2.0.2directa
NuGetOSPSuite.DataBinding4.0.0.5directa
NuGetOSPSuite.DataBinding.DevExpress2.2.0.2directa
NuGetOSPSuite.DataBinding.DevExpress7.0.0.6directa
NuGetOSPSuite.FuncParser3.0.1.14directa
NuGetOSPSuite.FuncParser3.0.1.9directa
NuGetOSPSuite.FuncParser5.0.0.3directa
NuGetOSPSuite.Infrastructure13.0.141directa
NuGetOSPSuite.Infrastructure7.4.0.2directa
NuGetOSPSuite.Infrastructure.Castle13.0.141directa
NuGetOSPSuite.Infrastructure.Export13.0.141directa
NuGetOSPSuite.Infrastructure.Import13.0.141directa
NuGetOSPSuite.Infrastructure.Serialization13.0.141directa
NuGetOSPSuite.Presentation13.0.141directa
NuGetOSPSuite.Presentation7.4.0.2directa
NuGetOSPSuite.Presentation9.0.1directa
NuGetOSPSuite.Presentation.Serialization13.0.141directa
NuGetOSPSuite.R13.0.141directa
NuGetOSPSuite.SimModel3.0.1.17directa
NuGetOSPSuite.SimModel3.0.1.27directa
NuGetOSPSuite.SimModel5.0.0.80directa
NuGetOSPSuite.SimModelSolver_CVODES4.0.0.5directa
NuGetOSPSuite.SimModelSolver_CVODES5.0.0.53directa
NuGetOSPSuite.TeXReporting2.1.1.9directa
NuGetOSPSuite.TeXReporting3.0.1.3directa
NuGetOSPSuite.UI13.0.141directa
NuGetOSPSuite.UI7.4.0.2directa
NuGetOSPSuite.Utility3.0.0.3directa
NuGetOSPSuite.Utility3.0.1.7directa
NuGetOSPSuite.Utility5.0.0.11directa
NuGetSQLitePCLRaw.bundle_e_sqlite33.0.3directa
NuGetSystem.ComponentModel.Annotations5.0.0directa
NuGetCastle.Core3.3.3indirecta
NuGetCastle.Windsor3.4.0indirecta
NuGetcsmpfit1.1.1indirecta
NuGetDapper1.50.4indirecta
NuGetFakeItEasy4.5.1indirecta
NuGetFakeItEasy8.3.0indirecta
NuGetIesi.Collections4.0.2indirecta
NuGetMathNet.Numerics4.4.0indirecta
NuGetMathNet.Numerics4.7.0indirecta
NuGetMicrosoft.NET.Test.Sdk17.13.0indirecta
NuGetNHibernate4.1.1.4000indirecta
NuGetNorthwoods.GoWin5.2.0indirecta
NuGetNUnit3.14.0indirecta
NuGetNUnit3.5.0indirecta
NuGetNUnit3TestAdapter5.0.0indirecta
NuGetOSPSuite.BDDHelper2.0.1.4indirecta
NuGetOSPSuite.BDDHelper4.0.1.1indirecta
NuGetOSPSuite.DevExpress17.1.5indirecta
NuGetOSPSuite.DevExpress.Presentation17.1.5indirecta
NuGetOSPSuite.DevExpress.Presentation18.2.7indirecta
NuGetOSPSuite.Engine9.0.1indirecta
NuGetOSPSuite.Serializer2.0.1.4indirecta
NuGetOSPSuite.SmartXLS2.6.8.2indirecta
NuGetOSPSuite.SmartXLS2.7.1.9indirecta
NuGetSharpZipLib0.86.0indirecta
NuGetSystem.Collections4.0.11indirecta
NuGetSystem.Console4.0.0indirecta
NuGetSystem.Data.SQLite.Core1.0.106.0indirecta
NuGetSystem.ValueTuple4.4.0indirecta
NuGetWindowsAPICodePack-Core1.1.2indirecta
NuGetWindowsAPICodePack-Shell1.1.1indirecta
Avisos de dependencias 3

Este repositorio no publica ningún paquete que el índice resuelva, así que se evaluó su propio grafo de dependencias — 90 paquetes, que incluyen también fijaciones de desarrollo y prueba que nunca se distribuyen: 3 tienen avisos conocidos, de los cuales 1 son directas.

PaqueteVersiónRelaciónGravedadAvisosCorregido en
Newtonsoft.Json11.0.2directaalta113.0.1
SharpZipLib0.86.0indirectaalta21.3.3
NHibernate4.1.1.4000indirectamoderada15.5.2

Un aviso significa que la versión registrada en el grafo de dependencias cae dentro del rango afectado de un aviso. No se analiza la alcanzabilidad, y el grafo incluye fijaciones de desarrollo y prueba: un hallazgo puede referirse al utillaje y no al software distribuido.

Informe JSON sin procesar legible por máquina
{
  "data": {
    "repo": {
      "topics": [
        "pk-sim",
        "suite-components"
      ],
      "is_fork": false,
      "size_kb": 285721,
      "has_wiki": true,
      "homepage": null,
      "languages": {
        "C#": 11240007,
        "TeX": 8767,
        "Ruby": 7909,
        "Batchfile": 508,
        "Rich Text Format": 133918
      },
      "pushed_at": "2026-07-29T17:59:07Z",
      "created_at": "2017-02-10T14:58:51Z",
      "owner_type": "Organization",
      "updated_at": "2026-07-29T17:59:33Z",
      "description": "PK-Sim® is a comprehensive software tool for whole-body physiologically based pharmacokinetic modeling",
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": null,
      "default_branch": "develop",
      "license_spdx_raw": "NOASSERTION",
      "primary_language": "C#",
      "significant_languages": [
        "C#"
      ]
    },
    "owner": {
      "blog": "http://setup.open-systems-pharmacology.org",
      "name": "Open Systems Pharmacology",
      "type": "Organization",
      "login": "Open-Systems-Pharmacology",
      "company": null,
      "location": null,
      "followers": 332,
      "avatar_url": "https://avatars.githubusercontent.com/u/25098323?v=4",
      "created_at": "2017-01-13T08:36:59Z",
      "is_verified": null,
      "public_repos": 401,
      "account_age_days": 3485
    },
    "license": {
      "state": "custom",
      "spdx_id": null,
      "raw_spdx": "NOASSERTION",
      "file_present": true,
      "scorecard_found": true,
      "profile_has_license": true
    },
    "activity": {
      "releases": [
        {
          "tag": "v12.3.173",
          "kind": "patch",
          "published_at": "2026-07-07T09:31:45Z"
        },
        {
          "tag": "v12.3.137",
          "kind": "patch",
          "published_at": "2026-06-01T10:01:50Z"
        },
        {
          "tag": "v12.2.112",
          "kind": "patch",
          "published_at": "2026-01-12T10:49:41Z"
        },
        {
          "tag": "v12.1.222",
          "kind": "patch",
          "published_at": "2025-09-18T09:12:15Z"
        },
        {
          "tag": "v12.0.440",
          "kind": "patch",
          "published_at": "2025-02-10T14:33:13Z"
        },
        {
          "tag": "v11.3.208",
          "kind": "patch",
          "published_at": "2024-04-10T10:52:23Z"
        },
        {
          "tag": "v11.2.142",
          "kind": "patch",
          "published_at": "2023-05-03T10:14:50Z"
        },
        {
          "tag": "v11.1.137",
          "kind": "patch",
          "published_at": "2023-02-01T16:43:00Z"
        },
        {
          "tag": "v11.0.150",
          "kind": "patch",
          "published_at": "2022-05-19T08:35:08Z"
        },
        {
          "tag": "v10.0.257",
          "kind": "patch",
          "published_at": "2021-11-10T17:08:46Z"
        },
        {
          "tag": "v9.1",
          "kind": "other",
          "published_at": "2020-07-22T16:51:57Z"
        },
        {
          "tag": "v9.0",
          "kind": "other",
          "published_at": "2020-06-21T14:30:01Z"
        },
        {
          "tag": "v8.0",
          "kind": "other",
          "published_at": "2019-06-18T14:00:35Z"
        },
        {
          "tag": "v7.4.0.127",
          "kind": "other",
          "published_at": "2019-01-09T15:13:34Z"
        },
        {
          "tag": "v7.3.0.42",
          "kind": "other",
          "published_at": "2018-06-12T14:00:51Z"
        },
        {
          "tag": "v7.2.2.3",
          "kind": "other",
          "published_at": "2018-04-24T16:07:16Z"
        },
        {
          "tag": "v7.2.1.2",
          "kind": "other",
          "published_at": "2017-12-19T17:50:54Z"
        },
        {
          "tag": "v7.2.0.143",
          "kind": "other",
          "published_at": "2017-12-01T17:46:00Z"
        },
        {
          "tag": "v7.1.0.63",
          "kind": "other",
          "published_at": "2017-05-30T14:05:16Z"
        }
      ],
      "recent_commits": [
        {
          "oid": "c3579de05f8a5d932592659cbaff7d863cf794bf",
          "body": "Bump OSPSuite.Core to 13.0.141 and OSPSuite.Utility to 5.0.0.11, which contain\nthe FileHelper.TryOpenFile fix.",
          "is_bot": false,
          "headline": "Fixes #3397 Open exported files again (#3646)",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-07-29T17:59:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7d358017bd1c0525053b9af01af23db0755dd732",
          "body": "…643)\n\n* Fixes #3514 Propagate the molecule rename of an expression profile\n\nRenaming an expression profile renamed the molecule in the individual only in\nmemory: RenameMoleculeReferenceInSimulationSubjectCommand never set its\nBuildingBlockId, so the building block was neither flagged as changed nor\n[…]\ne.\nThey did not follow the rename of an expression profile molecule, so the paths no\nlonger resolved and the variability silently disappeared from the distribution\nview and from the population export.",
          "is_bot": false,
          "headline": "Fixes #3639 Rename the molecule in the population parameter paths (#3…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-07-29T15:29:16Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "66db646e493f6fa4a360dc488ac234c5ae25aa4f",
          "body": "…3637)\n\n* Fixes #3514 Propagate the molecule rename of an expression profile\n\nRenaming an expression profile renamed the molecule in the individual only in\nmemory: RenameMoleculeReferenceInSimulationSubjectCommand never set its\nBuildingBlockId, so the building block was neither flagged as changed no\n[…]\ntion, so the command can invert\nitself. It is currently only used inside a macro command that is discarded, but\non its own it can now be undone.\n\n* Remove redundant comment in the standalone undo spec",
          "is_bot": false,
          "headline": "Fixes #3514 Propagate the molecule rename of an expression profile (#…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-07-28T20:11:35Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "0e4a59aefa3f9d2836c03a24afcadc5406614f92",
          "body": "Modules created for a PK-Sim simulation inherited the Core default of\nOverwrite. In v13 Overwrite fully replaces passive transports and\nobservers by name, so combining two PK-Sim modules in MoBi drops the\nmolecule include lists of the first module and simulation creation\nfails. Extend reproduces the effective v12 behavior.",
          "is_bot": false,
          "headline": "Fixes #3635 Default PK-Sim modules to Extend merge behavior (#3636)",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-07-28T15:30:38Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3452bf367ec73ac76f267ae2d784c541fad7d64d",
          "body": "… (#3630)\n\n* Fixes #3622 Convert projects to the new oral absorption model for v13\n\nThe new oral absorption / particle dissolution model added parameters and\ncontainers across most building blocks and redefined the lumen parameters.\nProjects saved before v13 are brought in line with it by cloning th\n[…]\nc.com>\n\n* #3622 Drop the inaccurate \"expensive\" note on the compound template\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Fixes #3622 Convert projects to the new oral absorption model for v13…",
          "author_name": "Michael Sevestre",
          "author_login": "msevestre",
          "committed_at": "2026-07-28T12:42:39Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "7e541fd670f4fc9a0fbe2148d11895e59d132f8c",
          "body": "…(#3626)\n\nThe two projects used by ProcessToProcessBuilderMapperSpecs were re-saved\nas V13 files in 44038308, so XmlSerializationManager ran no converters at\nall and the specs passed vacuously while PK-Sim itself failed to load the\nsame projects.\n\n- Restore Mucosa_MultipleTransportDirections and Muc\n[…]\nconversion does not add the new PBBM lumen segment parameters\n(Volume, Bile Salt concentration, pH, ...) to converted individuals.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Fixes #3619 Restore project conversion coverage in integration tests …",
          "author_name": "Michael Sevestre",
          "author_login": "msevestre",
          "committed_at": "2026-07-27T15:46:28Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "8d4b36ec7a6b91b4d43a662c7191ddf89549fe0f",
          "body": "The group-by submenu now omits the icon entirely (as PK-Sim's observed-data grouping menu does) instead of passing EmptyIcon, which still rendered a default icon slot. The Species category template drops its explicit icon so both it and Molecule use the single-argument ClassificationTemplate constructor.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Remove icons from building-block group-by menu items",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-07-24T19:46:40Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "dfbb17f79077d5e38a23d01490d8633495bd6437",
          "body": "Reuse the OSP Classification mechanism (already used for observed data and simulations) so every building-block type can hold user-created subfolders in the explorer tree.\n\n- Add 8 Classifiable wrappers (Compound, Formulation, Individual, Population, Protocol, Event, ObserverSet, ExpressionProfile) \n[…]\n-by for Individuals (by species) and Expression Profiles (by molecule).\n\nRequires OSPSuite.Core 13.0.138 for the new ClassificationType values.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Fixes #1435 Add subfolders for building blocks",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-07-24T19:46:40Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "5baad64b09007fa2c90ffb2e243ad0ecaa84b42a",
          "body": "The PKSim.UI assembly (Views/WinForms) is not exercised by the test\ninfrastructure. Exclude the whole UI module instead of only its Views source\nfolder, so the coverage percentage reflects testable code.",
          "is_bot": false,
          "headline": "Exclude the UI layer from coverage",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-07-24T19:37:57Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b44aec507edc7917f05e3745102b407c98783894",
          "body": "JetBrains dotCover 2026.2 cannot generate a coverage report on .NET 10\n(console runner hangs/crashes - DCVR-13230). The shared coverage action now\nruns dotnet test with the Microsoft Code Coverage collector, which supports\nnet10 and emits cobertura for codecov. Replace dotcover.xml with a\ncoverage.runsettings carrying the module/source exclusions, and drop the\nobsolete xml-configuration input from the coverage workflow.",
          "is_bot": false,
          "headline": "Replace dotcover.xml with coverage.runsettings for dotnet test",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-07-24T15:51:37Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d37f1b5014daacaadb2918c4b2858f5f96588edb",
          "body": "… folders (#3628)",
          "is_bot": false,
          "headline": "Fixes #3627 Update dotcover.xml test assembly paths to net10.0 output…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-07-23T15:13:19Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0bd4e5a2798dbb72ee2c4674a36bb22dab5891dc",
          "body": "… use square legend marker for infusions (#3629)",
          "is_bot": false,
          "headline": "Fixes #3621 Refresh simple protocol chart on infusion time change and…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-07-23T14:39:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "48a92cd173409c6ed6afa2ff2a137e15f3a7a0cf",
          "body": "…n tests\" (#3625)\n\nThis reverts commit b5085b902216a5b94821a48286aa61f6071dbcf6.",
          "is_bot": false,
          "headline": "Revert \"Fixes #3619 Restore project conversion coverage in integratio…",
          "author_name": "Michael Sevestre",
          "author_login": "msevestre",
          "committed_at": "2026-07-23T04:22:59Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b5085b902216a5b94821a48286aa61f6071dbcf6",
          "body": "The two projects used by ProcessToProcessBuilderMapperSpecs were re-saved\nas V13 files in 44038308, so XmlSerializationManager ran no converters at\nall and the specs passed vacuously while PK-Sim itself failed to load the\nsame projects.\n\n- Restore Mucosa_MultipleTransportDirections and MucosaInflux_\n[…]\nconversion does not add the new PBBM lumen segment parameters\n(Volume, Bile Salt concentration, pH, ...) to converted individuals.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Fixes #3619 Restore project conversion coverage in integration tests",
          "author_name": "Michael Sevestre",
          "author_login": "msevestre",
          "committed_at": "2026-07-23T04:08:56Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "0e714bff1c655f7f2614f41b1056e65ec8ae021e",
          "body": null,
          "is_bot": false,
          "headline": "update core",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-07-22T16:09:54Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0466a073c3c62b836680aa84018b3f87741b8ee8",
          "body": "…e-parameter-set-partial-support-for-population-simulation\n\nFixes #3458 Support overwrite parameter sets in population simulations",
          "is_bot": false,
          "headline": "Merge pull request #3613 from Open-Systems-Pharmacology/3458-overwrit…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-07-21T18:14:51Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4c45df50dc4a72bfa75d712858e11685ea22bbe0",
          "body": "…-compound-implications-for-overwriteparameterset\n\nFixes #3482 Renaming compound implications for OverwriteParameterSet",
          "is_bot": false,
          "headline": "Merge pull request #3612 from Open-Systems-Pharmacology/3482-renaming…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-07-20T17:31:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4f7be16d70421e3ebe42755749a42f5699f6d2f0",
          "body": "Apply a compound's selected overwrite parameter set in population\nsimulations, parallel to individual simulations. Overwritten parameters\nare locked with CanBeVariedInPopulation=false so the population keeps the\nfixed value, and any advanced parameter already defined for such a path\nis removed so per-individual sampling cannot override it at run time.\n\nCommitting simulation parameter values back into a compound overwrite\nparameter set stays limited to individual simulations.",
          "is_bot": false,
          "headline": "Fixes #3458 Support overwrite parameter sets in population simulations",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-07-20T17:27:02Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bc00012c80c2c39e88b62d9508e3f84e299317db",
          "body": "…hanges\n\nWhen a compound is renamed (explicit rename, import forcing a rename, or\nclone), the compound name embedded in the parameter paths of its\nOverwriteParameterSets is now updated so the paths stay resolvable.\n\n- OverwriteParameterSet.ChangeCompoundName rewrites the compound-name\n  segment in e\n[…]\nockTask.ChangeCompoundNameInOverwriteParameterSets method.\n- OverwriteParameterSetsPresenter now reloads the grid on RenamedEvent so\n  the displayed paths refresh after a rename (including undo/redo).",
          "is_bot": false,
          "headline": "Fixes #3482 Update overwrite parameter paths when the compound name c…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-07-20T14:57:05Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "676f04e8afe468418435eaf8e3d4b614fdaa5966",
          "body": "Fix broken link in nightly badge",
          "is_bot": false,
          "headline": "Merge pull request #3611 from Open-Systems-Pharmacology/Yuri05-patch-1",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-07-17T13:44:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e2aea1e19fd745dccd917c953b1696328f8a6fd1",
          "body": null,
          "is_bot": false,
          "headline": "Fix broken link in nightly badge",
          "author_name": "Juri Solodenko",
          "author_login": "Yuri05",
          "committed_at": "2026-07-16T15:00:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "df00dcd4b5644e1232a5dfeb82564cde58a0aa41",
          "body": "Merge V13 into develop",
          "is_bot": false,
          "headline": "Merge pull request #3610 from Open-Systems-Pharmacology/V13",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-07-16T14:41:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c3c783554a00db261d753d0595a919848ee532bd",
          "body": "…erge",
          "is_bot": false,
          "headline": "Retarget workflow triggers from V13 to develop for the V13->develop m…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-07-16T14:28:33Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "860c3da56c76c125160d0c03c099f70dc775cc9f",
          "body": null,
          "is_bot": false,
          "headline": "Update OSPSuite.Core packages to 13.0.134",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-07-16T14:24:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "74f9890f147ce57118f380a7dc6f06ac95429f1e",
          "body": "…rite_parameter_set\n\nMerge overwrite parameter set feature into V13",
          "is_bot": false,
          "headline": "Merge pull request #3609 from Open-Systems-Pharmacology/feature/overw…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-07-16T14:22:33Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8f34d997dcd7da26755f0bfa05545cbc723a7cdf",
          "body": "…meter_set",
          "is_bot": false,
          "headline": "Merge remote-tracking branch 'origin/V13' into feature/overwrite_para…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-07-16T14:08:11Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ef675d3f86d96d457db379db8ce4c521fb182589",
          "body": "… building block on MoBi export (#3605)\n\n* Fixes #3437 Merge overwrite parameter set values into ParameterValues building block on MoBi export\n\nOverwrite parameter sets are applied to the constructed model as Compound-type\nparameters, so PKSimParameterValuesCreator (which only captures changed\nSimul\n[…]\neter sets are applied to the parameter values on MoBi export\n\nAddresses PR review feedback: guard against regressions by verifying the export\npath invokes the overwrite parameter set application task.",
          "is_bot": false,
          "headline": "Fixes #3437 Merge overwrite parameter set values into ParameterValues…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-07-16T14:01:49Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "e3c65e2d50f3e27104a012ede258982d95c427ae",
          "body": "…#3608)\n\n* Fixes #3607 Register CorePKSimXmlSerializerRepository in CLIApplicationStartup\n\n3e6d0a9 (#3537) moved IPKSimXmlSerializerRepository registration from\nInfrastructureRegister to the individual bootstraps but missed\nPKSim.Starter.CLIApplicationStartup, so every SnapshotExchange entry\npoint f\n[…]\ner\ndoes not cover MinimalImplementations — PKSim.CLI and PKSim.R register\nall of these explicitly. Mirror the same three registrations in the\nStarter so LazyLoadTask and observed-data mapping resolve.",
          "is_bot": false,
          "headline": "Fixes #3607 Register missing headless services for SnapshotExchange (…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-07-16T14:01:14Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b2234369a2d7577c6eba83aee4e84782c01dcfb7",
          "body": "# Conflicts:\n#\t.github/workflows/build-nightly_12.3.yml",
          "is_bot": false,
          "headline": "Merge remote-tracking branch 'origin/develop' into V13",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-07-15T18:05:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3bc469a6d695fc9d4836efcdc67921ff0f45d102",
          "body": "…604)",
          "is_bot": false,
          "headline": "Allow re-use of an administration protocol for multiple compounds (#3…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-07-15T12:20:33Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "37cd437067f1947ab410010e3f37c5327dcebc3d",
          "body": "…10.0-windows in rakefile.rb (#3601)\n\nCo-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>",
          "is_bot": false,
          "headline": "Fix build-nightly: update target framework from net8.0-windows to net…",
          "author_name": "Copilot",
          "author_login": "Copilot",
          "committed_at": "2026-07-14T10:17:24Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "137e07e60f05554c2229a72c21dfd234e6d423ca",
          "body": "* Guard ValueOriginRepository.Start to stop re-mapping value origins on every lookup\n\nValueOriginRepository was hand-rolled without the already-started guard that the\nother StartableRepository implementations have, so every FindBy/ValueOriginFor call\nre-mapped all value origins from scratch. During \n[…]\nlueOrigin> base (like the other ORM repositories)\nfor the run-once guard instead of the hand-rolled Start()/_started, so the\none-time value-origin mapping comes from the framework. Behavior unchanged.",
          "is_bot": false,
          "headline": "Reduce PK-Sim startup time (#3596)",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-07-13T14:36:00Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "34e1ee1cfdf60706c55d193d447acfaebabb0bab",
          "body": "…); bump OSPSuite.* to 13.0.131 (#3595)",
          "is_bot": false,
          "headline": "Return population simulations from LoadSimulationsFromSnapshot (#3592…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-07-04T16:34:02Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7617934a187ed8d58e4e6ca0a7dac1cc40b59296",
          "body": "Co-authored-by: Yuri05 <Yuri05@github.com>",
          "is_bot": false,
          "headline": "Fix testlog location (#3593)",
          "author_name": "Juri Solodenko",
          "author_login": "Yuri05",
          "committed_at": "2026-07-03T11:35:49Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6d086f855c917f028ebcabbe1d243096c6d7cb17",
          "body": "…#3587)\n\nApply each compound's selected OverwriteParameterSet to the matching\nsimulation parameters after model construction (post keyword replacement).\nApplied parameters become BuildingBlockType=Compound and point at the\ncompound building block so subsequent edits follow normal compound logic.\nUnresolved paths abort simulation creation with a clear error listing them.",
          "is_bot": false,
          "headline": "Fixes #3434 Apply overwrite parameter set during model construction (…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-07-03T11:34:40Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d25e5ddaef8515bee78902529a011c308926c919",
          "body": "…sh-progress\n\nFixes #3584 Route startup splash progress through a splash-thread EventPublisher",
          "is_bot": false,
          "headline": "Merge pull request #3588 from Open-Systems-Pharmacology/3584-fix-spla…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-06-30T15:45:11Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4f786e1ade70ad177cd5682f80a187383fd3918f",
          "body": "…tepclraw-vulnerability\n\nFixes #3585 Override SQLitePCLRaw.bundle_e_sqlite3 to 3.0.3 to clear CVE-2025-6965",
          "is_bot": false,
          "headline": "Merge pull request #3586 from Open-Systems-Pharmacology/3585-fix-sqli…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-06-30T12:42:03Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "448176cee36ef5339da8e756b81e3ea4e48e3d60",
          "body": "…ntPublisher\n\nOSPSuite.Utility 5.0.0.9+ dispatches EventPublisher events via Post (async) instead\nof Send when SynchronizationContext.Current != the captured context. During the\npre-message-loop startup window that made splash progress queue on the busy main\nthread (bar jumps to 100%) and set splash\n[…]\nEventPublisher bound to the splash\nthread's own SynchronizationContext, make the splash view/presenter singletons, and\nregister the UI thread so the shared EventPublisher singleton uses its Send path.",
          "is_bot": false,
          "headline": "Fixes #3584 Route startup splash progress through a splash-thread Eve…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-06-26T19:09:01Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "ba0be07a99d04b85f45211c3e280fc9136bdc9c6",
          "body": "…uite.Utility to 5.0.0.10",
          "is_bot": false,
          "headline": "Update OSPSuite.* to 13.0.130 (includes the Core SQLite fix) and OSPS…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-06-26T16:22:49Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fef695a9a1aa85ed83745423c03fafe6a251a7ff",
          "body": "… (DQS) compatibility\n\nSQLite 3.50 (shipped via SQLitePCLRaw/SourceGear.sqlite3) disables double-quoted\nstring literals (DQS) by default, so the value comparison building_block_type =\n\"INDIVIDUAL\" in two views was parsed as an identifier and failed at runtime.\nSwitch to the standard single-quoted string literal.",
          "is_bot": false,
          "headline": "Fix double-quoted string literals in PKSimDB views for SQLite >= 3.50…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-06-26T16:01:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5262f1ccf98a75259859c881c1ffd8573c529c66",
          "body": "…CVE-2025-6965 (NU1903)",
          "is_bot": false,
          "headline": "Fixes #3585 Override SQLitePCLRaw.bundle_e_sqlite3 to 3.0.3 to clear …",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-06-26T15:34:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2df9918801f9e036f92deb920ef4c5a5d807cf2e",
          "body": "…ctive-mol-weight-validation-rounding\n\nFixes #3580 Effective molecular weight validation no longer depends on display-unit round-trip",
          "is_bot": false,
          "headline": "Merge pull request #3581 from Open-Systems-Pharmacology/fix-3580-effe…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-06-23T16:27:52Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "378ab8ea88fdc0cf9da0e2aea385a591de8b43c8",
          "body": "…n display-unit round-trip\n\nThe rule converted the candidate value display->base and compared it to the\nparameter's formula value. That base<->g/mol conversion round-trip is bit-exact\nfor most values but off by ~1 ULP for a sparse subset, so for certain mol\nweight/halogen combinations the equality g\n[…]\nweight is a formula-only calculation (derived from molecular\nweight and halogen count) and is never edited directly, so the rule now simply\nvalidates the parameter's current value against its minimum.",
          "is_bot": false,
          "headline": "Fixes #3580 Effective molecular weight validation no longer depends o…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-06-18T18:14:52Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "de10511411396805fa72348d6c2a2c2252df904f",
          "body": "…-simulations-null-configuration\n\nFixes #3574 SnapshotTask returns simulations with a null SimulationConfiguration",
          "is_bot": false,
          "headline": "Merge pull request #3575 from Open-Systems-Pharmacology/3574-snapshot…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-06-16T15:30:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3d1116d7410b4a1f7b14bba638ed08b216cdbf04",
          "body": "…uration\n\nA PK-Sim domain Simulation does not carry a SimulationConfiguration, so\nwrapping it directly into an R Simulation threw a NullReferenceException when\nbuilding the simulation builder. Map each loaded simulation to a\nModelCoreSimulation via ISimulationConfigurationTask.CreateFor and\nISimulationToModelCoreSimulationMapper.MapFrom so it behaves like a\npkml-loaded simulation.\n\nFixes #3574",
          "is_bot": false,
          "headline": "Wrap snapshot-loaded simulations as ModelCoreSimulation with a config…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-06-16T14:58:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6939a19fd68dd887f2f31d847d5c5c3d65c29784",
          "body": null,
          "is_bot": false,
          "headline": "update core",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-06-15T19:20:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8c7096f59ab4e456888e14e8bc382068cabaf7cc",
          "body": "…-visualization\n\nInfusion visualization #3273",
          "is_bot": false,
          "headline": "Merge pull request #3572 from Open-Systems-Pharmacology/3273-infusion…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-06-15T16:56:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6cca05d124c54868a6ffa8eecfedc5a178ed2656",
          "body": "…ate commit (#3555)\n\n* Fixes #3554 Preserve untouched entries on overwrite parameter set update commit\n\nThe update path in CommitSimulationParametersTask removed every existing\nentry whose path was not currently in the change tracker, but parameters\ncommitted in a previous round are also untracked, \n[…]\nes the stored set value (and is not tracked\nor being recommitted). Untouched entries pass the value comparison and\nremain in the set.\n\n* Restore param tags on updateExistingSetsCommand\n\n* add comments",
          "is_bot": false,
          "headline": "Fixes #3554 Preserve untouched entries on overwrite parameter set upd…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-06-11T13:58:34Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "0fbcb9bfd8165053dab782c5977b490c5da0c598",
          "body": null,
          "is_bot": false,
          "headline": "pr feedback",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-06-11T13:56:52Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3b81ae80c9f3d7e6e101b63206fac314c88f4241",
          "body": "Infusion administrations were drawn as fixed-width bars centered on their start time instead of spanning the infusion duration. The protocol chart now renders each infusion as an area rectangle covering [start, start + infusion time] (height = dose) - one series per infusion so overlapping infusions stay readable - and extends the x-axis to cover infusions that end after the protocol end time. Bolus/oral administrations are unchanged.",
          "is_bot": false,
          "headline": "Show infusion duration in the protocol administration chart",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-06-11T13:19:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e21a2ac710257ad797ae7c182bba91728eade8b8",
          "body": "…meter_set",
          "is_bot": false,
          "headline": "Merge remote-tracking branch 'origin/V13' into feature/overwrite_para…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-06-09T15:37:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ca3540797b892e657aaaca81ae62fb205d8a6481",
          "body": "Remove redundant usings and sort imports",
          "is_bot": false,
          "headline": "Merge pull request #3571 from Open-Systems-Pharmacology/cleanup_usings",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-06-09T14:06:14Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "dcd6da782c8cd57fb074df5d023393bfdb1cb4da",
          "body": "Optimize using directives across the files flagged by a ReSharper\ninspection: drop redundant usings and sort the remainder (System-first,\nmatching the prevailing convention). Also folds in minor formatting\ntidy-ups already in progress for FlatContainerRepository,\nParameterSetUpdater, and ParameterDistributionRepositorySpecs.",
          "is_bot": false,
          "headline": "Remove redundant usings and sort imports",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-06-09T13:52:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a96817e9037d6394a79db9289a304dfdea1012b2",
          "body": "Remove dead code in PKSim",
          "is_bot": false,
          "headline": "Merge pull request #3569 from Open-Systems-Pharmacology/remove-dead-code",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-06-03T19:29:39Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "98771f85bcb833a818b6f0ea09598a48cbb44d92",
          "body": null,
          "is_bot": false,
          "headline": "update core",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-06-03T19:13:22Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8623a419ecc0c058b0e5b9702cbb10ed1b7b6b27",
          "body": "Re-checked the R-reachable PKSim.Core/.Infrastructure/.Assets surface against the OSPSuite-R reflection manifest (which names only PKSim.Core.Snapshots.ParameterRange). After the DI / group-resolution rescue (report and markdown builders, NHibernate ORM mappings, project converters, and spec factori\n[…]\neptions, 3 events, 5 extension classes, DataNamingService, and 5 dead constant groups (PageTransfer, Reporting, Comparison, Distribution, SimulationResults). Build + PKSim.Tests + PKSim.R.Tests green.",
          "is_bot": false,
          "headline": "Remove dead code in R-reachable PKSim assemblies (R-manifest-cleared)",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-06-03T17:40:25Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f14d9e90381c1c4e83afd21c493fb8680bd3d4bb",
          "body": "…_into_V13\n\nMerge develop into V13",
          "is_bot": false,
          "headline": "Merge pull request #3570 from Open-Systems-Pharmacology/merge_develop…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-06-03T16:31:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "720462b1392621b1dea832505700bedc69d0ea81",
          "body": "Brings develop's recent fixes into V13:\n- #3511 Distributed parameter overwrite loses distribution\n- #3530 Modified distributed parameters not exported to snapshot\n- #3534 Do not export ontogeny factor parameters in Individual snapshot\n- #3548 Update dimensions\n- #3562 Reset of distributed individua\n[…]\nt.Data.Sqlite stack).\nV13's project-structure changes preserved: removed PKSim.Assets.Images,\nPKSimRDependencyResolution, and build-nightly_12.3.yml; kept the\nPKSim.UI.Starter -> PKSim.Starter rename.",
          "is_bot": false,
          "headline": "Merge branch 'develop' into V13",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-06-03T15:09:03Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a9c4b67ba0cf01d5571c79b49d4080a51ac68da9",
          "body": "EntityRules and EmptyRepresentationInfo (PKSim.Core) had no production references, only a serializer-coverage skip-list entry each, and were verified unreachable from R (rSharp/OSPSuite-R).",
          "is_bot": false,
          "headline": "Remove dead code referenced only by tests",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-06-03T14:39:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "095d76a15fe01c130a0d4f470196f1423dc1ce86",
          "body": "Removes unused types, interface methods (declaration + all implementors),\nand unreferenced methods in the non-R-reachable assemblies. Candidates were\nflagged by ReSharper inspectcode and confirmed unused via Roslyn\nFindReferencesAsync. DI-registered, group-resolved (context menus,\nserializers), refl\n[…]\n icon-registry members\nwere excluded; the R-reachable surface is deferred for a separate R-verified pass.\n\nBuild and unit suites (PKSim.Tests, PKSim.UI.Tests) remain green and\nunchanged from baseline.",
          "is_bot": false,
          "headline": "Remove dead code in PKSim.Presentation and PKSim.UI",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-06-02T20:27:43Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "e0b1abc494d00d585254c3e511ff39ba59ea821f",
          "body": "…3.0.118\n\nupdate_core_13.0.118",
          "is_bot": false,
          "headline": "Merge pull request #3567 from Open-Systems-Pharmacology/update_core_1…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-05-29T21:32:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c275821bfe09f59f2cdebbbde58a7bc989aa446d",
          "body": null,
          "is_bot": false,
          "headline": "update_core_13.0.118",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-05-29T20:35:02Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c7c9338852fa02e79d5c6257dc66e1f628b179f9",
          "body": "Update building block templates",
          "is_bot": false,
          "headline": "Merge pull request #3566 from Yuri05/update_BB_Templates_12.3",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-05-29T16:03:25Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "14963b221a31aa5e79ddc6c8c2b86086bb8379b0",
          "body": null,
          "is_bot": false,
          "headline": "Update building block templates",
          "author_name": "Yuri05",
          "author_login": null,
          "committed_at": "2026-05-29T15:20:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d1974daad1e8359ec13bb15b3596c773254f18a1",
          "body": "…n does not work (#3564)\n\nDistributed parameters in the simulation model (Model.Root) are built with DefaultValue=null. A distributed organ volume's DefaultValue is computed per-individual by CreateIndividualAlgorithm and lives only on the individual instance, so the model build (working from static\n[…]\nalue onto the matching distributed model parameter after model creation, mirroring how molecule parameters are already reconciled.\n\nCo-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Fixes #3562 Reset of distributed individual parameters in a simulatio…",
          "author_name": "Michael Sevestre",
          "author_login": "msevestre",
          "committed_at": "2026-05-28T07:35:51Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "79d2ebb2c2d543defe73b3eac645efab0c4674a3",
          "body": "…-snapshot-exchange\n\nFixes #3560 Add headless snapshot exchange to PKSim.R.Exchange",
          "is_bot": false,
          "headline": "Merge pull request #3563 from Open-Systems-Pharmacology/3560-headless…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-05-27T20:33:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8634ec34273512d866da277b6663079138977e09",
          "body": "PKSim.R.Exchange.SnapshotExchange (CreateModule, CreateIndividualBuildingBlock,\nCreateExpressionProfileBuildingBlock) is a headless counterpart to\nPKSim.Starter.SnapshotExchange, resolving services from the R Api container so MoBi\ncan convert PK-Sim modules from a snapshot without the UI/Presentation-laden\nPKSim.Starter.dll.\n\nLoadSimulationsFromSnapshot now passes runSimulations: false so it only loads the\nsimulations; running them is left to the caller.",
          "is_bot": false,
          "headline": "Fixes #3560 Add headless snapshot exchange to PKSim.R.Exchange",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-05-27T15:38:22Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "81ac72d699eb977df1c9f8321a754364c762ee03",
          "body": "…(#3561)\n\n* Add new regression test for #3530\n\n* Fixes #3530 Modified distributed parameters not exported to snapshot\n\nWhen a distributed parameter (e.g. an organ volume) is modified in a\nsimulation and committed back to its template building block, the\nparent IDistributedParameter must end up with \n[…]\notect the branch if the order is\never rearranged.\n\nCo-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Fixes #3530 Modified distributed parameters not exported to snapshot …",
          "author_name": "Michael Sevestre",
          "author_login": "msevestre",
          "committed_at": "2026-05-27T12:00:12Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "e080ce9abc0a5f87e3ec1d9a44d9b897fa536315",
          "body": "…cally-add-observed-data-for-comparisons\n\nFixes #3096 Automatically add observed data to simulation comparisons",
          "is_bot": false,
          "headline": "Merge pull request #3553 from Open-Systems-Pharmacology/3096-automati…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-05-26T13:11:32Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ed2768df46f98c9d2b2c3bcf8a595cc2bc547b07",
          "body": "…ulations-from-snapshot\n\nFixes #3556 Load simulations from a PK-Sim snapshot",
          "is_bot": false,
          "headline": "Merge pull request #3558 from Open-Systems-Pharmacology/3556-load-sim…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-05-26T12:32:11Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ae8a0deb3b5501f166e0e902d604a158ccb53d9e",
          "body": null,
          "is_bot": false,
          "headline": "Document case-sensitive name matching in LoadSimulationsFromSnapshot",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-05-25T18:03:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b778e29a17a873f7f841dbede5f6cdca074f44c3",
          "body": null,
          "is_bot": false,
          "headline": "Unwrap async exceptions with GetAwaiter().GetResult()",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-05-25T18:02:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e67937410380067558129b76117a2cf675e9363b",
          "body": null,
          "is_bot": false,
          "headline": "Return empty array when snapshot load yields no project",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-05-25T17:04:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5012e38468d4aef08719f18859b33a9eee37d1b5",
          "body": "…sk specs",
          "is_bot": false,
          "headline": "Use unique temp folders instead of hard-coded C:\\ paths in SnapshotTa…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-05-25T17:02:16Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "adaceaada5d803f9d6dbe49ab8dd2045938851b8",
          "body": null,
          "is_bot": false,
          "headline": "Return OSPSuite.R.Domain.Simulation[] from LoadSimulationsFromSnapshot",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-05-25T16:57:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0daa15d071d6c55ca05eb512318f336293e97407",
          "body": null,
          "is_bot": false,
          "headline": "Fixes #3556 Load simulations from a PK-Sim snapshot",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-05-25T16:52:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6b5952d5ac0926a988c444970f57cfed08d99a2e",
          "body": "…meter_set",
          "is_bot": false,
          "headline": "Merge remote-tracking branch 'origin/V13' into feature/overwrite_para…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-05-25T12:45:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d8e4613738d6905ae2c2c3d3c3cf52b3238262fd",
          "body": null,
          "is_bot": false,
          "headline": "Drop explanatory comment on time-profile filter",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-05-22T18:15:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8adc7abd5e26b3419257429cd8bff2bafe04c766",
          "body": "…arts\n\nOther simulation chart types (PredictedVsObserved, ResidualsVsTime, etc.)\ncould otherwise win the FirstOrDefault match and propagate unintended\nstyling to the comparison.\n\nAddresses review comment on #3553.",
          "is_bot": false,
          "headline": "Restrict individual comparison source-curve lookup to time profile ch…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-05-22T18:14:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2b7bf89ed399fa78504375caf582746084f4c253",
          "body": "Drag/drop or task-created comparisons now also display the observed\ndata referenced by the included simulations, with curve styling copied\nfrom each simulation's own time-profile charts.\n\nCentralizes the observed-data-from-simulations logic in a new\nObservedDataInComparisonTask used by SimulationCom\n[…]\nulationComparisonPresenter,\nso every entry point (initial creation, configure dialog, drag/drop of\na simulation, creating a new time-profile analysis on an existing\ncomparison) gets the same behavior.",
          "is_bot": false,
          "headline": "Fixes #3096 Automatically add observed data to simulation comparisons",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-05-22T17:42:48Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "079bb9b867328ddf9a33bf4cd329d9b69cadcc38",
          "body": null,
          "is_bot": false,
          "headline": "update core",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-05-21T21:40:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "765911705c5f7552cd495933769c14069d259fe3",
          "body": "…nal-age-unit-display\n\nFixes #3549 IndividualBuildingBlock displays gestational age with wrong unit conversion",
          "is_bot": false,
          "headline": "Merge pull request #3552 from Open-Systems-Pharmacology/3549-gestatio…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-05-20T19:08:49Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "69ccbcc39f87afedb99cd7b797774bf4022017cd",
          "body": "Co-authored-by: Yuri05 <Yuri05@github.com>",
          "is_bot": false,
          "headline": "Fixes #3548 Update dimensions (#3550)",
          "author_name": "Juri Solodenko",
          "author_login": "Yuri05",
          "committed_at": "2026-05-20T16:33:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3cacb955b3088a7a533dcd954e720e2594a7ec11",
          "body": "…ng unit conversion",
          "is_bot": false,
          "headline": "Fixes #3549 IndividualBuildingBlock displays gestational age with wro…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-05-20T13:59:03Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b6b299d62b355a8d54555ed72be4a405a1f55f5d",
          "body": "…cross-platform\n\nFixes #3537 Make PKSim.R honestly net10.0 cross-platform",
          "is_bot": false,
          "headline": "Merge pull request #3547 from Open-Systems-Pharmacology/3537-pksim-r-…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-05-20T11:44:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2ba73e1d38cd3cd0849a2684b5b4a03331a1d951",
          "body": null,
          "is_bot": false,
          "headline": "update core",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-05-19T17:34:39Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7847fa8213fa41547d30498478d42a1d229347e3",
          "body": null,
          "is_bot": false,
          "headline": "Document CLISimulationChartsLoader.LoadChartsFor no-op intent",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-05-19T14:24:11Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3e6d0a984cf8564a50895d51e5c1e3af01d4c6e4",
          "body": "Restore src/PKSim.R/PKSim.R.csproj (and PKSim.R.Tests.csproj) from the\ntemporary net10.0-windows landed in #3533 back to honest cross-platform\nnet10.0 by removing OSPSuite.Presentation and PKSim.Presentation from\nPKSim.Infrastructure's transitive closure.\n\n- src/PKSim.R/PKSim.R.csproj               \n[…]\nProjectRef)\n\nVerification:\n- dotnet nuget why src/PKSim.R/PKSim.R.csproj OSPSuite.Presentation\n  reports no path.\n- PKSim.R.Tests: 31/31 pass.\n- PKSim.Tests:   5092/5098 pass (6 pre-existing skipped).",
          "is_bot": false,
          "headline": "Fixes #3537 Make PKSim.R honestly net10.0 cross-platform",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-05-19T14:01:56Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "55bfc85ae93ebc850033cf1b67c43c0b5da66f11",
          "body": "…3.0.111\n\nupdate core",
          "is_bot": false,
          "headline": "Merge pull request #3540 from Open-Systems-Pharmacology/update_core_1…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-05-14T13:19:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "11d57843c06dbe9678429355611a841b883c3fb1",
          "body": null,
          "is_bot": false,
          "headline": "update core",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-05-14T13:06:54Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e8c3452dce8bf1d3eb70a4981d588e4265a4661c",
          "body": "…application-icon-refactor\n\nFixes #3533 Consume OSPSuite.Core ApplicationIcon refactor (13.0.110)",
          "is_bot": false,
          "headline": "Merge pull request #3539 from Open-Systems-Pharmacology/3533-consume-…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-05-13T14:33:22Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f3663413a3b17af1ab6e5193ed75d2c62bf630cf",
          "body": "Bumps OSPSuite.* references to 13.0.110, which ships both #2858\n(ApplicationIcon is a pure cross-platform resource library, Windows rendering\nrelocated) and #2864 (ApplicationIconExtensions moved from OSPSuite.UI to\nOSPSuite.Presentation).\n\nMechanical call-site updates for the removed implicit Appli\n[…]\npdated to match;\nAbout.bmp deleted as dead. The deleted ApplicationImage wrapper class from\nOSPSuite.Assets is replaced by direct use of System.Drawing.Image inside the\nrelocated ApplicationImages.cs.",
          "is_bot": false,
          "headline": "Fixes #3533 Consume OSPSuite.Core ApplicationIcon refactor",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-05-13T13:11:10Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "11077b16434fa559bc064dbf626519935e33b0bb",
          "body": "…apshot (#3538)\n\nOntogeny factor and ontogeny factor table parameters are owned by the\nexpression profile building block. Including them in the Individual\nsnapshot caused \"Snapshot parameter ... was not found\" warnings on\nreload, since they only exist after the expression profile is added.",
          "is_bot": false,
          "headline": "Fixes #3534 Do not export ontogeny factor parameters in Individual sn…",
          "author_name": "Michael Sevestre",
          "author_login": "msevestre",
          "committed_at": "2026-05-10T18:51:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "689f5d561dd25a26862338a4aab75c1854876c25",
          "body": "* Fixes #3511 Distributed parameter overwrite loses distribution\n\nAdd integration tests covering the issue: when a distributed parameter\nis overwritten in the individual (e.g. Liver Volume) and a simulation\nis built from that individual, the resulting simulation parameter must\nremain distributed (Di\n[…]\nh\nthe overwritten value), not collapse to a plain constant parameter.\n\nThe actual fix lives in OSPSuite.Core (Open-Systems-Pharmacology/OSPSuite.Core#2838).\n\n* Update OSPSuite.Core packages to 12.3.32",
          "is_bot": false,
          "headline": "Fixes #3511 Distributed parameter overwrite loses distribution (#3532)",
          "author_name": "Michael Sevestre",
          "author_login": "msevestre",
          "committed_at": "2026-05-09T16:10:24Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "63cad1d6bb4c718aa2571a54abb14f10c0f0cfae",
          "body": "…to-net10",
          "is_bot": false,
          "headline": "Merge pull request #3536 from Open-Systems-Pharmacology/3535-upgrade-…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-05-08T20:31:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d0c649c4eeb4bd6d4de88fc8d17a923bfd98b06a",
          "body": "Workflow-level env exposed the secret to every job in the workflow,\nincluding unrelated ones like get-latest-commit-timespan and the\ncleanup-job. Move it onto the dotnet build step that produces signed/\npublished outputs so the secret is only injected where it's actually\nneeded.",
          "is_bot": false,
          "headline": "Scope DevExpress_License to the Build step that ships artifacts",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-05-08T19:52:55Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0d94e4775942d11c8190b5e197491a7258ecd593",
          "body": null,
          "is_bot": false,
          "headline": "Fall back to windows-latest when GHA_DEFAULT_RUNNER_WINDOWS is unset",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-05-08T19:51:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b32477dfd5fe306c3afc931f024c7ea653788575",
          "body": "… to 10.0.1",
          "is_bot": false,
          "headline": "Bump Microsoft.Data.Sqlite to 10.0.7 and NHibernate.Extensions.Sqlite…",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-05-08T18:19:52Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "317a4f17d4a8625470bc56f87f550b5efc2128a2",
          "body": null,
          "is_bot": false,
          "headline": "Always upload test log artifact even on test failure",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-05-08T18:01:56Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c082e883053b9a83f8c276a620ec9e58ff06665d",
          "body": null,
          "is_bot": false,
          "headline": "Fixes #3535 Upgrade to .NET 10",
          "author_name": "Robert McIntosh",
          "author_login": "rwmcintosh",
          "committed_at": "2026-05-08T18:00:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        }
      ],
      "releases_count": 19,
      "commits_last_year": 525,
      "latest_release_at": "2026-07-07T09:31:45Z",
      "latest_release_tag": "v12.3.173",
      "releases_from_tags": false,
      "days_since_last_push": 0,
      "active_weeks_last_year": 50,
      "days_since_latest_release": 23,
      "mean_days_between_releases": 188.9
    },
    "community": {
      "has_readme": true,
      "has_license": true,
      "has_description": true,
      "has_contributing": false,
      "health_percentage": 50,
      "has_issue_template": false,
      "has_code_of_conduct": false,
      "has_pull_request_template": true
    },
    "ecosystem": {
      "packages": []
    },
    "popularity": {
      "forks": 66,
      "stars": 169,
      "watchers": 6,
      "fork_history": {
        "days": [
          {
            "date": "2017-03-28",
            "count": 1
          },
          {
            "date": "2017-12-09",
            "count": 1
          },
          {
            "date": "2018-01-12",
            "count": 1
          },
          {
            "date": "2018-05-22",
            "count": 1
          },
          {
            "date": "2018-06-01",
            "count": 1
          },
          {
            "date": "2018-07-25",
            "count": 1
          },
          {
            "date": "2018-08-16",
            "count": 1
          },
          {
            "date": "2018-09-13",
            "count": 1
          },
          {
            "date": "2018-09-18",
            "count": 1
          },
          {
            "date": "2018-11-04",
            "count": 1
          },
          {
            "date": "2019-03-13",
            "count": 1
          },
          {
            "date": "2019-04-08",
            "count": 1
          },
          {
            "date": "2019-06-07",
            "count": 1
          },
          {
            "date": "2019-06-19",
            "count": 1
          },
          {
            "date": "2019-06-27",
            "count": 1
          },
          {
            "date": "2019-08-05",
            "count": 1
          },
          {
            "date": "2019-08-14",
            "count": 1
          },
          {
            "date": "2019-11-08",
            "count": 1
          },
          {
            "date": "2019-11-28",
            "count": 1
          },
          {
            "date": "2020-01-02",
            "count": 1
          },
          {
            "date": "2020-01-16",
            "count": 1
          },
          {
            "date": "2020-02-06",
            "count": 1
          },
          {
            "date": "2020-03-26",
            "count": 1
          },
          {
            "date": "2020-06-10",
            "count": 1
          },
          {
            "date": "2020-06-12",
            "count": 1
          },
          {
            "date": "2020-06-14",
            "count": 1
          },
          {
            "date": "2020-07-02",
            "count": 1
          },
          {
            "date": "2021-07-16",
            "count": 1
          },
          {
            "date": "2021-08-23",
            "count": 1
          },
          {
            "date": "2021-10-23",
            "count": 1
          },
          {
            "date": "2021-10-24",
            "count": 1
          },
          {
            "date": "2021-12-15",
            "count": 1
          },
          {
            "date": "2022-02-07",
            "count": 1
          },
          {
            "date": "2022-03-08",
            "count": 1
          },
          {
            "date": "2022-03-14",
            "count": 1
          },
          {
            "date": "2022-03-24",
            "count": 1
          },
          {
            "date": "2023-01-19",
            "count": 1
          },
          {
            "date": "2023-06-06",
            "count": 1
          },
          {
            "date": "2023-07-14",
            "count": 1
          },
          {
            "date": "2023-07-21",
            "count": 1
          },
          {
            "date": "2023-08-10",
            "count": 1
          },
          {
            "date": "2023-10-16",
            "count": 1
          },
          {
            "date": "2023-12-16",
            "count": 1
          },
          {
            "date": "2024-04-25",
            "count": 1
          },
          {
            "date": "2024-09-06",
            "count": 1
          },
          {
            "date": "2024-11-24",
            "count": 1
          },
          {
            "date": "2025-02-18",
            "count": 1
          },
          {
            "date": "2025-02-24",
            "count": 1
          },
          {
            "date": "2025-03-13",
            "count": 1
          },
          {
            "date": "2025-04-16",
            "count": 1
          },
          {
            "date": "2025-06-12",
            "count": 1
          },
          {
            "date": "2025-07-07",
            "count": 1
          },
          {
            "date": "2025-07-17",
            "count": 1
          },
          {
            "date": "2025-07-29",
            "count": 1
          },
          {
            "date": "2025-10-23",
            "count": 1
          },
          {
            "date": "2025-11-17",
            "count": 1
          },
          {
            "date": "2025-11-20",
            "count": 1
          },
          {
            "date": "2025-12-19",
            "count": 1
          },
          {
            "date": "2026-02-05",
            "count": 1
          },
          {
            "date": "2026-03-01",
            "count": 1
          },
          {
            "date": "2026-04-27",
            "count": 1
          },
          {
            "date": "2026-05-07",
            "count": 1
          },
          {
            "date": "2026-05-15",
            "count": 2
          },
          {
            "date": "2026-05-25",
            "count": 1
          },
          {
            "date": "2026-07-23",
            "count": 1
          }
        ],
        "complete": true,
        "collected": 66,
        "total_forks": 66
      },
      "star_history": null,
      "open_issues_and_prs": 461
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [
        "examples"
      ],
      "has_llms_txt": false,
      "has_dockerfile": false,
      "has_mcp_signal": false,
      "bootstrap_files": [],
      "api_schema_files": [],
      "has_devcontainer": false,
      "typecheck_configs": [],
      "toolchain_manifests": [
        "src/PKSim.Assets/PKSim.Assets.csproj",
        "src/PKSim.BatchTool/PKSim.BatchTool.csproj",
        "src/PKSim.CLI.Core/PKSim.CLI.Core.csproj",
        "src/PKSim.CLI/PKSim.CLI.csproj",
        "src/PKSim.Core/PKSim.Core.csproj",
        "src/PKSim.Infrastructure/PKSim.Infrastructure.csproj",
        "src/PKSim.Presentation/PKSim.Presentation.csproj",
        "src/PKSim.R/PKSim.R.csproj",
        "src/PKSim.Starter/PKSim.Starter.csproj",
        "src/PKSim.UI/PKSim.UI.csproj",
        "src/PKSim/PKSim.csproj",
        "tests/PKSim.R.Tests/PKSim.R.Tests.csproj",
        "tests/PKSim.Tests/PKSim.Tests.csproj",
        "tests/PKSim.UI.Tests/PKSim.UI.Tests.csproj"
      ],
      "largest_source_bytes": 180785,
      "source_files_sampled": 3708,
      "oversized_source_files": 3,
      "agent_instruction_files": [],
      "agent_instruction_max_bytes": null
    },
    "dependencies": {
      "manifests": [],
      "advisories": {
        "error": null,
        "scope": "repository_graph",
        "source": "osv",
        "findings": [
          {
            "name": "Newtonsoft.Json",
            "direct": true,
            "version": "11.0.2",
            "severity": "high",
            "ecosystem": "nuget",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-5crp-9r3c-p9vr"
            ],
            "fixed_version": "13.0.1",
            "advisory_count": 1,
            "oldest_advisory_days": 1499
          },
          {
            "name": "SharpZipLib",
            "direct": false,
            "version": "0.86.0",
            "severity": "high",
            "ecosystem": "nuget",
            "cvss_score": 7.3,
            "advisory_ids": [
              "GHSA-cqj4-m2pc-v9m5",
              "GHSA-m22m-h4rf-pwq3"
            ],
            "fixed_version": "1.3.3",
            "advisory_count": 2,
            "oldest_advisory_days": 1640
          },
          {
            "name": "NHibernate",
            "direct": false,
            "version": "4.1.1.4000",
            "severity": "moderate",
            "ecosystem": "nuget",
            "cvss_score": 5.9,
            "advisory_ids": [
              "GHSA-fg4q-ccq8-3r5q"
            ],
            "fixed_version": "5.5.2",
            "advisory_count": 1,
            "oldest_advisory_days": 752
          }
        ],
        "collected": true,
        "malicious": [],
        "truncated": false,
        "by_severity": {
          "high": 2,
          "moderate": 1
        },
        "advisory_count": 4,
        "affected_count": 3,
        "assessed_count": 90,
        "malicious_count": 0,
        "assessed_package": null,
        "unassessed_count": 0,
        "direct_affected_count": 1
      },
      "ecosystems": [],
      "dependencies": [
        {
          "name": "OSPSuite.Assets",
          "manifest": "src/PKSim.Assets/PKSim.Assets.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "OSPSuite.Assets.Images",
          "manifest": "src/PKSim.Assets/PKSim.Assets.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "OSPSuite.Core",
          "manifest": "src/PKSim.Assets/PKSim.Assets.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "DevExpress.Win.Design",
          "manifest": "src/PKSim.BatchTool/PKSim.BatchTool.csproj",
          "ecosystem": "nuget",
          "version_constraint": "25.2.7"
        },
        {
          "name": "OSPSuite.Core",
          "manifest": "src/PKSim.BatchTool/PKSim.BatchTool.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "OSPSuite.Assets",
          "manifest": "src/PKSim.BatchTool/PKSim.BatchTool.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "OSPSuite.FuncParser",
          "manifest": "src/PKSim.BatchTool/PKSim.BatchTool.csproj",
          "ecosystem": "nuget",
          "version_constraint": "5.0.0.3"
        },
        {
          "name": "OSPSuite.SimModel",
          "manifest": "src/PKSim.BatchTool/PKSim.BatchTool.csproj",
          "ecosystem": "nuget",
          "version_constraint": "5.0.0.80"
        },
        {
          "name": "OSPSuite.SimModelSolver_CVODES",
          "manifest": "src/PKSim.BatchTool/PKSim.BatchTool.csproj",
          "ecosystem": "nuget",
          "version_constraint": "5.0.0.53"
        },
        {
          "name": "Microsoft.Data.Sqlite",
          "manifest": "src/PKSim.BatchTool/PKSim.BatchTool.csproj",
          "ecosystem": "nuget",
          "version_constraint": "10.0.7"
        },
        {
          "name": "SQLitePCLRaw.bundle_e_sqlite3",
          "manifest": "src/PKSim.BatchTool/PKSim.BatchTool.csproj",
          "ecosystem": "nuget",
          "version_constraint": "3.0.3"
        },
        {
          "name": "OSPSuite.Assets",
          "manifest": "src/PKSim.CLI.Core/PKSim.CLI.Core.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "OSPSuite.Utility",
          "manifest": "src/PKSim.CLI.Core/PKSim.CLI.Core.csproj",
          "ecosystem": "nuget",
          "version_constraint": "5.0.0.11"
        },
        {
          "name": "OSPSuite.Core",
          "manifest": "src/PKSim.CLI.Core/PKSim.CLI.Core.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "OSPSuite.CLI.Core",
          "manifest": "src/PKSim.CLI.Core/PKSim.CLI.Core.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "CommandLineParser",
          "manifest": "src/PKSim.CLI/PKSim.CLI.csproj",
          "ecosystem": "nuget",
          "version_constraint": "2.9.1"
        },
        {
          "name": "Microsoft.Extensions.Logging.Console",
          "manifest": "src/PKSim.CLI/PKSim.CLI.csproj",
          "ecosystem": "nuget",
          "version_constraint": "9.0.2"
        },
        {
          "name": "OSPSuite.Core",
          "manifest": "src/PKSim.CLI/PKSim.CLI.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "OSPSuite.Presentation",
          "manifest": "src/PKSim.CLI/PKSim.CLI.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "OSPSuite.Assets",
          "manifest": "src/PKSim.CLI/PKSim.CLI.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "OSPSuite.Utility",
          "manifest": "src/PKSim.CLI/PKSim.CLI.csproj",
          "ecosystem": "nuget",
          "version_constraint": "5.0.0.11"
        },
        {
          "name": "OSPSuite.FuncParser",
          "manifest": "src/PKSim.CLI/PKSim.CLI.csproj",
          "ecosystem": "nuget",
          "version_constraint": "5.0.0.3"
        },
        {
          "name": "OSPSuite.SimModel",
          "manifest": "src/PKSim.CLI/PKSim.CLI.csproj",
          "ecosystem": "nuget",
          "version_constraint": "5.0.0.80"
        },
        {
          "name": "OSPSuite.SimModelSolver_CVODES",
          "manifest": "src/PKSim.CLI/PKSim.CLI.csproj",
          "ecosystem": "nuget",
          "version_constraint": "5.0.0.53"
        },
        {
          "name": "Microsoft.Data.Sqlite",
          "manifest": "src/PKSim.CLI/PKSim.CLI.csproj",
          "ecosystem": "nuget",
          "version_constraint": "10.0.7"
        },
        {
          "name": "SQLitePCLRaw.bundle_e_sqlite3",
          "manifest": "src/PKSim.CLI/PKSim.CLI.csproj",
          "ecosystem": "nuget",
          "version_constraint": "3.0.3"
        },
        {
          "name": "Newtonsoft.Json",
          "manifest": "src/PKSim.Core/PKSim.Core.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.3"
        },
        {
          "name": "OSPSuite.Utility",
          "manifest": "src/PKSim.Core/PKSim.Core.csproj",
          "ecosystem": "nuget",
          "version_constraint": "5.0.0.11"
        },
        {
          "name": "OSPSuite.Core",
          "manifest": "src/PKSim.Core/PKSim.Core.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "OSPSuite.Assets",
          "manifest": "src/PKSim.Core/PKSim.Core.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "OSPSuite.Assets.Images",
          "manifest": "src/PKSim.Core/PKSim.Core.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "OSPSuite.Infrastructure.Import",
          "manifest": "src/PKSim.Core/PKSim.Core.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "System.ComponentModel.Annotations",
          "manifest": "src/PKSim.Core/PKSim.Core.csproj",
          "ecosystem": "nuget",
          "version_constraint": "5.0.0"
        },
        {
          "name": "FluentNHibernate",
          "manifest": "src/PKSim.Infrastructure/PKSim.Infrastructure.csproj",
          "ecosystem": "nuget",
          "version_constraint": "3.4.0"
        },
        {
          "name": "LumenWorksCsvReader",
          "manifest": "src/PKSim.Infrastructure/PKSim.Infrastructure.csproj",
          "ecosystem": "nuget",
          "version_constraint": "4.0.0"
        },
        {
          "name": "MarkdownLog.NS20",
          "manifest": "src/PKSim.Infrastructure/PKSim.Infrastructure.csproj",
          "ecosystem": "nuget",
          "version_constraint": "0.10.1"
        },
        {
          "name": "Microsoft.Extensions.Logging",
          "manifest": "src/PKSim.Infrastructure/PKSim.Infrastructure.csproj",
          "ecosystem": "nuget",
          "version_constraint": "9.0.2"
        },
        {
          "name": "Microsoft.Extensions.Logging.Abstractions",
          "manifest": "src/PKSim.Infrastructure/PKSim.Infrastructure.csproj",
          "ecosystem": "nuget",
          "version_constraint": "9.0.2"
        },
        {
          "name": "Newtonsoft.Json.Schema",
          "manifest": "src/PKSim.Infrastructure/PKSim.Infrastructure.csproj",
          "ecosystem": "nuget",
          "version_constraint": "4.0.1"
        },
        {
          "name": "Newtonsoft.Json",
          "manifest": "src/PKSim.Infrastructure/PKSim.Infrastructure.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.3"
        },
        {
          "name": "NHibernate.Extensions.Sqlite",
          "manifest": "src/PKSim.Infrastructure/PKSim.Infrastructure.csproj",
          "ecosystem": "nuget",
          "version_constraint": "10.0.1"
        },
        {
          "name": "OSPSuite.Assets",
          "manifest": "src/PKSim.Infrastructure/PKSim.Infrastructure.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "OSPSuite.Core",
          "manifest": "src/PKSim.Infrastructure/PKSim.Infrastructure.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "OSPSuite.Infrastructure",
          "manifest": "src/PKSim.Infrastructure/PKSim.Infrastructure.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "OSPSuite.Infrastructure.Castle",
          "manifest": "src/PKSim.Infrastructure/PKSim.Infrastructure.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "OSPSuite.Infrastructure.Export",
          "manifest": "src/PKSim.Infrastructure/PKSim.Infrastructure.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "OSPSuite.Infrastructure.Import",
          "manifest": "src/PKSim.Infrastructure/PKSim.Infrastructure.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "OSPSuite.Infrastructure.Serialization",
          "manifest": "src/PKSim.Infrastructure/PKSim.Infrastructure.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "OSPSuite.Utility",
          "manifest": "src/PKSim.Infrastructure/PKSim.Infrastructure.csproj",
          "ecosystem": "nuget",
          "version_constraint": "5.0.0.11"
        },
        {
          "name": "Microsoft.Data.Sqlite",
          "manifest": "src/PKSim.Infrastructure/PKSim.Infrastructure.csproj",
          "ecosystem": "nuget",
          "version_constraint": "10.0.7"
        },
        {
          "name": "SQLitePCLRaw.bundle_e_sqlite3",
          "manifest": "src/PKSim.Infrastructure/PKSim.Infrastructure.csproj",
          "ecosystem": "nuget",
          "version_constraint": "3.0.3"
        },
        {
          "name": "OSPSuite.Assets",
          "manifest": "src/PKSim.Presentation/PKSim.Presentation.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "OSPSuite.TeXReporting",
          "manifest": "src/PKSim.Presentation/PKSim.Presentation.csproj",
          "ecosystem": "nuget",
          "version_constraint": "3.0.1.3"
        },
        {
          "name": "OSPSuite.Utility",
          "manifest": "src/PKSim.Presentation/PKSim.Presentation.csproj",
          "ecosystem": "nuget",
          "version_constraint": "5.0.0.11"
        },
        {
          "name": "OSPSuite.Presentation",
          "manifest": "src/PKSim.Presentation/PKSim.Presentation.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "OSPSuite.Presentation.Serialization",
          "manifest": "src/PKSim.Presentation/PKSim.Presentation.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "OSPSuite.Core",
          "manifest": "src/PKSim.Presentation/PKSim.Presentation.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "OSPSuite.Assets",
          "manifest": "src/PKSim.R/PKSim.R.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "OSPSuite.R",
          "manifest": "src/PKSim.R/PKSim.R.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "OSPSuite.Utility",
          "manifest": "src/PKSim.R/PKSim.R.csproj",
          "ecosystem": "nuget",
          "version_constraint": "5.0.0.11"
        },
        {
          "name": "OSPSuite.Core",
          "manifest": "src/PKSim.R/PKSim.R.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "OSPSuite.FuncParser",
          "manifest": "src/PKSim.R/PKSim.R.csproj",
          "ecosystem": "nuget",
          "version_constraint": "5.0.0.3"
        },
        {
          "name": "OSPSuite.SimModel",
          "manifest": "src/PKSim.R/PKSim.R.csproj",
          "ecosystem": "nuget",
          "version_constraint": "5.0.0.80"
        },
        {
          "name": "OSPSuite.SimModelSolver_CVODES",
          "manifest": "src/PKSim.R/PKSim.R.csproj",
          "ecosystem": "nuget",
          "version_constraint": "5.0.0.53"
        },
        {
          "name": "Microsoft.Data.Sqlite",
          "manifest": "src/PKSim.R/PKSim.R.csproj",
          "ecosystem": "nuget",
          "version_constraint": "10.0.7"
        },
        {
          "name": "SQLitePCLRaw.bundle_e_sqlite3",
          "manifest": "src/PKSim.R/PKSim.R.csproj",
          "ecosystem": "nuget",
          "version_constraint": "3.0.3"
        },
        {
          "name": "OSPSuite.Presentation",
          "manifest": "src/PKSim.Starter/PKSim.Starter.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "OSPSuite.UI",
          "manifest": "src/PKSim.Starter/PKSim.Starter.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "OSPSuite.Core",
          "manifest": "src/PKSim.Starter/PKSim.Starter.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "OSPSuite.Infrastructure",
          "manifest": "src/PKSim.Starter/PKSim.Starter.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "Microsoft.Extensions.Logging",
          "manifest": "src/PKSim.UI/PKSim.UI.csproj",
          "ecosystem": "nuget",
          "version_constraint": "9.0.2"
        },
        {
          "name": "Microsoft.Extensions.Logging.Debug",
          "manifest": "src/PKSim.UI/PKSim.UI.csproj",
          "ecosystem": "nuget",
          "version_constraint": "9.0.2"
        },
        {
          "name": "OSPSuite.Assets",
          "manifest": "src/PKSim.UI/PKSim.UI.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "OSPSuite.DataBinding",
          "manifest": "src/PKSim.UI/PKSim.UI.csproj",
          "ecosystem": "nuget",
          "version_constraint": "4.0.0.5"
        },
        {
          "name": "OSPSuite.DataBinding.DevExpress",
          "manifest": "src/PKSim.UI/PKSim.UI.csproj",
          "ecosystem": "nuget",
          "version_constraint": "7.0.0.6"
        },
        {
          "name": "OSPSuite.Utility",
          "manifest": "src/PKSim.UI/PKSim.UI.csproj",
          "ecosystem": "nuget",
          "version_constraint": "5.0.0.11"
        },
        {
          "name": "OSPSuite.Presentation",
          "manifest": "src/PKSim.UI/PKSim.UI.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "OSPSuite.UI",
          "manifest": "src/PKSim.UI/PKSim.UI.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "OSPSuite.Core",
          "manifest": "src/PKSim.UI/PKSim.UI.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "DevExpress.Win.Design",
          "manifest": "src/PKSim.UI/PKSim.UI.csproj",
          "ecosystem": "nuget",
          "version_constraint": "25.2.7"
        },
        {
          "name": "OSPSuite.Assets",
          "manifest": "src/PKSim/PKSim.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "OSPSuite.Core",
          "manifest": "src/PKSim/PKSim.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "OSPSuite.FuncParser",
          "manifest": "src/PKSim/PKSim.csproj",
          "ecosystem": "nuget",
          "version_constraint": "5.0.0.3"
        },
        {
          "name": "OSPSuite.SimModel",
          "manifest": "src/PKSim/PKSim.csproj",
          "ecosystem": "nuget",
          "version_constraint": "5.0.0.80"
        },
        {
          "name": "OSPSuite.SimModelSolver_CVODES",
          "manifest": "src/PKSim/PKSim.csproj",
          "ecosystem": "nuget",
          "version_constraint": "5.0.0.53"
        },
        {
          "name": "Microsoft.Data.Sqlite",
          "manifest": "src/PKSim/PKSim.csproj",
          "ecosystem": "nuget",
          "version_constraint": "10.0.7"
        },
        {
          "name": "SQLitePCLRaw.bundle_e_sqlite3",
          "manifest": "src/PKSim/PKSim.csproj",
          "ecosystem": "nuget",
          "version_constraint": "3.0.3"
        },
        {
          "name": "OSPSuite.Presentation",
          "manifest": "src/PKSim/PKSim.csproj",
          "ecosystem": "nuget",
          "version_constraint": "13.0.141"
        },
        {
          "name": "OSPSuite.TeXReporting",
          "manifest": "src/PKSim/PKSim.csproj",
          "ecosystem": "nuget",
          "version_constraint": "3.0.1.3"
        }
      ],
      "all_dependencies": {
        "error": null,
        "source": "github-sbom",
        "packages": [
          {
            "name": "CommandLineParser",
            "direct": true,
            "version": "2.2.1",
            "ecosystem": "nuget"
          },
          {
            "name": "CommandLineParser",
            "direct": true,
            "version": "2.4.3",
            "ecosystem": "nuget"
          },
          {
            "name": "CommandLineParser",
            "direct": true,
            "version": "2.9.1",
            "ecosystem": "nuget"
          },
          {
            "name": "DevExpress.Win.Design",
            "direct": true,
            "version": "25.2.7",
            "ecosystem": "nuget"
          },
          {
            "name": "FluentNHibernate",
            "direct": true,
            "version": "2.0.3.0",
            "ecosystem": "nuget"
          },
          {
            "name": "FluentNHibernate",
            "direct": true,
            "version": "3.4.0",
            "ecosystem": "nuget"
          },
          {
            "name": "LumenWorksCsvReader",
            "direct": true,
            "version": "4.0.0",
            "ecosystem": "nuget"
          },
          {
            "name": "MarkdownLog.NS20",
            "direct": true,
            "version": "0.10.1",
            "ecosystem": "nuget"
          },
          {
            "name": "Microsoft.Data.Sqlite",
            "direct": true,
            "version": "10.0.7",
            "ecosystem": "nuget"
          },
          {
            "name": "Microsoft.Extensions.Logging",
            "direct": true,
            "version": "9.0.2",
            "ecosystem": "nuget"
          },
          {
            "name": "Microsoft.Extensions.Logging.Abstractions",
            "direct": true,
            "version": "2.0.1",
            "ecosystem": "nuget"
          },
          {
            "name": "Microsoft.Extensions.Logging.Abstractions",
            "direct": true,
            "version": "2.2.0",
            "ecosystem": "nuget"
          },
          {
            "name": "Microsoft.Extensions.Logging.Abstractions",
            "direct": true,
            "version": "9.0.2",
            "ecosystem": "nuget"
          },
          {
            "name": "Microsoft.Extensions.Logging.Console",
            "direct": true,
            "version": "9.0.2",
            "ecosystem": "nuget"
          },
          {
            "name": "Microsoft.Extensions.Logging.Debug",
            "direct": true,
            "version": "9.0.2",
            "ecosystem": "nuget"
          },
          {
            "name": "Newtonsoft.Json",
            "direct": true,
            "version": "11.0.2",
            "ecosystem": "nuget"
          },
          {
            "name": "Newtonsoft.Json",
            "direct": true,
            "version": "13.0.3",
            "ecosystem": "nuget"
          },
          {
            "name": "Newtonsoft.Json.Schema",
            "direct": true,
            "version": "4.0.1",
            "ecosystem": "nuget"
          },
          {
            "name": "NHibernate.Extensions.Sqlite",
            "direct": true,
            "version": "10.0.1",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.Assets",
            "direct": true,
            "version": "13.0.141",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.Assets",
            "direct": true,
            "version": "7.4.0.2",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.Assets",
            "direct": true,
            "version": "9.0.1",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.Assets.Images",
            "direct": true,
            "version": "13.0.141",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.CLI.Core",
            "direct": true,
            "version": "13.0.141",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.Core",
            "direct": true,
            "version": "13.0.141",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.Core",
            "direct": true,
            "version": "7.4.0.2",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.Core",
            "direct": true,
            "version": "9.0.1",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.DataBinding",
            "direct": true,
            "version": "2.2.0.2",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.DataBinding",
            "direct": true,
            "version": "4.0.0.5",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.DataBinding.DevExpress",
            "direct": true,
            "version": "2.2.0.2",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.DataBinding.DevExpress",
            "direct": true,
            "version": "7.0.0.6",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.FuncParser",
            "direct": true,
            "version": "3.0.1.14",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.FuncParser",
            "direct": true,
            "version": "3.0.1.9",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.FuncParser",
            "direct": true,
            "version": "5.0.0.3",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.Infrastructure",
            "direct": true,
            "version": "13.0.141",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.Infrastructure",
            "direct": true,
            "version": "7.4.0.2",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.Infrastructure.Castle",
            "direct": true,
            "version": "13.0.141",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.Infrastructure.Export",
            "direct": true,
            "version": "13.0.141",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.Infrastructure.Import",
            "direct": true,
            "version": "13.0.141",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.Infrastructure.Serialization",
            "direct": true,
            "version": "13.0.141",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.Presentation",
            "direct": true,
            "version": "13.0.141",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.Presentation",
            "direct": true,
            "version": "7.4.0.2",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.Presentation",
            "direct": true,
            "version": "9.0.1",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.Presentation.Serialization",
            "direct": true,
            "version": "13.0.141",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.R",
            "direct": true,
            "version": "13.0.141",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.SimModel",
            "direct": true,
            "version": "3.0.1.17",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.SimModel",
            "direct": true,
            "version": "3.0.1.27",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.SimModel",
            "direct": true,
            "version": "5.0.0.80",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.SimModelSolver_CVODES",
            "direct": true,
            "version": "4.0.0.5",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.SimModelSolver_CVODES",
            "direct": true,
            "version": "5.0.0.53",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.TeXReporting",
            "direct": true,
            "version": "2.1.1.9",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.TeXReporting",
            "direct": true,
            "version": "3.0.1.3",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.UI",
            "direct": true,
            "version": "13.0.141",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.UI",
            "direct": true,
            "version": "7.4.0.2",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.Utility",
            "direct": true,
            "version": "3.0.0.3",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.Utility",
            "direct": true,
            "version": "3.0.1.7",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.Utility",
            "direct": true,
            "version": "5.0.0.11",
            "ecosystem": "nuget"
          },
          {
            "name": "SQLitePCLRaw.bundle_e_sqlite3",
            "direct": true,
            "version": "3.0.3",
            "ecosystem": "nuget"
          },
          {
            "name": "System.ComponentModel.Annotations",
            "direct": true,
            "version": "5.0.0",
            "ecosystem": "nuget"
          },
          {
            "name": "Castle.Core",
            "direct": false,
            "version": "3.3.3",
            "ecosystem": "nuget"
          },
          {
            "name": "Castle.Windsor",
            "direct": false,
            "version": "3.4.0",
            "ecosystem": "nuget"
          },
          {
            "name": "csmpfit",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "nuget"
          },
          {
            "name": "Dapper",
            "direct": false,
            "version": "1.50.4",
            "ecosystem": "nuget"
          },
          {
            "name": "FakeItEasy",
            "direct": false,
            "version": "4.5.1",
            "ecosystem": "nuget"
          },
          {
            "name": "FakeItEasy",
            "direct": false,
            "version": "8.3.0",
            "ecosystem": "nuget"
          },
          {
            "name": "Iesi.Collections",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "nuget"
          },
          {
            "name": "MathNet.Numerics",
            "direct": false,
            "version": "4.4.0",
            "ecosystem": "nuget"
          },
          {
            "name": "MathNet.Numerics",
            "direct": false,
            "version": "4.7.0",
            "ecosystem": "nuget"
          },
          {
            "name": "Microsoft.NET.Test.Sdk",
            "direct": false,
            "version": "17.13.0",
            "ecosystem": "nuget"
          },
          {
            "name": "NHibernate",
            "direct": false,
            "version": "4.1.1.4000",
            "ecosystem": "nuget"
          },
          {
            "name": "Northwoods.GoWin",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "nuget"
          },
          {
            "name": "NUnit",
            "direct": false,
            "version": "3.14.0",
            "ecosystem": "nuget"
          },
          {
            "name": "NUnit",
            "direct": false,
            "version": "3.5.0",
            "ecosystem": "nuget"
          },
          {
            "name": "NUnit3TestAdapter",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.BDDHelper",
            "direct": false,
            "version": "2.0.1.4",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.BDDHelper",
            "direct": false,
            "version": "4.0.1.1",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.DevExpress",
            "direct": false,
            "version": "17.1.5",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.DevExpress.Presentation",
            "direct": false,
            "version": "17.1.5",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.DevExpress.Presentation",
            "direct": false,
            "version": "18.2.7",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.Engine",
            "direct": false,
            "version": "9.0.1",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.Serializer",
            "direct": false,
            "version": "2.0.1.4",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.SmartXLS",
            "direct": false,
            "version": "2.6.8.2",
            "ecosystem": "nuget"
          },
          {
            "name": "OSPSuite.SmartXLS",
            "direct": false,
            "version": "2.7.1.9",
            "ecosystem": "nuget"
          },
          {
            "name": "SharpZipLib",
            "direct": false,
            "version": "0.86.0",
            "ecosystem": "nuget"
          },
          {
            "name": "System.Collections",
            "direct": false,
            "version": "4.0.11",
            "ecosystem": "nuget"
          },
          {
            "name": "System.Console",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "nuget"
          },
          {
            "name": "System.Data.SQLite.Core",
            "direct": false,
            "version": "1.0.106.0",
            "ecosystem": "nuget"
          },
          {
            "name": "System.ValueTuple",
            "direct": false,
            "version": "4.4.0",
            "ecosystem": "nuget"
          },
          {
            "name": "WindowsAPICodePack-Core",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "nuget"
          },
          {
            "name": "WindowsAPICodePack-Shell",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "nuget"
          }
        ],
        "collected": true,
        "truncated": false,
        "total_count": 90,
        "direct_count": 59,
        "indirect_count": 31
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 2,
        "merged_prs": 1218,
        "open_issues": 459,
        "closed_ratio": 0.793,
        "closed_issues": 1757,
        "closed_unmerged_prs": 74
      },
      "bus_factor": 2,
      "bot_contributors": 1,
      "top_contributors": [
        {
          "type": "User",
          "login": "msevestre",
          "commits": 760,
          "avatar_url": "https://avatars.githubusercontent.com/u/1041237?v=4"
        },
        {
          "type": "User",
          "login": "rwmcintosh",
          "commits": 585,
          "avatar_url": "https://avatars.githubusercontent.com/u/261477?v=4"
        },
        {
          "type": "User",
          "login": "benjaperez1983",
          "commits": 87,
          "avatar_url": "https://avatars.githubusercontent.com/u/108261271?v=4"
        },
        {
          "type": "User",
          "login": "Yuri05",
          "commits": 76,
          "avatar_url": "https://avatars.githubusercontent.com/u/25061876?v=4"
        },
        {
          "type": "User",
          "login": "georgeDaskalakis",
          "commits": 20,
          "avatar_url": "https://avatars.githubusercontent.com/u/37107428?v=4"
        },
        {
          "type": "User",
          "login": "abdelr",
          "commits": 18,
          "avatar_url": "https://avatars.githubusercontent.com/u/7632459?v=4"
        },
        {
          "type": "User",
          "login": "felixedd",
          "commits": 13,
          "avatar_url": "https://avatars.githubusercontent.com/u/39590719?v=4"
        },
        {
          "type": "User",
          "login": "PavelBal",
          "commits": 2,
          "avatar_url": "https://avatars.githubusercontent.com/u/25903040?v=4"
        },
        {
          "type": "User",
          "login": "egonw",
          "commits": 1,
          "avatar_url": "https://avatars.githubusercontent.com/u/26721?v=4"
        },
        {
          "type": "User",
          "login": "peterdew",
          "commits": 1,
          "avatar_url": "https://avatars.githubusercontent.com/u/27804639?v=4"
        }
      ],
      "contributors_sampled": 10,
      "top_contributor_share": 0.486
    },
    "quality_signals": {
      "has_ci": true,
      "has_tests": true,
      "ci_workflows": [
        "build-and-publish_v13.yml",
        "build-and-test.yml",
        "build-nightly_v13.yml",
        "codeql.yml",
        "coverage.yml",
        "nightly-badge.yml"
      ],
      "has_docs_dir": true,
      "linter_configs": [],
      "has_editorconfig": false,
      "has_linter_config": false,
      "has_precommit_config": false
    },
    "security_signals": {
      "lockfiles": [],
      "scorecard": {
        "checks": [
          {
            "name": "Binary-Artifacts",
            "score": 8,
            "reason": "binaries present in source code",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
          },
          {
            "name": "Branch-Protection",
            "score": 6,
            "reason": "branch protection is not maximal on development and all release branches",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
          },
          {
            "name": "CI-Tests",
            "score": 9,
            "reason": "20 out of 21 merged PRs checked by a CI test -- score normalized to 9",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#ci-tests"
          },
          {
            "name": "CII-Best-Practices",
            "score": 0,
            "reason": "no effort to earn an OpenSSF best practices badge detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#cii-best-practices"
          },
          {
            "name": "Code-Review",
            "score": 7,
            "reason": "Found 16/22 approved changesets -- score normalized to 7",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
          },
          {
            "name": "Contributors",
            "score": 10,
            "reason": "project has 4 contributing companies or organizations",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
          },
          {
            "name": "Dangerous-Workflow",
            "score": 10,
            "reason": "no dangerous workflow patterns detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
          },
          {
            "name": "Dependency-Update-Tool",
            "score": 0,
            "reason": "no update tool detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
          },
          {
            "name": "Fuzzing",
            "score": 0,
            "reason": "project is not fuzzed",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
          },
          {
            "name": "License",
            "score": 9,
            "reason": "license file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
          },
          {
            "name": "Maintained",
            "score": 10,
            "reason": "30 commit(s) and 20 issue activity found in the last 90 days -- score normalized to 10",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#maintained"
          },
          {
            "name": "Packaging",
            "score": 10,
            "reason": "packaging workflow detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
          },
          {
            "name": "Pinned-Dependencies",
            "score": 0,
            "reason": "dependency not pinned by hash detected -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
          },
          {
            "name": "SAST",
            "score": 8,
            "reason": "SAST tool is not run on all commits -- score normalized to 8",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
          },
          {
            "name": "Security-Policy",
            "score": 0,
            "reason": "security policy file not detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
          },
          {
            "name": "Signed-Releases",
            "score": 0,
            "reason": "Project has not signed or included provenance with any releases.",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#signed-releases"
          },
          {
            "name": "Token-Permissions",
            "score": 0,
            "reason": "detected GitHub workflow tokens with excessive permissions",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
          },
          {
            "name": "Vulnerabilities",
            "score": 10,
            "reason": "0 existing vulnerabilities detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
          }
        ],
        "commit": "c3579de05f8a5d932592659cbaff7d863cf794bf",
        "ran_at": "2026-07-30T17:18:25Z",
        "aggregate_score": 5.4,
        "scorecard_version": "v5.5.0"
      },
      "has_codeql_workflow": true,
      "has_security_policy": false,
      "has_dependabot_config": false
    },
    "contribution_flow": {
      "collected": true,
      "ci_last_run_at": "2026-07-30T04:59:56Z",
      "oldest_open_prs": [
        {
          "number": 3617,
          "created_at": "2026-07-22T03:56:40Z",
          "last_comment_at": "2026-07-22T03:56:46Z",
          "last_comment_author": "coderabbitai"
        },
        {
          "number": 3644,
          "created_at": "2026-07-29T04:45:29Z",
          "last_comment_at": "2026-07-29T15:59:29Z",
          "last_comment_author": "Yuri05"
        }
      ],
      "last_merged_pr_at": "2026-07-29T17:59:06Z",
      "ci_last_conclusion": "SUCCESS",
      "oldest_open_issues": [
        {
          "number": 4,
          "created_at": "2017-03-08T12:35:27Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 6,
          "created_at": "2017-03-08T12:59:08Z",
          "last_comment_at": "2017-06-08T17:19:18Z",
          "last_comment_author": "TheiBa"
        },
        {
          "number": 7,
          "created_at": "2017-03-08T13:02:10Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 8,
          "created_at": "2017-03-08T13:03:55Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 9,
          "created_at": "2017-03-08T14:14:50Z",
          "last_comment_at": "2017-05-03T14:00:23Z",
          "last_comment_author": "Incei"
        },
        {
          "number": 10,
          "created_at": "2017-03-08T14:23:29Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 11,
          "created_at": "2017-03-08T14:25:26Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 88,
          "created_at": "2017-04-06T11:50:55Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 104,
          "created_at": "2017-04-12T12:50:15Z",
          "last_comment_at": "2017-07-03T17:46:58Z",
          "last_comment_author": "msevestre"
        },
        {
          "number": 121,
          "created_at": "2017-04-21T10:13:42Z",
          "last_comment_at": "2017-04-24T14:51:58Z",
          "last_comment_author": "hdiedam"
        },
        {
          "number": 154,
          "created_at": "2017-05-08T16:03:43Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 171,
          "created_at": "2017-05-19T13:06:47Z",
          "last_comment_at": "2018-08-23T08:38:11Z",
          "last_comment_author": "Yuri05"
        },
        {
          "number": 172,
          "created_at": "2017-05-19T16:38:17Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 173,
          "created_at": "2017-05-19T16:40:57Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 175,
          "created_at": "2017-05-22T12:42:36Z",
          "last_comment_at": "2018-01-19T18:19:01Z",
          "last_comment_author": "msevestre"
        },
        {
          "number": 243,
          "created_at": "2017-07-13T01:00:04Z",
          "last_comment_at": "2023-09-25T09:41:05Z",
          "last_comment_author": "PavelBal"
        },
        {
          "number": 244,
          "created_at": "2017-07-14T08:29:14Z",
          "last_comment_at": "2017-07-14T14:53:19Z",
          "last_comment_author": "msevestre"
        },
        {
          "number": 252,
          "created_at": "2017-07-31T16:08:41Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 299,
          "created_at": "2017-09-01T10:25:39Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 302,
          "created_at": "2017-09-01T17:11:45Z",
          "last_comment_at": "2017-09-06T13:21:16Z",
          "last_comment_author": "msevestre"
        }
      ]
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/Open-Systems-Pharmacology/PK-Sim",
    "host": "github.com",
    "name": "PK-Sim",
    "owner": "Open-Systems-Pharmacology"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "excellent",
      "name": "Overall health",
      "note": "The weighted overall 69 is calibrated to 81 on the published index scale (record calibration 2026-08-02).",
      "notes": [
        {
          "code": "overall_calibration",
          "params": {
            "raw": 69,
            "calibrated": 81,
            "calibration": "2026-08-02"
          }
        }
      ],
      "value": 81,
      "inputs": {
        "security": 56,
        "vitality": 90,
        "community": 53,
        "governance": 71,
        "calibration": "2026-08-02",
        "engineering": 74,
        "ai_readiness": 55,
        "weighted_overall_raw": 69
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "excellent",
        "name": "Vitality",
        "value": 90,
        "weight": 0.21,
        "metrics": [
          {
            "key": "development_activity",
            "band": "exceptional",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 99,
            "inputs": {
              "commits_last_year": 525,
              "human_commit_share": 1,
              "days_since_last_push": 0,
              "active_weeks_last_year": 50
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 0 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 0
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "50/52 weeks with commits",
                "points": 34.6,
                "status": "partial",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 50
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "525 commits in the last year",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 525
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "30 commit(s) and 20 issue activity found in the last 90 days -- score normalized to 10",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "release_discipline",
            "band": "good",
            "name": "Release discipline",
            "note": null,
            "notes": [],
            "value": 76,
            "inputs": {
              "releases_count": 19,
              "latest_release_tag": "v12.3.173",
              "releases_from_tags": false,
              "days_since_latest_release": 23,
              "mean_days_between_releases": 188.9
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "19 releases published",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "releases_published",
                    "params": {
                      "count": 19
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "release_recency",
                "name": "Release recency",
                "detail": "latest release 23 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "release_recency",
                    "params": {
                      "days": 23
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "a release every ~188.9 days",
                "points": 12.6,
                "status": "partial",
                "details": [
                  {
                    "code": "release_cadence",
                    "params": {
                      "gap": 188.9
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "openssf_scorecard_signed_releases",
                "name": "OpenSSF Scorecard: Signed-Releases",
                "detail": "Project has not signed or included provenance with any releases.",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "abandonment",
            "band": "exceptional",
            "name": "Abandonment",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "cap": null,
              "state": "maintained",
              "guards": [],
              "signals": [],
              "red_flag": false,
              "multiplier_pct": 100,
              "declared_reason": null,
              "unverified_reason": null,
              "unanswered_open_prs": null,
              "unanswered_open_issues": null,
              "days_since_last_merged_pr": null,
              "days_since_last_human_commit": 6,
              "days_since_last_human_commit_is_floor": false
            },
            "components": [
              {
                "key": "project_is_still_maintained",
                "name": "Project is still maintained",
                "detail": "last human commit 6 days ago",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "abandonment_maintained",
                    "params": {
                      "days": 6
                    }
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Is the project alive — is code being written and are releases shipping?"
      },
      {
        "key": "community",
        "band": "moderate",
        "name": "Community & Adoption",
        "value": 53,
        "weight": 0.17,
        "metrics": [
          {
            "key": "popularity",
            "band": "moderate",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 55,
            "inputs": {
              "forks": 66,
              "stars": 169,
              "watchers": 6,
              "growth_state": "unverified",
              "growth_factor_pct": 100,
              "growth_unverified_reason": "no_history"
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "169 stars",
                "points": 36.1,
                "status": "partial",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 169
                    }
                  }
                ],
                "max_points": 60
              },
              {
                "key": "forks",
                "name": "Forks",
                "detail": "66 forks",
                "points": 15.1,
                "status": "partial",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 66
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "watchers",
                "name": "Watchers",
                "detail": "6 watchers",
                "points": 3.9,
                "status": "partial",
                "details": [
                  {
                    "code": "watchers",
                    "params": {
                      "count": 6
                    }
                  }
                ],
                "max_points": 15
              }
            ]
          },
          {
            "key": "community_health",
            "band": "moderate",
            "name": "Community health",
            "note": null,
            "notes": [],
            "value": 51,
            "inputs": {
              "has_readme": true,
              "has_license": true,
              "readme_badges": null,
              "has_contributing": false,
              "has_issue_template": false,
              "has_code_of_conduct": false,
              "readme_badge_services": [],
              "has_pull_request_template": true
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 22.5,
                "status": "met",
                "details": [],
                "max_points": 22.5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "license file present, not a recognized license",
                "points": 16.9,
                "status": "partial",
                "details": [
                  {
                    "code": "license_custom",
                    "params": {}
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributing_guide",
                "name": "CONTRIBUTING guide",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 18
              },
              {
                "key": "code_of_conduct",
                "name": "Code of conduct",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 13.5
              },
              {
                "key": "issue_template",
                "name": "Issue template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.2
              },
              {
                "key": "pr_template",
                "name": "PR template",
                "detail": null,
                "points": 6.3,
                "status": "met",
                "details": [],
                "max_points": 6.3
              }
            ]
          }
        ],
        "description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
      },
      {
        "key": "governance",
        "band": "good",
        "name": "Sustainability & Governance",
        "value": 71,
        "weight": 0.23,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "moderate",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 60,
            "inputs": {
              "bus_factor": 2,
              "contributors_sampled": 10,
              "top_contributor_share": 0.486
            },
            "components": [
              {
                "key": "bus_factor",
                "name": "Bus factor",
                "detail": "2 contributor(s) cover half of all commits",
                "points": 25.2,
                "status": "partial",
                "details": [
                  {
                    "code": "bus_factor",
                    "params": {
                      "count": 2
                    }
                  }
                ],
                "max_points": 54
              },
              {
                "key": "commit_distribution",
                "name": "Commit distribution",
                "detail": "top contributor authored 49% of commits",
                "points": 11.6,
                "status": "partial",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 49
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributor_breadth",
                "name": "Contributor breadth",
                "detail": "10 contributors",
                "points": 13.5,
                "status": "met",
                "details": [
                  {
                    "code": "contributors_sampled",
                    "params": {
                      "count": 10
                    }
                  }
                ],
                "max_points": 13.5
              },
              {
                "key": "openssf_scorecard_contributors",
                "name": "OpenSSF Scorecard: Contributors",
                "detail": "project has 4 contributing companies or organizations",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "excellent",
            "name": "Issue & PR responsiveness",
            "note": "Excluded from scoring (no data or not applicable): Newcomer PR acceptance. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "newcomer_pr_acceptance"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 83,
            "inputs": {
              "merged_prs": 1218,
              "open_issues": 459,
              "closed_issues": 1757,
              "prs_merged_7d": null,
              "prs_decided_7d": null,
              "prs_merged_30d": null,
              "prs_decided_30d": null,
              "issue_closed_ratio": 0.793,
              "closed_unmerged_prs": 74,
              "first_time_authors_30d": null,
              "first_time_prs_merged_30d": null,
              "first_time_prs_decided_30d": null
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "79% of issues closed",
                "points": 33.3,
                "status": "partial",
                "details": [
                  {
                    "code": "issues_closed_share",
                    "params": {
                      "share": 79
                    }
                  }
                ],
                "max_points": 42
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "1218/1292 decided PRs merged",
                "points": 28.3,
                "status": "partial",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 1218,
                      "decided": 1292
                    }
                  }
                ],
                "max_points": 30
              },
              {
                "key": "newcomer_pr_acceptance",
                "name": "Newcomer PR acceptance",
                "detail": "no first-time contributor's PR decided in 30d",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_newcomer_prs",
                    "params": {
                      "days": 30
                    }
                  }
                ],
                "max_points": 13
              },
              {
                "key": "openssf_scorecard_code_review",
                "name": "OpenSSF Scorecard: Code-Review",
                "detail": "Found 16/22 approved changesets -- score normalized to 7",
                "points": 10.5,
                "status": "partial",
                "details": [],
                "max_points": 15
              }
            ]
          },
          {
            "key": "stewardship",
            "band": "good",
            "name": "Ownership & stewardship",
            "note": null,
            "notes": [],
            "value": 73,
            "inputs": {
              "followers": 332,
              "owner_type": "Organization",
              "is_verified": null,
              "owner_login": "Open-Systems-Pharmacology",
              "public_repos": 401,
              "account_age_days": 3485
            },
            "components": [
              {
                "key": "ownership_backing",
                "name": "Ownership backing",
                "detail": "organization-owned",
                "points": 30,
                "status": "met",
                "details": [
                  {
                    "code": "owner_organization",
                    "params": {}
                  }
                ],
                "max_points": 30
              },
              {
                "key": "verified_domain",
                "name": "Verified domain",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 20
              },
              {
                "key": "owner_reach",
                "name": "Owner reach",
                "detail": "332 followers of Open-Systems-Pharmacology",
                "points": 18.1,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 332,
                      "login": "Open-Systems-Pharmacology"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "401 public repos, account ~9 yr old",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 401
                    }
                  },
                  {
                    "code": "account_age_years",
                    "params": {
                      "years": 9
                    }
                  }
                ],
                "max_points": 25
              }
            ]
          }
        ],
        "description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
      },
      {
        "key": "engineering",
        "band": "good",
        "name": "Engineering Quality",
        "value": 74,
        "weight": 0.19,
        "metrics": [
          {
            "key": "engineering_practices",
            "band": "good",
            "name": "Engineering practices",
            "note": null,
            "notes": [],
            "value": 66,
            "inputs": {
              "has_ci": true,
              "has_tests": true,
              "has_editorconfig": false,
              "has_linter_config": false,
              "has_precommit_config": false
            },
            "components": [
              {
                "key": "ci_workflows",
                "name": "CI workflows",
                "detail": "6 workflow(s)",
                "points": 24,
                "status": "met",
                "details": [
                  {
                    "code": "ci_workflows",
                    "params": {
                      "count": 6
                    }
                  }
                ],
                "max_points": 24
              },
              {
                "key": "tests_present",
                "name": "Tests present",
                "detail": null,
                "points": 24,
                "status": "met",
                "details": [],
                "max_points": 24
              },
              {
                "key": "linter_config",
                "name": "Linter config",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 16
              },
              {
                "key": "pre_commit_hooks",
                "name": "Pre-commit hooks",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 9.6
              },
              {
                "key": "editorconfig",
                "name": ".editorconfig",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 6.4
              },
              {
                "key": "openssf_scorecard_ci_tests",
                "name": "OpenSSF Scorecard: CI-Tests",
                "detail": "20 out of 21 merged PRs checked by a CI test -- score normalized to 9",
                "points": 18,
                "status": "partial",
                "details": [],
                "max_points": 20
              }
            ]
          },
          {
            "key": "documentation",
            "band": "excellent",
            "name": "Documentation",
            "note": null,
            "notes": [],
            "value": 85,
            "inputs": {
              "topics": [
                "pk-sim",
                "suite-components"
              ],
              "has_wiki": true,
              "homepage": null,
              "has_readme": true,
              "has_docs_dir": true,
              "has_description": true
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 30,
                "status": "met",
                "details": [],
                "max_points": 30
              },
              {
                "key": "documentation_directory",
                "name": "Documentation directory",
                "detail": null,
                "points": 25,
                "status": "met",
                "details": [],
                "max_points": 25
              },
              {
                "key": "documentation_homepage_site",
                "name": "Documentation / homepage site",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              },
              {
                "key": "repository_description",
                "name": "Repository description",
                "detail": null,
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "topics",
                "name": "Topics",
                "detail": "2 topics",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "topics_count",
                    "params": {
                      "count": 2
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "wiki",
                "name": "Wiki",
                "detail": null,
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          }
        ],
        "description": "Are baseline engineering and documentation practices in place?"
      },
      {
        "key": "security",
        "band": "moderate",
        "name": "Security",
        "value": 56,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "moderate",
            "name": "Security posture",
            "note": null,
            "notes": [],
            "value": 54,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 18,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 0,
              "scorecard_aggregate": 5.4
            },
            "components": [
              {
                "key": "binary_artifacts",
                "name": "Binary-Artifacts",
                "detail": "binaries present in source code",
                "points": 6,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "branch_protection",
                "name": "Branch-Protection",
                "detail": "branch protection is not maximal on development and all release branches",
                "points": 4.5,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "ci_tests",
                "name": "CI-Tests",
                "detail": "20 out of 21 merged PRs checked by a CI test -- score normalized to 9",
                "points": 2.2,
                "status": "partial",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "cii_best_practices",
                "name": "CII-Best-Practices",
                "detail": "no effort to earn an OpenSSF best practices badge detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "code_review",
                "name": "Code-Review",
                "detail": "Found 16/22 approved changesets -- score normalized to 7",
                "points": 5.2,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "contributors",
                "name": "Contributors",
                "detail": "project has 4 contributing companies or organizations",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "dangerous_workflow",
                "name": "Dangerous-Workflow",
                "detail": "no dangerous workflow patterns detected",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "dependency_update_tool",
                "name": "Dependency-Update-Tool",
                "detail": "no update tool detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "fuzzing",
                "name": "Fuzzing",
                "detail": "project is not fuzzed",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "license file detected",
                "points": 2.2,
                "status": "partial",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "maintained",
                "name": "Maintained",
                "detail": "30 commit(s) and 20 issue activity found in the last 90 days -- score normalized to 10",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "packaging",
                "name": "Packaging",
                "detail": "packaging workflow detected",
                "points": 5,
                "status": "met",
                "details": [],
                "max_points": 5
              },
              {
                "key": "pinned_dependencies",
                "name": "Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "sast",
                "name": "SAST",
                "detail": "SAST tool is not run on all commits -- score normalized to 8",
                "points": 4,
                "status": "partial",
                "details": [],
                "max_points": 5
              },
              {
                "key": "security_policy",
                "name": "Security-Policy",
                "detail": "security policy file not detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "signed_releases",
                "name": "Signed-Releases",
                "detail": "Project has not signed or included provenance with any releases.",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "token_permissions",
                "name": "Token-Permissions",
                "detail": "detected GitHub workflow tokens with excessive permissions",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "vulnerabilities",
                "name": "Vulnerabilities",
                "detail": "0 existing vulnerabilities detected",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              }
            ]
          },
          {
            "key": "dependency_advisories",
            "band": "moderate",
            "name": "Dependency advisories",
            "note": "Excluded from scoring (no data or not applicable): Indirect dependencies free of known advisories. Remaining weights renormalized. Matched 90 resolved dependencies against OSV. This repository publishes no package the index resolves, so the repository dependency graph was assessed instead. That graph mixes development and test pins with shipped dependencies, so only the declared runtime dependencies are scored; transitive findings are reported as context and excluded from the score. Reachability is not analyzed.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "indirect_dependencies_free_of_known_advisories"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              },
              {
                "code": "advisories_scope_repository",
                "params": {
                  "assessed": 90
                }
              },
              {
                "code": "advisories_repo_graph_caveat",
                "params": {}
              },
              {
                "code": "advisories_reachability",
                "params": {}
              }
            ],
            "value": 64,
            "inputs": {
              "source": "osv",
              "advisories": 4,
              "affected_packages": 3,
              "assessed_packages": 90,
              "unassessed_packages": 0,
              "affected_by_severity": "high 2, moderate 1",
              "direct_affected_packages": 1
            },
            "components": [
              {
                "key": "direct_dependencies_free_of_known_advisories",
                "name": "Direct dependencies free of known advisories",
                "detail": "1 affected: Newtonsoft.Json 11.0.2 (high 7.5)",
                "points": 14,
                "status": "partial",
                "details": [
                  {
                    "code": "advisories_affected",
                    "params": {
                      "count": 1,
                      "packages": "Newtonsoft.Json 11.0.2 (high 7.5)"
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "indirect_dependencies_free_of_known_advisories",
                "name": "Indirect dependencies free of known advisories",
                "detail": "transitive set not separable from development and test dependencies in this scope",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "advisories_scope_not_separable",
                    "params": {}
                  }
                ],
                "max_points": 25
              },
              {
                "key": "no_advisories_left_outstanding",
                "name": "No advisories left outstanding",
                "detail": "1 advisory-carrying package(s) unaddressed past 90 days; oldest published 1499 days ago",
                "points": 33.7,
                "status": "partial",
                "details": [
                  {
                    "code": "advisories_stale",
                    "params": {
                      "days": 90,
                      "count": 1,
                      "oldest": 1499
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "malicious_dependencies",
            "band": "exceptional",
            "name": "Malicious dependencies",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "source": "osv",
              "meaning": "reported as a malicious package by the OpenSSF corpus; the remedy is removal or moving off the compromised name, never an upgrade of the same artifact. Versions the registry has since pulled are listed but not scored",
              "packages": [],
              "red_flag": false,
              "assessed_packages": 90,
              "malicious_packages": 0,
              "direct_malicious_packages": 0,
              "withdrawn_malicious_packages": 0,
              "installable_malicious_packages": 0
            },
            "components": [
              {
                "key": "no_dependency_reported_as_a_malicious_package",
                "name": "No dependency reported as a malicious package",
                "detail": "no dependency is reported as a malicious package",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "no_malicious_dependencies",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          },
          {
            "key": "high_risk_jurisdiction_exposure",
            "band": "exceptional",
            "name": "High-Risk Jurisdiction Exposure",
            "note": "Only high-confidence self-published location evidence affects this multiplier. Ambiguous matches are review-only; country evidence is not proof of nationality, citizenship, legal registration, malicious intent, or sanctions status.",
            "notes": [
              {
                "code": "jurisdiction_evidence_limits",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "meaning": "self-published location evidence; not nationality or citizenship",
              "red_flag": false,
              "exposures": [],
              "policy_countries": [
                "Russia",
                "Iran",
                "North Korea"
              ],
              "commit_weight_rule": {
                "min_commits": 50,
                "min_commit_share": 0.1
              },
              "review_only_matches": 0,
              "below_threshold_exposures": [],
              "assessed_self_published_locations": 12
            },
            "components": [
              {
                "key": "policy_exposure_multiplier",
                "name": "Policy exposure multiplier",
                "detail": "no confirmed policy-scope location match",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "jurisdiction_no_match",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
      },
      {
        "key": "ai_readiness",
        "band": "moderate",
        "name": "AI Readiness",
        "value": 55,
        "weight": 0.04,
        "metrics": [
          {
            "key": "ai_agent_context",
            "band": "weak",
            "name": "Agent context & guidance",
            "note": null,
            "notes": [],
            "value": 39,
            "inputs": {
              "has_llms_txt": false,
              "legible_history_share": 0.73,
              "agent_instruction_files": [],
              "agent_instruction_max_bytes": null
            },
            "components": [
              {
                "key": "agent_instructions",
                "name": "Agent instructions",
                "detail": "no CLAUDE.md / AGENTS.md / editor rules",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_agent_instructions",
                    "params": {}
                  }
                ],
                "max_points": 45
              },
              {
                "key": "machine_readable_docs_llms_txt",
                "name": "Machine-readable docs (llms.txt)",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              },
              {
                "key": "legible_commit_history",
                "name": "Legible commit history",
                "detail": "73 of 100 human commits state their intent (structured subject or explanatory body)",
                "points": 38.9,
                "status": "partial",
                "details": [
                  {
                    "code": "legible_history",
                    "params": {
                      "legible": 73,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "moderate",
            "name": "Verify loop (build / test / typecheck)",
            "note": null,
            "notes": [],
            "value": 56,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [],
              "has_dockerfile": false,
              "typed_language": true,
              "bootstrap_files": [],
              "has_devcontainer": false,
              "has_linter_config": false,
              "typecheck_configs": [],
              "agent_commit_share": 0.08,
              "toolchain_manifests": [
                "src/PKSim.Assets/PKSim.Assets.csproj",
                "src/PKSim.BatchTool/PKSim.BatchTool.csproj",
                "src/PKSim.CLI.Core/PKSim.CLI.Core.csproj",
                "src/PKSim.CLI/PKSim.CLI.csproj",
                "src/PKSim.Core/PKSim.Core.csproj",
                "src/PKSim.Infrastructure/PKSim.Infrastructure.csproj",
                "src/PKSim.Presentation/PKSim.Presentation.csproj",
                "src/PKSim.R/PKSim.R.csproj",
                "src/PKSim.Starter/PKSim.Starter.csproj",
                "src/PKSim.UI/PKSim.UI.csproj",
                "src/PKSim/PKSim.csproj",
                "tests/PKSim.R.Tests/PKSim.R.Tests.csproj",
                "tests/PKSim.Tests/PKSim.Tests.csproj",
                "tests/PKSim.UI.Tests/PKSim.UI.Tests.csproj"
              ],
              "dependency_bot_commit_share": 0
            },
            "components": [
              {
                "key": "one_command_bootstrap",
                "name": "One-command bootstrap",
                "detail": "src/PKSim.Assets/PKSim.Assets.csproj, src/PKSim.BatchTool/PKSim.BatchTool.csproj, src/PKSim.CLI.Core/PKSim.CLI.Core.csproj (toolchain convention, no task runner)",
                "points": 12.6,
                "status": "partial",
                "details": [
                  {
                    "code": "toolchain_convention",
                    "params": {
                      "files": "src/PKSim.Assets/PKSim.Assets.csproj, src/PKSim.BatchTool/PKSim.BatchTool.csproj, src/PKSim.CLI.Core/PKSim.CLI.Core.csproj"
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "automated_tests",
                "name": "Automated tests",
                "detail": null,
                "points": 22,
                "status": "met",
                "details": [],
                "max_points": 22
              },
              {
                "key": "lint_format_config",
                "name": "Lint / format config",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 11
              },
              {
                "key": "static_type_checking",
                "name": "Static type checking",
                "detail": "C# (statically typed)",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "statically_typed_language",
                    "params": {
                      "language": "C#"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "reproducible_environment",
                "name": "Reproducible environment",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              },
              {
                "key": "demonstrated_agent_practice",
                "name": "Demonstrated agent practice",
                "detail": "8 of the last 100 commits agent-authored or agent-credited",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "agent_authored_commits",
                    "params": {
                      "count": 8,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "automated_maintenance",
                "name": "Automated maintenance",
                "detail": "no automated dependency updates observed",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_dependency_automation",
                    "params": {}
                  }
                ],
                "max_points": 8
              },
              {
                "key": "openssf_scorecard_pinned_dependencies",
                "name": "OpenSSF Scorecard: Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "ai_code_legibility",
            "band": "exceptional",
            "name": "Code legibility for models",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "primary_language": "C#",
              "largest_source_bytes": 180785,
              "source_files_sampled": 3708,
              "oversized_source_files": 3
            },
            "components": [
              {
                "key": "type_checkable_code",
                "name": "Type-checkable code",
                "detail": "C# (statically typed)",
                "points": 45,
                "status": "met",
                "details": [
                  {
                    "code": "statically_typed_language",
                    "params": {
                      "language": "C#"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "manageable_file_sizes",
                "name": "Manageable file sizes",
                "detail": "3/3708 source files over 60KB",
                "points": 55,
                "status": "partial",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 3708,
                      "oversized": 3
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          },
          {
            "key": "ai_interfaces",
            "band": "weak",
            "name": "Machine-readable interfaces",
            "note": null,
            "notes": [],
            "value": 40,
            "inputs": {
              "example_dirs": [
                "examples"
              ],
              "has_mcp_signal": false,
              "api_schema_files": []
            },
            "components": [
              {
                "key": "api_schema_openapi_graphql_proto",
                "name": "API schema (OpenAPI/GraphQL/proto)",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 40
              },
              {
                "key": "mcp_server",
                "name": "MCP server",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 20
              },
              {
                "key": "runnable_examples",
                "name": "Runnable examples",
                "detail": "examples",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "examples"
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          }
        ],
        "description": "How well is the repo equipped to be developed and maintained with AI coding agents? Carries a deliberately small weight: agent tooling is a real maintenance signal, but its absence must never gate the top of the scale (calibration saturates at raw 91, so 100/100 remains reachable with AI Readiness at zero)."
      }
    ],
    "classification": {
      "top": [],
      "labels": [],
      "scores": {},
      "primary": null,
      "evidence": [],
      "artifacts": [],
      "confidence": "none",
      "host_extension": false,
      "runs_as_process": false,
      "consumed_by_code": false
    },
    "metrics_version": "2.5.0"
  },
  "warnings": [
    "Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token"
  ],
  "report_type": "repository",
  "generated_at": "2026-07-30T17:18:59.814559Z",
  "schema_version": "0.27.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/o/Open-Systems-Pharmacology/PK-Sim.svg",
  "full_name": "Open-Systems-Pharmacology/PK-Sim",
  "license_state": "custom",
  "license_spdx": null
}

Las puntuaciones son señales, no garantías. Reflejan prácticas públicamente visibles en GitHub; no son una auditoría de código ni una garantía de seguridad.

Los datos ausentes se excluyen y los pesos se renormalizan; nunca se puntúan como cero. La metodología es versionada y abierta: métricas v2.5.0, esquema v0.27.0 — metodología completa · wiki de métricas.

Cómo se sitúa un resultado dentro del registro general: estadísticas agregadas.