Registro público
Informe de salud del softwareesquema 0.23.0 · métricas 1.13.0 · 2026-07-21 20:48 UTC

AzureAD / azure-activedirectory-identitymodel-extensions-for-dotnet

IdentityModel extensions for .NET

C#MIT★ 1153 estrellas⑂ 471 forksdesde mar 2014Ver en GitHub ↗

AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet tiene un índice de salud de 81 sobre 100, lo que lo sitúa en la banda Bueno. Su puntuación más alta es Vitality (90/100) y la más baja, Security (71/100). Se actualizó por última vez hace 1 día. 3 personas concentran la mayor parte del trabajo reciente.

81
global / 100
Bueno

Índice de salud del software

Las métricas se agrupan en categorías ponderadas sobre una escala de 1 a 100. El resultado global parte de su media; cuando la evidencia pública activa la Política de Jurisdicciones de Alto Riesgo, la calificación se ajusta y recibe el límite 49 (En riesgo). Preparación para IA queda fuera.

81
Excelente85-100Ejemplar; cumple prácticamente todos los criterios evaluados
Bueno70-84Saludable; carencias menores
Moderado50-69Aceptable con carencias notables; se recomienda revisión
En riesgo30-49Debilidades significativas; su adopción exige cautela
Crítico1-29Problemas 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.

Titularidad

792 seguidores57 repositorios públicosdesde dic 2012

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

Ecosistemas de paquetes

Métricas por categoría

Vitalidad

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

90Excelente · 22% del índice global
Cómo se puntúa
36/36Recencia de push — último push hace 1 días
20.1/36Cadencia de commits — 29/52 semanas con commits
16.7/18Volumen de commits — 72 commits en el último año
10/10OpenSSF Scorecard: Maintained — 17 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
Datos de entrada utilizados
commits_last_year72
human_commit_share1
days_since_last_push1
active_weeks_last_year29
Cómo se puntúa
27/27Publica versiones — 100 versiones publicadas
36/36Recencia de las versiones — última versión hace 7 días
27/27Cadencia de publicación — una versión cada ~26,3 días
0/10OpenSSF Scorecard: Signed-Releases — sin datos
Datos de entrada utilizados
releases_count100
latest_release_tag8.19.2
releases_from_tagsno
days_since_latest_release7
mean_days_between_releases26,3
Excluidos de la puntuación (sin datos o no aplicable): OpenSSF Scorecard: Signed-Releases. Los pesos restantes se han renormalizado.

Comunidad y Adopción

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

85Excelente · 18% del índice global
Cómo se puntúa
49.7/60Estrellas — 1153 estrellas
22.3/25Forks — 471 forks
11/15Observadores — 98 observadores
Datos de entrada utilizados
forks471
stars1153
watchers98
growth_stateorganic
growth_factor_pct100
Cómo se puntúa
22.5/22.5README
22.5/22.5Licencia — licencia reconocida (MIT)
18/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
has_contributing
has_issue_templateno
has_code_of_conductno
has_pull_request_template
Cómo se puntúa
80/80Descargas totales — 15.211.604.045 descargas históricas en nuget
0/20Dependientes en el registro — no lo informa este ecosistema
Datos de entrada utilizados
packagesMicrosoft.IdentityModel.Xml, Microsoft.IdentityModel.Dpop, Microsoft.IdentityModel.Tokens, Microsoft.IdentityModel.Logging, System.IdentityModel.Tokens.Jwt, Microsoft.IdentityModel.Protocols, Microsoft.IdentityModel.Validators, Microsoft.IdentityModel.Tokens.Saml
dependents
ecosystemsnuget
total_downloads15.211.604.045
monthly_downloads
Excluidos de la puntuación (sin datos o no aplicable): Dependientes en el registro. Los pesos restantes se han renormalizado.

Sostenibilidad y Gobernanza

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

83Bueno · 24% del índice global
Cómo se puntúa
36/54Factor bus — la mitad de los commits recae en 3 contribuyente(s)
13.2/22.5Distribución de commits — el principal contribuyente firma el 41% de los commits
13.5/13.5Amplitud de contribuyentes — 99 contribuyentes
10/10OpenSSF Scorecard: Contributors — project has 6 contributing companies or organizations
Datos de entrada utilizados
bus_factor3
contributors_sampled99
top_contributor_share0,412
Cómo se puntúa
40.8/46.8Resolución de issues — 87% de issues cerradas
31.4/38.3Aceptación de PR — 1445/1760 PR decididos fusionados
15/15OpenSSF Scorecard: Code-Review — all changesets reviewed
Datos de entrada utilizados
merged_prs1445
open_issues213
closed_issues1466
issue_closed_ratio0,873
closed_unmerged_prs315
Cómo se puntúa
30/30Respaldo de la propiedad — propiedad de una organización
0/20Dominio verificado
20.8/25Alcance del propietario — 792 seguidores de AzureAD
24.8/25Trayectoria — 57 repos públicos, cuenta de ~13 años
Datos de entrada utilizados
followers792
owner_typeOrganization
is_verified
owner_loginAzureAD
public_repos57
account_age_days4976
Cómo se puntúa
25/25Publicado y resoluble — 8 paquete(s) en nuget
35/35Recencia de publicación — última publicación hace 0 días
20/20Historial de versiones — 125 versiones en el registro
20/20No obsoleto — activo, ni obsoleto ni retirado
Datos de entrada utilizados
packagesMicrosoft.IdentityModel.Xml, Microsoft.IdentityModel.Dpop, Microsoft.IdentityModel.Tokens, Microsoft.IdentityModel.Logging, System.IdentityModel.Tokens.Jwt, Microsoft.IdentityModel.Protocols, Microsoft.IdentityModel.Validators, Microsoft.IdentityModel.Tokens.Saml
ecosystemsnuget
any_deprecatedno
min_days_since_publish0

Calidad de Ingeniería

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

73Bueno · 20% del índice global
Cómo se puntúa
24/24Flujos de trabajo de CI — 3 flujo(s) de trabajo
24/24Pruebas presentes
0/16Configuración de linter
0/9.6Hooks de pre-commit
6.4/6.4.editorconfig
18/20OpenSSF Scorecard: CI-Tests — 29 out of 30 merged PRs checked by a CI test -- score normalized to 9
Datos de entrada utilizados
has_ci
has_tests
has_editorconfig
has_linter_configno
has_precommit_configno
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
0/10Topics
10/10Wiki
Datos de entrada utilizados
topics
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?

71Bueno · 16% del índice global
Cómo se puntúa
7.5/7.5Binary-Artifacts — no binaries found in the repo
1.5/7.5Branch-Protection — branch protection is not maximal on development and all release branches
2.2/2.5CI-Tests — 29 out of 30 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
7.5/7.5Code-Review — all changesets reviewed
2.5/2.5Contributors — project has 6 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.5/2.5Licencia — license file detected
7.5/7.5Maintained — 17 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
0/5Packaging — sin datos
1/5Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 2
4.5/5SAST — SAST tool detected but not run on all commits
5/5Security-Policy — security policy file detected
0/7.5Signed-Releases — sin datos
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_evaluated16
scorecard_versionv5.5.0
checks_inconclusive2
scorecard_aggregate6,4
Excluidos de la puntuación (sin datos o no aplicable): packaging, signed_releases. Los pesos restantes se han renormalizado.
Cómo se puntúa
35/35Dependencias directas libres de avisos conocidos — ninguna dependencia directa tiene un aviso conocido
0/25Dependencias indirectas libres de avisos conocidos — el conjunto transitivo no es separable de las dependencias de desarrollo y prueba en este alcance
0/40Sin avisos pendientes — ningún aviso tiene fecha de publicación
Datos de entrada utilizados
sourceosv
advisories0
affected_packages0
assessed_packages3
unassessed_packages15
affected_by_severitynone
direct_affected_packages0
Excluidos de la puntuación (sin datos o no aplicable): Dependencias indirectas libres de avisos conocidos, Sin avisos pendientes. Los pesos restantes se han renormalizado. Se cotejaron 3 dependencias resueltas con OSV. 15 no pudieron evaluarse: sin versión resuelta, ecosistema no admitido o fuera de la lista de paquetes informada. 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? Es una insignia independiente y experimental — peso 0,0, de modo que se presenta por separado y no afecta a la puntuación de salud global.

75Bueno · 0% del índice global
Cómo se puntúa
45/45Instrucciones para agentes — .github/copilot-instructions.md, agents.md
0/15Documentación legible por máquinas (llms.txt)
40/40Historial de commits legible — 98 de 100 commits humanos declaran su intención (asunto estructurado o cuerpo explicativo)
Datos de entrada utilizados
has_llms_txtno
legible_history_share0,98
agent_instruction_files.github/copilot-instructions.md, agents.md
agent_instruction_max_bytes10.807
Cómo se puntúa
12.6/18Arranque con un solo comando — benchmark/Microsoft.IdentityModel.Benchmarks/Microsoft.IdentityModel.Benchmarks.csproj, src/Microsoft.IdentityModel.Abstractions/Microsoft.IdentityModel.Abstractions.csproj, src/Microsoft.IdentityModel.Dpop/Microsoft.IdentityModel.Dpop.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 — 15 de los últimos 100 commits con autoría o crédito de agente
0/8Mantenimiento automatizado — no se observan actualizaciones automáticas de dependencias
2/10OpenSSF Scorecard: Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 2
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,15
toolchain_manifestsbenchmark/Microsoft.IdentityModel.Benchmarks/Microsoft.IdentityModel.Benchmarks.csproj, src/Microsoft.IdentityModel.Abstractions/Microsoft.IdentityModel.Abstractions.csproj, src/Microsoft.IdentityModel.Dpop/Microsoft.IdentityModel.Dpop.csproj, src/Microsoft.IdentityModel.JsonWebTokens/Microsoft.IdentityModel.JsonWebTokens.csproj, src/Microsoft.IdentityModel.Logging/Microsoft.IdentityModel.Logging.csproj, src/Microsoft.IdentityModel.LoggingExtensions/Microsoft.IdentityModel.LoggingExtensions.csproj, src/Microsoft.IdentityModel.Protocols.OpenIdConnect/Microsoft.IdentityModel.Protocols.OpenIdConnect.csproj, src/Microsoft.IdentityModel.Protocols.SignedHttpRequest/Microsoft.IdentityModel.Protocols.SignedHttpRequest.csproj, src/Microsoft.IdentityModel.Protocols.WsFederation/Microsoft.IdentityModel.Protocols.WsFederation.csproj, src/Microsoft.IdentityModel.Protocols/Microsoft.IdentityModel.Protocols.csproj, src/Microsoft.IdentityModel.TestExtensions/Microsoft.IdentityModel.TestExtensions.csproj, src/Microsoft.IdentityModel.Tokens.Saml/Microsoft.IdentityModel.Tokens.Saml.csproj, src/Microsoft.IdentityModel.Tokens/Microsoft.IdentityModel.Tokens.csproj, src/Microsoft.IdentityModel.Validators/Microsoft.IdentityModel.Validators.csproj, src/Microsoft.IdentityModel.Xml/Microsoft.IdentityModel.Xml.csproj, src/System.IdentityModel.Tokens.Jwt/System.IdentityModel.Tokens.Jwt.csproj, test/Microsoft.IdentityModel.Abstractions.Tests/Microsoft.IdentityModel.Abstractions.Tests.csproj, test/Microsoft.IdentityModel.AotCompatibility.TestApp/Microsoft.IdentityModel.AotCompatibility.TestApp.csproj, test/Microsoft.IdentityModel.Dpop.Tests/Microsoft.IdentityModel.Dpop.Tests.csproj, test/Microsoft.IdentityModel.JsonWebTokens.Tests/Microsoft.IdentityModel.JsonWebTokens.Tests.csproj, test/Microsoft.IdentityModel.Logging.Tests/Microsoft.IdentityModel.Logging.Tests.csproj, test/Microsoft.IdentityModel.Protocols.OpenIdConnect.Tests/Microsoft.IdentityModel.Protocols.OpenIdConnect.Tests.csproj, test/Microsoft.IdentityModel.Protocols.SignedHttpRequest.Tests/Microsoft.IdentityModel.Protocols.SignedHttpRequest.Tests.csproj, test/Microsoft.IdentityModel.Protocols.Tests/Microsoft.IdentityModel.Protocols.Tests.csproj, test/Microsoft.IdentityModel.Protocols.WsFederation.Tests/Microsoft.IdentityModel.Protocols.WsFederation.Tests.csproj, test/Microsoft.IdentityModel.TestUtils/Microsoft.IdentityModel.TestUtils.csproj, test/Microsoft.IdentityModel.Tokens.Saml.Tests/Microsoft.IdentityModel.Tokens.Saml.Tests.csproj, test/Microsoft.IdentityModel.Tokens.Tests/Microsoft.IdentityModel.Tokens.Tests.csproj, test/Microsoft.IdentityModel.Validators.Tests/Microsoft.IdentityModel.Validators.Tests.csproj, test/Microsoft.IdentityModel.Xml.Tests/Microsoft.IdentityModel.Xml.Tests.csproj, test/System.IdentityModel.Tokens.Jwt.Tests/System.IdentityModel.Tokens.Jwt.Tests.csproj
dependency_bot_commit_share0
Cómo se puntúa
45/45Código verificable por tipos — C# (tipado estático)
52.6/55Tamaños de archivo manejables — 33/749 archivos fuente de más de 60 KB
Datos de entrada utilizados
primary_languageC#
largest_source_bytes303.020
source_files_sampled749
oversized_source_files33

Datos clave

1153estrellas de GitHub
99contribuidores
72commits en los últimos 12 meses
1días desde el último push
100versiones publicadas
3factor bus
213issues abiertas
ecosistemas de paquetes

Más detalle

Historial de estrellas y forks 1153 ★ / 471 ⇿
1153Estrellas
471Forks
100Versiones

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.

Solo se muestra el historial más reciente: este repositorio supera la ventana de recopilación, por lo que no se captura el historial más antiguo.

0200400600800100012001153457112014-052020-062026-07
Mayor 2Menor 50Parche 40

Cada punto abarca 12 días.

OpenSSF Scorecard 6.4 / 10
6.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-21 20:47 UTC

10Binary-Artifactsno binaries found in the repo
2Branch-Protectionbranch protection is not maximal on development and all release branches
9CI-Tests29 out of 30 merged PRs checked by a CI test -- score normalized to 9
0CII-Best-Practicesno effort to earn an OpenSSF best practices badge detected
10Code-Reviewall changesets reviewed
10Contributorsproject has 6 contributing companies or organizations
10Dangerous-Workflowno dangerous workflow patterns detected
0Dependency-Update-Toolno update tool detected
0Fuzzingproject is not fuzzed
10Licenselicense file detected
10Maintained17 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
n/dPackagingpackaging workflow not detected
2Pinned-Dependenciesdependency not pinned by hash detected -- score normalized to 2
9SASTSAST tool detected but not run on all commits
10Security-Policysecurity policy file detected
n/dSigned-Releasesno releases found
0Token-Permissionsdetected GitHub workflow tokens with excessive permissions
10Vulnerabilities0 existing vulnerabilities detected
Dependencias directas 13
RegistroPaqueteRestricción de versiónManifiesto
NuGetMicrosoft.Bcl.TimeProvider$(MicrosoftBclTimeProviderVersion)src/Microsoft.IdentityModel.JsonWebTokens/Microsoft.IdentityModel.JsonWebTokens.csproj
NuGetMicrosoft.Extensions.Logging.Abstractions$(AspNetCoreMinSupportedVersion)src/Microsoft.IdentityModel.LoggingExtensions/Microsoft.IdentityModel.LoggingExtensions.csproj
NuGetSystem.Text.Json$(SystemTextJsonVersion)src/Microsoft.IdentityModel.Protocols.OpenIdConnect/Microsoft.IdentityModel.Protocols.OpenIdConnect.csproj
NuGetSystem.Text.Json$(SystemTextJsonVersion)src/Microsoft.IdentityModel.Protocols.SignedHttpRequest/Microsoft.IdentityModel.Protocols.SignedHttpRequest.csproj
NuGetSystem.Text.Json$(SystemTextJsonVersion)src/Microsoft.IdentityModel.TestExtensions/Microsoft.IdentityModel.TestExtensions.csproj
NuGetMicrosoft.CSharp$(MicrosoftCSharpVersion)src/Microsoft.IdentityModel.Tokens/Microsoft.IdentityModel.Tokens.csproj
NuGetSystem.Security.Cryptography.Cng$(SystemSecurityCryptographyCngVersion)src/Microsoft.IdentityModel.Tokens/Microsoft.IdentityModel.Tokens.csproj
NuGetSystem.Memory$(SystemMemoryVersion)src/Microsoft.IdentityModel.Tokens/Microsoft.IdentityModel.Tokens.csproj
NuGetSystem.Diagnostics.DiagnosticSource$(SystemDiagnosticSourceVersion)src/Microsoft.IdentityModel.Tokens/Microsoft.IdentityModel.Tokens.csproj
NuGetSystem.Text.Json$(SystemTextJsonVersion)src/Microsoft.IdentityModel.Tokens/Microsoft.IdentityModel.Tokens.csproj
NuGetMicrosoft.Bcl.TimeProvider$(MicrosoftBclTimeProviderVersion)src/Microsoft.IdentityModel.Tokens/Microsoft.IdentityModel.Tokens.csproj
NuGetMicrosoft.Bcl.Cryptography$(MicrosoftBclCryptographyVersion)src/Microsoft.IdentityModel.Tokens/Microsoft.IdentityModel.Tokens.csproj
NuGetMicrosoft.Extensions.Logging.Abstractions$(MicrosoftExtensionsLoggingAbstractionsVersion)src/Microsoft.IdentityModel.Tokens/Microsoft.IdentityModel.Tokens.csproj
Todas las dependencias 18

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

RegistroPaqueteVersiónRelación
NuGetMicrosoft.Bcl.Cryptographydirecta
NuGetMicrosoft.Bcl.TimeProviderdirecta
NuGetMicrosoft.CSharpdirecta
NuGetMicrosoft.Extensions.Logging.Abstractionsdirecta
NuGetSystem.Diagnostics.DiagnosticSourcedirecta
NuGetSystem.Memorydirecta
NuGetSystem.Security.Cryptography.Cngdirecta
NuGetSystem.Text.Jsondirecta
NuGetBenchmarkDotNet0.13.12indirecta
NuGetMicrosoft.Azure.KeyVault.Cryptographyindirecta
NuGetMicrosoft.CodeAnalysis.BannedApiAnalyzers3.3.4indirecta
NuGetMicrosoft.Extensions.TimeProvider.Testingindirecta
NuGetMicrosoft.Rest.ClientRuntimeindirecta
NuGetNSubstitute4.2.2indirecta
NuGetOpenTelemetry.Exporter.Consoleindirecta
NuGetOpenTelemetry.Exporter.InMemoryindirecta
NuGetSystem.Net.Httpindirecta
NuGetSystem.Text.RegularExpressionsindirecta
Avisos de dependencias 0

Este repositorio no publica ningún paquete que el índice resuelva, así que se evaluó su propio grafo de dependencias — 3 paquetes, que incluyen también fijaciones de desarrollo y prueba que nunca se distribuyen: 0 tienen avisos conocidos, de los cuales 0 son directas. 15 no pudieron evaluarse: sin versión resuelta, ecosistema no admitido, o fuera de la lista de paquetes informada.

Ningún aviso conocido afecta a las dependencias evaluadas.

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": [],
      "is_fork": false,
      "size_kb": 58166,
      "has_wiki": true,
      "homepage": null,
      "languages": {
        "C#": 9006329,
        "HTML": 128929,
        "Shell": 2729,
        "Batchfile": 1188,
        "PowerShell": 25386
      },
      "pushed_at": "2026-07-20T18:37:56Z",
      "created_at": "2014-03-06T23:18:05Z",
      "owner_type": "Organization",
      "updated_at": "2026-07-21T12:23:54Z",
      "description": "IdentityModel extensions for .NET",
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": "MIT",
      "default_branch": "dev",
      "license_spdx_raw": "MIT",
      "primary_language": "C#",
      "significant_languages": [
        "C#"
      ]
    },
    "owner": {
      "blog": "http://azure.microsoft.com/en-us/services/active-directory/",
      "name": "Azure Active Directory",
      "type": "Organization",
      "login": "AzureAD",
      "company": null,
      "location": "Redmond, WA",
      "followers": 792,
      "avatar_url": "https://avatars.githubusercontent.com/u/2966316?v=4",
      "created_at": "2012-12-04T23:19:57Z",
      "is_verified": null,
      "public_repos": 57,
      "account_age_days": 4976
    },
    "license": {
      "state": "standard",
      "spdx_id": "MIT",
      "raw_spdx": "MIT",
      "file_present": true,
      "scorecard_found": true,
      "profile_has_license": true
    },
    "activity": {
      "releases": [
        {
          "tag": "8.19.2",
          "kind": "patch",
          "published_at": "2026-07-14T17:20:14Z"
        },
        {
          "tag": "7.7.3",
          "kind": "patch",
          "published_at": "2026-07-14T17:19:22Z"
        },
        {
          "tag": "5.7.1",
          "kind": "patch",
          "published_at": "2026-07-14T17:18:31Z"
        },
        {
          "tag": "7.7.2",
          "kind": "patch",
          "published_at": "2026-06-03T07:04:33Z"
        },
        {
          "tag": "8.19.1",
          "kind": "patch",
          "published_at": "2026-06-03T03:37:54Z"
        },
        {
          "tag": "8.19.0",
          "kind": "minor",
          "published_at": "2026-06-02T03:37:39Z"
        },
        {
          "tag": "8.18.0",
          "kind": "minor",
          "published_at": "2026-05-05T21:27:34Z"
        },
        {
          "tag": "8.17.0",
          "kind": "minor",
          "published_at": "2026-03-24T20:31:25Z"
        },
        {
          "tag": "8.16.0",
          "kind": "minor",
          "published_at": "2026-02-13T21:45:51Z"
        },
        {
          "tag": "8.15.0",
          "kind": "minor",
          "published_at": "2025-11-19T21:12:54Z"
        },
        {
          "tag": "8.14.0",
          "kind": "minor",
          "published_at": "2025-08-15T23:29:08Z"
        },
        {
          "tag": "8.13.1",
          "kind": "patch",
          "published_at": "2025-08-08T20:54:12Z"
        },
        {
          "tag": "8.13.0",
          "kind": "minor",
          "published_at": "2025-07-21T19:01:14Z"
        },
        {
          "tag": "8.12.1",
          "kind": "patch",
          "published_at": "2025-06-18T00:30:52Z"
        },
        {
          "tag": "8.12.0",
          "kind": "minor",
          "published_at": "2025-06-04T01:30:22Z"
        },
        {
          "tag": "8.11.0",
          "kind": "minor",
          "published_at": "2025-05-23T17:33:10Z"
        },
        {
          "tag": "8.10.0",
          "kind": "minor",
          "published_at": "2025-05-16T00:52:54Z"
        },
        {
          "tag": "8.9.0",
          "kind": "minor",
          "published_at": "2025-04-24T21:11:31Z"
        },
        {
          "tag": "8.8.0",
          "kind": "minor",
          "published_at": "2025-04-08T03:05:04Z"
        },
        {
          "tag": "8.7.0",
          "kind": "minor",
          "published_at": "2025-03-21T17:10:42Z"
        },
        {
          "tag": "8.6.1",
          "kind": "patch",
          "published_at": "2025-03-07T20:07:21Z"
        },
        {
          "tag": "8.6.0",
          "kind": "minor",
          "published_at": "2025-02-22T20:03:27Z"
        },
        {
          "tag": "8.5.0",
          "kind": "minor",
          "published_at": "2025-02-15T00:21:33Z"
        },
        {
          "tag": "8.4.0",
          "kind": "minor",
          "published_at": "2025-02-07T03:24:45Z"
        },
        {
          "tag": "8.3.1",
          "kind": "patch",
          "published_at": "2025-01-17T21:39:06Z"
        },
        {
          "tag": "8.3.0",
          "kind": "minor",
          "published_at": "2024-12-04T20:58:08Z"
        },
        {
          "tag": "8.2.1",
          "kind": "patch",
          "published_at": "2024-11-15T19:36:45Z"
        },
        {
          "tag": "8.2.0",
          "kind": "minor",
          "published_at": "2024-11-02T21:00:11Z"
        },
        {
          "tag": "8.1.2",
          "kind": "patch",
          "published_at": "2024-10-08T21:33:54Z"
        },
        {
          "tag": "8.1.1",
          "kind": "patch",
          "published_at": "2024-10-05T01:58:40Z"
        },
        {
          "tag": "8.1.0",
          "kind": "minor",
          "published_at": "2024-09-24T15:24:39Z"
        },
        {
          "tag": "8.0.2",
          "kind": "patch",
          "published_at": "2024-08-22T15:58:11Z"
        },
        {
          "tag": "8.0.1",
          "kind": "patch",
          "published_at": "2024-07-23T00:15:29Z"
        },
        {
          "tag": "7.7.1",
          "kind": "patch",
          "published_at": "2024-07-19T23:48:31Z"
        },
        {
          "tag": "7.7.0",
          "kind": "minor",
          "published_at": "2024-07-19T01:34:16Z"
        },
        {
          "tag": "6.36.0",
          "kind": "minor",
          "published_at": "2024-07-19T01:35:27Z"
        },
        {
          "tag": "8.0.0",
          "kind": "major",
          "published_at": "2024-07-16T02:57:30Z"
        },
        {
          "tag": "7.6.2",
          "kind": "patch",
          "published_at": "2024-06-20T02:31:28Z"
        },
        {
          "tag": "8.0.0-preview1",
          "kind": "prerelease",
          "published_at": "2024-06-19T15:59:49Z"
        },
        {
          "tag": "7.6.1",
          "kind": "patch",
          "published_at": "2024-06-17T23:23:25Z"
        },
        {
          "tag": "7.6.0",
          "kind": "minor",
          "published_at": "2024-05-28T00:55:07Z"
        },
        {
          "tag": "7.5.2",
          "kind": "patch",
          "published_at": "2024-05-13T22:06:06Z"
        },
        {
          "tag": "7.5.1",
          "kind": "patch",
          "published_at": "2024-04-05T22:58:24Z"
        },
        {
          "tag": "7.5.0",
          "kind": "minor",
          "published_at": "2024-03-27T01:32:32Z"
        },
        {
          "tag": "v7.4.1",
          "kind": "patch",
          "published_at": "2024-03-15T20:39:15Z"
        },
        {
          "tag": "v7.4.0",
          "kind": "minor",
          "published_at": "2024-02-27T19:13:22Z"
        },
        {
          "tag": "7.4.0-preview1",
          "kind": "prerelease",
          "published_at": "2024-02-12T19:16:27Z"
        },
        {
          "tag": "7.3.1",
          "kind": "patch",
          "published_at": "2024-02-03T04:38:08Z"
        },
        {
          "tag": "7.3.0",
          "kind": "minor",
          "published_at": "2024-01-30T07:24:00Z"
        },
        {
          "tag": "7.2.0",
          "kind": "minor",
          "published_at": "2024-01-12T02:00:35Z"
        },
        {
          "tag": "6.35.0",
          "kind": "minor",
          "published_at": "2024-01-09T18:05:22Z"
        },
        {
          "tag": "7.1.2",
          "kind": "patch",
          "published_at": "2024-01-09T18:03:18Z"
        },
        {
          "tag": "5.7.0",
          "kind": "minor",
          "published_at": "2024-01-09T18:00:12Z"
        },
        {
          "tag": "7.0.3",
          "kind": "patch",
          "published_at": "2023-10-17T03:11:09Z"
        },
        {
          "tag": "6.34.0",
          "kind": "minor",
          "published_at": "2024-01-09T18:03:48Z"
        },
        {
          "tag": "v6.33.0",
          "kind": "minor",
          "published_at": "2023-10-04T00:02:24Z"
        },
        {
          "tag": "7.0.2",
          "kind": "patch",
          "published_at": "2023-09-29T17:58:17Z"
        },
        {
          "tag": "7.0.1",
          "kind": "patch",
          "published_at": "2023-09-27T22:05:03Z"
        },
        {
          "tag": "7.0.0",
          "kind": "major",
          "published_at": "2023-09-11T15:25:25Z"
        },
        {
          "tag": "7.0.0-preview5",
          "kind": "prerelease",
          "published_at": "2023-09-06T01:15:45Z"
        },
        {
          "tag": "6.32.3",
          "kind": "patch",
          "published_at": "2023-09-05T21:54:26Z"
        },
        {
          "tag": "7.0.0-preview4",
          "kind": "prerelease",
          "published_at": "2023-08-29T22:57:23Z"
        },
        {
          "tag": "6.32.2",
          "kind": "patch",
          "published_at": "2023-08-26T00:43:55Z"
        },
        {
          "tag": "7.0.0-preview3",
          "kind": "prerelease",
          "published_at": "2023-08-21T03:56:45Z"
        },
        {
          "tag": "7.0.0-preview2",
          "kind": "prerelease",
          "published_at": "2023-08-13T22:57:28Z"
        },
        {
          "tag": "6.32.1",
          "kind": "patch",
          "published_at": "2023-07-28T05:23:02Z"
        },
        {
          "tag": "7.1.0-preview",
          "kind": "prerelease",
          "published_at": "2023-07-20T04:31:09Z"
        },
        {
          "tag": "v6.32.0",
          "kind": "minor",
          "published_at": "2023-07-12T23:48:10Z"
        },
        {
          "tag": "7.0.0-preview",
          "kind": "prerelease",
          "published_at": "2023-07-13T16:47:24Z"
        },
        {
          "tag": "6.31.0",
          "kind": "minor",
          "published_at": "2023-06-08T00:55:07Z"
        },
        {
          "tag": "6.30.1",
          "kind": "patch",
          "published_at": "2023-05-10T20:04:02Z"
        },
        {
          "tag": "6.30.0",
          "kind": "minor",
          "published_at": "2023-04-26T23:25:19Z"
        },
        {
          "tag": "6.29.0",
          "kind": "minor",
          "published_at": "2023-04-14T00:53:54Z"
        },
        {
          "tag": "6.28.1",
          "kind": "patch",
          "published_at": "2023-04-03T17:39:42Z"
        },
        {
          "tag": "6.28.0",
          "kind": "minor",
          "published_at": "2023-03-31T21:39:38Z"
        },
        {
          "tag": "6.27.0",
          "kind": "minor",
          "published_at": "2023-02-23T17:45:31Z"
        },
        {
          "tag": "v6.26.1",
          "kind": "patch",
          "published_at": "2023-02-07T19:53:03Z"
        },
        {
          "tag": "6.26.0",
          "kind": "minor",
          "published_at": "2023-01-20T18:51:26Z"
        },
        {
          "tag": "6.25.1",
          "kind": "patch",
          "published_at": "2022-12-01T18:31:19Z"
        },
        {
          "tag": "6.25.0",
          "kind": "minor",
          "published_at": "2022-10-28T18:18:00Z"
        },
        {
          "tag": "6.24.0",
          "kind": "minor",
          "published_at": "2022-10-14T18:11:30Z"
        },
        {
          "tag": "6.23.1",
          "kind": "patch",
          "published_at": "2022-09-08T23:59:16Z"
        },
        {
          "tag": "6.23.0",
          "kind": "minor",
          "published_at": "2022-09-06T22:50:49Z"
        },
        {
          "tag": "6.22.1",
          "kind": "patch",
          "published_at": "2022-08-26T17:21:45Z"
        },
        {
          "tag": "6.22.0",
          "kind": "minor",
          "published_at": "2022-07-27T16:47:51Z"
        },
        {
          "tag": "6.21.0",
          "kind": "minor",
          "published_at": "2022-07-01T20:37:51Z"
        },
        {
          "tag": "6.20.0",
          "kind": "minor",
          "published_at": "2022-06-21T18:27:04Z"
        },
        {
          "tag": "6.19.0",
          "kind": "minor",
          "published_at": "2022-06-08T21:48:25Z"
        },
        {
          "tag": "6.18.0",
          "kind": "minor",
          "published_at": "2022-05-18T17:07:41Z"
        },
        {
          "tag": "6.17.0",
          "kind": "minor",
          "published_at": "2022-03-23T18:41:38Z"
        },
        {
          "tag": "6.16.0",
          "kind": "minor",
          "published_at": "2022-02-18T23:13:06Z"
        },
        {
          "tag": "6.15.1",
          "kind": "patch",
          "published_at": "2022-01-20T05:19:15Z"
        },
        {
          "tag": "v6.15.0",
          "kind": "minor",
          "published_at": "2021-12-03T20:10:55Z"
        },
        {
          "tag": "6.14.1",
          "kind": "patch",
          "published_at": "2021-11-04T16:35:21Z"
        },
        {
          "tag": "6.14.0",
          "kind": "minor",
          "published_at": "2021-10-29T20:14:49Z"
        },
        {
          "tag": "6.13.1",
          "kind": "patch",
          "published_at": "2021-10-07T00:31:04Z"
        },
        {
          "tag": "6.12.2",
          "kind": "patch",
          "published_at": "2021-08-21T19:00:33Z"
        },
        {
          "tag": "6.12.1",
          "kind": "patch",
          "published_at": "2021-08-20T18:49:27Z"
        },
        {
          "tag": "6.12.0",
          "kind": "minor",
          "published_at": "2021-07-21T18:01:26Z"
        },
        {
          "tag": "6.11.1",
          "kind": "patch",
          "published_at": "2021-05-21T23:28:53Z"
        }
      ],
      "recent_commits": [
        {
          "oid": "bb897f7c96644147e038c7b859be8f2559081532",
          "body": "…(#3552)\n\n* Add JsonWebToken header-replacement constructor to avoid re-parsing payload\n\nAdd a public constructor, JsonWebToken(JsonWebToken jsonWebToken, string\nencodedHeader), that builds a token by replacing the header of an existing JWS\nwhile reusing its already-parsed payload and signature. The\n[…]\nnHandler.ReplaceTokenHeader instead of a public ctor\n\n* Use string.Create to assemble token in header replacement\n\n---------\n\nCo-authored-by: Shubhshankar Murugaiah Sankachelvi <shmurug@microsoft.com>",
          "is_bot": false,
          "headline": "Add JsonWebToken header-replacement path to avoid re-parsing payload …",
          "author_name": "MARCIN Z",
          "author_login": "MZOLN",
          "committed_at": "2026-07-16T17:28:51Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "43a457b066ad5fc75713a842c8e2a66852f79e5d",
          "body": "* Add claims dictionary presizing\n\n* Add unit tests for edge cases\n\n---------\n\nCo-authored-by: Zhenya Polyvanyi <iepoly@microsoft.com>",
          "is_bot": false,
          "headline": "Add claims dictionary preallocation (#3542)",
          "author_name": "Ievgen Polyvanyi",
          "author_login": "cpp11nullptr",
          "committed_at": "2026-07-15T21:14:40Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "01273779903b1ed97d8b1515289fd484da5d7d65",
          "body": "…RFC 3986 section 3.3) (#3539)\n\nMake SHR p-claim path comparison case-sensitive (ordinal) per RFC 3986 section 3.3",
          "is_bot": false,
          "headline": "Make Signed HTTP Request `p` claim (path) comparison case-sensitive (…",
          "author_name": "debchoudhury-id4s",
          "author_login": "debchoudhury-id4s",
          "committed_at": "2026-07-09T01:53:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c58a45119909d12dc56787e97a1b4aa2da49519c",
          "body": null,
          "is_bot": false,
          "headline": "add missing lines to strong name bypass registry file (#3537)",
          "author_name": "Toidi357",
          "author_login": "Toidi357",
          "committed_at": "2026-07-08T17:23:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6213066cf107bf1a9b6793e98c41167667c75261",
          "body": "…#3536)",
          "is_bot": false,
          "headline": "Port CacheCustomProviders property to CryptoProviderFactory (#3489) (…",
          "author_name": "Ignacio Inglese",
          "author_login": "iNinja",
          "committed_at": "2026-07-07T21:39:32Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3fbc3cf741482fe2a0ae18eb89869dcaafc2f0ed",
          "body": null,
          "is_bot": false,
          "headline": "Port ML-DSA (FIPS 204) post-quantum signature support to dev (#3532)",
          "author_name": "Ignacio Inglese",
          "author_login": "iNinja",
          "committed_at": "2026-07-03T17:28:14Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e714eba14b8be9d7e9577e1199c6d4fbc381a190",
          "body": "…e (Bug 3669406) (#3531)\n\nThe test fetched OpenID Connect metadata from the live pre-production endpoint\nlogin.windows-ppe.net, which is not reachable from GitHub-hosted CI runners, so\nthe \"Run unit tests\" job failed on every pull request.\n\nThis test-only change injects a method-local HttpClient bac\n[…]\ndata fetch is forbidden. No src/ changes.\n\nCo-authored-by: debchoudhury-id4s <290261775+debchoudhury-id4s@users.noreply.github.com>\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>",
          "is_bot": false,
          "headline": "Make Validate_CanFetchMetadataWithoutConfigurationProvider run offlin…",
          "author_name": "debchoudhury-id4s",
          "author_login": "debchoudhury-id4s",
          "committed_at": "2026-07-01T18:46:21Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "168714d244b2d8f27b1d5b769c3480ccb0a87da0",
          "body": "* Update CHANGELOG for version 8.19.0\n\nAdded new features and bug fixes for version 8.19.0.\n\n* Update CHANGELOG for version 8.19.1\n\nUpdated changelog for version 8.19.1 with bug fixes and new features.\n\n* Update CHANGELOG for version 7.7.2\n\nAdded details for version 7.7.2, including bug fixes and dependency updates.\n\n* Apply suggestions from code review\n\nCo-authored-by: campersau <buchholz.bastian@googlemail.com>\n\n---------\n\nCo-authored-by: campersau <buchholz.bastian@googlemail.com>",
          "is_bot": false,
          "headline": "Update CHANGELOG for version 8.19.0 (#3514)",
          "author_name": "Peter",
          "author_login": "pmaytak",
          "committed_at": "2026-06-09T08:28:22Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "35f2792aff7e33493e4253438c5999601f9e5314",
          "body": "…506)\n\n* Apply RFC 3986 section 6.2.2 normalization to DPoP htu comparison\n\n* Address PR feedback: rename PopUriComparer to DpopUriComparer, expand RFC 3986 coverage\n\n- Rename PopUriComparer -> DpopUriComparer per @pmaytak (the comparer is specific to DPoP htu validation, not general PoP)\n\n- Add 5 t\n[…]\nad added an awkward TryCreate dance. Keep only AreEquivalent(Uri uri, string uriToCompareTo) — parsing happens inside, callers stay clean.\n\n---------\n\nCo-authored-by: marcinzo <marcinzo@microsoft.com>",
          "is_bot": false,
          "headline": "Apply RFC 3986 section 6.2.2 normalization to DPoP htu comparison (#3…",
          "author_name": "MARCIN Z",
          "author_login": "MZOLN",
          "committed_at": "2026-05-29T16:39:05Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "75ba352180f7954d4db6726d198769466a721f29",
          "body": "…eType categorization (#3504)\n\n* Refactor nonce enforncement opt-out, enrich code docs, improve error handling\n\n* Rename types to fit naming standard, replace Wilson mentions\n\n---------\n\nCo-authored-by: marcinzo <marcinzo@microsoft.com>",
          "is_bot": false,
          "headline": "DPoP: fail-closed when replay protection isn't configured; add Failur…",
          "author_name": "MARCIN Z",
          "author_login": "MZOLN",
          "committed_at": "2026-05-27T18:58:54Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6d4c8681edf22fc1acba07ebfe5ef43945fc7fa7",
          "body": "Co-authored-by: marcinzo <marcinzo@microsoft.com>",
          "is_bot": false,
          "headline": "DPoP Hardening (#3501)",
          "author_name": "MARCIN Z",
          "author_login": "MZOLN",
          "committed_at": "2026-05-26T17:47:33Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "782e9800f54e350e1ef1c862a4f68d0b0b361a47",
          "body": "Added new features including IConfigurationEventHandlerContextAware interface and Microsoft.IdentityModel.Dpop package. Updated changelog for version 8.18.0.",
          "is_bot": false,
          "headline": "Update CHANGELOG for version 8.18.0 features (#3474)",
          "author_name": "Peter",
          "author_login": "pmaytak",
          "committed_at": "2026-05-15T19:39:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a294fa758667ccaaaf735df1eb60e464ee7c388d",
          "body": null,
          "is_bot": false,
          "headline": "promote exception to property, add test (#3471)",
          "author_name": "Westin Musser",
          "author_login": "westin-m",
          "committed_at": "2026-05-13T17:02:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d0bdcea5c5ccc33d8a2eb21197cdcc3aecb1a5cc",
          "body": null,
          "is_bot": false,
          "headline": "adjust error message (#3482)",
          "author_name": "Westin Musser",
          "author_login": "westin-m",
          "committed_at": "2026-05-12T15:53:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "389570054159a030dd9a3e858a33b53d73102dba",
          "body": "* Drop Net 6 from test targets as it has reached EOL support.\n\n* Suppress Tfm support build warning instead of dropping .NET 6\n\n* Use correct property\n\n* Use both properties in benchmark tests\n\n---------\n\nCo-authored-by: Franco Fung <francofung@microsoft.com>",
          "is_bot": false,
          "headline": "Suppress EOL .NET 6 warning in targetTest.props  (#3469)",
          "author_name": "Franco Fung",
          "author_login": "FuPingFranco",
          "committed_at": "2026-05-03T06:54:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b4a9c211ee86fabed30b9803aa6719e76d6596bd",
          "body": null,
          "is_bot": false,
          "headline": "Bump open telemetry version (#3465)",
          "author_name": "Avery-Dunn",
          "author_login": "Avery-Dunn",
          "committed_at": "2026-04-29T23:02:51Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3565e761ea68e53d3b39801689c4881c42db8c73",
          "body": "* bypass cache option in result\n\n* Revert \"bypass cache option in result\"\n\nThis reverts commit 93447ae7185d46b7e3082ace06d273a1fe018f91.\n\n* poc for context aware event handler\n\n* Follow up on draft feedback\n\n* PR feedback\n\n* pr feedback\n\n* Update test/Microsoft.IdentityModel.Protocols.OpenIdConnect.\n[…]\ne condition in tests\n\n* updates to fix test flakiness\n\n---------\n\nCo-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>\nCo-authored-by: Peter <34331512+pmaytak@users.noreply.github.com>",
          "is_bot": false,
          "headline": "L2 cache bypass (#3444)",
          "author_name": "Westin Musser",
          "author_login": "westin-m",
          "committed_at": "2026-04-24T19:01:15Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "f9b491f2c493e1a8906cec99dcf6ac76753dd5a6",
          "body": "* Initial prototype for dpop, work in progress\n\n* Finalize DPoP implementation\n\n* Add net462 tests\n\n* Removing unnecessary net462 guard\n\n* Remove keycloack tests and move proof creation to test projects.\n\n* Remove prefixes from proof options, after refactoring MISE #2\n\n* Add to linux sln and add e2e\n[…]\n additional token parsing.\n\n* Address error messaging comments and update tests\n\n---------\n\nCo-authored-by: Keegan Caruso <keegancaruso@microsoft.com>\nCo-authored-by: marcinzo <marcinzo@microsoft.com>",
          "is_bot": false,
          "headline": "Add DPoP (RFC 9449) proof creation and server-side validation (#3443)",
          "author_name": "MARCIN Z",
          "author_login": "MZOLN",
          "committed_at": "2026-04-22T02:13:30Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "8bf229b22e9f1fa791947b42d1564557b0e57a45",
          "body": "* Enable manual triggering for dotnetcore workflow\n\nAdded support for manual triggering of the workflow.\n\n* Enable manual triggering for CodeQL analysis\n\nAdded manual triggering option for CodeQL workflow.\n\n* Enable manual trigger for AOT Check workflow\n\nAdd manual triggering option for AOT Check workflow\n\n* Add dev8x branch to workflow triggers\n\n* Add 'dev8x' branch to CodeQL analysis workflow\n\n* Add 'dev8x' branch to workflow triggers",
          "is_bot": false,
          "headline": "Enable manual triggering for workflows (#3437)",
          "author_name": "Peter",
          "author_login": "pmaytak",
          "committed_at": "2026-03-28T07:36:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d7421dbf3723aff93aa35a6760de28f5ede9b488",
          "body": "* Update CHANGELOG for version 8.17.0\n\nUpdated CHANGELOG for version 8.17.0 with dependency changes and new features.\n\n* Update CHANGELOG.md\r\n\r\nupdated\n\nCo-authored-by: Peter <34331512+pmaytak@users.noreply.github.com>\n\n---------\n\nCo-authored-by: Peter <34331512+pmaytak@users.noreply.github.com>",
          "is_bot": false,
          "headline": "Update CHANGELOG for version 8.17.0 (#3441)",
          "author_name": "Mallika Chennupaty",
          "author_login": "mdchennu",
          "committed_at": "2026-03-24T20:27:36Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "01f8caf75507bf0504363802293686679a64182e",
          "body": "…NET 10 (#3436)",
          "is_bot": false,
          "headline": "Downgrade MicrosoftExtensionsLoggingAbstractionsVersion to 8.0.0 on .…",
          "author_name": "Peter",
          "author_login": "pmaytak",
          "committed_at": "2026-03-23T20:04:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "aa4bdc81ecbfb1bac20f27ad0c15dc87e19957b7",
          "body": "Email address no longer accepts submissions",
          "is_bot": false,
          "headline": "Email address no longer accepts submissions (#3417)",
          "author_name": "Louis Nyffenegger",
          "author_login": "snyff",
          "committed_at": "2026-03-19T11:56:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e9200421e6f3e4e268e5a2b10bf3e6cc1a2b811f",
          "body": "…(#3399)\n\n* Initial plan\n\n* Convert delegates to interfaces for validators - Core implementation\n\nCo-authored-by: westin-m <127992899+westin-m@users.noreply.github.com>\n\n* Update all usages to call interface methods instead of delegates\n\nCo-authored-by: westin-m <127992899+westin-m@users.noreply.git\n[…]\ns\n\n* review feedback\n\n* small fix\n\n---------\n\nCo-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>\nCo-authored-by: westin-m <127992899+westin-m@users.noreply.github.com>",
          "is_bot": false,
          "headline": "Convert validation delegates to interfaces in Experimental namespace …",
          "author_name": "Copilot",
          "author_login": "Copilot",
          "committed_at": "2026-03-16T22:07:45Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "cdac1ecfe50d72fb24f280cb2cbc49d68883aef2",
          "body": "…tives (#3430)\n\n* Remove breaking changes in JsonSerializerPrimitives - restore backward compatible reader positioning\n\nCo-authored-by: Josh Lozensky <joshlozensky@microsoft.com>",
          "is_bot": false,
          "headline": "Restore backward-compatible reader positioning in JsonSerializerPrimi…",
          "author_name": "Copilot",
          "author_login": "Copilot",
          "committed_at": "2026-03-11T23:00:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "856c90c009e6bd91ee0439fcf53ec36925fe48ad",
          "body": null,
          "is_bot": false,
          "headline": "Improve validation of \"jku\" claim (#3431)",
          "author_name": "Avery-Dunn",
          "author_login": "Avery-Dunn",
          "committed_at": "2026-03-10T09:28:10Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8c90b15c0fbdfdb02dc1300cb566b41e4059afcc",
          "body": null,
          "is_bot": false,
          "headline": "clear plaintext on decrypt failure (#3432)",
          "author_name": "Westin Musser",
          "author_login": "westin-m",
          "committed_at": "2026-03-09T17:45:41Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "532cc64c73b1a3bd1efc0986808c85ef09b70673",
          "body": null,
          "is_bot": false,
          "headline": "use SHA for specific action version (#3433)",
          "author_name": "Westin Musser",
          "author_login": "westin-m",
          "committed_at": "2026-03-09T17:13:25Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f02a3a874530521d489758411131f92e2c4a45c0",
          "body": "* Emit warning for package version mismatch\n\n* Add explicit list of packages to check\n\n* Update task comment\n\n* Use IDX as warning prefix\n\n---------\n\nCo-authored-by: Zhenya Polyvanyi <iepoly@microsoft.com>",
          "is_bot": false,
          "headline": "Emit warning for package version mismatch (#3423)",
          "author_name": "Ievgen Polyvanyi",
          "author_login": "cpp11nullptr",
          "committed_at": "2026-02-23T21:26:40Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7dc6f553eaf5e3f219520aadf99c3b46713b0910",
          "body": "* Initial plan\n\n* Add LogValidationExceptions checks before logging exceptions\n\nCo-authored-by: RojaEnnam <63254595+RojaEnnam@users.noreply.github.com>\n\n* Fix spelling error in comment\n\nCo-authored-by: RojaEnnam <63254595+RojaEnnam@users.noreply.github.com>\n\n* Add comprehensive tests for LogValidati\n[…]\nbot] <198982749+Copilot@users.noreply.github.com>\nCo-authored-by: RojaEnnam <63254595+RojaEnnam@users.noreply.github.com>\nCo-authored-by: JoshLozensky <103777376+JoshLozensky@users.noreply.github.com>",
          "is_bot": false,
          "headline": "Respect LogValidationExceptions flag in all validator methods (#3425)",
          "author_name": "Copilot",
          "author_login": "Copilot",
          "committed_at": "2026-02-19T18:10:09Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "154323fde480540c0d45e2bdff3e4ef7be810217",
          "body": "Update SDK version from 10.0.100 to 10.0.103",
          "is_bot": false,
          "headline": "Update SDK version from 10.0.100 to 10.0.103 (#3427)",
          "author_name": "Gladwin Johnson",
          "author_login": "gladjohn",
          "committed_at": "2026-02-19T07:52:33Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8cab969c79fb08e8390319d7226a8d0c307152e9",
          "body": null,
          "is_bot": false,
          "headline": "Update MicrosoftIdentityModelCurrentVersion to 9.0.0 (#3420)",
          "author_name": "Peter",
          "author_login": "pmaytak",
          "committed_at": "2026-02-18T23:00:40Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4b9a7a181c7723636952d9b659c918a4174c967e",
          "body": "Added new features and fixed FileVersion format in CHANGELOG.",
          "is_bot": false,
          "headline": "Update CHANGELOG for version 8.16.0 (#3421)",
          "author_name": "Peter",
          "author_login": "pmaytak",
          "committed_at": "2026-02-18T23:00:18Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "61449b853c3ce153aa2a21ed75d5a9bc27af37cf",
          "body": "* Added helper class and methods to track signature validation telemetry. Added tests\n\n* Added a counter for signature validation. Updated ITelemetryClient interface and TelemetryClient to support the new telemetry. Added null telemetry client for no op\n\n* Added telemetry to JWT and SAML/SAML2 handl\n[…]\nunify telemetry client usage and streamline issuer tracking logic, with tests updated to match new behavior.\n\n* Removed case insensitive comparison for telemetry issuer extraction based on PR feedback",
          "is_bot": false,
          "headline": "Add telemetry around signature validation (#3410)",
          "author_name": "Ignacio Inglese",
          "author_login": "iNinja",
          "committed_at": "2026-02-11T18:10:55Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "8ffd5b0493c07af0a5ced6410690b83d08c4e1a3",
          "body": "- Updated TenantIdAsGuid: f645ad92-e38d-4d1a-b510-d1b09a74a8ca -> 10c419d4-4a50-45b2-aa4e-919fb84df24f\n- Updated V1Issuer, V1IssuerWithoutTrailingSlash, and V1IssuerPPE constants\n- Updated test assertions in MicrosoftIdentityIssuerValidatorTest\n- All 143 tests in Microsoft.IdentityModel.Validators.Tests pass successfully",
          "is_bot": false,
          "headline": "Lab Migration: Update tenant ID from MSIDLAB4 to new tenant (#3413)",
          "author_name": "Ryan Auld",
          "author_login": "RyAuld",
          "committed_at": "2026-02-10T18:18:59Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2a47bda9f8a241965f9d89bd9e40bf3d195f3d2f",
          "body": "Co-authored-by: marcinzo <marcinzo@microsoft.com>",
          "is_bot": false,
          "headline": "Fix ob violation (#3411)",
          "author_name": "MARCIN Z",
          "author_login": "MZOLN",
          "committed_at": "2026-02-10T18:07:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c074b468f467bb20fbbbf1cffd440efc0d2d36a1",
          "body": "…(#3409)\n\n* Initial plan\n\n* Add AppContext switch and update log levels for IDX10239 and IDX10234\n\nCo-authored-by: RojaEnnam <63254595+RojaEnnam@users.noreply.github.com>\n\n* Add comprehensive tests for log level changes\n\nCo-authored-by: RojaEnnam <63254595+RojaEnnam@users.noreply.github.com>\n\n* Fix \n[…]\naEnnam@users.noreply.github.com>\n\n---------\n\nCo-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>\nCo-authored-by: RojaEnnam <63254595+RojaEnnam@users.noreply.github.com>",
          "is_bot": false,
          "headline": "Change IDX10239 and IDX10234 log level to Verbose with opt-in switch …",
          "author_name": "Copilot",
          "author_login": "Copilot",
          "committed_at": "2026-02-05T17:45:00Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "e80574dcb3830667dfd1c21b1efc9d3a02659108",
          "body": "* Completed changes to SymmettricKeyWrapProvider!\n\n* Local commit\n\n* Resolved issues with KeyVaultVerify\n\n* FIxed KeyWrapProvider tests\n\n* Updated reference test for dotnet 10",
          "is_bot": false,
          "headline": "Use default KW for dotnet 10 (#3404)",
          "author_name": "saurabhsathe-ms",
          "author_login": "saurabhsathe-ms",
          "committed_at": "2026-02-03T00:56:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0408a007cc393a4356ac422f1b3721b3ecc0f379",
          "body": "…403)\n\n* make a deep copy with copy constructor\n\n* PR feedback",
          "is_bot": false,
          "headline": "Use TokenValidationParameter copy constructor to make a deep copy (#3…",
          "author_name": "Westin Musser",
          "author_login": "westin-m",
          "committed_at": "2026-01-22T17:42:32Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "38224047dbe9a037dbf6bb8b0c0ca015b34e04da",
          "body": "* Initial plan\n\n* Add CancellationToken parameter to ValidateTokenAsync methods\n\nCo-authored-by: kllysng <69649063+kllysng@users.noreply.github.com>\n\n* Pass CancellationToken through internal validation methods\n\nCo-authored-by: kllysng <69649063+kllysng@users.noreply.github.com>\n\n* add cancellation \n[…]\nuthored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>\nCo-authored-by: kllysng <69649063+kllysng@users.noreply.github.com>\nCo-authored-by: Kelly Song <kellysong@microsoft.com>",
          "is_bot": false,
          "headline": "Add CancellationToken parameter to ValidateTokenAsync methods (#3401)",
          "author_name": "Copilot",
          "author_login": "Copilot",
          "committed_at": "2026-01-22T17:28:59Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "cb6958c7ea779f02156115277902a1800b469b0d",
          "body": "* Initial plan\n\n* Add System.Security.Cryptography.AesGcm support for .NET 6+\n\nCo-authored-by: westin-m <127992899+westin-m@users.noreply.github.com>\n\n* Update tests to support AesGcm on .NET 6+\n\nCo-authored-by: westin-m <127992899+westin-m@users.noreply.github.com>\n\n* Address code review feedback -\n[…]\n* move conditions for readability\n\n---------\n\nCo-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>\nCo-authored-by: westin-m <127992899+westin-m@users.noreply.github.com>",
          "is_bot": false,
          "headline": "Enable cross-platform AES-GCM support for .NET 6+ (#3396)",
          "author_name": "Copilot",
          "author_login": "Copilot",
          "committed_at": "2026-01-14T22:45:04Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "1a5591937ab73213789279c83526e07dd9053910",
          "body": "* rename parameter\n\n* rename bool in tests",
          "is_bot": false,
          "headline": "Update Signature for JsonWebKeyConverter (#3394)",
          "author_name": "Westin Musser",
          "author_login": "westin-m",
          "committed_at": "2026-01-14T22:23:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b04dc2f8b725a86fe5f64bc58a13a786ec165c10",
          "body": "…ft.Json entry (#3393)\n\n* Initial plan\n\n* Remove outdated Newtonsoft.Json entry from cgmanifest.json\n\nCo-authored-by: saurabhsathe-ms <197688485+saurabhsathe-ms@users.noreply.github.com>\n\n* Delete cgmanifest.json file as empty registrations array is not needed\n\nCo-authored-by: saurabhsathe-ms <19768\n[…]\n-agent[bot] <198982749+Copilot@users.noreply.github.com>\nCo-authored-by: saurabhsathe-ms <197688485+saurabhsathe-ms@users.noreply.github.com>\nCo-authored-by: Saurabh Sathe <saurabhsathe@microsoft.com>",
          "is_bot": false,
          "headline": "Delete registrations from cgmanifest.json file with outdated Newtonso…",
          "author_name": "Copilot",
          "author_login": "Copilot",
          "committed_at": "2026-01-13T21:40:20Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "6a1b575b0048d4de3a286b05874253eba64390e4",
          "body": "* Local commit\n\n* Updated the tests to accomodate the changes to groups\n\n* Added an end  to end test for JwtSecurityTokenHandler",
          "is_bot": false,
          "headline": "Ssathe/claim type mapping missing groups (#3391)",
          "author_name": "saurabhsathe-ms",
          "author_login": "saurabhsathe-ms",
          "committed_at": "2026-01-12T19:26:22Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bcd41b75b2a09fc245a19fcfb7bb2fe3ec810d96",
          "body": null,
          "is_bot": false,
          "headline": "Fix FileVersion format to use two-digit year and day of year (#3389)",
          "author_name": "thejaswinic",
          "author_login": "thejaswinic",
          "committed_at": "2026-01-06T21:59:02Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c33522ef007464c86989ab65f22ab5719a664bbf",
          "body": "Added new features, bug fixes, and updates for version 8.15.0, including ECDsa support and .NET 10 compatibility improvements.",
          "is_bot": false,
          "headline": "Update CHANGELOG for version 8.15.0 (#3371)",
          "author_name": "Jean-Marc Prieur",
          "author_login": "jmprieur",
          "committed_at": "2025-11-18T19:03:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "08b72d480b4c3755dafa010180fddecbdd74b9e6",
          "body": "* Update runTests.ps1 arguments to specify dotnet directory\n\n* need to include 9.x\n\n---------\n\nCo-authored-by: Keegan Caruso <keegancaruso@microsoft.com>",
          "is_bot": false,
          "headline": "Update runTests.ps1 arguments to specify dotnet directory (#3368)",
          "author_name": "Keegan",
          "author_login": "keegan-caruso",
          "committed_at": "2025-11-14T23:03:32Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d37e7c288249b3479d7f18888e209dcacf0374a6",
          "body": null,
          "is_bot": false,
          "headline": "Update supportPolicy.md (#3367)",
          "author_name": "Bogdan Gavril",
          "author_login": "bgavrilMS",
          "committed_at": "2025-11-13T10:48:03Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "91dc20a79b913c0115d26a1694fcb867b7bc07a7",
          "body": "* Add suppression.\n\n* Add suppression.",
          "is_bot": false,
          "headline": "Fix CodeQL alerts (#3364)",
          "author_name": "Peter",
          "author_login": "pmaytak",
          "committed_at": "2025-11-13T01:25:41Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "234279d58420e06a997329a53b9d801ccf8a4132",
          "body": "Co-authored-by: Keegan Caruso <keegancaruso@microsoft.com>",
          "is_bot": false,
          "headline": "Update project files and workflows for .NET 10.0 compatibility (#3363)",
          "author_name": "Keegan",
          "author_login": "keegan-caruso",
          "committed_at": "2025-11-11T22:31:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "24dfa17cfa56ed036a3afcbc4ac4c94e937b443a",
          "body": "Co-authored-by: Keegan <Keegan.Caruso@microsoft.com>",
          "is_bot": false,
          "headline": "update .net version to CG compliance (#3353)",
          "author_name": "Westin Musser",
          "author_login": "westin-m",
          "committed_at": "2025-11-11T01:40:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "24bd27f92438632daaa686be1384e6dcf6b0341b",
          "body": "* Initial plan\n\n* Update to .NET 10 RC 1 with wildcard versions\n\nCo-authored-by: saurabhsathe-ms <197688485+saurabhsathe-ms@users.noreply.github.com>\n\n* Fix AES-GCM tests for .NET 10 Linux support\n\nCo-authored-by: saurabhsathe-ms <197688485+saurabhsathe-ms@users.noreply.github.com>\n\n* Add net10.0 ta\n[…]\n saurabhsathe-ms <197688485+saurabhsathe-ms@users.noreply.github.com>\nCo-authored-by: Josh Lozensky <joshlozensky@microsoft.com>\nCo-authored-by: JLoze <103777376+JoshLozensky@users.noreply.github.com>",
          "is_bot": false,
          "headline": "Update to .NET 10 RC 1 with explicit versioning (#3358)",
          "author_name": "saurabhsathe-ms",
          "author_login": "saurabhsathe-ms",
          "committed_at": "2025-10-23T17:54:05Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "aa32391a2748279c916a4107cc2ab6ee1fea6a9b",
          "body": "…o System.Text.Json (#3356)\n\n* Migrate Microsoft.IdentityModel.TestExtensions from Newtonsoft.Json to System.Text.Json\n\nCo-authored-by: keegan-caruso <54109988+keegan-caruso@users.noreply.github.com>\n\n* Add comment explaining NoWarn suppressions for IL2026 and IL3050\n\nCo-authored-by: keegan-caruso <\n[…]\ncopilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>\nCo-authored-by: keegan-caruso <54109988+keegan-caruso@users.noreply.github.com>\nCo-authored-by: Keegan <Keegan.Caruso@microsoft.com>",
          "is_bot": false,
          "headline": "Migrate Microsoft.IdentityModel.TestExtensions from Newtonsoft.Json t…",
          "author_name": "Copilot",
          "author_login": "Copilot",
          "committed_at": "2025-10-22T20:01:16Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "39bfc930eb47afd20d37b0982ee4059ce2385bdf",
          "body": "* Upgrade GitHub Actions to v5 for .NET setup\n\n* Apply suggestion from @keegan-caruso\n\n* Apply suggestion from @keegan-caruso\n\n* Apply suggestion from @keegan-caruso",
          "is_bot": false,
          "headline": "Lock .NET10 SDK to rc1 (#3357)",
          "author_name": "Keegan",
          "author_login": "keegan-caruso",
          "committed_at": "2025-10-20T23:34:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fa2d252b720c777398ac5aacbf26114b053938ab",
          "body": "…(#3341)\n\n* Initial plan\n\n* Implement SearchValues-based sanitization for improved performance\n\nCo-authored-by: mdchennu <45950356+mdchennu@users.noreply.github.com>\n\n* Add comprehensive sanitization tests for SearchValues implementation\n\nCo-authored-by: mdchennu <45950356+mdchennu@users.noreply.git\n[…]\nmdchennu@users.noreply.github.com>\n\n---------\n\nCo-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>\nCo-authored-by: mdchennu <45950356+mdchennu@users.noreply.github.com>",
          "is_bot": false,
          "headline": "Optimize log sanitization with SearchValues for improved performance …",
          "author_name": "Copilot",
          "author_login": "Copilot",
          "committed_at": "2025-10-14T14:37:51Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "b9b623c40043e7efb2b45b0faec705c604885675",
          "body": "This reverts commit c152004ebe7071ab0184ca69cc9d2d0a5c4507cc.",
          "is_bot": false,
          "headline": "Revert \"Don't target NET 10 SDK for dotnetcore.yml (#3335)\" (#3339)",
          "author_name": "Keegan",
          "author_login": "keegan-caruso",
          "committed_at": "2025-10-10T01:14:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cae27c68c5c648f970a70a806a043c0a5c3e96a7",
          "body": "…rtFromX509SecurityKey` (#2377)\n\n* Add ECDsa support in X509SecurityKey\n\n* Add unit test\n\n* Add support for ECDsa in JsonWebKeyConverter.ConvertFromX509SecurityKey\n\n* Update unit test\n\n* Remove use of self-signed certificate\n\n* Change order for validation\n\n* Add condition for .NET 4.7.2 or NET\n\n* Fi\n[…]\nte preprocessor directives\n\n* Address feedbacks from review\n\n---------\n\nCo-authored-by: joegoldman2 <147369450+joegoldman@users.noreply.github.com>\nCo-authored-by: Keegan <Keegan.Caruso@microsoft.com>",
          "is_bot": false,
          "headline": "Add ECDsa support in `X509SecurityKey` and `JsonWebKeyConverter.Conve…",
          "author_name": "joegoldman2",
          "author_login": null,
          "committed_at": "2025-10-10T00:03:47Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "d0fe58e3863c3cdd858fa962b5dfc7804bf35636",
          "body": "Co-authored-by: Keegan Caruso <keegancaruso@microsoft.com>",
          "is_bot": false,
          "headline": "Disable code coverage comments (#3349)",
          "author_name": "Keegan",
          "author_login": "keegan-caruso",
          "committed_at": "2025-10-09T22:44:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "be5bc4d4d5278cff08360e7aee493a83dc81e769",
          "body": "…arameter across build, test, and pack phases. (#3337)\n\n* Passed TargetNetNext argument for build and pack\n\n* Passed env TargetNetNext to build and pack\n\n* Added comment explanation\n\n---------\n\nCo-authored-by: Alex Holub <alexholub@microsoft.com>",
          "is_bot": false,
          "headline": "Fixes .NET 10.0 test execution by ensuring consistent TargetNetNext p…",
          "author_name": "Alex Holub",
          "author_login": "alexholub113",
          "committed_at": "2025-10-09T17:28:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "04a187b9f178d3e49e1761161b854ffafa264720",
          "body": "* Upgrade Microsoft.NET.Test.Sdk to version 17.13.0",
          "is_bot": false,
          "headline": "Upgrade Microsoft.NET.Test.Sdk (#3336)",
          "author_name": "Keegan",
          "author_login": "keegan-caruso",
          "committed_at": "2025-10-07T20:27:58Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c152004ebe7071ab0184ca69cc9d2d0a5c4507cc",
          "body": "* Change TargetNetNext environment variable to false\n\n* Comment out .NET 10 preview SDK setup\n\nComment out setup for .NET 10 preview SDK due to test coverage issues.",
          "is_bot": false,
          "headline": "Don't target NET 10 SDK for dotnetcore.yml (#3335)",
          "author_name": "Keegan",
          "author_login": "keegan-caruso",
          "committed_at": "2025-10-06T23:20:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7a09823d9f56a7442a8f62727aef8df25980c2c7",
          "body": null,
          "is_bot": false,
          "headline": "Update CoverletCollectorVersion to 6.0.4 (#3333)",
          "author_name": "Keegan",
          "author_login": "keegan-caruso",
          "committed_at": "2025-10-06T17:35:11Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6ae21182dd521961dd378233557ff12b8e951868",
          "body": "* Initial plan\n\n* Migrate .clinerules to agents.md and update references\n\nCo-authored-by: jennyf19 <19942418+jennyf19@users.noreply.github.com>\n\n---------\n\nCo-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>\nCo-authored-by: jennyf19 <19942418+jennyf19@users.noreply.github.com>\nCo-authored-by: jennyf19 <jeferrie@microsoft.com>\nCo-authored-by: saurabhsathe-ms <saurabhsathe@microsoft.com>",
          "is_bot": false,
          "headline": "Migrate repository agent rules from .clinerules to agents.md (#3313)",
          "author_name": "Copilot",
          "author_login": "Copilot",
          "committed_at": "2025-09-29T21:10:47Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "637fae34ab10f47ba93150e8cc1c9bb27d38cf18",
          "body": "* Sanitize log strings.\n\n* Update logger.\n\n* Sanitize Unicode format characters.\n\n* Add .NET 6.x setup to GitHub Actions workflow\n\nAdded setup step for .NET 6.x in workflow.",
          "is_bot": false,
          "headline": "Sanitize logs (#3316)",
          "author_name": "Peter",
          "author_login": "pmaytak",
          "committed_at": "2025-09-26T04:42:00Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0a20ebdd9158f8da56e343bdfd651eabe94c39d1",
          "body": null,
          "is_bot": false,
          "headline": "Update test for IDX10400. (#3314)",
          "author_name": "Peter",
          "author_login": "pmaytak",
          "committed_at": "2025-09-24T06:55:22Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "91f1925e8345fc1b586022bf766a95a69941ebc5",
          "body": null,
          "is_bot": false,
          "headline": "Building with NET 10 preview (#3287)",
          "author_name": "JLoze",
          "author_login": "JoshLozensky",
          "committed_at": "2025-09-04T20:42:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f58d585121cfba4ac83ec0fa5d34763dcf241ae4",
          "body": "* Add tests\n\n* Add all none cases",
          "is_bot": false,
          "headline": "Add supported algorithm tests (#3296)",
          "author_name": "RojaEnnam",
          "author_login": "RojaEnnam",
          "committed_at": "2025-08-18T20:24:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0df5711a5de310c2b06bdb21ae25ff59ac4332cd",
          "body": "* Changelog 8.14.0\n\n* Update CHANGELOG.md\n\n* Update CHANGELOG.md",
          "is_bot": false,
          "headline": "Changelog 8.14.0 (#3294)",
          "author_name": "Peter",
          "author_login": "pmaytak",
          "committed_at": "2025-08-15T23:29:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c8f7d87bcda35557a68f6cb9c55856a2ee733856",
          "body": "…n. (#3299)\n\n* OpertionResult -> ValidationResult\nRemove dependency on Microsoft.Identity.Abstractions\n\n* remove dependency\n\n---------\n\nCo-authored-by: id4s <user@contoso.com>",
          "is_bot": false,
          "headline": "Switch to back to ValidationResult for results when validating a toke…",
          "author_name": "BrentSchmaltz",
          "author_login": "brentschmaltz",
          "committed_at": "2025-08-15T16:38:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1badce8949d974cf2650fa496432fadd0e3aeee8",
          "body": null,
          "is_bot": false,
          "headline": "Update Abstractions (#3289)",
          "author_name": "Jean-Marc Prieur",
          "author_login": "jmprieur",
          "committed_at": "2025-08-08T17:22:06Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fcacd48979d5bd50c20e241a6c289f67fb1207a3",
          "body": "* 8.13.1 changelog\n\n* Update CHANGELOG.md\n\nCo-authored-by: Westin Musser <127992899+westin-m@users.noreply.github.com>\n\n---------\n\nCo-authored-by: Westin Musser <127992899+westin-m@users.noreply.github.com>",
          "is_bot": false,
          "headline": "8.13.1 changelog (#3288)",
          "author_name": "Peter",
          "author_login": "pmaytak",
          "committed_at": "2025-08-08T01:51:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ec4cc0fa856a20d380e241c0cc1e69d571a8f77b",
          "body": "…ompressionProvider (#3286)\n\n* Initial plan\n\n* Initial plan for fixing IDX10816 decompression issue\n\nCo-authored-by: pmaytak <34331512+pmaytak@users.noreply.github.com>\n\n* Fix IDX10816 decompression issue and add tests\n\nCo-authored-by: pmaytak <34331512+pmaytak@users.noreply.github.com>\n\n* Final ver\n[…]\nb.com>\n\n* Fix formatting, fix tests.\n\n---------\n\nCo-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>\nCo-authored-by: pmaytak <34331512+pmaytak@users.noreply.github.com>",
          "is_bot": false,
          "headline": "Fix IDX10816 decompression failure for large JWE payloads in DeflateC…",
          "author_name": "Copilot",
          "author_login": "Copilot",
          "committed_at": "2025-08-06T20:54:17Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "35cc68b38de33ebfa0ebb4ebe4f9453835f429dd",
          "body": "…Result (#3284)\n\n* ValidationResult -> OperationResult\nStandardize validation across token types.\n\n* Addressing PR comments.\n\n---------\n\nCo-authored-by: id4s <user@contoso.com>",
          "is_bot": false,
          "headline": "Update return from validation steps to use M.I.Abstractions.Operation…",
          "author_name": "BrentSchmaltz",
          "author_login": "brentschmaltz",
          "committed_at": "2025-08-01T21:32:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d25996a6c7e9a9cd11655a70566e913d6ccdad51",
          "body": "* changelog for 8.13\n\n* Update CHANGELOG.md\n\nCo-authored-by: Keegan <Keegan.Caruso@microsoft.com>\n\n* Update CHANGELOG.md\n\n* Update CHANGELOG.md\n\n---------\n\nCo-authored-by: Keegan <Keegan.Caruso@microsoft.com>\nCo-authored-by: Jean-Marc Prieur <jmprieur@microsoft.com>",
          "is_bot": false,
          "headline": "changelog for 8.13 (#3282)",
          "author_name": "jennyf19",
          "author_login": "jennyf19",
          "committed_at": "2025-07-19T02:16:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "11251ee32f9a047b19f70a7bb713f3b54a908833",
          "body": "No functional difference, using pkcs1 will be flagged on scans and this removes it here.",
          "is_bot": false,
          "headline": "Update RsaSecurityKey.cs (#3280)",
          "author_name": "Keegan",
          "author_login": "keegan-caruso",
          "committed_at": "2025-07-18T17:26:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7699e533557a32fb3b74dc440c10a61c9b90df1b",
          "body": "* Update .NET SDK version in global.json from 9.0.107 to 9.0.108\n\n---------\n\nCo-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>\nCo-authored-by: Keegan <Keegan.Caruso@microsoft.com>",
          "is_bot": false,
          "headline": "Update .NET SDK version in global.json from 9.0.107 to 9.0.108 (#3274)",
          "author_name": "Copilot",
          "author_login": "Copilot",
          "committed_at": "2025-07-14T20:48:06Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "6d127306b9ea6660a1b873f4727d91f758f8af2b",
          "body": "…nal (#3278)",
          "is_bot": false,
          "headline": "Make CaseSensitiveClaimsIdentity.SecurityToken setter protected inter…",
          "author_name": "Keegan",
          "author_login": "keegan-caruso",
          "committed_at": "2025-07-14T17:16:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "edd8166f5497a14ee51f3bf85fadfc283d480055",
          "body": null,
          "is_bot": false,
          "headline": "Update CHANGELOG.md (#3266)",
          "author_name": "jennyf19",
          "author_login": "jennyf19",
          "committed_at": "2025-06-18T00:30:26Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2d0aa4465d61ae950ea6239aa041dc2ebbfd2dcb",
          "body": null,
          "is_bot": false,
          "headline": "Update global.json to latest (#3263)",
          "author_name": "jennyf19",
          "author_login": "jennyf19",
          "committed_at": "2025-06-17T19:59:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "572de2de4b711f10be6858e7b32cec8b8112a28a",
          "body": "Co-authored-by: id4s <user@contoso.com>",
          "is_bot": false,
          "headline": "moved files to experimental folder (#3261)",
          "author_name": "BrentSchmaltz",
          "author_login": "brentschmaltz",
          "committed_at": "2025-06-06T17:59:19Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3de93845500ab3daa30b7fd0f886ca1c0850cdc2",
          "body": "* remove experimental code from TokenValidationResult\n\n* move all experimental code into partial classes\n\n---------\n\nCo-authored-by: id4s <user@contoso.com>",
          "is_bot": false,
          "headline": "Remove experimental code from TokenValidationResult (#3259)",
          "author_name": "BrentSchmaltz",
          "author_login": "brentschmaltz",
          "committed_at": "2025-06-06T00:49:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ec9d65b526111132558eab7e905c72ba758e4f49",
          "body": "* Update CHANGELOG.md\n* Update version.props",
          "is_bot": false,
          "headline": "Update CHANGELOG.md for 8.12.0 (#3258)",
          "author_name": "Jean-Marc Prieur",
          "author_login": "jmprieur",
          "committed_at": "2025-06-03T18:21:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bb55fba1cb05e23d71267d35b8694b678aa08b1b",
          "body": "* Update Microsoft.CodeAnalysis.PublicApiAnalyzers to 4.14\n\n* Update common.props\n\n* Update AI guidelines.\n\n* Update API files.\n\n* Update Base64UrlEncoder Decode API.\n\n* Updated BannedApiAnalyzers version.",
          "is_bot": false,
          "headline": "Update PublicApiAnalyzers and BannedApiAnalyzers to 4.14.0 (#3256)",
          "author_name": "Peter",
          "author_login": "pmaytak",
          "committed_at": "2025-06-03T15:55:49Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d0b3cd3316ab71ee6a81351715e3a4f6c3715ab6",
          "body": "Public API changes:\n- New interface\n- Result class used by the interface\n- New property and constructor on ConfigurationManager (number of constructors that throw on null args is too high, so I added IConfigurationEventHandler as a public property too).\n- JsonData is now public to allow for serializ\n[…]\nl if the handler implementation is not set.\n- Both blocking and non-blocking paths are supported.\n- New tag on configuration source is added (examples: retriever (http/file/etc.), handler)\nFixes #3253",
          "is_bot": false,
          "headline": "Enhance ConfigurationManager with event handling (#3254)",
          "author_name": "George Krechar",
          "author_login": "GeoK",
          "committed_at": "2025-06-03T04:30:40Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "6c80366463b6804a5b0fc6cc95d8b62548550808",
          "body": "* add ai assist rules\n\n* update",
          "is_bot": false,
          "headline": "add ai assist rules (#3255)",
          "author_name": "jennyf19",
          "author_login": "jennyf19",
          "committed_at": "2025-05-31T04:02:55Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c1175022534ba57252e94245179223143b58c96c",
          "body": "* Add API tests.\n\n* Update code and tests.\n\n* Fix tests.",
          "is_bot": false,
          "headline": "Add expected Base64UrlEncoder.Decode overload for NET6 and 8 (#3250)",
          "author_name": "Peter",
          "author_login": "pmaytak",
          "committed_at": "2025-05-30T21:20:54Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d77de2b30c33e3a1bb1fed5dd571addf79184687",
          "body": "Fix Benchmarks build issue.\nValidateSignature delegate returns ValidationResult<SecurityKey, SignatureValidationError>\n\nCo-authored-by: id4s <user@contoso.com>",
          "is_bot": false,
          "headline": "Move suppression of RS006 to csproj. (#3230)",
          "author_name": "BrentSchmaltz",
          "author_login": "brentschmaltz",
          "committed_at": "2025-05-30T17:17:41Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2995aabc699feecb6f50d03c6180e9944af1f966",
          "body": "* changelog for 8.11\n\n* Update CHANGELOG.md",
          "is_bot": false,
          "headline": "changelog for 8.11 (#3248)",
          "author_name": "jennyf19",
          "author_login": "jennyf19",
          "committed_at": "2025-05-23T16:19:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0ecbd7d8a9bb02a7a3cd39a1031f0f3fc13c5394",
          "body": "* Add DecryptTokenWithConfiguration API\n\n* Pass configuration.\n\n* Add API.\n\n* Updates to API.\n\n* Update log message.\n\n* Add tests.",
          "is_bot": false,
          "headline": "Add DecryptTokenWithConfiguration API (#3243)",
          "author_name": "Peter",
          "author_login": "pmaytak",
          "committed_at": "2025-05-23T15:35:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "db552291c7955cedff4ef44cf5b524f8724714e7",
          "body": "Co-authored-by: id4s <user@contoso.com>",
          "is_bot": false,
          "headline": "update current version to 8.10.0 (#3246)",
          "author_name": "BrentSchmaltz",
          "author_login": "brentschmaltz",
          "committed_at": "2025-05-22T22:45:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "59b1e069f366cfd2f1412b8bf167e58daeead4f8",
          "body": "…gate (#3244)\n\n* Exposes puublicly the factory for AadIssuerValidator with cache function\n* Update test/Microsoft.IdentityModel.Validators.Tests/AadIssuerValidatorTests.cs\nCo-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>",
          "is_bot": false,
          "headline": "Exposes publicly override of AadIssuerValidator factory taking a dele…",
          "author_name": "Jean-Marc Prieur",
          "author_login": "jmprieur",
          "committed_at": "2025-05-22T15:22:39Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "9a7b3b70348ff9850163e42981b80c76caab9ba2",
          "body": "* Changelog for 8.10.0.\n\n* Update CHANGELOG.md\n\nCo-authored-by: Jean-Marc Prieur <jmprieur@microsoft.com>\n\n---------\n\nCo-authored-by: Sruthi Keerthi Rangavajhula <srangavajhul@microsoft.com>\nCo-authored-by: Jean-Marc Prieur <jmprieur@microsoft.com>\nCo-authored-by: jennyf19 <jeferrie@microsoft.com>",
          "is_bot": false,
          "headline": "Changelog for 8.10.0 (#3241)",
          "author_name": "sruthikeerthi",
          "author_login": "sruke",
          "committed_at": "2025-05-16T23:01:51Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9b1e8b641c581e0e199a0daa85e837256b0ea96a",
          "body": null,
          "is_bot": false,
          "headline": "few updates (#3242)",
          "author_name": "jennyf19",
          "author_login": "jennyf19",
          "committed_at": "2025-05-16T18:22:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "793bd34e945eb8ba7528cf87c4a29a29c4704a65",
          "body": "….0.2 to 8.0.0 (#3226)\n\n* removed cs proj reference to System.Text.Json and updated Abstractions\n\n* updated with PR comments\n\n* updated statement to be more clear\n\n* remove the AspNetCore reference\n\n* updated comment\n\n---------\n\nCo-authored-by: Mallika Chennupaty <mallikac@microsoft.com>",
          "is_bot": false,
          "headline": "[For Net9.0 TFM] Change MicrosoftExtensionsLoggingAbstractions from 8…",
          "author_name": "Mallika Chennupaty",
          "author_login": "mdchennu",
          "committed_at": "2025-05-15T17:22:22Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "33784b8ec0ff4300efad788535f90b3adc5bdfd1",
          "body": "* started merging for Base64UrlEncoder, need to work on decoding\n\n* fixed the decoding for Base64UrlEncoding.cs\n\n* updated base64url encoding.cs and log messages\n\n* update PR according to comments\n\n* updated for .net9.0\n\n* updated bcl memory\n\n---------\n\nCo-authored-by: Mallika Chennupaty <mallikac@microsoft.com>",
          "is_bot": false,
          "headline": "Remove Microsoft.Bcl.Memory 9.0 in Wilson (#3220)",
          "author_name": "Mallika Chennupaty",
          "author_login": "mdchennu",
          "committed_at": "2025-05-13T21:12:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "23f88d69061ebde619d2955ae7223b39b9c409a8",
          "body": "* Update supportPolicy.md\n\n* Update README.md\n\n* Update README.md",
          "is_bot": false,
          "headline": "Update supportPolicy.md (#3233)",
          "author_name": "jennyf19",
          "author_login": "jennyf19",
          "committed_at": "2025-05-09T22:27:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "14842aedb3d57c32b9ce784061cd9beccbdd1eb1",
          "body": "* more feedback\n\n* Apply suggestions from code review\n\n---------\n\nCo-authored-by: Peter <34331512+pmaytak@users.noreply.github.com>",
          "is_bot": false,
          "headline": "more feedback (#3232)",
          "author_name": "jennyf19",
          "author_login": "jennyf19",
          "committed_at": "2025-05-09T20:45:59Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "35caa6cb0b693188b5c5c1b9434414f1a3ba43ba",
          "body": null,
          "is_bot": false,
          "headline": "Update README.md (#3231)",
          "author_name": "jennyf19",
          "author_login": "jennyf19",
          "committed_at": "2025-05-09T16:39:14Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "946bec18cdeb26b8133a04e8c056dd5f17588f89",
          "body": "* add LTS policy\n\n* Apply suggestions from code review\n\n* Update README.md\n\n---------\n\nCo-authored-by: Peter <34331512+pmaytak@users.noreply.github.com>",
          "is_bot": false,
          "headline": "add LTS policy (#3228)",
          "author_name": "jennyf19",
          "author_login": "jennyf19",
          "committed_at": "2025-05-09T03:07:06Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bc001335c1715ad38c8bc60313609515b081486b",
          "body": "* Tried a fix in XMLSignatureConsant.cs so that we dont get type instead of Type.\n\n* Identified places to change and created app context switches\n\n* Added default switch value\n\n* Updated the test Signature Values to be returned as per the switch value\n\n* Reverted the changes made to XMLSignatureCons\n[…]\n the tests to consider the switch value now\n\n* Added new test case to test Signature with capitalized Type\n\n* Reverted changes made to type in RoleDescriptorTemplate\n\n* NIT repairs as per the comments",
          "is_bot": false,
          "headline": "Ssathe/fix casting for xml attr type (#3217)",
          "author_name": "saurabhsathe-ms",
          "author_login": "saurabhsathe-ms",
          "committed_at": "2025-04-29T19:46:55Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "d9123695ec5f407c3ebcc8fa12aa1fe722367983",
          "body": "* Updates changelog for v8.9.0.\n\n* Update CHANGELOG.md\n\nCo-authored-by: Kelly🌠 <69649063+kllysng@users.noreply.github.com>\n\n---------\n\nCo-authored-by: Sruthi Keerthi Rangavajhula <srangavajhul@microsoft.com>\nCo-authored-by: Kelly🌠 <69649063+kllysng@users.noreply.github.com>",
          "is_bot": false,
          "headline": "Updates changelog for v8.9.0. (#3214)",
          "author_name": "sruthikeerthi",
          "author_login": "sruke",
          "committed_at": "2025-04-24T20:41:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        }
      ],
      "releases_count": 100,
      "commits_last_year": 72,
      "latest_release_at": "2026-07-14T17:20:14Z",
      "latest_release_tag": "8.19.2",
      "releases_from_tags": false,
      "days_since_last_push": 1,
      "active_weeks_last_year": 29,
      "days_since_latest_release": 7,
      "mean_days_between_releases": 26.3
    },
    "community": {
      "has_readme": true,
      "has_license": true,
      "has_description": true,
      "has_contributing": true,
      "health_percentage": 75,
      "has_issue_template": false,
      "has_code_of_conduct": false,
      "has_pull_request_template": true
    },
    "ecosystem": {
      "packages": [
        {
          "name": "Microsoft.IdentityModel.Xml",
          "exists": true,
          "license": null,
          "keywords": [
            ".NET",
            "Windows",
            "Authentication",
            "Identity",
            "Reading",
            "XML",
            "Writing",
            "Enveloped",
            "Signatures"
          ],
          "ecosystem": "nuget",
          "matches_repo": true,
          "registry_url": "https://www.nuget.org/packages/Microsoft.IdentityModel.Xml",
          "is_deprecated": false,
          "latest_version": "8.20.0",
          "repository_url": "https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet",
          "versions_count": 109,
          "total_downloads": 179528670,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": null,
          "first_published_at": null,
          "latest_published_at": "2026-07-21T20:07:28.663000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 0
        },
        {
          "name": "Microsoft.IdentityModel.Dpop",
          "exists": true,
          "license": null,
          "keywords": [
            ".NET",
            "Windows",
            "Authentication",
            "Identity",
            "Json",
            "Web",
            "Token"
          ],
          "ecosystem": "nuget",
          "matches_repo": true,
          "registry_url": "https://www.nuget.org/packages/Microsoft.IdentityModel.Dpop",
          "is_deprecated": false,
          "latest_version": "8.20.0",
          "repository_url": "https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet",
          "versions_count": 4,
          "total_downloads": 1566,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": null,
          "first_published_at": null,
          "latest_published_at": "2026-07-21T20:07:09.483000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 0
        },
        {
          "name": "Microsoft.IdentityModel.Tokens",
          "exists": true,
          "license": null,
          "keywords": [
            ".NET",
            "Windows",
            "Authentication",
            "Identity",
            "SecurityTokens",
            "Cryptographic",
            "operations",
            "Signing",
            "Verifying",
            "Signatures",
            "Encryption"
          ],
          "ecosystem": "nuget",
          "matches_repo": true,
          "registry_url": "https://www.nuget.org/packages/Microsoft.IdentityModel.Tokens",
          "is_deprecated": false,
          "latest_version": "8.20.0",
          "repository_url": "https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet",
          "versions_count": 114,
          "total_downloads": 4092319413,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": null,
          "first_published_at": null,
          "latest_published_at": "2026-07-21T20:07:23.370000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 0
        },
        {
          "name": "Microsoft.IdentityModel.Logging",
          "exists": true,
          "license": null,
          "keywords": [
            ".NET",
            "Windows",
            "Authentication",
            "Identity",
            "Logging"
          ],
          "ecosystem": "nuget",
          "matches_repo": true,
          "registry_url": "https://www.nuget.org/packages/Microsoft.IdentityModel.Logging",
          "is_deprecated": false,
          "latest_version": "8.20.0",
          "repository_url": "https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet",
          "versions_count": 114,
          "total_downloads": 4021522415,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": null,
          "first_published_at": null,
          "latest_published_at": "2026-07-21T20:07:12.560000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 0
        },
        {
          "name": "System.IdentityModel.Tokens.Jwt",
          "exists": true,
          "license": null,
          "keywords": [
            ".NET",
            "Windows",
            "Authentication",
            "Identity",
            "Json",
            "Web",
            "Token"
          ],
          "ecosystem": "nuget",
          "matches_repo": true,
          "registry_url": "https://www.nuget.org/packages/System.IdentityModel.Tokens.Jwt",
          "is_deprecated": false,
          "latest_version": "8.20.0",
          "repository_url": "https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet",
          "versions_count": 125,
          "total_downloads": 3730084734,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": null,
          "first_published_at": null,
          "latest_published_at": "2026-07-21T20:07:30.587000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 0
        },
        {
          "name": "Microsoft.IdentityModel.Protocols",
          "exists": true,
          "license": null,
          "keywords": [
            ".NET",
            "Windows",
            "Authentication",
            "Identity",
            "OpenIdConnect",
            "WsFederation"
          ],
          "ecosystem": "nuget",
          "matches_repo": true,
          "registry_url": "https://www.nuget.org/packages/Microsoft.IdentityModel.Protocols",
          "is_deprecated": false,
          "latest_version": "8.20.0",
          "repository_url": "https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet",
          "versions_count": 114,
          "total_downloads": 2768629565,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": null,
          "first_published_at": null,
          "latest_published_at": "2026-07-21T20:07:15.417000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 0
        },
        {
          "name": "Microsoft.IdentityModel.Validators",
          "exists": true,
          "license": null,
          "keywords": [
            ".NET",
            "Windows",
            "Authentication",
            "Identity",
            "OpenIdConnect",
            "Validation",
            "AzureAD",
            "Microsoft",
            "identity",
            "platform"
          ],
          "ecosystem": "nuget",
          "matches_repo": true,
          "registry_url": "https://www.nuget.org/packages/Microsoft.IdentityModel.Validators",
          "is_deprecated": false,
          "latest_version": "8.20.0",
          "repository_url": "https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet",
          "versions_count": 85,
          "total_downloads": 239191102,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": null,
          "first_published_at": null,
          "latest_published_at": "2026-07-21T20:07:26.743000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 0
        },
        {
          "name": "Microsoft.IdentityModel.Tokens.Saml",
          "exists": true,
          "license": null,
          "keywords": [
            ".NET",
            "Windows",
            "Authentication",
            "Identity",
            "SamlTokens",
            "Saml",
            "Token",
            "Saml2"
          ],
          "ecosystem": "nuget",
          "matches_repo": true,
          "registry_url": "https://www.nuget.org/packages/Microsoft.IdentityModel.Tokens.Saml",
          "is_deprecated": false,
          "latest_version": "8.20.0",
          "repository_url": "https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet",
          "versions_count": 109,
          "total_downloads": 180326580,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": null,
          "first_published_at": null,
          "latest_published_at": "2026-07-21T20:07:25.213000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 0
        }
      ]
    },
    "popularity": {
      "forks": 471,
      "stars": 1153,
      "watchers": 98,
      "fork_history": {
        "days": [
          {
            "date": "2014-05-20",
            "count": 1
          },
          {
            "date": "2014-06-10",
            "count": 1
          },
          {
            "date": "2014-06-27",
            "count": 1
          },
          {
            "date": "2014-07-04",
            "count": 1
          },
          {
            "date": "2014-07-14",
            "count": 1
          },
          {
            "date": "2014-09-22",
            "count": 1
          },
          {
            "date": "2015-02-09",
            "count": 1
          },
          {
            "date": "2015-02-19",
            "count": 1
          },
          {
            "date": "2015-02-26",
            "count": 1
          },
          {
            "date": "2015-03-09",
            "count": 1
          },
          {
            "date": "2015-04-01",
            "count": 1
          },
          {
            "date": "2015-05-01",
            "count": 1
          },
          {
            "date": "2015-05-17",
            "count": 1
          },
          {
            "date": "2015-05-20",
            "count": 1
          },
          {
            "date": "2015-05-21",
            "count": 1
          },
          {
            "date": "2015-05-23",
            "count": 1
          },
          {
            "date": "2015-06-03",
            "count": 1
          },
          {
            "date": "2015-06-12",
            "count": 1
          },
          {
            "date": "2015-07-08",
            "count": 1
          },
          {
            "date": "2015-07-19",
            "count": 1
          },
          {
            "date": "2015-08-09",
            "count": 1
          },
          {
            "date": "2015-09-15",
            "count": 1
          },
          {
            "date": "2015-09-19",
            "count": 1
          },
          {
            "date": "2015-09-20",
            "count": 1
          },
          {
            "date": "2015-10-09",
            "count": 1
          },
          {
            "date": "2016-01-06",
            "count": 1
          },
          {
            "date": "2016-01-22",
            "count": 1
          },
          {
            "date": "2016-01-26",
            "count": 2
          },
          {
            "date": "2016-02-16",
            "count": 1
          },
          {
            "date": "2016-04-17",
            "count": 1
          },
          {
            "date": "2016-04-28",
            "count": 2
          },
          {
            "date": "2016-05-30",
            "count": 1
          },
          {
            "date": "2016-05-31",
            "count": 1
          },
          {
            "date": "2016-06-02",
            "count": 1
          },
          {
            "date": "2016-06-06",
            "count": 1
          },
          {
            "date": "2016-06-08",
            "count": 1
          },
          {
            "date": "2016-06-15",
            "count": 1
          },
          {
            "date": "2016-06-28",
            "count": 1
          },
          {
            "date": "2016-07-11",
            "count": 1
          },
          {
            "date": "2016-08-15",
            "count": 1
          },
          {
            "date": "2016-08-29",
            "count": 1
          },
          {
            "date": "2016-09-11",
            "count": 1
          },
          {
            "date": "2016-09-22",
            "count": 1
          },
          {
            "date": "2016-09-26",
            "count": 1
          },
          {
            "date": "2016-10-07",
            "count": 1
          },
          {
            "date": "2016-10-10",
            "count": 1
          },
          {
            "date": "2016-10-26",
            "count": 1
          },
          {
            "date": "2016-11-18",
            "count": 1
          },
          {
            "date": "2016-11-21",
            "count": 1
          },
          {
            "date": "2016-12-12",
            "count": 1
          },
          {
            "date": "2016-12-14",
            "count": 1
          },
          {
            "date": "2016-12-16",
            "count": 1
          },
          {
            "date": "2017-01-01",
            "count": 1
          },
          {
            "date": "2017-01-04",
            "count": 1
          },
          {
            "date": "2017-02-02",
            "count": 1
          },
          {
            "date": "2017-02-18",
            "count": 1
          },
          {
            "date": "2017-02-24",
            "count": 1
          },
          {
            "date": "2017-02-27",
            "count": 1
          },
          {
            "date": "2017-03-01",
            "count": 2
          },
          {
            "date": "2017-03-08",
            "count": 1
          },
          {
            "date": "2017-03-10",
            "count": 1
          },
          {
            "date": "2017-03-20",
            "count": 1
          },
          {
            "date": "2017-04-08",
            "count": 1
          },
          {
            "date": "2017-04-12",
            "count": 1
          },
          {
            "date": "2017-04-17",
            "count": 1
          },
          {
            "date": "2017-04-24",
            "count": 1
          },
          {
            "date": "2017-05-07",
            "count": 1
          },
          {
            "date": "2017-05-11",
            "count": 1
          },
          {
            "date": "2017-05-25",
            "count": 2
          },
          {
            "date": "2017-05-31",
            "count": 2
          },
          {
            "date": "2017-06-06",
            "count": 1
          },
          {
            "date": "2017-06-09",
            "count": 1
          },
          {
            "date": "2017-06-12",
            "count": 1
          },
          {
            "date": "2017-07-06",
            "count": 1
          },
          {
            "date": "2017-07-15",
            "count": 1
          },
          {
            "date": "2017-07-21",
            "count": 1
          },
          {
            "date": "2017-07-29",
            "count": 1
          },
          {
            "date": "2017-08-06",
            "count": 1
          },
          {
            "date": "2017-08-28",
            "count": 1
          },
          {
            "date": "2017-09-12",
            "count": 1
          },
          {
            "date": "2017-09-15",
            "count": 1
          },
          {
            "date": "2017-09-24",
            "count": 1
          },
          {
            "date": "2017-09-26",
            "count": 1
          },
          {
            "date": "2017-10-23",
            "count": 1
          },
          {
            "date": "2017-11-13",
            "count": 1
          },
          {
            "date": "2017-11-30",
            "count": 1
          },
          {
            "date": "2017-12-06",
            "count": 1
          },
          {
            "date": "2018-01-03",
            "count": 1
          },
          {
            "date": "2018-01-09",
            "count": 1
          },
          {
            "date": "2018-01-20",
            "count": 1
          },
          {
            "date": "2018-01-24",
            "count": 1
          },
          {
            "date": "2018-01-30",
            "count": 1
          },
          {
            "date": "2018-02-02",
            "count": 1
          },
          {
            "date": "2018-02-16",
            "count": 1
          },
          {
            "date": "2018-02-28",
            "count": 1
          },
          {
            "date": "2018-03-01",
            "count": 1
          },
          {
            "date": "2018-03-08",
            "count": 1
          },
          {
            "date": "2018-03-15",
            "count": 1
          },
          {
            "date": "2018-03-31",
            "count": 1
          },
          {
            "date": "2018-04-11",
            "count": 1
          },
          {
            "date": "2018-04-13",
            "count": 1
          },
          {
            "date": "2018-04-24",
            "count": 1
          },
          {
            "date": "2018-05-04",
            "count": 1
          },
          {
            "date": "2018-05-11",
            "count": 1
          },
          {
            "date": "2018-05-22",
            "count": 2
          },
          {
            "date": "2018-06-05",
            "count": 1
          },
          {
            "date": "2018-06-07",
            "count": 2
          },
          {
            "date": "2018-06-14",
            "count": 2
          },
          {
            "date": "2018-06-25",
            "count": 1
          },
          {
            "date": "2018-06-26",
            "count": 1
          },
          {
            "date": "2018-07-06",
            "count": 1
          },
          {
            "date": "2018-07-16",
            "count": 1
          },
          {
            "date": "2018-07-23",
            "count": 1
          },
          {
            "date": "2018-08-06",
            "count": 1
          },
          {
            "date": "2018-08-07",
            "count": 1
          },
          {
            "date": "2018-08-09",
            "count": 1
          },
          {
            "date": "2018-10-16",
            "count": 1
          },
          {
            "date": "2018-10-26",
            "count": 1
          },
          {
            "date": "2018-10-27",
            "count": 1
          },
          {
            "date": "2018-10-30",
            "count": 1
          },
          {
            "date": "2018-11-07",
            "count": 1
          },
          {
            "date": "2018-11-20",
            "count": 1
          },
          {
            "date": "2018-11-21",
            "count": 1
          },
          {
            "date": "2018-11-26",
            "count": 1
          },
          {
            "date": "2018-12-21",
            "count": 1
          },
          {
            "date": "2018-12-27",
            "count": 1
          },
          {
            "date": "2018-12-28",
            "count": 1
          },
          {
            "date": "2019-01-08",
            "count": 1
          },
          {
            "date": "2019-01-11",
            "count": 1
          },
          {
            "date": "2019-01-13",
            "count": 1
          },
          {
            "date": "2019-01-29",
            "count": 1
          },
          {
            "date": "2019-03-11",
            "count": 1
          },
          {
            "date": "2019-03-14",
            "count": 1
          },
          {
            "date": "2019-04-09",
            "count": 1
          },
          {
            "date": "2019-04-11",
            "count": 1
          },
          {
            "date": "2019-04-12",
            "count": 1
          },
          {
            "date": "2019-04-25",
            "count": 1
          },
          {
            "date": "2019-04-30",
            "count": 1
          },
          {
            "date": "2019-05-02",
            "count": 1
          },
          {
            "date": "2019-05-03",
            "count": 2
          },
          {
            "date": "2019-05-23",
            "count": 1
          },
          {
            "date": "2019-05-24",
            "count": 1
          },
          {
            "date": "2019-05-27",
            "count": 1
          },
          {
            "date": "2019-06-14",
            "count": 2
          },
          {
            "date": "2019-06-27",
            "count": 1
          },
          {
            "date": "2019-07-12",
            "count": 1
          },
          {
            "date": "2019-07-17",
            "count": 1
          },
          {
            "date": "2019-08-01",
            "count": 1
          },
          {
            "date": "2019-08-09",
            "count": 1
          },
          {
            "date": "2019-08-24",
            "count": 1
          },
          {
            "date": "2019-08-28",
            "count": 1
          },
          {
            "date": "2019-09-04",
            "count": 1
          },
          {
            "date": "2019-09-13",
            "count": 1
          },
          {
            "date": "2019-09-19",
            "count": 1
          },
          {
            "date": "2019-09-25",
            "count": 1
          },
          {
            "date": "2019-09-27",
            "count": 1
          },
          {
            "date": "2019-10-08",
            "count": 1
          },
          {
            "date": "2019-10-12",
            "count": 1
          },
          {
            "date": "2019-10-23",
            "count": 1
          },
          {
            "date": "2019-10-28",
            "count": 1
          },
          {
            "date": "2019-10-31",
            "count": 1
          },
          {
            "date": "2019-11-21",
            "count": 1
          },
          {
            "date": "2019-11-26",
            "count": 2
          },
          {
            "date": "2019-11-27",
            "count": 1
          },
          {
            "date": "2019-11-29",
            "count": 1
          },
          {
            "date": "2019-12-02",
            "count": 1
          },
          {
            "date": "2020-01-21",
            "count": 1
          },
          {
            "date": "2020-01-26",
            "count": 1
          },
          {
            "date": "2020-02-18",
            "count": 1
          },
          {
            "date": "2020-02-29",
            "count": 1
          },
          {
            "date": "2020-03-04",
            "count": 1
          },
          {
            "date": "2020-03-09",
            "count": 2
          },
          {
            "date": "2020-03-11",
            "count": 1
          },
          {
            "date": "2020-03-12",
            "count": 1
          },
          {
            "date": "2020-03-19",
            "count": 1
          },
          {
            "date": "2020-03-31",
            "count": 1
          },
          {
            "date": "2020-04-01",
            "count": 1
          },
          {
            "date": "2020-04-06",
            "count": 1
          },
          {
            "date": "2020-04-07",
            "count": 1
          },
          {
            "date": "2020-04-08",
            "count": 1
          },
          {
            "date": "2020-04-10",
            "count": 1
          },
          {
            "date": "2020-04-21",
            "count": 2
          },
          {
            "date": "2020-04-25",
            "count": 1
          },
          {
            "date": "2020-04-26",
            "count": 1
          },
          {
            "date": "2020-04-28",
            "count": 1
          },
          {
            "date": "2020-04-29",
            "count": 1
          },
          {
            "date": "2020-05-01",
            "count": 1
          },
          {
            "date": "2020-05-12",
            "count": 1
          },
          {
            "date": "2020-05-19",
            "count": 1
          },
          {
            "date": "2020-05-25",
            "count": 1
          },
          {
            "date": "2020-05-28",
            "count": 1
          },
          {
            "date": "2020-05-29",
            "count": 1
          },
          {
            "date": "2020-06-05",
            "count": 1
          },
          {
            "date": "2020-06-09",
            "count": 1
          },
          {
            "date": "2020-06-20",
            "count": 1
          },
          {
            "date": "2020-06-22",
            "count": 1
          },
          {
            "date": "2020-06-29",
            "count": 1
          },
          {
            "date": "2020-07-01",
            "count": 1
          },
          {
            "date": "2020-07-13",
            "count": 1
          },
          {
            "date": "2020-07-23",
            "count": 1
          },
          {
            "date": "2020-07-31",
            "count": 1
          },
          {
            "date": "2020-08-07",
            "count": 1
          },
          {
            "date": "2020-08-29",
            "count": 1
          },
          {
            "date": "2020-09-12",
            "count": 1
          },
          {
            "date": "2020-09-21",
            "count": 1
          },
          {
            "date": "2020-09-23",
            "count": 1
          },
          {
            "date": "2020-10-09",
            "count": 1
          },
          {
            "date": "2020-10-15",
            "count": 1
          },
          {
            "date": "2020-10-20",
            "count": 1
          },
          {
            "date": "2020-10-21",
            "count": 3
          },
          {
            "date": "2020-10-24",
            "count": 1
          },
          {
            "date": "2020-10-27",
            "count": 1
          },
          {
            "date": "2020-11-03",
            "count": 1
          },
          {
            "date": "2020-11-15",
            "count": 1
          },
          {
            "date": "2020-11-16",
            "count": 1
          },
          {
            "date": "2020-11-23",
            "count": 1
          },
          {
            "date": "2020-11-26",
            "count": 1
          },
          {
            "date": "2020-11-29",
            "count": 1
          },
          {
            "date": "2020-12-03",
            "count": 1
          },
          {
            "date": "2020-12-05",
            "count": 1
          },
          {
            "date": "2020-12-09",
            "count": 1
          },
          {
            "date": "2020-12-16",
            "count": 1
          },
          {
            "date": "2020-12-25",
            "count": 1
          },
          {
            "date": "2021-01-05",
            "count": 1
          },
          {
            "date": "2021-01-09",
            "count": 1
          },
          {
            "date": "2021-02-08",
            "count": 1
          },
          {
            "date": "2021-03-04",
            "count": 1
          },
          {
            "date": "2021-03-11",
            "count": 1
          },
          {
            "date": "2021-03-24",
            "count": 1
          },
          {
            "date": "2021-03-30",
            "count": 1
          },
          {
            "date": "2021-04-16",
            "count": 1
          },
          {
            "date": "2021-04-18",
            "count": 1
          },
          {
            "date": "2021-05-04",
            "count": 1
          },
          {
            "date": "2021-05-20",
            "count": 1
          },
          {
            "date": "2021-05-24",
            "count": 1
          },
          {
            "date": "2021-05-29",
            "count": 1
          },
          {
            "date": "2021-06-24",
            "count": 1
          },
          {
            "date": "2021-06-28",
            "count": 1
          },
          {
            "date": "2021-07-02",
            "count": 1
          },
          {
            "date": "2021-07-06",
            "count": 1
          },
          {
            "date": "2021-07-22",
            "count": 1
          },
          {
            "date": "2021-08-19",
            "count": 1
          },
          {
            "date": "2021-08-26",
            "count": 1
          },
          {
            "date": "2021-08-30",
            "count": 1
          },
          {
            "date": "2021-09-01",
            "count": 1
          },
          {
            "date": "2021-09-06",
            "count": 1
          },
          {
            "date": "2021-09-29",
            "count": 1
          },
          {
            "date": "2021-10-03",
            "count": 1
          },
          {
            "date": "2021-10-05",
            "count": 1
          },
          {
            "date": "2021-10-07",
            "count": 2
          },
          {
            "date": "2021-10-08",
            "count": 1
          },
          {
            "date": "2021-10-09",
            "count": 1
          },
          {
            "date": "2021-10-21",
            "count": 1
          },
          {
            "date": "2021-11-05",
            "count": 1
          },
          {
            "date": "2021-11-09",
            "count": 1
          },
          {
            "date": "2021-12-01",
            "count": 1
          },
          {
            "date": "2022-01-11",
            "count": 1
          },
          {
            "date": "2022-01-27",
            "count": 1
          },
          {
            "date": "2022-03-01",
            "count": 1
          },
          {
            "date": "2022-03-03",
            "count": 1
          },
          {
            "date": "2022-03-09",
            "count": 1
          },
          {
            "date": "2022-03-16",
            "count": 2
          },
          {
            "date": "2022-03-22",
            "count": 1
          },
          {
            "date": "2022-04-02",
            "count": 1
          },
          {
            "date": "2022-04-10",
            "count": 1
          },
          {
            "date": "2022-05-19",
            "count": 1
          },
          {
            "date": "2022-06-16",
            "count": 1
          },
          {
            "date": "2022-06-29",
            "count": 1
          },
          {
            "date": "2022-07-16",
            "count": 1
          },
          {
            "date": "2022-07-21",
            "count": 1
          },
          {
            "date": "2022-07-26",
            "count": 1
          },
          {
            "date": "2022-08-07",
            "count": 1
          },
          {
            "date": "2022-08-20",
            "count": 1
          },
          {
            "date": "2022-09-22",
            "count": 1
          },
          {
            "date": "2022-10-31",
            "count": 1
          },
          {
            "date": "2022-11-11",
            "count": 1
          },
          {
            "date": "2022-11-21",
            "count": 1
          },
          {
            "date": "2022-12-01",
            "count": 1
          },
          {
            "date": "2022-12-10",
            "count": 1
          },
          {
            "date": "2022-12-20",
            "count": 2
          },
          {
            "date": "2022-12-27",
            "count": 1
          },
          {
            "date": "2023-01-20",
            "count": 2
          },
          {
            "date": "2023-03-15",
            "count": 1
          },
          {
            "date": "2023-03-21",
            "count": 1
          },
          {
            "date": "2023-03-24",
            "count": 1
          },
          {
            "date": "2023-03-28",
            "count": 2
          },
          {
            "date": "2023-04-04",
            "count": 1
          },
          {
            "date": "2023-05-18",
            "count": 1
          },
          {
            "date": "2023-05-29",
            "count": 1
          },
          {
            "date": "2023-06-01",
            "count": 2
          },
          {
            "date": "2023-06-02",
            "count": 1
          },
          {
            "date": "2023-06-11",
            "count": 1
          },
          {
            "date": "2023-06-22",
            "count": 1
          },
          {
            "date": "2023-07-04",
            "count": 1
          },
          {
            "date": "2023-07-08",
            "count": 1
          },
          {
            "date": "2023-07-20",
            "count": 1
          },
          {
            "date": "2023-07-25",
            "count": 1
          },
          {
            "date": "2023-07-28",
            "count": 1
          },
          {
            "date": "2023-08-07",
            "count": 1
          },
          {
            "date": "2023-08-11",
            "count": 1
          },
          {
            "date": "2023-08-21",
            "count": 1
          },
          {
            "date": "2023-09-03",
            "count": 1
          },
          {
            "date": "2023-09-13",
            "count": 1
          },
          {
            "date": "2023-09-15",
            "count": 1
          },
          {
            "date": "2023-09-19",
            "count": 1
          },
          {
            "date": "2023-09-27",
            "count": 1
          },
          {
            "date": "2023-10-14",
            "count": 1
          },
          {
            "date": "2023-10-24",
            "count": 1
          },
          {
            "date": "2023-11-05",
            "count": 1
          },
          {
            "date": "2023-11-14",
            "count": 1
          },
          {
            "date": "2023-11-15",
            "count": 1
          },
          {
            "date": "2023-11-17",
            "count": 1
          },
          {
            "date": "2023-11-18",
            "count": 1
          },
          {
            "date": "2023-11-24",
            "count": 1
          },
          {
            "date": "2023-12-05",
            "count": 1
          },
          {
            "date": "2023-12-15",
            "count": 1
          },
          {
            "date": "2023-12-20",
            "count": 1
          },
          {
            "date": "2023-12-26",
            "count": 1
          },
          {
            "date": "2024-01-08",
            "count": 1
          },
          {
            "date": "2024-01-18",
            "count": 1
          },
          {
            "date": "2024-02-01",
            "count": 1
          },
          {
            "date": "2024-02-02",
            "count": 1
          },
          {
            "date": "2024-02-03",
            "count": 1
          },
          {
            "date": "2024-02-06",
            "count": 1
          },
          {
            "date": "2024-02-11",
            "count": 1
          },
          {
            "date": "2024-02-12",
            "count": 1
          },
          {
            "date": "2024-02-16",
            "count": 1
          },
          {
            "date": "2024-03-09",
            "count": 1
          },
          {
            "date": "2024-03-25",
            "count": 1
          },
          {
            "date": "2024-04-05",
            "count": 1
          },
          {
            "date": "2024-04-26",
            "count": 1
          },
          {
            "date": "2024-05-02",
            "count": 1
          },
          {
            "date": "2024-05-16",
            "count": 1
          },
          {
            "date": "2024-05-18",
            "count": 1
          },
          {
            "date": "2024-05-20",
            "count": 1
          },
          {
            "date": "2024-05-24",
            "count": 1
          },
          {
            "date": "2024-05-27",
            "count": 1
          },
          {
            "date": "2024-06-08",
            "count": 1
          },
          {
            "date": "2024-06-24",
            "count": 1
          },
          {
            "date": "2024-07-02",
            "count": 1
          },
          {
            "date": "2024-07-07",
            "count": 1
          },
          {
            "date": "2024-07-13",
            "count": 1
          },
          {
            "date": "2024-07-23",
            "count": 1
          },
          {
            "date": "2024-08-16",
            "count": 1
          },
          {
            "date": "2024-08-29",
            "count": 1
          },
          {
            "date": "2024-09-01",
            "count": 1
          },
          {
            "date": "2024-09-04",
            "count": 4
          },
          {
            "date": "2024-09-12",
            "count": 1
          },
          {
            "date": "2024-09-23",
            "count": 1
          },
          {
            "date": "2024-10-09",
            "count": 1
          },
          {
            "date": "2024-10-11",
            "count": 1
          },
          {
            "date": "2024-10-23",
            "count": 1
          },
          {
            "date": "2024-11-01",
            "count": 1
          },
          {
            "date": "2024-11-11",
            "count": 1
          },
          {
            "date": "2024-11-28",
            "count": 1
          },
          {
            "date": "2024-12-07",
            "count": 1
          },
          {
            "date": "2024-12-09",
            "count": 1
          },
          {
            "date": "2024-12-19",
            "count": 3
          },
          {
            "date": "2024-12-26",
            "count": 1
          },
          {
            "date": "2025-01-06",
            "count": 1
          },
          {
            "date": "2025-01-08",
            "count": 1
          },
          {
            "date": "2025-01-11",
            "count": 1
          },
          {
            "date": "2025-01-21",
            "count": 1
          },
          {
            "date": "2025-01-24",
            "count": 1
          },
          {
            "date": "2025-02-15",
            "count": 1
          },
          {
            "date": "2025-02-26",
            "count": 1
          },
          {
            "date": "2025-02-28",
            "count": 1
          },
          {
            "date": "2025-03-03",
            "count": 1
          },
          {
            "date": "2025-03-05",
            "count": 1
          },
          {
            "date": "2025-03-25",
            "count": 1
          },
          {
            "date": "2025-04-07",
            "count": 1
          },
          {
            "date": "2025-04-15",
            "count": 1
          },
          {
            "date": "2025-04-19",
            "count": 1
          },
          {
            "date": "2025-04-24",
            "count": 1
          },
          {
            "date": "2025-05-07",
            "count": 2
          },
          {
            "date": "2025-06-13",
            "count": 2
          },
          {
            "date": "2025-07-03",
            "count": 1
          },
          {
            "date": "2025-07-16",
            "count": 1
          },
          {
            "date": "2025-07-23",
            "count": 1
          },
          {
            "date": "2025-07-26",
            "count": 1
          },
          {
            "date": "2025-07-28",
            "count": 1
          },
          {
            "date": "2025-08-02",
            "count": 1
          },
          {
            "date": "2025-08-08",
            "count": 1
          },
          {
            "date": "2025-09-01",
            "count": 1
          },
          {
            "date": "2025-09-08",
            "count": 1
          },
          {
            "date": "2025-10-02",
            "count": 1
          },
          {
            "date": "2025-11-08",
            "count": 2
          },
          {
            "date": "2025-11-17",
            "count": 1
          },
          {
            "date": "2025-11-23",
            "count": 2
          },
          {
            "date": "2025-11-26",
            "count": 1
          },
          {
            "date": "2025-11-27",
            "count": 1
          },
          {
            "date": "2025-12-01",
            "count": 1
          },
          {
            "date": "2025-12-15",
            "count": 1
          },
          {
            "date": "2025-12-17",
            "count": 1
          },
          {
            "date": "2025-12-18",
            "count": 2
          },
          {
            "date": "2025-12-20",
            "count": 1
          },
          {
            "date": "2025-12-22",
            "count": 1
          },
          {
            "date": "2026-01-08",
            "count": 1
          },
          {
            "date": "2026-01-15",
            "count": 1
          },
          {
            "date": "2026-01-29",
            "count": 1
          },
          {
            "date": "2026-01-30",
            "count": 1
          },
          {
            "date": "2026-02-09",
            "count": 1
          },
          {
            "date": "2026-02-11",
            "count": 1
          },
          {
            "date": "2026-02-13",
            "count": 2
          },
          {
            "date": "2026-02-23",
            "count": 1
          },
          {
            "date": "2026-03-21",
            "count": 1
          },
          {
            "date": "2026-03-22",
            "count": 1
          },
          {
            "date": "2026-04-02",
            "count": 1
          },
          {
            "date": "2026-04-12",
            "count": 1
          },
          {
            "date": "2026-04-22",
            "count": 1
          },
          {
            "date": "2026-05-03",
            "count": 1
          },
          {
            "date": "2026-05-11",
            "count": 1
          },
          {
            "date": "2026-05-24",
            "count": 1
          },
          {
            "date": "2026-05-26",
            "count": 1
          },
          {
            "date": "2026-06-01",
            "count": 1
          },
          {
            "date": "2026-06-02",
            "count": 1
          },
          {
            "date": "2026-06-08",
            "count": 1
          },
          {
            "date": "2026-06-13",
            "count": 1
          },
          {
            "date": "2026-06-15",
            "count": 1
          },
          {
            "date": "2026-06-16",
            "count": 1
          },
          {
            "date": "2026-06-22",
            "count": 1
          },
          {
            "date": "2026-06-30",
            "count": 1
          },
          {
            "date": "2026-07-04",
            "count": 1
          },
          {
            "date": "2026-07-15",
            "count": 2
          }
        ],
        "complete": true,
        "collected": 457,
        "total_forks": 471
      },
      "star_history": {
        "days": [
          {
            "date": "2016-11-18",
            "count": 1
          },
          {
            "date": "2016-11-21",
            "count": 1
          },
          {
            "date": "2016-11-23",
            "count": 1
          },
          {
            "date": "2016-11-30",
            "count": 1
          },
          {
            "date": "2016-12-04",
            "count": 1
          },
          {
            "date": "2016-12-14",
            "count": 1
          },
          {
            "date": "2016-12-29",
            "count": 1
          },
          {
            "date": "2016-12-30",
            "count": 1
          },
          {
            "date": "2017-01-01",
            "count": 1
          },
          {
            "date": "2017-01-11",
            "count": 3
          },
          {
            "date": "2017-01-26",
            "count": 1
          },
          {
            "date": "2017-02-03",
            "count": 1
          },
          {
            "date": "2017-02-05",
            "count": 1
          },
          {
            "date": "2017-02-21",
            "count": 1
          },
          {
            "date": "2017-02-22",
            "count": 1
          },
          {
            "date": "2017-02-23",
            "count": 1
          },
          {
            "date": "2017-02-24",
            "count": 1
          },
          {
            "date": "2017-03-03",
            "count": 1
          },
          {
            "date": "2017-03-10",
            "count": 2
          },
          {
            "date": "2017-03-15",
            "count": 1
          },
          {
            "date": "2017-03-16",
            "count": 1
          },
          {
            "date": "2017-03-17",
            "count": 2
          },
          {
            "date": "2017-03-21",
            "count": 1
          },
          {
            "date": "2017-03-27",
            "count": 1
          },
          {
            "date": "2017-04-02",
            "count": 1
          },
          {
            "date": "2017-04-03",
            "count": 2
          },
          {
            "date": "2017-04-05",
            "count": 1
          },
          {
            "date": "2017-04-06",
            "count": 1
          },
          {
            "date": "2017-04-12",
            "count": 1
          },
          {
            "date": "2017-04-18",
            "count": 1
          },
          {
            "date": "2017-04-25",
            "count": 1
          },
          {
            "date": "2017-04-26",
            "count": 1
          },
          {
            "date": "2017-04-27",
            "count": 1
          },
          {
            "date": "2017-04-29",
            "count": 1
          },
          {
            "date": "2017-05-05",
            "count": 1
          },
          {
            "date": "2017-05-08",
            "count": 1
          },
          {
            "date": "2017-05-10",
            "count": 1
          },
          {
            "date": "2017-05-17",
            "count": 1
          },
          {
            "date": "2017-05-19",
            "count": 2
          },
          {
            "date": "2017-05-22",
            "count": 2
          },
          {
            "date": "2017-05-23",
            "count": 1
          },
          {
            "date": "2017-05-25",
            "count": 1
          },
          {
            "date": "2017-06-01",
            "count": 1
          },
          {
            "date": "2017-06-03",
            "count": 1
          },
          {
            "date": "2017-06-05",
            "count": 1
          },
          {
            "date": "2017-06-07",
            "count": 1
          },
          {
            "date": "2017-06-08",
            "count": 1
          },
          {
            "date": "2017-06-09",
            "count": 1
          },
          {
            "date": "2017-06-11",
            "count": 1
          },
          {
            "date": "2017-06-17",
            "count": 1
          },
          {
            "date": "2017-06-22",
            "count": 2
          },
          {
            "date": "2017-06-23",
            "count": 1
          },
          {
            "date": "2017-06-29",
            "count": 1
          },
          {
            "date": "2017-07-08",
            "count": 1
          },
          {
            "date": "2017-07-09",
            "count": 1
          },
          {
            "date": "2017-07-10",
            "count": 1
          },
          {
            "date": "2017-07-12",
            "count": 1
          },
          {
            "date": "2017-07-13",
            "count": 1
          },
          {
            "date": "2017-07-21",
            "count": 2
          },
          {
            "date": "2017-07-22",
            "count": 1
          },
          {
            "date": "2017-07-24",
            "count": 2
          },
          {
            "date": "2017-07-25",
            "count": 1
          },
          {
            "date": "2017-07-28",
            "count": 1
          },
          {
            "date": "2017-08-01",
            "count": 1
          },
          {
            "date": "2017-08-04",
            "count": 2
          },
          {
            "date": "2017-08-11",
            "count": 1
          },
          {
            "date": "2017-08-14",
            "count": 1
          },
          {
            "date": "2017-08-19",
            "count": 1
          },
          {
            "date": "2017-08-28",
            "count": 1
          },
          {
            "date": "2017-08-30",
            "count": 1
          },
          {
            "date": "2017-08-31",
            "count": 1
          },
          {
            "date": "2017-09-05",
            "count": 1
          },
          {
            "date": "2017-09-10",
            "count": 1
          },
          {
            "date": "2017-09-13",
            "count": 1
          },
          {
            "date": "2017-09-15",
            "count": 1
          },
          {
            "date": "2017-09-19",
            "count": 1
          },
          {
            "date": "2017-09-20",
            "count": 1
          },
          {
            "date": "2017-09-22",
            "count": 1
          },
          {
            "date": "2017-09-27",
            "count": 1
          },
          {
            "date": "2017-10-04",
            "count": 1
          },
          {
            "date": "2017-10-06",
            "count": 2
          },
          {
            "date": "2017-10-09",
            "count": 1
          },
          {
            "date": "2017-10-11",
            "count": 1
          },
          {
            "date": "2017-10-17",
            "count": 1
          },
          {
            "date": "2017-11-04",
            "count": 1
          },
          {
            "date": "2017-11-07",
            "count": 1
          },
          {
            "date": "2017-11-09",
            "count": 1
          },
          {
            "date": "2017-11-14",
            "count": 1
          },
          {
            "date": "2017-11-15",
            "count": 1
          },
          {
            "date": "2017-11-20",
            "count": 1
          },
          {
            "date": "2017-11-21",
            "count": 1
          },
          {
            "date": "2017-11-23",
            "count": 1
          },
          {
            "date": "2017-11-24",
            "count": 1
          },
          {
            "date": "2017-11-28",
            "count": 1
          },
          {
            "date": "2017-12-01",
            "count": 1
          },
          {
            "date": "2017-12-04",
            "count": 1
          },
          {
            "date": "2017-12-05",
            "count": 1
          },
          {
            "date": "2017-12-19",
            "count": 1
          },
          {
            "date": "2017-12-21",
            "count": 1
          },
          {
            "date": "2017-12-22",
            "count": 1
          },
          {
            "date": "2017-12-26",
            "count": 1
          },
          {
            "date": "2017-12-28",
            "count": 1
          },
          {
            "date": "2017-12-31",
            "count": 1
          },
          {
            "date": "2018-01-09",
            "count": 2
          },
          {
            "date": "2018-01-11",
            "count": 1
          },
          {
            "date": "2018-01-13",
            "count": 1
          },
          {
            "date": "2018-01-16",
            "count": 1
          },
          {
            "date": "2018-01-18",
            "count": 1
          },
          {
            "date": "2018-01-19",
            "count": 1
          },
          {
            "date": "2018-01-22",
            "count": 1
          },
          {
            "date": "2018-01-23",
            "count": 1
          },
          {
            "date": "2018-01-25",
            "count": 2
          },
          {
            "date": "2018-02-01",
            "count": 1
          },
          {
            "date": "2018-02-04",
            "count": 1
          },
          {
            "date": "2018-02-07",
            "count": 1
          },
          {
            "date": "2018-02-08",
            "count": 1
          },
          {
            "date": "2018-02-09",
            "count": 1
          },
          {
            "date": "2018-02-11",
            "count": 1
          },
          {
            "date": "2018-02-15",
            "count": 1
          },
          {
            "date": "2018-02-20",
            "count": 2
          },
          {
            "date": "2018-02-22",
            "count": 1
          },
          {
            "date": "2018-02-24",
            "count": 1
          },
          {
            "date": "2018-02-27",
            "count": 2
          },
          {
            "date": "2018-02-28",
            "count": 1
          },
          {
            "date": "2018-03-01",
            "count": 2
          },
          {
            "date": "2018-03-09",
            "count": 1
          },
          {
            "date": "2018-03-11",
            "count": 1
          },
          {
            "date": "2018-03-12",
            "count": 1
          },
          {
            "date": "2018-03-13",
            "count": 1
          },
          {
            "date": "2018-03-14",
            "count": 1
          },
          {
            "date": "2018-03-16",
            "count": 1
          },
          {
            "date": "2018-03-22",
            "count": 1
          },
          {
            "date": "2018-03-23",
            "count": 1
          },
          {
            "date": "2018-03-26",
            "count": 1
          },
          {
            "date": "2018-03-27",
            "count": 1
          },
          {
            "date": "2018-03-28",
            "count": 2
          },
          {
            "date": "2018-03-30",
            "count": 1
          },
          {
            "date": "2018-04-01",
            "count": 1
          },
          {
            "date": "2018-04-04",
            "count": 1
          },
          {
            "date": "2018-04-08",
            "count": 1
          },
          {
            "date": "2018-04-09",
            "count": 1
          },
          {
            "date": "2018-04-11",
            "count": 3
          },
          {
            "date": "2018-04-12",
            "count": 1
          },
          {
            "date": "2018-04-13",
            "count": 3
          },
          {
            "date": "2018-04-17",
            "count": 1
          },
          {
            "date": "2018-04-18",
            "count": 1
          },
          {
            "date": "2018-04-23",
            "count": 1
          },
          {
            "date": "2018-04-25",
            "count": 2
          },
          {
            "date": "2018-04-26",
            "count": 2
          },
          {
            "date": "2018-05-03",
            "count": 1
          },
          {
            "date": "2018-05-06",
            "count": 1
          },
          {
            "date": "2018-05-09",
            "count": 1
          },
          {
            "date": "2018-05-10",
            "count": 1
          },
          {
            "date": "2018-05-14",
            "count": 1
          },
          {
            "date": "2018-05-16",
            "count": 1
          },
          {
            "date": "2018-05-21",
            "count": 1
          },
          {
            "date": "2018-05-30",
            "count": 1
          },
          {
            "date": "2018-05-31",
            "count": 2
          },
          {
            "date": "2018-06-04",
            "count": 1
          },
          {
            "date": "2018-06-06",
            "count": 1
          },
          {
            "date": "2018-06-07",
            "count": 1
          },
          {
            "date": "2018-06-09",
            "count": 1
          },
          {
            "date": "2018-06-12",
            "count": 1
          },
          {
            "date": "2018-06-13",
            "count": 1
          },
          {
            "date": "2018-06-14",
            "count": 1
          },
          {
            "date": "2018-06-15",
            "count": 2
          },
          {
            "date": "2018-06-19",
            "count": 1
          },
          {
            "date": "2018-06-22",
            "count": 2
          },
          {
            "date": "2018-06-26",
            "count": 3
          },
          {
            "date": "2018-06-27",
            "count": 1
          },
          {
            "date": "2018-06-29",
            "count": 1
          },
          {
            "date": "2018-07-04",
            "count": 2
          },
          {
            "date": "2018-07-05",
            "count": 2
          },
          {
            "date": "2018-07-08",
            "count": 1
          },
          {
            "date": "2018-07-09",
            "count": 1
          },
          {
            "date": "2018-07-10",
            "count": 1
          },
          {
            "date": "2018-07-12",
            "count": 1
          },
          {
            "date": "2018-07-13",
            "count": 2
          },
          {
            "date": "2018-07-15",
            "count": 2
          },
          {
            "date": "2018-07-16",
            "count": 3
          },
          {
            "date": "2018-07-17",
            "count": 1
          },
          {
            "date": "2018-07-19",
            "count": 1
          },
          {
            "date": "2018-07-23",
            "count": 2
          },
          {
            "date": "2018-07-25",
            "count": 1
          },
          {
            "date": "2018-07-26",
            "count": 2
          },
          {
            "date": "2018-07-30",
            "count": 2
          },
          {
            "date": "2018-08-04",
            "count": 1
          },
          {
            "date": "2018-08-07",
            "count": 1
          },
          {
            "date": "2018-08-14",
            "count": 1
          },
          {
            "date": "2018-08-16",
            "count": 1
          },
          {
            "date": "2018-08-17",
            "count": 1
          },
          {
            "date": "2018-08-22",
            "count": 1
          },
          {
            "date": "2018-08-28",
            "count": 1
          },
          {
            "date": "2018-08-30",
            "count": 1
          },
          {
            "date": "2018-09-05",
            "count": 1
          },
          {
            "date": "2018-09-06",
            "count": 1
          },
          {
            "date": "2018-09-07",
            "count": 2
          },
          {
            "date": "2018-09-10",
            "count": 1
          },
          {
            "date": "2018-09-17",
            "count": 1
          },
          {
            "date": "2018-09-18",
            "count": 2
          },
          {
            "date": "2018-09-19",
            "count": 1
          },
          {
            "date": "2018-09-23",
            "count": 1
          },
          {
            "date": "2018-09-24",
            "count": 1
          },
          {
            "date": "2018-09-27",
            "count": 1
          },
          {
            "date": "2018-09-28",
            "count": 1
          },
          {
            "date": "2018-09-29",
            "count": 1
          },
          {
            "date": "2018-10-04",
            "count": 1
          },
          {
            "date": "2018-10-13",
            "count": 1
          },
          {
            "date": "2018-10-14",
            "count": 1
          },
          {
            "date": "2018-10-15",
            "count": 1
          },
          {
            "date": "2018-10-16",
            "count": 1
          },
          {
            "date": "2018-10-22",
            "count": 1
          },
          {
            "date": "2018-10-23",
            "count": 1
          },
          {
            "date": "2018-10-25",
            "count": 1
          },
          {
            "date": "2018-11-07",
            "count": 1
          },
          {
            "date": "2018-11-09",
            "count": 1
          },
          {
            "date": "2018-11-12",
            "count": 1
          },
          {
            "date": "2018-11-13",
            "count": 1
          },
          {
            "date": "2018-11-14",
            "count": 2
          },
          {
            "date": "2018-11-20",
            "count": 1
          },
          {
            "date": "2018-11-22",
            "count": 3
          },
          {
            "date": "2018-11-30",
            "count": 1
          },
          {
            "date": "2018-12-02",
            "count": 1
          },
          {
            "date": "2018-12-04",
            "count": 1
          },
          {
            "date": "2018-12-08",
            "count": 1
          },
          {
            "date": "2018-12-09",
            "count": 1
          },
          {
            "date": "2018-12-12",
            "count": 1
          },
          {
            "date": "2018-12-14",
            "count": 1
          },
          {
            "date": "2018-12-18",
            "count": 1
          },
          {
            "date": "2018-12-23",
            "count": 1
          },
          {
            "date": "2019-01-02",
            "count": 1
          },
          {
            "date": "2019-01-07",
            "count": 1
          },
          {
            "date": "2019-01-09",
            "count": 2
          },
          {
            "date": "2019-01-10",
            "count": 1
          },
          {
            "date": "2019-01-12",
            "count": 1
          },
          {
            "date": "2019-01-19",
            "count": 1
          },
          {
            "date": "2019-01-22",
            "count": 1
          },
          {
            "date": "2019-01-25",
            "count": 1
          },
          {
            "date": "2019-01-30",
            "count": 4
          },
          {
            "date": "2019-01-31",
            "count": 1
          },
          {
            "date": "2019-02-01",
            "count": 1
          },
          {
            "date": "2019-02-05",
            "count": 2
          },
          {
            "date": "2019-02-07",
            "count": 1
          },
          {
            "date": "2019-02-14",
            "count": 1
          },
          {
            "date": "2019-02-16",
            "count": 1
          },
          {
            "date": "2019-02-19",
            "count": 2
          },
          {
            "date": "2019-02-21",
            "count": 1
          },
          {
            "date": "2019-02-27",
            "count": 1
          },
          {
            "date": "2019-02-28",
            "count": 1
          },
          {
            "date": "2019-03-02",
            "count": 1
          },
          {
            "date": "2019-03-04",
            "count": 1
          },
          {
            "date": "2019-03-06",
            "count": 1
          },
          {
            "date": "2019-03-08",
            "count": 1
          },
          {
            "date": "2019-03-10",
            "count": 1
          },
          {
            "date": "2019-03-12",
            "count": 1
          },
          {
            "date": "2019-03-14",
            "count": 1
          },
          {
            "date": "2019-03-15",
            "count": 2
          },
          {
            "date": "2019-03-16",
            "count": 1
          },
          {
            "date": "2019-03-17",
            "count": 1
          },
          {
            "date": "2019-03-19",
            "count": 2
          },
          {
            "date": "2019-03-23",
            "count": 1
          },
          {
            "date": "2019-03-25",
            "count": 1
          },
          {
            "date": "2019-03-27",
            "count": 1
          },
          {
            "date": "2019-04-08",
            "count": 2
          },
          {
            "date": "2019-04-09",
            "count": 2
          },
          {
            "date": "2019-04-11",
            "count": 2
          },
          {
            "date": "2019-04-12",
            "count": 1
          },
          {
            "date": "2019-04-14",
            "count": 1
          },
          {
            "date": "2019-04-20",
            "count": 1
          },
          {
            "date": "2019-04-22",
            "count": 1
          },
          {
            "date": "2019-04-23",
            "count": 2
          },
          {
            "date": "2019-04-24",
            "count": 2
          },
          {
            "date": "2019-04-25",
            "count": 1
          },
          {
            "date": "2019-04-26",
            "count": 1
          },
          {
            "date": "2019-04-28",
            "count": 1
          },
          {
            "date": "2019-04-29",
            "count": 1
          },
          {
            "date": "2019-04-30",
            "count": 2
          },
          {
            "date": "2019-05-05",
            "count": 1
          },
          {
            "date": "2019-05-08",
            "count": 2
          },
          {
            "date": "2019-05-14",
            "count": 2
          },
          {
            "date": "2019-05-15",
            "count": 1
          },
          {
            "date": "2019-05-16",
            "count": 1
          },
          {
            "date": "2019-05-17",
            "count": 1
          },
          {
            "date": "2019-06-01",
            "count": 1
          },
          {
            "date": "2019-06-04",
            "count": 1
          },
          {
            "date": "2019-06-07",
            "count": 1
          },
          {
            "date": "2019-06-09",
            "count": 1
          },
          {
            "date": "2019-06-12",
            "count": 1
          },
          {
            "date": "2019-06-13",
            "count": 1
          },
          {
            "date": "2019-06-17",
            "count": 1
          },
          {
            "date": "2019-06-18",
            "count": 1
          },
          {
            "date": "2019-06-27",
            "count": 1
          },
          {
            "date": "2019-06-29",
            "count": 1
          },
          {
            "date": "2019-07-02",
            "count": 1
          },
          {
            "date": "2019-07-04",
            "count": 2
          },
          {
            "date": "2019-07-07",
            "count": 1
          },
          {
            "date": "2019-07-10",
            "count": 2
          },
          {
            "date": "2019-07-12",
            "count": 1
          },
          {
            "date": "2019-07-17",
            "count": 1
          },
          {
            "date": "2019-07-19",
            "count": 1
          },
          {
            "date": "2019-07-26",
            "count": 1
          },
          {
            "date": "2019-07-29",
            "count": 1
          },
          {
            "date": "2019-07-31",
            "count": 1
          },
          {
            "date": "2019-08-05",
            "count": 1
          },
          {
            "date": "2019-08-09",
            "count": 1
          },
          {
            "date": "2019-08-11",
            "count": 1
          },
          {
            "date": "2019-08-12",
            "count": 1
          },
          {
            "date": "2019-08-15",
            "count": 2
          },
          {
            "date": "2019-08-19",
            "count": 1
          },
          {
            "date": "2019-08-20",
            "count": 1
          },
          {
            "date": "2019-08-28",
            "count": 1
          },
          {
            "date": "2019-09-08",
            "count": 1
          },
          {
            "date": "2019-09-09",
            "count": 1
          },
          {
            "date": "2019-09-14",
            "count": 1
          },
          {
            "date": "2019-09-18",
            "count": 1
          },
          {
            "date": "2019-09-22",
            "count": 1
          },
          {
            "date": "2019-09-23",
            "count": 1
          },
          {
            "date": "2019-09-25",
            "count": 2
          },
          {
            "date": "2019-09-29",
            "count": 1
          },
          {
            "date": "2019-10-05",
            "count": 2
          },
          {
            "date": "2019-10-07",
            "count": 2
          },
          {
            "date": "2019-10-09",
            "count": 1
          },
          {
            "date": "2019-10-11",
            "count": 1
          },
          {
            "date": "2019-10-23",
            "count": 2
          },
          {
            "date": "2019-10-28",
            "count": 1
          },
          {
            "date": "2019-10-31",
            "count": 1
          },
          {
            "date": "2019-11-01",
            "count": 1
          },
          {
            "date": "2019-11-10",
            "count": 1
          },
          {
            "date": "2019-11-12",
            "count": 1
          },
          {
            "date": "2019-11-20",
            "count": 1
          },
          {
            "date": "2019-11-23",
            "count": 1
          },
          {
            "date": "2019-11-25",
            "count": 1
          },
          {
            "date": "2019-12-01",
            "count": 1
          },
          {
            "date": "2019-12-03",
            "count": 2
          },
          {
            "date": "2019-12-07",
            "count": 1
          },
          {
            "date": "2019-12-10",
            "count": 1
          },
          {
            "date": "2019-12-14",
            "count": 1
          },
          {
            "date": "2019-12-19",
            "count": 2
          },
          {
            "date": "2019-12-20",
            "count": 1
          },
          {
            "date": "2019-12-22",
            "count": 1
          },
          {
            "date": "2019-12-26",
            "count": 2
          },
          {
            "date": "2020-01-06",
            "count": 1
          },
          {
            "date": "2020-01-11",
            "count": 1
          },
          {
            "date": "2020-01-16",
            "count": 1
          },
          {
            "date": "2020-01-17",
            "count": 1
          },
          {
            "date": "2020-01-18",
            "count": 1
          },
          {
            "date": "2020-01-19",
            "count": 1
          },
          {
            "date": "2020-01-22",
            "count": 1
          },
          {
            "date": "2020-02-02",
            "count": 1
          },
          {
            "date": "2020-02-04",
            "count": 1
          },
          {
            "date": "2020-02-05",
            "count": 1
          },
          {
            "date": "2020-02-10",
            "count": 1
          },
          {
            "date": "2020-02-11",
            "count": 1
          },
          {
            "date": "2020-02-15",
            "count": 1
          },
          {
            "date": "2020-02-16",
            "count": 1
          },
          {
            "date": "2020-02-21",
            "count": 1
          },
          {
            "date": "2020-02-24",
            "count": 1
          },
          {
            "date": "2020-02-25",
            "count": 1
          },
          {
            "date": "2020-03-02",
            "count": 1
          },
          {
            "date": "2020-03-04",
            "count": 1
          },
          {
            "date": "2020-03-10",
            "count": 1
          },
          {
            "date": "2020-03-17",
            "count": 1
          },
          {
            "date": "2020-03-19",
            "count": 1
          },
          {
            "date": "2020-03-21",
            "count": 1
          },
          {
            "date": "2020-03-22",
            "count": 2
          },
          {
            "date": "2020-03-23",
            "count": 2
          },
          {
            "date": "2020-03-25",
            "count": 1
          },
          {
            "date": "2020-03-28",
            "count": 1
          },
          {
            "date": "2020-03-29",
            "count": 1
          },
          {
            "date": "2020-03-31",
            "count": 1
          },
          {
            "date": "2020-04-02",
            "count": 1
          },
          {
            "date": "2020-04-05",
            "count": 1
          },
          {
            "date": "2020-04-08",
            "count": 2
          },
          {
            "date": "2020-04-10",
            "count": 1
          },
          {
            "date": "2020-04-11",
            "count": 1
          },
          {
            "date": "2020-04-14",
            "count": 1
          },
          {
            "date": "2020-04-17",
            "count": 1
          },
          {
            "date": "2020-04-20",
            "count": 2
          },
          {
            "date": "2020-04-21",
            "count": 1
          },
          {
            "date": "2020-04-22",
            "count": 1
          },
          {
            "date": "2020-04-24",
            "count": 1
          },
          {
            "date": "2020-04-25",
            "count": 3
          },
          {
            "date": "2020-04-26",
            "count": 1
          },
          {
            "date": "2020-04-30",
            "count": 2
          },
          {
            "date": "2020-05-01",
            "count": 2
          },
          {
            "date": "2020-05-04",
            "count": 1
          },
          {
            "date": "2020-05-06",
            "count": 1
          },
          {
            "date": "2020-05-13",
            "count": 1
          },
          {
            "date": "2020-05-16",
            "count": 1
          },
          {
            "date": "2020-05-25",
            "count": 4
          },
          {
            "date": "2020-05-27",
            "count": 2
          },
          {
            "date": "2020-06-03",
            "count": 2
          },
          {
            "date": "2020-06-07",
            "count": 1
          },
          {
            "date": "2020-06-12",
            "count": 1
          },
          {
            "date": "2020-06-16",
            "count": 1
          },
          {
            "date": "2020-06-17",
            "count": 2
          },
          {
            "date": "2020-06-18",
            "count": 1
          },
          {
            "date": "2020-06-19",
            "count": 1
          },
          {
            "date": "2020-06-26",
            "count": 2
          },
          {
            "date": "2020-06-27",
            "count": 1
          },
          {
            "date": "2020-06-28",
            "count": 1
          },
          {
            "date": "2020-06-29",
            "count": 1
          },
          {
            "date": "2020-06-30",
            "count": 1
          },
          {
            "date": "2020-07-01",
            "count": 1
          },
          {
            "date": "2020-07-02",
            "count": 1
          },
          {
            "date": "2020-07-03",
            "count": 1
          },
          {
            "date": "2020-07-06",
            "count": 1
          },
          {
            "date": "2020-07-08",
            "count": 1
          },
          {
            "date": "2020-07-09",
            "count": 1
          },
          {
            "date": "2020-07-11",
            "count": 1
          },
          {
            "date": "2020-07-14",
            "count": 1
          },
          {
            "date": "2020-07-21",
            "count": 1
          },
          {
            "date": "2020-07-28",
            "count": 3
          },
          {
            "date": "2020-07-31",
            "count": 1
          },
          {
            "date": "2020-08-05",
            "count": 1
          },
          {
            "date": "2020-08-10",
            "count": 1
          },
          {
            "date": "2020-08-17",
            "count": 1
          },
          {
            "date": "2020-08-23",
            "count": 1
          },
          {
            "date": "2020-08-24",
            "count": 1
          },
          {
            "date": "2020-08-26",
            "count": 2
          },
          {
            "date": "2020-08-28",
            "count": 1
          },
          {
            "date": "2020-09-09",
            "count": 1
          },
          {
            "date": "2020-09-10",
            "count": 1
          },
          {
            "date": "2020-09-11",
            "count": 1
          },
          {
            "date": "2020-09-15",
            "count": 1
          },
          {
            "date": "2020-09-23",
            "count": 2
          },
          {
            "date": "2020-09-25",
            "count": 1
          },
          {
            "date": "2020-09-29",
            "count": 2
          },
          {
            "date": "2020-10-05",
            "count": 1
          },
          {
            "date": "2020-10-13",
            "count": 1
          },
          {
            "date": "2020-10-14",
            "count": 3
          },
          {
            "date": "2020-10-18",
            "count": 1
          },
          {
            "date": "2020-11-07",
            "count": 1
          },
          {
            "date": "2020-11-15",
            "count": 1
          },
          {
            "date": "2020-11-18",
            "count": 2
          },
          {
            "date": "2020-11-25",
            "count": 1
          },
          {
            "date": "2020-11-26",
            "count": 1
          },
          {
            "date": "2020-11-27",
            "count": 1
          },
          {
            "date": "2020-12-06",
            "count": 1
          },
          {
            "date": "2020-12-10",
            "count": 1
          },
          {
            "date": "2020-12-14",
            "count": 1
          },
          {
            "date": "2020-12-15",
            "count": 1
          },
          {
            "date": "2020-12-17",
            "count": 1
          },
          {
            "date": "2020-12-18",
            "count": 1
          },
          {
            "date": "2020-12-31",
            "count": 1
          },
          {
            "date": "2021-01-02",
            "count": 1
          },
          {
            "date": "2021-01-06",
            "count": 1
          },
          {
            "date": "2021-01-10",
            "count": 1
          },
          {
            "date": "2021-01-12",
            "count": 1
          },
          {
            "date": "2021-01-18",
            "count": 1
          },
          {
            "date": "2021-01-27",
            "count": 1
          },
          {
            "date": "2021-01-28",
            "count": 1
          },
          {
            "date": "2021-02-06",
            "count": 1
          },
          {
            "date": "2021-02-08",
            "count": 1
          },
          {
            "date": "2021-02-09",
            "count": 1
          },
          {
            "date": "2021-02-14",
            "count": 3
          },
          {
            "date": "2021-02-19",
            "count": 1
          },
          {
            "date": "2021-02-22",
            "count": 1
          },
          {
            "date": "2021-02-23",
            "count": 1
          },
          {
            "date": "2021-03-03",
            "count": 1
          },
          {
            "date": "2021-03-12",
            "count": 1
          },
          {
            "date": "2021-03-13",
            "count": 2
          },
          {
            "date": "2021-03-17",
            "count": 2
          },
          {
            "date": "2021-03-18",
            "count": 1
          },
          {
            "date": "2021-03-19",
            "count": 1
          },
          {
            "date": "2021-03-21",
            "count": 2
          },
          {
            "date": "2021-03-22",
            "count": 2
          },
          {
            "date": "2021-03-25",
            "count": 1
          },
          {
            "date": "2021-03-29",
            "count": 1
          },
          {
            "date": "2021-03-30",
            "count": 1
          },
          {
            "date": "2021-03-31",
            "count": 2
          },
          {
            "date": "2021-04-08",
            "count": 1
          },
          {
            "date": "2021-04-13",
            "count": 1
          },
          {
            "date": "2021-04-15",
            "count": 1
          },
          {
            "date": "2021-04-19",
            "count": 1
          },
          {
            "date": "2021-04-21",
            "count": 1
          },
          {
            "date": "2021-04-25",
            "count": 1
          },
          {
            "date": "2021-04-26",
            "count": 1
          },
          {
            "date": "2021-05-02",
            "count": 1
          },
          {
            "date": "2021-05-09",
            "count": 1
          },
          {
            "date": "2021-05-15",
            "count": 1
          },
          {
            "date": "2021-05-17",
            "count": 1
          },
          {
            "date": "2021-05-20",
            "count": 1
          },
          {
            "date": "2021-05-26",
            "count": 1
          },
          {
            "date": "2021-06-10",
            "count": 1
          },
          {
            "date": "2021-06-17",
            "count": 1
          },
          {
            "date": "2021-06-22",
            "count": 1
          },
          {
            "date": "2021-06-30",
            "count": 1
          },
          {
            "date": "2021-07-05",
            "count": 1
          },
          {
            "date": "2021-07-12",
            "count": 1
          },
          {
            "date": "2021-07-14",
            "count": 1
          },
          {
            "date": "2021-07-15",
            "count": 1
          },
          {
            "date": "2021-07-28",
            "count": 1
          },
          {
            "date": "2021-07-30",
            "count": 1
          },
          {
            "date": "2021-08-02",
            "count": 1
          },
          {
            "date": "2021-08-04",
            "count": 2
          },
          {
            "date": "2021-08-05",
            "count": 1
          },
          {
            "date": "2021-08-06",
            "count": 1
          },
          {
            "date": "2021-08-09",
            "count": 1
          },
          {
            "date": "2021-08-25",
            "count": 1
          },
          {
            "date": "2021-08-26",
            "count": 1
          },
          {
            "date": "2021-08-27",
            "count": 1
          },
          {
            "date": "2021-08-30",
            "count": 1
          },
          {
            "date": "2021-09-02",
            "count": 1
          },
          {
            "date": "2021-09-03",
            "count": 1
          },
          {
            "date": "2021-09-07",
            "count": 1
          },
          {
            "date": "2021-09-13",
            "count": 1
          },
          {
            "date": "2021-09-14",
            "count": 1
          },
          {
            "date": "2021-09-17",
            "count": 1
          },
          {
            "date": "2021-09-22",
            "count": 1
          },
          {
            "date": "2021-09-30",
            "count": 1
          },
          {
            "date": "2021-10-09",
            "count": 1
          },
          {
            "date": "2021-10-12",
            "count": 1
          },
          {
            "date": "2021-10-22",
            "count": 2
          },
          {
            "date": "2021-10-25",
            "count": 1
          },
          {
            "date": "2021-10-28",
            "count": 1
          },
          {
            "date": "2021-11-04",
            "count": 1
          },
          {
            "date": "2021-11-05",
            "count": 1
          },
          {
            "date": "2021-11-07",
            "count": 1
          },
          {
            "date": "2021-11-11",
            "count": 1
          },
          {
            "date": "2021-11-15",
            "count": 1
          },
          {
            "date": "2021-11-17",
            "count": 1
          },
          {
            "date": "2021-11-19",
            "count": 1
          },
          {
            "date": "2021-12-07",
            "count": 1
          },
          {
            "date": "2021-12-10",
            "count": 1
          },
          {
            "date": "2021-12-12",
            "count": 1
          },
          {
            "date": "2021-12-16",
            "count": 1
          },
          {
            "date": "2021-12-25",
            "count": 1
          },
          {
            "date": "2021-12-31",
            "count": 1
          },
          {
            "date": "2022-01-07",
            "count": 1
          },
          {
            "date": "2022-01-18",
            "count": 2
          },
          {
            "date": "2022-01-19",
            "count": 1
          },
          {
            "date": "2022-01-25",
            "count": 2
          },
          {
            "date": "2022-01-27",
            "count": 1
          },
          {
            "date": "2022-01-31",
            "count": 1
          },
          {
            "date": "2022-02-04",
            "count": 1
          },
          {
            "date": "2022-02-05",
            "count": 1
          },
          {
            "date": "2022-02-07",
            "count": 1
          },
          {
            "date": "2022-02-11",
            "count": 1
          },
          {
            "date": "2022-02-22",
            "count": 1
          },
          {
            "date": "2022-02-24",
            "count": 2
          },
          {
            "date": "2022-02-26",
            "count": 1
          },
          {
            "date": "2022-03-04",
            "count": 2
          },
          {
            "date": "2022-03-07",
            "count": 1
          },
          {
            "date": "2022-03-13",
            "count": 1
          },
          {
            "date": "2022-03-14",
            "count": 1
          },
          {
            "date": "2022-03-15",
            "count": 1
          },
          {
            "date": "2022-03-16",
            "count": 1
          },
          {
            "date": "2022-03-19",
            "count": 1
          },
          {
            "date": "2022-03-23",
            "count": 1
          },
          {
            "date": "2022-03-29",
            "count": 1
          },
          {
            "date": "2022-03-30",
            "count": 1
          },
          {
            "date": "2022-04-02",
            "count": 2
          },
          {
            "date": "2022-04-04",
            "count": 1
          },
          {
            "date": "2022-04-07",
            "count": 1
          },
          {
            "date": "2022-04-10",
            "count": 1
          },
          {
            "date": "2022-04-16",
            "count": 1
          },
          {
            "date": "2022-04-17",
            "count": 1
          },
          {
            "date": "2022-04-20",
            "count": 1
          },
          {
            "date": "2022-04-27",
            "count": 1
          },
          {
            "date": "2022-05-06",
            "count": 1
          },
          {
            "date": "2022-06-01",
            "count": 1
          },
          {
            "date": "2022-06-03",
            "count": 2
          },
          {
            "date": "2022-06-05",
            "count": 1
          },
          {
            "date": "2022-06-06",
            "count": 2
          },
          {
            "date": "2022-06-15",
            "count": 2
          },
          {
            "date": "2022-06-20",
            "count": 1
          },
          {
            "date": "2022-06-22",
            "count": 1
          },
          {
            "date": "2022-06-29",
            "count": 1
          },
          {
            "date": "2022-07-02",
            "count": 1
          },
          {
            "date": "2022-07-06",
            "count": 1
          },
          {
            "date": "2022-07-09",
            "count": 1
          },
          {
            "date": "2022-07-10",
            "count": 1
          },
          {
            "date": "2022-07-14",
            "count": 1
          },
          {
            "date": "2022-07-18",
            "count": 1
          },
          {
            "date": "2022-07-21",
            "count": 1
          },
          {
            "date": "2022-07-27",
            "count": 1
          },
          {
            "date": "2022-08-09",
            "count": 1
          },
          {
            "date": "2022-08-15",
            "count": 1
          },
          {
            "date": "2022-08-19",
            "count": 1
          },
          {
            "date": "2022-08-23",
            "count": 2
          },
          {
            "date": "2022-08-28",
            "count": 2
          },
          {
            "date": "2022-08-30",
            "count": 1
          },
          {
            "date": "2022-09-01",
            "count": 1
          },
          {
            "date": "2022-09-04",
            "count": 1
          },
          {
            "date": "2022-09-05",
            "count": 1
          },
          {
            "date": "2022-09-07",
            "count": 1
          },
          {
            "date": "2022-09-16",
            "count": 1
          },
          {
            "date": "2022-09-18",
            "count": 1
          },
          {
            "date": "2022-09-24",
            "count": 1
          },
          {
            "date": "2022-09-30",
            "count": 1
          },
          {
            "date": "2022-10-07",
            "count": 1
          },
          {
            "date": "2022-10-10",
            "count": 1
          },
          {
            "date": "2022-10-13",
            "count": 1
          },
          {
            "date": "2022-10-14",
            "count": 1
          },
          {
            "date": "2022-10-25",
            "count": 1
          },
          {
            "date": "2022-11-02",
            "count": 1
          },
          {
            "date": "2022-11-04",
            "count": 1
          },
          {
            "date": "2022-11-15",
            "count": 2
          },
          {
            "date": "2022-11-16",
            "count": 1
          },
          {
            "date": "2022-11-23",
            "count": 2
          },
          {
            "date": "2022-12-02",
            "count": 1
          },
          {
            "date": "2022-12-15",
            "count": 1
          },
          {
            "date": "2022-12-20",
            "count": 2
          },
          {
            "date": "2023-01-05",
            "count": 1
          },
          {
            "date": "2023-01-10",
            "count": 1
          },
          {
            "date": "2023-01-12",
            "count": 1
          },
          {
            "date": "2023-01-20",
            "count": 1
          },
          {
            "date": "2023-02-07",
            "count": 1
          },
          {
            "date": "2023-02-09",
            "count": 1
          },
          {
            "date": "2023-02-14",
            "count": 1
          },
          {
            "date": "2023-02-16",
            "count": 1
          },
          {
            "date": "2023-02-17",
            "count": 2
          },
          {
            "date": "2023-02-24",
            "count": 2
          },
          {
            "date": "2023-03-05",
            "count": 1
          },
          {
            "date": "2023-03-13",
            "count": 1
          },
          {
            "date": "2023-03-15",
            "count": 3
          },
          {
            "date": "2023-03-20",
            "count": 1
          },
          {
            "date": "2023-03-25",
            "count": 1
          },
          {
            "date": "2023-03-27",
            "count": 1
          },
          {
            "date": "2023-03-28",
            "count": 2
          },
          {
            "date": "2023-03-29",
            "count": 1
          },
          {
            "date": "2023-04-05",
            "count": 2
          },
          {
            "date": "2023-04-12",
            "count": 1
          },
          {
            "date": "2023-04-14",
            "count": 1
          },
          {
            "date": "2023-04-27",
            "count": 1
          },
          {
            "date": "2023-05-01",
            "count": 1
          },
          {
            "date": "2023-05-04",
            "count": 1
          },
          {
            "date": "2023-05-22",
            "count": 1
          },
          {
            "date": "2023-05-29",
            "count": 1
          },
          {
            "date": "2023-05-31",
            "count": 1
          },
          {
            "date": "2023-06-20",
            "count": 1
          },
          {
            "date": "2023-07-03",
            "count": 1
          },
          {
            "date": "2023-07-04",
            "count": 1
          },
          {
            "date": "2023-07-11",
            "count": 1
          },
          {
            "date": "2023-07-13",
            "count": 1
          },
          {
            "date": "2023-07-14",
            "count": 2
          },
          {
            "date": "2023-07-15",
            "count": 1
          },
          {
            "date": "2023-07-19",
            "count": 1
          },
          {
            "date": "2023-07-21",
            "count": 1
          },
          {
            "date": "2023-07-22",
            "count": 1
          },
          {
            "date": "2023-07-26",
            "count": 1
          },
          {
            "date": "2023-07-27",
            "count": 2
          },
          {
            "date": "2023-07-28",
            "count": 1
          },
          {
            "date": "2023-07-29",
            "count": 1
          },
          {
            "date": "2023-08-07",
            "count": 1
          },
          {
            "date": "2023-08-09",
            "count": 1
          },
          {
            "date": "2023-08-14",
            "count": 2
          },
          {
            "date": "2023-08-15",
            "count": 1
          },
          {
            "date": "2023-08-18",
            "count": 1
          },
          {
            "date": "2023-08-25",
            "count": 1
          },
          {
            "date": "2023-09-05",
            "count": 1
          },
          {
            "date": "2023-09-10",
            "count": 1
          },
          {
            "date": "2023-09-12",
            "count": 1
          },
          {
            "date": "2023-09-21",
            "count": 1
          },
          {
            "date": "2023-09-25",
            "count": 1
          },
          {
            "date": "2023-10-14",
            "count": 1
          },
          {
            "date": "2023-10-16",
            "count": 1
          },
          {
            "date": "2023-10-20",
            "count": 2
          },
          {
            "date": "2023-10-26",
            "count": 1
          },
          {
            "date": "2023-10-31",
            "count": 1
          },
          {
            "date": "2023-11-03",
            "count": 1
          },
          {
            "date": "2023-11-20",
            "count": 1
          },
          {
            "date": "2023-12-01",
            "count": 1
          },
          {
            "date": "2023-12-06",
            "count": 1
          },
          {
            "date": "2023-12-07",
            "count": 1
          },
          {
            "date": "2023-12-22",
            "count": 1
          },
          {
            "date": "2023-12-24",
            "count": 1
          },
          {
            "date": "2024-01-02",
            "count": 2
          },
          {
            "date": "2024-01-04",
            "count": 1
          },
          {
            "date": "2024-01-05",
            "count": 1
          },
          {
            "date": "2024-01-15",
            "count": 1
          },
          {
            "date": "2024-01-17",
            "count": 1
          },
          {
            "date": "2024-01-19",
            "count": 3
          },
          {
            "date": "2024-01-27",
            "count": 1
          },
          {
            "date": "2024-01-30",
            "count": 1
          },
          {
            "date": "2024-02-02",
            "count": 2
          },
          {
            "date": "2024-02-06",
            "count": 1
          },
          {
            "date": "2024-02-08",
            "count": 1
          },
          {
            "date": "2024-02-11",
            "count": 1
          },
          {
            "date": "2024-02-12",
            "count": 2
          },
          {
            "date": "2024-02-18",
            "count": 1
          },
          {
            "date": "2024-02-21",
            "count": 1
          },
          {
            "date": "2024-02-25",
            "count": 1
          },
          {
            "date": "2024-03-07",
            "count": 1
          },
          {
            "date": "2024-03-14",
            "count": 2
          },
          {
            "date": "2024-03-15",
            "count": 1
          },
          {
            "date": "2024-03-27",
            "count": 1
          },
          {
            "date": "2024-04-17",
            "count": 1
          },
          {
            "date": "2024-04-27",
            "count": 1
          },
          {
            "date": "2024-04-28",
            "count": 1
          },
          {
            "date": "2024-05-02",
            "count": 4
          },
          {
            "date": "2024-05-03",
            "count": 2
          },
          {
            "date": "2024-05-04",
            "count": 1
          },
          {
            "date": "2024-05-06",
            "count": 1
          },
          {
            "date": "2024-05-07",
            "count": 3
          },
          {
            "date": "2024-05-09",
            "count": 1
          },
          {
            "date": "2024-05-10",
            "count": 2
          },
          {
            "date": "2024-05-12",
            "count": 1
          },
          {
            "date": "2024-05-16",
            "count": 2
          },
          {
            "date": "2024-05-17",
            "count": 1
          },
          {
            "date": "2024-05-20",
            "count": 1
          },
          {
            "date": "2024-05-21",
            "count": 1
          },
          {
            "date": "2024-05-26",
            "count": 1
          },
          {
            "date": "2024-05-29",
            "count": 2
          },
          {
            "date": "2024-06-02",
            "count": 1
          },
          {
            "date": "2024-06-14",
            "count": 2
          },
          {
            "date": "2024-06-26",
            "count": 1
          },
          {
            "date": "2024-06-28",
            "count": 1
          },
          {
            "date": "2024-07-02",
            "count": 2
          },
          {
            "date": "2024-07-04",
            "count": 1
          },
          {
            "date": "2024-07-11",
            "count": 1
          },
          {
            "date": "2024-07-14",
            "count": 1
          },
          {
            "date": "2024-07-17",
            "count": 1
          },
          {
            "date": "2024-07-18",
            "count": 1
          },
          {
            "date": "2024-07-25",
            "count": 1
          },
          {
            "date": "2024-07-26",
            "count": 1
          },
          {
            "date": "2024-07-30",
            "count": 1
          },
          {
            "date": "2024-08-01",
            "count": 1
          },
          {
            "date": "2024-08-06",
            "count": 1
          },
          {
            "date": "2024-08-08",
            "count": 1
          },
          {
            "date": "2024-08-09",
            "count": 1
          },
          {
            "date": "2024-08-13",
            "count": 2
          },
          {
            "date": "2024-08-18",
            "count": 1
          },
          {
            "date": "2024-08-24",
            "count": 1
          },
          {
            "date": "2024-08-31",
            "count": 1
          },
          {
            "date": "2024-09-05",
            "count": 1
          },
          {
            "date": "2024-09-06",
            "count": 1
          },
          {
            "date": "2024-09-07",
            "count": 1
          },
          {
            "date": "2024-09-08",
            "count": 1
          },
          {
            "date": "2024-09-09",
            "count": 1
          },
          {
            "date": "2024-09-11",
            "count": 1
          },
          {
            "date": "2024-09-22",
            "count": 2
          },
          {
            "date": "2024-09-23",
            "count": 1
          },
          {
            "date": "2024-10-03",
            "count": 1
          },
          {
            "date": "2024-10-11",
            "count": 1
          },
          {
            "date": "2024-10-15",
            "count": 1
          },
          {
            "date": "2024-10-21",
            "count": 1
          },
          {
            "date": "2024-10-23",
            "count": 1
          },
          {
            "date": "2024-10-28",
            "count": 1
          },
          {
            "date": "2024-11-02",
            "count": 1
          },
          {
            "date": "2024-11-05",
            "count": 1
          },
          {
            "date": "2024-11-10",
            "count": 1
          },
          {
            "date": "2024-11-17",
            "count": 1
          },
          {
            "date": "2024-11-18",
            "count": 1
          },
          {
            "date": "2024-11-22",
            "count": 1
          },
          {
            "date": "2024-11-29",
            "count": 1
          },
          {
            "date": "2024-12-01",
            "count": 2
          },
          {
            "date": "2024-12-12",
            "count": 1
          },
          {
            "date": "2024-12-17",
            "count": 1
          },
          {
            "date": "2024-12-19",
            "count": 1
          },
          {
            "date": "2024-12-26",
            "count": 1
          },
          {
            "date": "2024-12-28",
            "count": 1
          },
          {
            "date": "2025-01-04",
            "count": 2
          },
          {
            "date": "2025-01-07",
            "count": 2
          },
          {
            "date": "2025-01-08",
            "count": 2
          },
          {
            "date": "2025-01-13",
            "count": 2
          },
          {
            "date": "2025-01-26",
            "count": 1
          },
          {
            "date": "2025-01-29",
            "count": 4
          },
          {
            "date": "2025-01-30",
            "count": 2
          },
          {
            "date": "2025-01-31",
            "count": 1
          },
          {
            "date": "2025-02-13",
            "count": 1
          },
          {
            "date": "2025-02-15",
            "count": 1
          },
          {
            "date": "2025-02-26",
            "count": 1
          },
          {
            "date": "2025-03-07",
            "count": 1
          },
          {
            "date": "2025-03-12",
            "count": 1
          },
          {
            "date": "2025-03-21",
            "count": 1
          },
          {
            "date": "2025-03-24",
            "count": 1
          },
          {
            "date": "2025-03-25",
            "count": 1
          },
          {
            "date": "2025-04-06",
            "count": 1
          },
          {
            "date": "2025-04-10",
            "count": 1
          },
          {
            "date": "2025-04-13",
            "count": 1
          },
          {
            "date": "2025-04-15",
            "count": 1
          },
          {
            "date": "2025-04-19",
            "count": 1
          },
          {
            "date": "2025-04-29",
            "count": 1
          },
          {
            "date": "2025-05-09",
            "count": 2
          },
          {
            "date": "2025-05-14",
            "count": 1
          },
          {
            "date": "2025-05-21",
            "count": 1
          },
          {
            "date": "2025-05-29",
            "count": 1
          },
          {
            "date": "2025-06-06",
            "count": 2
          },
          {
            "date": "2025-06-11",
            "count": 1
          },
          {
            "date": "2025-06-29",
            "count": 1
          },
          {
            "date": "2025-07-04",
            "count": 1
          },
          {
            "date": "2025-07-08",
            "count": 1
          },
          {
            "date": "2025-07-10",
            "count": 1
          },
          {
            "date": "2025-07-11",
            "count": 1
          },
          {
            "date": "2025-07-20",
            "count": 2
          },
          {
            "date": "2025-07-31",
            "count": 1
          },
          {
            "date": "2025-08-04",
            "count": 1
          },
          {
            "date": "2025-08-05",
            "count": 1
          },
          {
            "date": "2025-08-08",
            "count": 1
          },
          {
            "date": "2025-08-23",
            "count": 1
          },
          {
            "date": "2025-08-26",
            "count": 1
          },
          {
            "date": "2025-09-01",
            "count": 1
          },
          {
            "date": "2025-09-11",
            "count": 1
          },
          {
            "date": "2025-09-27",
            "count": 1
          },
          {
            "date": "2025-10-07",
            "count": 1
          },
          {
            "date": "2025-10-10",
            "count": 1
          },
          {
            "date": "2025-10-15",
            "count": 1
          },
          {
            "date": "2025-11-04",
            "count": 1
          },
          {
            "date": "2025-11-05",
            "count": 1
          },
          {
            "date": "2025-11-06",
            "count": 1
          },
          {
            "date": "2025-11-14",
            "count": 1
          },
          {
            "date": "2025-11-19",
            "count": 1
          },
          {
            "date": "2025-11-22",
            "count": 1
          },
          {
            "date": "2025-12-04",
            "count": 1
          },
          {
            "date": "2025-12-06",
            "count": 1
          },
          {
            "date": "2025-12-10",
            "count": 1
          },
          {
            "date": "2025-12-13",
            "count": 2
          },
          {
            "date": "2025-12-15",
            "count": 1
          },
          {
            "date": "2025-12-16",
            "count": 1
          },
          {
            "date": "2026-01-07",
            "count": 1
          },
          {
            "date": "2026-01-08",
            "count": 1
          },
          {
            "date": "2026-01-15",
            "count": 1
          },
          {
            "date": "2026-01-17",
            "count": 1
          },
          {
            "date": "2026-01-27",
            "count": 1
          },
          {
            "date": "2026-02-03",
            "count": 1
          },
          {
            "date": "2026-02-14",
            "count": 1
          },
          {
            "date": "2026-02-17",
            "count": 1
          },
          {
            "date": "2026-02-23",
            "count": 1
          },
          {
            "date": "2026-02-28",
            "count": 1
          },
          {
            "date": "2026-03-04",
            "count": 2
          },
          {
            "date": "2026-03-09",
            "count": 1
          },
          {
            "date": "2026-03-20",
            "count": 1
          },
          {
            "date": "2026-03-25",
            "count": 1
          },
          {
            "date": "2026-03-28",
            "count": 1
          },
          {
            "date": "2026-03-30",
            "count": 1
          },
          {
            "date": "2026-03-31",
            "count": 1
          },
          {
            "date": "2026-04-18",
            "count": 1
          },
          {
            "date": "2026-04-22",
            "count": 1
          },
          {
            "date": "2026-04-25",
            "count": 1
          },
          {
            "date": "2026-05-04",
            "count": 1
          },
          {
            "date": "2026-05-08",
            "count": 1
          },
          {
            "date": "2026-05-11",
            "count": 1
          },
          {
            "date": "2026-05-13",
            "count": 1
          },
          {
            "date": "2026-05-26",
            "count": 1
          },
          {
            "date": "2026-06-01",
            "count": 1
          },
          {
            "date": "2026-07-02",
            "count": 1
          },
          {
            "date": "2026-07-07",
            "count": 1
          },
          {
            "date": "2026-07-12",
            "count": 1
          },
          {
            "date": "2026-07-14",
            "count": 1
          },
          {
            "date": "2026-07-20",
            "count": 1
          },
          {
            "date": "2026-07-21",
            "count": 1
          }
        ],
        "complete": false,
        "collected": 1000,
        "total_stars": 1153
      },
      "open_issues_and_prs": 253
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [],
      "has_llms_txt": false,
      "has_dockerfile": false,
      "has_mcp_signal": false,
      "bootstrap_files": [],
      "api_schema_files": [],
      "has_devcontainer": false,
      "typecheck_configs": [],
      "toolchain_manifests": [
        "benchmark/Microsoft.IdentityModel.Benchmarks/Microsoft.IdentityModel.Benchmarks.csproj",
        "src/Microsoft.IdentityModel.Abstractions/Microsoft.IdentityModel.Abstractions.csproj",
        "src/Microsoft.IdentityModel.Dpop/Microsoft.IdentityModel.Dpop.csproj",
        "src/Microsoft.IdentityModel.JsonWebTokens/Microsoft.IdentityModel.JsonWebTokens.csproj",
        "src/Microsoft.IdentityModel.Logging/Microsoft.IdentityModel.Logging.csproj",
        "src/Microsoft.IdentityModel.LoggingExtensions/Microsoft.IdentityModel.LoggingExtensions.csproj",
        "src/Microsoft.IdentityModel.Protocols.OpenIdConnect/Microsoft.IdentityModel.Protocols.OpenIdConnect.csproj",
        "src/Microsoft.IdentityModel.Protocols.SignedHttpRequest/Microsoft.IdentityModel.Protocols.SignedHttpRequest.csproj",
        "src/Microsoft.IdentityModel.Protocols.WsFederation/Microsoft.IdentityModel.Protocols.WsFederation.csproj",
        "src/Microsoft.IdentityModel.Protocols/Microsoft.IdentityModel.Protocols.csproj",
        "src/Microsoft.IdentityModel.TestExtensions/Microsoft.IdentityModel.TestExtensions.csproj",
        "src/Microsoft.IdentityModel.Tokens.Saml/Microsoft.IdentityModel.Tokens.Saml.csproj",
        "src/Microsoft.IdentityModel.Tokens/Microsoft.IdentityModel.Tokens.csproj",
        "src/Microsoft.IdentityModel.Validators/Microsoft.IdentityModel.Validators.csproj",
        "src/Microsoft.IdentityModel.Xml/Microsoft.IdentityModel.Xml.csproj",
        "src/System.IdentityModel.Tokens.Jwt/System.IdentityModel.Tokens.Jwt.csproj",
        "test/Microsoft.IdentityModel.Abstractions.Tests/Microsoft.IdentityModel.Abstractions.Tests.csproj",
        "test/Microsoft.IdentityModel.AotCompatibility.TestApp/Microsoft.IdentityModel.AotCompatibility.TestApp.csproj",
        "test/Microsoft.IdentityModel.Dpop.Tests/Microsoft.IdentityModel.Dpop.Tests.csproj",
        "test/Microsoft.IdentityModel.JsonWebTokens.Tests/Microsoft.IdentityModel.JsonWebTokens.Tests.csproj",
        "test/Microsoft.IdentityModel.Logging.Tests/Microsoft.IdentityModel.Logging.Tests.csproj",
        "test/Microsoft.IdentityModel.Protocols.OpenIdConnect.Tests/Microsoft.IdentityModel.Protocols.OpenIdConnect.Tests.csproj",
        "test/Microsoft.IdentityModel.Protocols.SignedHttpRequest.Tests/Microsoft.IdentityModel.Protocols.SignedHttpRequest.Tests.csproj",
        "test/Microsoft.IdentityModel.Protocols.Tests/Microsoft.IdentityModel.Protocols.Tests.csproj",
        "test/Microsoft.IdentityModel.Protocols.WsFederation.Tests/Microsoft.IdentityModel.Protocols.WsFederation.Tests.csproj",
        "test/Microsoft.IdentityModel.TestUtils/Microsoft.IdentityModel.TestUtils.csproj",
        "test/Microsoft.IdentityModel.Tokens.Saml.Tests/Microsoft.IdentityModel.Tokens.Saml.Tests.csproj",
        "test/Microsoft.IdentityModel.Tokens.Tests/Microsoft.IdentityModel.Tokens.Tests.csproj",
        "test/Microsoft.IdentityModel.Validators.Tests/Microsoft.IdentityModel.Validators.Tests.csproj",
        "test/Microsoft.IdentityModel.Xml.Tests/Microsoft.IdentityModel.Xml.Tests.csproj",
        "test/System.IdentityModel.Tokens.Jwt.Tests/System.IdentityModel.Tokens.Jwt.Tests.csproj"
      ],
      "largest_source_bytes": 303020,
      "source_files_sampled": 749,
      "oversized_source_files": 33,
      "agent_instruction_files": [
        ".github/copilot-instructions.md",
        "agents.md"
      ],
      "agent_instruction_max_bytes": 10807
    },
    "dependencies": {
      "manifests": [],
      "advisories": {
        "error": null,
        "scope": "repository_graph",
        "source": "osv",
        "findings": [],
        "collected": true,
        "truncated": false,
        "by_severity": {},
        "advisory_count": 0,
        "affected_count": 0,
        "assessed_count": 3,
        "assessed_package": null,
        "unassessed_count": 15,
        "direct_affected_count": 0
      },
      "ecosystems": [],
      "dependencies": [
        {
          "name": "Microsoft.Bcl.TimeProvider",
          "manifest": "src/Microsoft.IdentityModel.JsonWebTokens/Microsoft.IdentityModel.JsonWebTokens.csproj",
          "ecosystem": "nuget",
          "version_constraint": "$(MicrosoftBclTimeProviderVersion)"
        },
        {
          "name": "Microsoft.Extensions.Logging.Abstractions",
          "manifest": "src/Microsoft.IdentityModel.LoggingExtensions/Microsoft.IdentityModel.LoggingExtensions.csproj",
          "ecosystem": "nuget",
          "version_constraint": "$(AspNetCoreMinSupportedVersion)"
        },
        {
          "name": "System.Text.Json",
          "manifest": "src/Microsoft.IdentityModel.Protocols.OpenIdConnect/Microsoft.IdentityModel.Protocols.OpenIdConnect.csproj",
          "ecosystem": "nuget",
          "version_constraint": "$(SystemTextJsonVersion)"
        },
        {
          "name": "System.Text.Json",
          "manifest": "src/Microsoft.IdentityModel.Protocols.SignedHttpRequest/Microsoft.IdentityModel.Protocols.SignedHttpRequest.csproj",
          "ecosystem": "nuget",
          "version_constraint": "$(SystemTextJsonVersion)"
        },
        {
          "name": "System.Text.Json",
          "manifest": "src/Microsoft.IdentityModel.TestExtensions/Microsoft.IdentityModel.TestExtensions.csproj",
          "ecosystem": "nuget",
          "version_constraint": "$(SystemTextJsonVersion)"
        },
        {
          "name": "Microsoft.CSharp",
          "manifest": "src/Microsoft.IdentityModel.Tokens/Microsoft.IdentityModel.Tokens.csproj",
          "ecosystem": "nuget",
          "version_constraint": "$(MicrosoftCSharpVersion)"
        },
        {
          "name": "System.Security.Cryptography.Cng",
          "manifest": "src/Microsoft.IdentityModel.Tokens/Microsoft.IdentityModel.Tokens.csproj",
          "ecosystem": "nuget",
          "version_constraint": "$(SystemSecurityCryptographyCngVersion)"
        },
        {
          "name": "System.Memory",
          "manifest": "src/Microsoft.IdentityModel.Tokens/Microsoft.IdentityModel.Tokens.csproj",
          "ecosystem": "nuget",
          "version_constraint": "$(SystemMemoryVersion)"
        },
        {
          "name": "System.Diagnostics.DiagnosticSource",
          "manifest": "src/Microsoft.IdentityModel.Tokens/Microsoft.IdentityModel.Tokens.csproj",
          "ecosystem": "nuget",
          "version_constraint": "$(SystemDiagnosticSourceVersion)"
        },
        {
          "name": "System.Text.Json",
          "manifest": "src/Microsoft.IdentityModel.Tokens/Microsoft.IdentityModel.Tokens.csproj",
          "ecosystem": "nuget",
          "version_constraint": "$(SystemTextJsonVersion)"
        },
        {
          "name": "Microsoft.Bcl.TimeProvider",
          "manifest": "src/Microsoft.IdentityModel.Tokens/Microsoft.IdentityModel.Tokens.csproj",
          "ecosystem": "nuget",
          "version_constraint": "$(MicrosoftBclTimeProviderVersion)"
        },
        {
          "name": "Microsoft.Bcl.Cryptography",
          "manifest": "src/Microsoft.IdentityModel.Tokens/Microsoft.IdentityModel.Tokens.csproj",
          "ecosystem": "nuget",
          "version_constraint": "$(MicrosoftBclCryptographyVersion)"
        },
        {
          "name": "Microsoft.Extensions.Logging.Abstractions",
          "manifest": "src/Microsoft.IdentityModel.Tokens/Microsoft.IdentityModel.Tokens.csproj",
          "ecosystem": "nuget",
          "version_constraint": "$(MicrosoftExtensionsLoggingAbstractionsVersion)"
        }
      ],
      "all_dependencies": {
        "error": null,
        "source": "github-sbom",
        "packages": [
          {
            "name": "Microsoft.Bcl.Cryptography",
            "direct": true,
            "version": null,
            "ecosystem": "nuget"
          },
          {
            "name": "Microsoft.Bcl.TimeProvider",
            "direct": true,
            "version": null,
            "ecosystem": "nuget"
          },
          {
            "name": "Microsoft.CSharp",
            "direct": true,
            "version": null,
            "ecosystem": "nuget"
          },
          {
            "name": "Microsoft.Extensions.Logging.Abstractions",
            "direct": true,
            "version": null,
            "ecosystem": "nuget"
          },
          {
            "name": "System.Diagnostics.DiagnosticSource",
            "direct": true,
            "version": null,
            "ecosystem": "nuget"
          },
          {
            "name": "System.Memory",
            "direct": true,
            "version": null,
            "ecosystem": "nuget"
          },
          {
            "name": "System.Security.Cryptography.Cng",
            "direct": true,
            "version": null,
            "ecosystem": "nuget"
          },
          {
            "name": "System.Text.Json",
            "direct": true,
            "version": null,
            "ecosystem": "nuget"
          },
          {
            "name": "BenchmarkDotNet",
            "direct": false,
            "version": "0.13.12",
            "ecosystem": "nuget"
          },
          {
            "name": "Microsoft.Azure.KeyVault.Cryptography",
            "direct": false,
            "version": null,
            "ecosystem": "nuget"
          },
          {
            "name": "Microsoft.CodeAnalysis.BannedApiAnalyzers",
            "direct": false,
            "version": "3.3.4",
            "ecosystem": "nuget"
          },
          {
            "name": "Microsoft.Extensions.TimeProvider.Testing",
            "direct": false,
            "version": null,
            "ecosystem": "nuget"
          },
          {
            "name": "Microsoft.Rest.ClientRuntime",
            "direct": false,
            "version": null,
            "ecosystem": "nuget"
          },
          {
            "name": "NSubstitute",
            "direct": false,
            "version": "4.2.2",
            "ecosystem": "nuget"
          },
          {
            "name": "OpenTelemetry.Exporter.Console",
            "direct": false,
            "version": null,
            "ecosystem": "nuget"
          },
          {
            "name": "OpenTelemetry.Exporter.InMemory",
            "direct": false,
            "version": null,
            "ecosystem": "nuget"
          },
          {
            "name": "System.Net.Http",
            "direct": false,
            "version": null,
            "ecosystem": "nuget"
          },
          {
            "name": "System.Text.RegularExpressions",
            "direct": false,
            "version": null,
            "ecosystem": "nuget"
          }
        ],
        "collected": true,
        "truncated": false,
        "total_count": 18,
        "direct_count": 8,
        "indirect_count": 10
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 40,
        "merged_prs": 1445,
        "open_issues": 213,
        "closed_ratio": 0.873,
        "closed_issues": 1466,
        "closed_unmerged_prs": 315
      },
      "bus_factor": 3,
      "bot_contributors": 1,
      "top_contributors": [
        {
          "type": "User",
          "login": "brentschmaltz",
          "commits": 925,
          "avatar_url": "https://avatars.githubusercontent.com/u/3172421?v=4"
        },
        {
          "type": "User",
          "login": "tushargupta51",
          "commits": 176,
          "avatar_url": "https://avatars.githubusercontent.com/u/803796?v=4"
        },
        {
          "type": "User",
          "login": "mafurman",
          "commits": 166,
          "avatar_url": "https://avatars.githubusercontent.com/u/30272009?v=4"
        },
        {
          "type": "User",
          "login": "jennyf19",
          "commits": 124,
          "avatar_url": "https://avatars.githubusercontent.com/u/19942418?v=4"
        },
        {
          "type": "User",
          "login": "keegan-caruso",
          "commits": 83,
          "avatar_url": "https://avatars.githubusercontent.com/u/54109988?v=4"
        },
        {
          "type": "User",
          "login": "iNinja",
          "commits": 68,
          "avatar_url": "https://avatars.githubusercontent.com/u/538318?v=4"
        },
        {
          "type": "User",
          "login": "lovemaths",
          "commits": 68,
          "avatar_url": "https://avatars.githubusercontent.com/u/6593843?v=4"
        },
        {
          "type": "User",
          "login": "ChenYan98",
          "commits": 53,
          "avatar_url": "https://avatars.githubusercontent.com/u/19174056?v=4"
        },
        {
          "type": "User",
          "login": "GeoK",
          "commits": 50,
          "avatar_url": "https://avatars.githubusercontent.com/u/1943561?v=4"
        },
        {
          "type": "User",
          "login": "pmaytak",
          "commits": 46,
          "avatar_url": "https://avatars.githubusercontent.com/u/34331512?v=4"
        }
      ],
      "contributors_sampled": 99,
      "top_contributor_share": 0.412
    },
    "quality_signals": {
      "has_ci": true,
      "has_tests": true,
      "ci_workflows": [
        "aot-check.yml",
        "codeql-analysis.yml",
        "dotnetcore.yml"
      ],
      "has_docs_dir": true,
      "linter_configs": [],
      "has_editorconfig": true,
      "has_linter_config": false,
      "has_precommit_config": false
    },
    "security_signals": {
      "lockfiles": [],
      "scorecard": {
        "checks": [
          {
            "name": "Binary-Artifacts",
            "score": 10,
            "reason": "no binaries found in the repo",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
          },
          {
            "name": "Branch-Protection",
            "score": 2,
            "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": "29 out of 30 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": 10,
            "reason": "all changesets reviewed",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
          },
          {
            "name": "Contributors",
            "score": 10,
            "reason": "project has 6 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": 10,
            "reason": "license file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
          },
          {
            "name": "Maintained",
            "score": 10,
            "reason": "17 commit(s) and 0 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": null,
            "reason": "packaging workflow not detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
          },
          {
            "name": "Pinned-Dependencies",
            "score": 2,
            "reason": "dependency not pinned by hash detected -- score normalized to 2",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
          },
          {
            "name": "SAST",
            "score": 9,
            "reason": "SAST tool detected but not run on all commits",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
          },
          {
            "name": "Security-Policy",
            "score": 10,
            "reason": "security policy file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
          },
          {
            "name": "Signed-Releases",
            "score": null,
            "reason": "no releases found",
            "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": "bb897f7c96644147e038c7b859be8f2559081532",
        "ran_at": "2026-07-21T20:47:55Z",
        "aggregate_score": 6.4,
        "scorecard_version": "v5.5.0"
      },
      "has_codeql_workflow": true,
      "has_security_policy": true,
      "has_dependabot_config": false
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet",
    "host": "github.com",
    "name": "azure-activedirectory-identitymodel-extensions-for-dotnet",
    "owner": "AzureAD"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "good",
      "name": "Overall health",
      "note": null,
      "notes": [],
      "value": 81,
      "inputs": {
        "security": 71,
        "vitality": 90,
        "community": 85,
        "governance": 83,
        "engineering": 73
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "excellent",
        "name": "Vitality",
        "value": 90,
        "weight": 0.22,
        "metrics": [
          {
            "key": "development_activity",
            "band": "good",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 83,
            "inputs": {
              "commits_last_year": 72,
              "human_commit_share": 1,
              "days_since_last_push": 1,
              "active_weeks_last_year": 29
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 1 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 1
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "29/52 weeks with commits",
                "points": 20.1,
                "status": "partial",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 29
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "72 commits in the last year",
                "points": 16.7,
                "status": "partial",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 72
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "17 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "release_discipline",
            "band": "excellent",
            "name": "Release discipline",
            "note": "Excluded from scoring (no data or not applicable): OpenSSF Scorecard: Signed-Releases. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "openssf_scorecard_signed_releases"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "releases_count": 100,
              "latest_release_tag": "8.19.2",
              "releases_from_tags": false,
              "days_since_latest_release": 7,
              "mean_days_between_releases": 26.3
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "100 releases published",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "releases_published",
                    "params": {
                      "count": 100
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "release_recency",
                "name": "Release recency",
                "detail": "latest release 7 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "release_recency",
                    "params": {
                      "days": 7
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "a release every ~26.3 days",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "release_cadence",
                    "params": {
                      "gap": 26.3
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "openssf_scorecard_signed_releases",
                "name": "OpenSSF Scorecard: Signed-Releases",
                "detail": "no releases found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 10
              }
            ]
          },
          {
            "key": "abandonment",
            "band": "excellent",
            "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": 5,
              "days_since_last_human_commit_is_floor": false
            },
            "components": [
              {
                "key": "project_is_still_maintained",
                "name": "Project is still maintained",
                "detail": "last human commit 5 days ago",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "abandonment_maintained",
                    "params": {
                      "days": 5
                    }
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Is the project alive — is code being written and are releases shipping?"
      },
      {
        "key": "community",
        "band": "excellent",
        "name": "Community & Adoption",
        "value": 85,
        "weight": 0.18,
        "metrics": [
          {
            "key": "popularity",
            "band": "good",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 83,
            "inputs": {
              "forks": 471,
              "stars": 1153,
              "watchers": 98,
              "growth_state": "organic",
              "growth_factor_pct": 100
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "1,153 stars",
                "points": 49.7,
                "status": "partial",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 1153
                    }
                  }
                ],
                "max_points": 60
              },
              {
                "key": "forks",
                "name": "Forks",
                "detail": "471 forks",
                "points": 22.3,
                "status": "partial",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 471
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "watchers",
                "name": "Watchers",
                "detail": "98 watchers",
                "points": 11,
                "status": "partial",
                "details": [
                  {
                    "code": "watchers",
                    "params": {
                      "count": 98
                    }
                  }
                ],
                "max_points": 15
              }
            ]
          },
          {
            "key": "community_health",
            "band": "good",
            "name": "Community health",
            "note": null,
            "notes": [],
            "value": 77,
            "inputs": {
              "has_readme": true,
              "has_license": true,
              "has_contributing": true,
              "has_issue_template": false,
              "has_code_of_conduct": false,
              "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": "recognized license (MIT)",
                "points": 22.5,
                "status": "met",
                "details": [
                  {
                    "code": "license_standard",
                    "params": {}
                  },
                  {
                    "code": "license_spdx",
                    "params": {
                      "spdx": "MIT"
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributing_guide",
                "name": "CONTRIBUTING guide",
                "detail": null,
                "points": 18,
                "status": "met",
                "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
              }
            ]
          },
          {
            "key": "ecosystem_adoption",
            "band": "excellent",
            "name": "Ecosystem adoption (downloads)",
            "note": "Excluded from scoring (no data or not applicable): Registry dependents. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "registry_dependents"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "packages": [
                "Microsoft.IdentityModel.Xml",
                "Microsoft.IdentityModel.Dpop",
                "Microsoft.IdentityModel.Tokens",
                "Microsoft.IdentityModel.Logging",
                "System.IdentityModel.Tokens.Jwt",
                "Microsoft.IdentityModel.Protocols",
                "Microsoft.IdentityModel.Validators",
                "Microsoft.IdentityModel.Tokens.Saml"
              ],
              "dependents": null,
              "ecosystems": "nuget",
              "total_downloads": 15211604045,
              "monthly_downloads": null
            },
            "components": [
              {
                "key": "total_downloads",
                "name": "Total downloads",
                "detail": "15,211,604,045 downloads all-time across nuget",
                "points": 80,
                "status": "met",
                "details": [
                  {
                    "code": "downloads_total",
                    "params": {
                      "count": 15211604045,
                      "ecosystems": "nuget"
                    }
                  }
                ],
                "max_points": 80
              },
              {
                "key": "registry_dependents",
                "name": "Registry dependents",
                "detail": "not reported by this ecosystem",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "not_reported_by_this_ecosystem",
                    "params": {}
                  }
                ],
                "max_points": 20
              }
            ]
          }
        ],
        "description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
      },
      {
        "key": "governance",
        "band": "good",
        "name": "Sustainability & Governance",
        "value": 83,
        "weight": 0.24,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "good",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 73,
            "inputs": {
              "bus_factor": 3,
              "contributors_sampled": 99,
              "top_contributor_share": 0.412
            },
            "components": [
              {
                "key": "bus_factor",
                "name": "Bus factor",
                "detail": "3 contributor(s) cover half of all commits",
                "points": 36,
                "status": "partial",
                "details": [
                  {
                    "code": "bus_factor",
                    "params": {
                      "count": 3
                    }
                  }
                ],
                "max_points": 54
              },
              {
                "key": "commit_distribution",
                "name": "Commit distribution",
                "detail": "top contributor authored 41% of commits",
                "points": 13.2,
                "status": "partial",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 41
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributor_breadth",
                "name": "Contributor breadth",
                "detail": "99 contributors",
                "points": 13.5,
                "status": "met",
                "details": [
                  {
                    "code": "contributors_sampled",
                    "params": {
                      "count": 99
                    }
                  }
                ],
                "max_points": 13.5
              },
              {
                "key": "openssf_scorecard_contributors",
                "name": "OpenSSF Scorecard: Contributors",
                "detail": "project has 6 contributing companies or organizations",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "excellent",
            "name": "Issue & PR responsiveness",
            "note": null,
            "notes": [],
            "value": 87,
            "inputs": {
              "merged_prs": 1445,
              "open_issues": 213,
              "closed_issues": 1466,
              "issue_closed_ratio": 0.873,
              "closed_unmerged_prs": 315
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "87% of issues closed",
                "points": 40.8,
                "status": "partial",
                "details": [
                  {
                    "code": "issues_closed_share",
                    "params": {
                      "share": 87
                    }
                  }
                ],
                "max_points": 46.75
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "1445/1760 decided PRs merged",
                "points": 31.4,
                "status": "partial",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 1445,
                      "decided": 1760
                    }
                  }
                ],
                "max_points": 38.25
              },
              {
                "key": "openssf_scorecard_code_review",
                "name": "OpenSSF Scorecard: Code-Review",
                "detail": "all changesets reviewed",
                "points": 15,
                "status": "met",
                "details": [],
                "max_points": 15
              }
            ]
          },
          {
            "key": "stewardship",
            "band": "good",
            "name": "Ownership & stewardship",
            "note": null,
            "notes": [],
            "value": 76,
            "inputs": {
              "followers": 792,
              "owner_type": "Organization",
              "is_verified": null,
              "owner_login": "AzureAD",
              "public_repos": 57,
              "account_age_days": 4976
            },
            "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": "792 followers of AzureAD",
                "points": 20.8,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 792,
                      "login": "AzureAD"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "57 public repos, account ~13 yr old",
                "points": 24.8,
                "status": "partial",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 57
                    }
                  },
                  {
                    "code": "account_age_years",
                    "params": {
                      "years": 13
                    }
                  }
                ],
                "max_points": 25
              }
            ]
          },
          {
            "key": "package_maintenance",
            "band": "excellent",
            "name": "Package maintenance",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "packages": [
                "Microsoft.IdentityModel.Xml",
                "Microsoft.IdentityModel.Dpop",
                "Microsoft.IdentityModel.Tokens",
                "Microsoft.IdentityModel.Logging",
                "System.IdentityModel.Tokens.Jwt",
                "Microsoft.IdentityModel.Protocols",
                "Microsoft.IdentityModel.Validators",
                "Microsoft.IdentityModel.Tokens.Saml"
              ],
              "ecosystems": "nuget",
              "any_deprecated": false,
              "min_days_since_publish": 0
            },
            "components": [
              {
                "key": "published_resolvable",
                "name": "Published & resolvable",
                "detail": "8 package(s) on nuget",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "packages_published",
                    "params": {
                      "count": 8,
                      "ecosystems": "nuget"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "publish_recency",
                "name": "Publish recency",
                "detail": "latest publish 0 days ago",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "publish_recency",
                    "params": {
                      "days": 0
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "version_history",
                "name": "Version history",
                "detail": "125 published versions",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "published_versions",
                    "params": {
                      "count": 125
                    }
                  }
                ],
                "max_points": 20
              },
              {
                "key": "not_deprecated",
                "name": "Not deprecated",
                "detail": "active, not deprecated or yanked",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "package_not_deprecated",
                    "params": {}
                  }
                ],
                "max_points": 20
              }
            ]
          }
        ],
        "description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
      },
      {
        "key": "engineering",
        "band": "good",
        "name": "Engineering Quality",
        "value": 73,
        "weight": 0.2,
        "metrics": [
          {
            "key": "engineering_practices",
            "band": "good",
            "name": "Engineering practices",
            "note": null,
            "notes": [],
            "value": 72,
            "inputs": {
              "has_ci": true,
              "has_tests": true,
              "has_editorconfig": true,
              "has_linter_config": false,
              "has_precommit_config": false
            },
            "components": [
              {
                "key": "ci_workflows",
                "name": "CI workflows",
                "detail": "3 workflow(s)",
                "points": 24,
                "status": "met",
                "details": [
                  {
                    "code": "ci_workflows",
                    "params": {
                      "count": 3
                    }
                  }
                ],
                "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": 6.4,
                "status": "met",
                "details": [],
                "max_points": 6.4
              },
              {
                "key": "openssf_scorecard_ci_tests",
                "name": "OpenSSF Scorecard: CI-Tests",
                "detail": "29 out of 30 merged PRs checked by a CI test -- score normalized to 9",
                "points": 18,
                "status": "partial",
                "details": [],
                "max_points": 20
              }
            ]
          },
          {
            "key": "documentation",
            "band": "good",
            "name": "Documentation",
            "note": null,
            "notes": [],
            "value": 75,
            "inputs": {
              "topics": [],
              "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": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "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": "good",
        "name": "Security",
        "value": 71,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "moderate",
            "name": "Security posture",
            "note": "Excluded from scoring (no data or not applicable): Packaging, Signed-Releases. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "packaging",
                    "signed_releases"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 64,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 16,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 2,
              "scorecard_aggregate": 6.4
            },
            "components": [
              {
                "key": "binary_artifacts",
                "name": "Binary-Artifacts",
                "detail": "no binaries found in the repo",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "branch_protection",
                "name": "Branch-Protection",
                "detail": "branch protection is not maximal on development and all release branches",
                "points": 1.5,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "ci_tests",
                "name": "CI-Tests",
                "detail": "29 out of 30 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": "all changesets reviewed",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "contributors",
                "name": "Contributors",
                "detail": "project has 6 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.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "maintained",
                "name": "Maintained",
                "detail": "17 commit(s) and 0 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 not detected",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 5
              },
              {
                "key": "pinned_dependencies",
                "name": "Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 2",
                "points": 1,
                "status": "partial",
                "details": [],
                "max_points": 5
              },
              {
                "key": "sast",
                "name": "SAST",
                "detail": "SAST tool detected but not run on all commits",
                "points": 4.5,
                "status": "partial",
                "details": [],
                "max_points": 5
              },
              {
                "key": "security_policy",
                "name": "Security-Policy",
                "detail": "security policy file detected",
                "points": 5,
                "status": "met",
                "details": [],
                "max_points": 5
              },
              {
                "key": "signed_releases",
                "name": "Signed-Releases",
                "detail": "no releases found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "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": "excellent",
            "name": "Dependency advisories",
            "note": "Excluded from scoring (no data or not applicable): Indirect dependencies free of known advisories, No advisories left outstanding. Remaining weights renormalized. Matched 3 resolved dependencies against OSV; 15 could not be assessed (no resolved version, an unsupported ecosystem, or beyond the reported package list). 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",
                    "no_advisories_left_outstanding"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              },
              {
                "code": "advisories_scope_repository",
                "params": {
                  "assessed": 3
                }
              },
              {
                "code": "advisories_unassessed",
                "params": {
                  "count": 15
                }
              },
              {
                "code": "advisories_repo_graph_caveat",
                "params": {}
              },
              {
                "code": "advisories_reachability",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "source": "osv",
              "advisories": 0,
              "affected_packages": 0,
              "assessed_packages": 3,
              "unassessed_packages": 15,
              "affected_by_severity": "none",
              "direct_affected_packages": 0
            },
            "components": [
              {
                "key": "direct_dependencies_free_of_known_advisories",
                "name": "Direct dependencies free of known advisories",
                "detail": "no direct dependency carries a known advisory",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "no_direct_advisories",
                    "params": {}
                  }
                ],
                "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": "no advisory carries a publication date",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "advisories_no_publication_date",
                    "params": {}
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "malicious_dependencies",
            "band": "excellent",
            "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": 3,
              "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": "excellent",
            "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"
              ],
              "review_only_matches": 0,
              "assessed_self_published_locations": 15
            },
            "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": "good",
        "name": "AI Readiness",
        "value": 75,
        "weight": 0,
        "metrics": [
          {
            "key": "ai_agent_context",
            "band": "excellent",
            "name": "Agent context & guidance",
            "note": null,
            "notes": [],
            "value": 85,
            "inputs": {
              "has_llms_txt": false,
              "legible_history_share": 0.98,
              "agent_instruction_files": [
                ".github/copilot-instructions.md",
                "agents.md"
              ],
              "agent_instruction_max_bytes": 10807
            },
            "components": [
              {
                "key": "agent_instructions",
                "name": "Agent instructions",
                "detail": ".github/copilot-instructions.md, agents.md",
                "points": 45,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": ".github/copilot-instructions.md, agents.md"
                    }
                  }
                ],
                "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": "98 of 100 human commits state their intent (structured subject or explanatory body)",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "legible_history",
                    "params": {
                      "legible": 98,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "moderate",
            "name": "Verify loop (build / test / typecheck)",
            "note": null,
            "notes": [],
            "value": 58,
            "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.15,
              "toolchain_manifests": [
                "benchmark/Microsoft.IdentityModel.Benchmarks/Microsoft.IdentityModel.Benchmarks.csproj",
                "src/Microsoft.IdentityModel.Abstractions/Microsoft.IdentityModel.Abstractions.csproj",
                "src/Microsoft.IdentityModel.Dpop/Microsoft.IdentityModel.Dpop.csproj",
                "src/Microsoft.IdentityModel.JsonWebTokens/Microsoft.IdentityModel.JsonWebTokens.csproj",
                "src/Microsoft.IdentityModel.Logging/Microsoft.IdentityModel.Logging.csproj",
                "src/Microsoft.IdentityModel.LoggingExtensions/Microsoft.IdentityModel.LoggingExtensions.csproj",
                "src/Microsoft.IdentityModel.Protocols.OpenIdConnect/Microsoft.IdentityModel.Protocols.OpenIdConnect.csproj",
                "src/Microsoft.IdentityModel.Protocols.SignedHttpRequest/Microsoft.IdentityModel.Protocols.SignedHttpRequest.csproj",
                "src/Microsoft.IdentityModel.Protocols.WsFederation/Microsoft.IdentityModel.Protocols.WsFederation.csproj",
                "src/Microsoft.IdentityModel.Protocols/Microsoft.IdentityModel.Protocols.csproj",
                "src/Microsoft.IdentityModel.TestExtensions/Microsoft.IdentityModel.TestExtensions.csproj",
                "src/Microsoft.IdentityModel.Tokens.Saml/Microsoft.IdentityModel.Tokens.Saml.csproj",
                "src/Microsoft.IdentityModel.Tokens/Microsoft.IdentityModel.Tokens.csproj",
                "src/Microsoft.IdentityModel.Validators/Microsoft.IdentityModel.Validators.csproj",
                "src/Microsoft.IdentityModel.Xml/Microsoft.IdentityModel.Xml.csproj",
                "src/System.IdentityModel.Tokens.Jwt/System.IdentityModel.Tokens.Jwt.csproj",
                "test/Microsoft.IdentityModel.Abstractions.Tests/Microsoft.IdentityModel.Abstractions.Tests.csproj",
                "test/Microsoft.IdentityModel.AotCompatibility.TestApp/Microsoft.IdentityModel.AotCompatibility.TestApp.csproj",
                "test/Microsoft.IdentityModel.Dpop.Tests/Microsoft.IdentityModel.Dpop.Tests.csproj",
                "test/Microsoft.IdentityModel.JsonWebTokens.Tests/Microsoft.IdentityModel.JsonWebTokens.Tests.csproj",
                "test/Microsoft.IdentityModel.Logging.Tests/Microsoft.IdentityModel.Logging.Tests.csproj",
                "test/Microsoft.IdentityModel.Protocols.OpenIdConnect.Tests/Microsoft.IdentityModel.Protocols.OpenIdConnect.Tests.csproj",
                "test/Microsoft.IdentityModel.Protocols.SignedHttpRequest.Tests/Microsoft.IdentityModel.Protocols.SignedHttpRequest.Tests.csproj",
                "test/Microsoft.IdentityModel.Protocols.Tests/Microsoft.IdentityModel.Protocols.Tests.csproj",
                "test/Microsoft.IdentityModel.Protocols.WsFederation.Tests/Microsoft.IdentityModel.Protocols.WsFederation.Tests.csproj",
                "test/Microsoft.IdentityModel.TestUtils/Microsoft.IdentityModel.TestUtils.csproj",
                "test/Microsoft.IdentityModel.Tokens.Saml.Tests/Microsoft.IdentityModel.Tokens.Saml.Tests.csproj",
                "test/Microsoft.IdentityModel.Tokens.Tests/Microsoft.IdentityModel.Tokens.Tests.csproj",
                "test/Microsoft.IdentityModel.Validators.Tests/Microsoft.IdentityModel.Validators.Tests.csproj",
                "test/Microsoft.IdentityModel.Xml.Tests/Microsoft.IdentityModel.Xml.Tests.csproj",
                "test/System.IdentityModel.Tokens.Jwt.Tests/System.IdentityModel.Tokens.Jwt.Tests.csproj"
              ],
              "dependency_bot_commit_share": 0
            },
            "components": [
              {
                "key": "one_command_bootstrap",
                "name": "One-command bootstrap",
                "detail": "benchmark/Microsoft.IdentityModel.Benchmarks/Microsoft.IdentityModel.Benchmarks.csproj, src/Microsoft.IdentityModel.Abstractions/Microsoft.IdentityModel.Abstractions.csproj, src/Microsoft.IdentityModel.Dpop/Microsoft.IdentityModel.Dpop.csproj (toolchain convention, no task runner)",
                "points": 12.6,
                "status": "partial",
                "details": [
                  {
                    "code": "toolchain_convention",
                    "params": {
                      "files": "benchmark/Microsoft.IdentityModel.Benchmarks/Microsoft.IdentityModel.Benchmarks.csproj, src/Microsoft.IdentityModel.Abstractions/Microsoft.IdentityModel.Abstractions.csproj, src/Microsoft.IdentityModel.Dpop/Microsoft.IdentityModel.Dpop.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": "15 of the last 100 commits agent-authored or agent-credited",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "agent_authored_commits",
                    "params": {
                      "count": 15,
                      "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 2",
                "points": 2,
                "status": "partial",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "ai_code_legibility",
            "band": "excellent",
            "name": "Code legibility for models",
            "note": null,
            "notes": [],
            "value": 98,
            "inputs": {
              "primary_language": "C#",
              "largest_source_bytes": 303020,
              "source_files_sampled": 749,
              "oversized_source_files": 33
            },
            "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": "33/749 source files over 60KB",
                "points": 52.6,
                "status": "partial",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 749,
                      "oversized": 33
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          }
        ],
        "description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
      }
    ],
    "metrics_version": "1.13.0"
  },
  "warnings": [],
  "report_type": "repository",
  "generated_at": "2026-07-21T20:48:26.218983Z",
  "schema_version": "0.23.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/a/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet.svg",
  "full_name": "AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet",
  "license_state": "standard",
  "license_spdx": "MIT"
}

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 v1.13.0, esquema v0.23.0 — metodología completa · wiki de métricas.

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