Raw JSON report machine-readable
{
"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"
}