Raw JSON report machine-readable
{
"data": {
"repo": {
"topics": [
"firmware",
"uefi",
"projectmu",
"uefi-development"
],
"is_fork": false,
"size_kb": 328004,
"has_wiki": false,
"homepage": "https://microsoft.github.io/mu/",
"languages": {
"C": 64359170,
"ASL": 42770,
"C++": 1259250,
"GAP": 427026,
"Rez": 21053,
"HTML": 29149,
"NASL": 12121,
"NSIS": 1847,
"Pawn": 321,
"Roff": 13862,
"ANTLR": 15914,
"Shell": 21341,
"Python": 8832299,
"BitBake": 30328,
"Assembly": 1098826,
"Makefile": 74603,
"Batchfile": 48391,
"DenizenScript": 113493,
"Linker Script": 2804,
"Rich Text Format": 1356984
},
"pushed_at": "2026-07-21T23:20:09Z",
"created_at": "2018-09-08T00:37:07Z",
"owner_type": "Organization",
"updated_at": "2026-07-21T18:33:38Z",
"description": "Project Mu BaseCore",
"is_archived": false,
"is_disabled": false,
"license_spdx": null,
"default_branch": "release/202511",
"license_spdx_raw": "NOASSERTION",
"primary_language": "C",
"significant_languages": [
"C",
"Python"
]
},
"owner": {
"blog": "https://opensource.microsoft.com",
"name": "Microsoft",
"type": "Organization",
"login": "microsoft",
"company": null,
"location": "Redmond, WA",
"followers": 125580,
"avatar_url": "https://avatars.githubusercontent.com/u/6154722?v=4",
"created_at": "2013-12-10T19:06:48Z",
"is_verified": null,
"public_repos": 8215,
"account_age_days": 4606
},
"license": {
"state": "custom",
"spdx_id": null,
"raw_spdx": "NOASSERTION",
"file_present": true,
"scorecard_found": true,
"profile_has_license": true
},
"activity": {
"releases": [
{
"tag": "v2025110002.0.12",
"kind": "patch",
"published_at": "2026-07-21T23:20:10Z"
},
{
"tag": "v2025110002.0.11",
"kind": "patch",
"published_at": "2026-07-16T18:48:44Z"
},
{
"tag": "v2025110002.0.10",
"kind": "patch",
"published_at": "2026-07-16T16:08:00Z"
},
{
"tag": "v2025110002.0.9",
"kind": "patch",
"published_at": "2026-07-13T21:20:23Z"
},
{
"tag": "v2025110002.0.8",
"kind": "patch",
"published_at": "2026-06-26T15:52:52Z"
},
{
"tag": "v2025110002.0.7",
"kind": "patch",
"published_at": "2026-06-25T22:08:19Z"
},
{
"tag": "v2025110002.0.6",
"kind": "patch",
"published_at": "2026-06-24T00:26:23Z"
},
{
"tag": "v2025110002.0.5",
"kind": "patch",
"published_at": "2026-06-23T14:54:11Z"
},
{
"tag": "v2025110002.0.4",
"kind": "patch",
"published_at": "2026-06-22T21:25:52Z"
},
{
"tag": "v2025110002.0.3",
"kind": "patch",
"published_at": "2026-06-19T19:41:54Z"
},
{
"tag": "v2025110002.0.2",
"kind": "patch",
"published_at": "2026-06-12T22:04:45Z"
},
{
"tag": "v2025110002.0.1",
"kind": "patch",
"published_at": "2026-06-08T21:49:43Z"
},
{
"tag": "v2025110002.0.0",
"kind": "major",
"published_at": "2026-06-02T21:56:24Z"
},
{
"tag": "v2025110001.0.12",
"kind": "patch",
"published_at": "2026-06-02T21:20:45Z"
},
{
"tag": "v2025110001.0.11",
"kind": "patch",
"published_at": "2026-05-20T17:43:22Z"
},
{
"tag": "v2025110001.0.10",
"kind": "patch",
"published_at": "2026-05-18T16:54:57Z"
},
{
"tag": "v2025110001.0.9",
"kind": "patch",
"published_at": "2026-05-14T17:13:57Z"
},
{
"tag": "v2025110001.0.8",
"kind": "patch",
"published_at": "2026-05-13T23:42:46Z"
},
{
"tag": "v2025110001.0.7",
"kind": "patch",
"published_at": "2026-05-12T04:07:56Z"
},
{
"tag": "v2025110001.0.6",
"kind": "patch",
"published_at": "2026-05-06T20:05:37Z"
},
{
"tag": "v2025020003.0.7",
"kind": "patch",
"published_at": "2026-07-13T21:20:04Z"
},
{
"tag": "v2025110001.0.5",
"kind": "patch",
"published_at": "2026-04-24T22:35:18Z"
},
{
"tag": "v2025110001.0.4",
"kind": "patch",
"published_at": "2026-04-23T20:04:22Z"
},
{
"tag": "v2025020003.0.6",
"kind": "patch",
"published_at": "2026-04-17T20:59:47Z"
},
{
"tag": "v2025110001.0.3",
"kind": "patch",
"published_at": "2026-04-17T20:10:49Z"
},
{
"tag": "v2025110001.0.2",
"kind": "patch",
"published_at": "2026-04-03T22:09:33Z"
},
{
"tag": "v2025110001.0.1",
"kind": "patch",
"published_at": "2026-04-02T18:22:55Z"
},
{
"tag": "v2025110001.0.0",
"kind": "major",
"published_at": "2026-04-02T15:53:28Z"
},
{
"tag": "v2025110000.0.6",
"kind": "patch",
"published_at": "2026-04-01T04:17:47Z"
},
{
"tag": "v2025110000.0.5",
"kind": "patch",
"published_at": "2026-03-27T23:05:59Z"
},
{
"tag": "v2025110000.0.4",
"kind": "patch",
"published_at": "2026-03-26T22:43:24Z"
},
{
"tag": "v2025110000.0.3",
"kind": "patch",
"published_at": "2026-03-23T20:12:04Z"
},
{
"tag": "v2025110000.0.2",
"kind": "patch",
"published_at": "2026-03-18T21:19:03Z"
},
{
"tag": "v2025110000.0.1",
"kind": "patch",
"published_at": "2026-03-13T00:23:17Z"
},
{
"tag": "v2025110000.0.0",
"kind": "major",
"published_at": "2026-03-11T03:58:44Z"
},
{
"tag": "v2025020003.0.5",
"kind": "patch",
"published_at": "2026-03-04T17:35:58Z"
},
{
"tag": "v2025020003.0.4",
"kind": "patch",
"published_at": "2026-02-25T23:20:18Z"
},
{
"tag": "v2025020003.0.3",
"kind": "patch",
"published_at": "2026-02-12T20:22:00Z"
},
{
"tag": "v2025020003.0.2",
"kind": "patch",
"published_at": "2026-02-09T23:21:23Z"
},
{
"tag": "v2025020003.0.1",
"kind": "patch",
"published_at": "2026-02-04T23:28:19Z"
},
{
"tag": "v2025110000.0.0-rc0",
"kind": "prerelease",
"published_at": "2026-01-28T22:35:01Z"
},
{
"tag": "v2025020003.0.0",
"kind": "major",
"published_at": "2026-01-09T06:24:23Z"
},
{
"tag": "v2025020002.1.3",
"kind": "patch",
"published_at": "2025-12-02T16:07:18Z"
},
{
"tag": "v2024050004.0.5",
"kind": "patch",
"published_at": "2026-04-17T20:59:29Z"
},
{
"tag": "v2024050004.0.4",
"kind": "patch",
"published_at": "2025-11-06T22:55:57Z"
},
{
"tag": "v2025020002.1.2",
"kind": "patch",
"published_at": "2025-11-04T00:19:44Z"
},
{
"tag": "v2025020002.1.1",
"kind": "patch",
"published_at": "2025-11-03T16:45:23Z"
},
{
"tag": "v2025020002.1.0",
"kind": "minor",
"published_at": "2025-10-31T18:39:16Z"
},
{
"tag": "v2025020002.0.3",
"kind": "patch",
"published_at": "2025-10-23T16:53:55Z"
},
{
"tag": "v2025020002.0.2",
"kind": "patch",
"published_at": "2025-10-17T21:16:48Z"
},
{
"tag": "v2025020002.0.1",
"kind": "patch",
"published_at": "2025-10-14T03:32:26Z"
},
{
"tag": "v2025020002.0.0",
"kind": "major",
"published_at": "2025-09-19T19:02:51Z"
},
{
"tag": "v2025020001.0.6",
"kind": "patch",
"published_at": "2025-08-28T15:09:52Z"
},
{
"tag": "dev-v2025020001.0.6",
"kind": "other",
"published_at": "2025-08-28T15:05:44Z"
},
{
"tag": "dev-v2025020001.05",
"kind": "other",
"published_at": "2025-08-16T01:25:35Z"
},
{
"tag": "v2025020001.0.5",
"kind": "patch",
"published_at": "2025-08-16T01:25:42Z"
},
{
"tag": "v2025020001.0.4",
"kind": "patch",
"published_at": "2025-08-15T23:17:02Z"
},
{
"tag": "dev-v2025020001.0.4",
"kind": "other",
"published_at": "2025-08-15T23:16:54Z"
},
{
"tag": "v2025020001.0.3",
"kind": "patch",
"published_at": "2025-08-15T22:38:52Z"
},
{
"tag": "dev-v2025020001.0.3",
"kind": "other",
"published_at": "2025-08-15T22:38:29Z"
},
{
"tag": "dev-v2025020001.0.2",
"kind": "other",
"published_at": "2025-08-08T01:15:05Z"
},
{
"tag": "v2025020001.0.2",
"kind": "patch",
"published_at": "2025-08-07T21:12:04Z"
},
{
"tag": "v2025020001.0.1",
"kind": "patch",
"published_at": "2025-07-29T00:04:10Z"
},
{
"tag": "dev-v2025020001.0.1",
"kind": "other",
"published_at": "2025-07-29T00:03:59Z"
},
{
"tag": "v2025020000.0.7",
"kind": "patch",
"published_at": "2025-07-24T18:01:15Z"
},
{
"tag": "dev-v2025020001.0.0",
"kind": "other",
"published_at": "2025-07-24T18:00:52Z"
},
{
"tag": "v2025020000.0.6",
"kind": "patch",
"published_at": "2025-06-03T22:28:38Z"
},
{
"tag": "dev-v2025020000.0.6",
"kind": "other",
"published_at": "2025-06-03T22:28:32Z"
},
{
"tag": "v2025020000.0.5",
"kind": "patch",
"published_at": "2025-06-02T21:11:32Z"
},
{
"tag": "dev-v2025020000.0.5",
"kind": "other",
"published_at": "2025-06-02T21:11:24Z"
},
{
"tag": "v2024050004.0.3",
"kind": "patch",
"published_at": "2025-06-04T03:39:23Z"
},
{
"tag": "dev-v2024050004.0.3",
"kind": "other",
"published_at": "2025-06-04T03:39:21Z"
},
{
"tag": "dev-dev-2025020000.0.4",
"kind": "other",
"published_at": "2025-05-29T21:21:21Z"
},
{
"tag": "v2025020000.0.4",
"kind": "patch",
"published_at": "2025-05-29T21:21:25Z"
},
{
"tag": "dev-v2025020000.0.3",
"kind": "other",
"published_at": "2025-05-28T21:57:41Z"
},
{
"tag": "v2025020000.0.3",
"kind": "patch",
"published_at": "2025-05-28T21:57:58Z"
},
{
"tag": "v2025020000.0.2",
"kind": "patch",
"published_at": "2025-05-21T01:41:32Z"
},
{
"tag": "dev-v2025020000.0.2",
"kind": "other",
"published_at": "2025-05-21T01:41:17Z"
},
{
"tag": "v2025020000.0.1",
"kind": "patch",
"published_at": "2025-05-02T23:50:29Z"
},
{
"tag": "dev-v2025020000.0.1",
"kind": "other",
"published_at": "2025-05-02T23:50:11Z"
},
{
"tag": "v2025020000.0.0",
"kind": "major",
"published_at": "2025-04-30T23:05:30Z"
},
{
"tag": "dev-v2025020000.0.0",
"kind": "other",
"published_at": "2025-04-30T22:32:49Z"
},
{
"tag": "v2024050004.0.2",
"kind": "patch",
"published_at": "2025-04-30T22:33:25Z"
},
{
"tag": "dev-v2024050004.0.1",
"kind": "other",
"published_at": "2025-03-21T01:34:11Z"
},
{
"tag": "v2024050004.0.1",
"kind": "patch",
"published_at": "2025-03-21T01:34:45Z"
},
{
"tag": "v2024050003.1.0",
"kind": "minor",
"published_at": "2025-02-14T00:46:50Z"
},
{
"tag": "dev-v2024050004.0.0",
"kind": "other",
"published_at": "2025-02-14T00:46:32Z"
},
{
"tag": "v2024050003.0.1",
"kind": "patch",
"published_at": "2025-01-14T19:03:29Z"
},
{
"tag": "dev-v2024050003.0.1",
"kind": "other",
"published_at": "2025-01-14T19:03:09Z"
},
{
"tag": "dev-v2024050003.0.0",
"kind": "other",
"published_at": "2024-12-20T16:51:47Z"
},
{
"tag": "v2024050003.0.0",
"kind": "major",
"published_at": "2024-12-20T16:48:01Z"
},
{
"tag": "v2024050002.0.0",
"kind": "major",
"published_at": "2024-12-11T20:19:23Z"
},
{
"tag": "dev-v2024050002.0.0",
"kind": "other",
"published_at": "2024-12-11T20:19:13Z"
},
{
"tag": "v2024050001.0.1",
"kind": "patch",
"published_at": "2024-12-10T17:49:03Z"
},
{
"tag": "dev-v2024050001.0.1",
"kind": "other",
"published_at": "2024-12-10T17:48:44Z"
},
{
"tag": "v2024050001.0.0",
"kind": "major",
"published_at": "2024-12-03T01:15:44Z"
},
{
"tag": "dev-v2024050001.0.0",
"kind": "other",
"published_at": "2024-12-03T01:15:28Z"
},
{
"tag": "dev-v2024050000.2.0",
"kind": "other",
"published_at": "2024-11-22T01:28:22Z"
},
{
"tag": "v2024050000.1.4",
"kind": "patch",
"published_at": "2024-11-15T23:07:27Z"
},
{
"tag": "v2024050000.1.3",
"kind": "patch",
"published_at": "2024-11-13T20:29:36Z"
}
],
"recent_commits": [
{
"oid": "18de13ad691dbe878db7d62b1139db7a65d4dbb6",
"body": "Reordering x64 toolchain defines (GCCS) to use a DLINK_XIPFLAGS\nto set common-page-size to 0x40. Otherwise use default align\n(0x1000 for x64).\n\nReorder CLANGDWARF toolchain defines to use DLINK_XIPFLAGS\nto set common-page-size to 0x40 (matching existing behavior)\nand otherwise use default linker val\n[…]\n.template to support CLANGDWARF\nbuild family for SEC, PEI_CORE, PEIM type files.\n\nSigned-off-by: Aaron Pop <aaronpop@microsoft.com>\n(cherry picked from commit 87e486f622c5eaa0bee04f090b5c543466d6178b)",
"is_bot": false,
"headline": "[Cherry-Pick] BaseTools: Enable 4k alignment for tool chains",
"author_name": "Aaron Pop",
"author_login": "apop5",
"committed_at": "2026-07-21T18:33:31Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "29d32ac447690388af0d427bb157edff2767dfd6",
"body": "Add Google Test Mock library header and implementation for\nSecureBootVariableLib to allow simple mocking for host based unit tests\nthat utilize the Google Test framework.\n\nSigned-off-by: Joey Vagedes <joey.vagedes@gmail.com>",
"is_bot": false,
"headline": "[CHERRY-PICK] SecurityPkg: Add Google Test MockSecureBootVariableLib",
"author_name": "Joey Vagedes",
"author_login": "Javagedes",
"committed_at": "2026-07-16T18:59:17Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "911ddffb7101eb78a55bd9b8d10bb562bd937cd0",
"body": "Signed-off-by: Project Mu UEFI Bot <uefibot@microsoft.com>",
"is_bot": false,
"headline": "Update BaseTools external dependency to v2025110002.0.10",
"author_name": "uefibot",
"author_login": "uefibot",
"committed_at": "2026-07-16T17:05:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "327c7a3a718371a27c3a27170fa2a4da3e2cc249",
"body": "…ase behavior\n\nUpdate the test decision matrix and TC6 expected result to reflect\nthe backward-compatible ForceRebase logic: when ForceRebase=TRUE and\nno files have the ,XIP suffix (XipFileCount==0), all files are\nrebased using the legacy behavior rather than skipping all files.\n\nSigned-off-by: Michael D Kinney <michael.d.kinney@intel.com>\n(cherry picked from commit ae023dbe9952cef22a108bf247605030d0c60b50)",
"is_bot": false,
"headline": "[CHERRY-PICK] BaseTools/Tests: Update TC6 for backward-compatible reb…",
"author_name": "Michael D Kinney",
"author_login": "mdkinney",
"committed_at": "2026-07-16T16:06:50Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9551ccf6589ba1c9efd3c782fa2424c18556ae78",
"body": "…ip is unused\n\nAdd XipFileCount to FV_INFO to track how many files have the ,XIP\nsuffix. Update FfsRebase() to only apply selective XIP rebase when\nXipFileCount > 0. When no files have the ,XIP suffix (XipFileCount\n== 0), preserve the legacy ForceRebase=TRUE behavior of rebasing all\nfiles. This main\n[…]\nexisting platforms\nthat use FvForceRebase=TRUE without any Xip rules.\n\nSigned-off-by: Michael D Kinney <michael.d.kinney@intel.com>\n(cherry picked from commit 0347d3b7113ef215e0f19a38206703e86a4e5d1b)",
"is_bot": false,
"headline": "[CHERRY-PICK] BaseTools/GenFv: Preserve legacy rebase behavior when X…",
"author_name": "Michael D Kinney",
"author_login": "mdkinney",
"committed_at": "2026-07-16T16:06:50Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "5cee956217137fc25b89042de8634c45f30d2059",
"body": "synced local file(s) with\n[microsoft/mu_devops](https://github.com/microsoft/mu_devops).\n\n🤖: View the [Repo File Sync Configuration\nFile](https://github.com/microsoft/mu_devops/blob/main/.sync/Files.yml)\nto see how files are synced.\n\n---\n\nThis PR was created automatically by the\n[repo-file-sync-acti\n[…]\ncom/microsoft/mu_devops/actions/runs/29457513730)\n\nSigned-off-by: Project Mu UEFI Bot <uefibot@microsoft.com>\nCo-authored-by: mu-automation[bot] <204385837+mu-automation[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Repo File Sync: change dependabot schedule to monthly (#1848)",
"author_name": "mu-automation[bot]",
"author_login": "mu-automation[bot]",
"committed_at": "2026-07-15T23:36:16Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "0bc369329a88489c230d9617ac448baa2beefd8f",
"body": "Updates `regex` from 2026.6.28 to 2026.7.10\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "pip: bump regex from 2026.6.28 to 2026.7.10 (#1847)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-15T22:18:03Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "df9560579f9580d808937c716304d8fe4f87f47b",
"body": "This PR updates the BaseTools external dependency to version\nv2025110002.0.8.\n\nSigned-off-by: Project Mu UEFI Bot <uefibot@microsoft.com>\nCo-authored-by: uefibot <uefibot@microsoft.com>",
"is_bot": true,
"headline": "[release/202511] Update BaseTools ext dep to v2025110002.0.8 (#1839)",
"author_name": "mu-automation[bot]",
"author_login": "mu-automation[bot]",
"committed_at": "2026-07-13T20:30:35Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5315549216a14e8b0f433af7012a99d6476afc31",
"body": "Updates `edk2-pytool-library` to 0.23.15\nUpdates `regex` from 2026.5.9 to 2026.6.28\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "pip: bump edk2-pytool-library to 0.23.15, regex to 2026.6.28 (#1841)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-01T17:05:33Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b8875f996f3dccac6dedc4b317e0540533eb4e2a",
"body": "## Description\n\nThe pragma once changes in edk2 were not made until the end of February\nand are first released in the\n[edk2-stable202605](https://github.com/tianocore/edk2/releases/tag/edk2-stable202605)\ntag. However, some Mu platforms have moved ahead with pragma once\nchanges in code outside of Mu.\n[…]\ning complex variations of include types\nincluding the inlining case with `#pragma once` in .h files.\n\n## Integration Instructions\n\n- N/A\n\nSigned-off-by: Michael Kubacki <michael.kubacki@microsoft.com>",
"is_bot": false,
"headline": "BaseTools/Trim.py: Strip \"#pragma once\" from inlined ASL content (#1840)",
"author_name": "Michael Kubacki",
"author_login": "makubacki",
"committed_at": "2026-06-30T18:46:54Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "f11f1104bdd723aea56ceded74f497e70e701510",
"body": "…age (#1258)\n\nThis change adds the implementation of supporting \"resource descriptor\nhob type 2\", which will extends the existing definition of resource\ndescriptor hob with an attribute field.\n\nThis field can be used to provide the actual attributes needs to be set\nfor the memory region, instead of \n[…]\nthe cache attributes) to the DXE phase,\n`BuildResourceDescriptorWithCacheHob` should be used to produce resource\ndescriptors (v2).\n\n(cherry picked from commit 221fa7a50bb0d25b1a51c4ed6ab8833d5dbe4f39)",
"is_bot": false,
"headline": "[CHERRY-PICK] Add resource descriptor hob v2 for memory attributes us…",
"author_name": "kuqin12",
"author_login": "kuqin12",
"committed_at": "2026-06-26T15:51:55Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "2f596775efd36682b2ef6aedde840866b0b33fa1",
"body": "This commit adds unit tests and documentation for the Memory Bin\nfeature.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>\n(cherry picked from commit 1b39cb1d816a870a44fbeeaaf092773b1b08b179)",
"is_bot": false,
"headline": "[CHERRY-PICK] MdeModulePkg: MemoryBins: Add GoogleTest and README",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-26T15:51:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9609079c68edcc0eb37f1b38589de74c6838771a",
"body": "If memory bins are enabled for PEI, PEI will produce\nMemory Allocation HOBs marked with gEfiMemoryTypeInformationGuid.\nIf these exist, DXE core will now process the stats from them\nto have accurate numbers.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>\n(cherry picked from commit cf1a2a541e1fa19a0117a952fece30de1928caae)",
"is_bot": false,
"headline": "[CHERRY-PICK] MdeModulePkg: DxeCore: Update Memory Statistics from PEI",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-26T15:51:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8ca5dc70ff99b3dcb647b2f2567576380c89e506",
"body": "…em PEI\n\nThis commit adds opt-in support for post-mem PEI memory bins.\nSee the README for full details.\n\nMemoryBin.c is duplicated to PeiCore per request.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>\n(cherry picked from commit 2e7aa4810bd3e4008e561f2ea5a9de1dc189c817)",
"is_bot": false,
"headline": "[CHERRY-PICK] MdeModulePkg: PeiCore: Add Memory Bin Support to Post-M…",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-26T15:51:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0227d52e5f6d562793bcd0539d46fe09ba1a10c4",
"body": "This adds a PCD, FALSE by default, that enables the memory\nbin feature in PEI.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>\n(cherry picked from commit 840d07abb15a722f47bfd9151681207246b71573)",
"is_bot": false,
"headline": "[CHERRY-PICK] MdeModulePkg: Add PCD to Enable Memory Bin Support in PEI",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-26T15:51:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a14f7633ab031fa54d240dc9537150b4302d631b",
"body": "…arate File\n\nThis commits splits out logic currently contained in\nGcd.c and Page.c to a new file called\nMemoryBin.c. This is set up in preparation to\nadd support to PEI for memory bins (an S4 resume stability\nfeature).\n\nMemoryBin.c takes all global state in as parameters so that\nDXE core can use glo\n[…]\ne\nfunctionality to share with PEI.\n\nThis was requested not to be a library.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>\n(cherry picked from commit eab3300622876b674cf22c5c56f899b0a6df1087)",
"is_bot": false,
"headline": "[CHERRY-PICK] MdeModulePkg: Dxe Core: Split Memory Bin Logic Into Sep…",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-26T15:51:55Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "f74bfcc8b11f8a6f9d3540504230f233e94c6768",
"body": "This commit adds a parameter to the memory bin allocation function\nto tell it whether it should create the Resource Descriptor HOB\nowned by gMemoryTypeInformationGuid. This will be used by PEI to\ntell DXE where the memory bins are.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>\n(cherry picked from commit a196ef6db5c77708dde3528dc735494037f16ab3)",
"is_bot": false,
"headline": "[CHERRY-PICK] MdeModulePkg: Dxe Core: Add Resource Desc Hob Generation",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-26T15:51:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1077cdd82d153c873989206c2b39a4484ae2564c",
"body": "This adds a helper function to initialize the\nmemory bin statistics as the same logic is\nrepeated in several places.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>\n(cherry picked from commit b33c1b9f7d00e1b06910385dcfac2174f2f081f9)",
"is_bot": false,
"headline": "[CHERRY-PICK] MdeModulePkg: Dxe Core: Add Stats Init Helper",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-26T15:51:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "115a31917352c0615a81cddafe9c3b2b151cb40e",
"body": "…onRange for PEI\n\nMigrate CoreSetMemoryTypeInformationRange() to not use globals so\nit can be used in PEI as well.\n\nThis temporarily moves the EFI_MEMORY_STATISTICS structure to\nDxeMain.h so that it can be used in Gcd.c as well as Page.c.\nThis will migrate to a different private header once that is included.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>\n(cherry picked from commit 81bec6f0fbf686fa94b193eb16cba4729dfbc98b)",
"is_bot": false,
"headline": "[CHERRY-PICK] MdeModulePkg: Dxe Core: Prep CoreSetMemoryTypeInformati…",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-26T15:51:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d0a0ee408261a3303cedc8cfe99e3a67d170acbf",
"body": "…er Fn\n\nIn preparation for sharing logic with PEI, create a helper\nfunction to update the memory bin statistics.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>\n(cherry picked from commit 6b838a0d44edcf95c4edfa12212e19c7b79ab721)",
"is_bot": false,
"headline": "[CHERRY-PICK] MdeModulePkg: Dxe Core: Add UpdateMemoryStatistics Help…",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-26T15:51:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "82625afb5c32e866f1d47d11836d5ee68a5719b7",
"body": "In preparation for sharing logic with PEI for memory bins,\nadd AllocateMemoryTypeInformationBins().\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>\n(cherry picked from commit 47e73e61c6eaca1c611c9ba19eb5a92f16139613)",
"is_bot": false,
"headline": "[CHERRY-PICK] MdeModulePkg: Dxe Core: Add AllocateMemoryBins Helper Fn",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-26T15:51:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0c896d9fbcb6b1404a135ee20a42267e23777b91",
"body": "…urceHob Helper\n\nIn preparation for sharing memory bin logic with PEI, create a\nhelper function that finds and validates a resource descriptor\nHOB owned by gEfiMemoryTypeInformationGuid.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>\n(cherry picked from commit 1c8c92b7cc24be5f88b2685b87371facba9bd8ac)",
"is_bot": false,
"headline": "[CHERRY-PICK] MdeModulePkg: DxeCore: Add GetMemoryTypeInformationReso…",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-26T15:51:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2e8802e25bfdf522686b25caabc1dfdd1756c490",
"body": "…tion Helper\n\nIn preparation for supporting shared memory bin logic in DXE\nand PEI, create a PopulateMemoryTypeInformation() helper function.\nThis function searches for a Memory Type Information Hob and\npopulates an EFI_MEMORY_TYPE_INFORMATION struct with it.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>\n(cherry picked from commit d77628d4c1bf410eb86c5994389a19d9f43de197)",
"is_bot": false,
"headline": "[CHERRY-PICK] MdeModulePkg: DxeCore: Create PopulateMemoryTypeInforma…",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-26T15:51:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a1ee063e67b9d7d32b4db211fa4d0eea66e1d936",
"body": "In preparation for sharing memory bin logic between\nPEI and DXE, update CaclulateTotalMemoryBinSizeNeeded()\nto take gMemoryTypeInformation by reference.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>\n(cherry picked from commit b2c33619f76fc3aff547db9ee410c8f91da8395a)",
"is_bot": false,
"headline": "[CHERRY-PICK] MdeModulePkg: Dxe Core: Update Bin Size Helper Fn",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-26T15:51:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "036d41f3c4dcbebfe6e03a9399819dfe8e166953",
"body": "Currently, there is no guarantee that the memory bins will be\nallocated contiguously. However, there are assumptions in the\ncode that bins are allocated contiguously, such as the GCD\ninit code requiring a free memory region be large enough for\na contiguous bin range on DXE Core init.\n\nEnsuring conti\n[…]\nis commit updates CoreAddMemoryDescriptor() to\nallocate a contiguous range.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>\n(cherry picked from commit d93ad5f525e5a994a0b51fb46bea5fe8c0bbb98e)",
"is_bot": false,
"headline": "[CHERRY-PICK] MdeModulePkg: Dxe Core: Allocate Memory Bins Contiguously",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-26T15:51:55Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "bd85201720cbf05068eb467c8c85238c809f34fc",
"body": "…Needed()\n\nCoreSetMemoryTypeInformationRange() currently calculates the bin\nsize needed independently from the CalculateTotalMemoryBinSizeNeeded()\nfunction. This commit updates to use that function and remove the\nduplication.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>\n(cherry picked from commit ab3097d457ac1e284ffcaded9d83a7687c65cc13)",
"is_bot": false,
"headline": "[CHERRY-PICK] MdeModulePkg: Dxe Core: Use CalculateTotalMemoryBinSize…",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-26T15:51:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f404ceac6b883a96d2259d1e96269ac72b0dadb4",
"body": "…e Calc\n\nCurrently CalculateTotalMemoryBinSizeNeeded() does not take\nruntime alignment granularity considerations into account. This\nmeans that the GCD initialization code can choose resource desc\nHOBs to use for the bin region that are actually too small and\nfail to initialize the bins.\n\nThis fixes\n[…]\nto consideration, both for size and for\nalignment of the bin address range.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>\n(cherry picked from commit 2be91af0cc5881e5cca63545ae7a4abe03ab76a0)",
"is_bot": false,
"headline": "[CHERRY-PICK] MdeModulePkg: GCD: Use Alignment Requirement in Bin Siz…",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-26T15:51:55Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "43c73a2a8edaf37744925ea24c0a96e502d85a03",
"body": "… Issues\n\nFix alignment issues in memory map entries returned by\nGetMemoryMap() when RUNTIME_PAGE_ALLOCATION_GRANULARITY is\nlarger than DEFAULT_PAGE_ALLOCATION_GRANULARITY.\n\nThere are no issues in the Page/Pool Allocation/Free services.\n\nLogic issues issues are addressed in the memory map returned\nb\n[…]\ntire bin. [Added]\n Split memory map entry at both ends of bin.\n\nSigned-off-by: Michael D Kinney <michael.d.kinney@intel.com>\n(cherry picked from commit d419725b23207ebbb14ac6f1285a24753e955e92)",
"is_bot": false,
"headline": "[CHERRY-PICK] MdeModulePkg/Core/Dxe/Mem: Fix GetMemoryMap() Alignment…",
"author_name": "Michael D Kinney",
"author_login": "mdkinney",
"committed_at": "2026-06-26T15:51:55Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "1ac65a0118b080428a1c58a6001a29b1b4accee5",
"body": "…ries\n\nFix alignment issues in memory map entries returned by\nGetMemoryMap() when RUNTIME_PAGE_ALLOCATION_GRANULARITY is\nlarger than DEFAULT_PAGE_ALLOCATION_GRANULARITY.\n\nAlignment issues are addressed in the initial memory map\nlayout when Memory Type Information is provided with memory\nbins that us\n[…]\nerate memory\n map entries that always follow alignment requirements.\n\nSigned-off-by: Michael D Kinney <michael.d.kinney@intel.com>\n(cherry picked from commit 6834d43991741737acf9e53350cb9293e1c9c2f5)",
"is_bot": false,
"headline": "[CHERRY-PICK] MdeModulePkg/Core/Dxe/Mem: Align initial memory map ent…",
"author_name": "Michael D Kinney",
"author_login": "mdkinney",
"committed_at": "2026-06-26T15:51:55Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "7647dde26914c1960766b0261d3047e61ff87340",
"body": "…urce hob memory top\n\nCurrent GCD logic uses plain addition calulation when iterating through\nthe resource descriptor hobs. However, if the resource descriptor is\nincorrectly prepared, this could cause incorrect memory initialization\nand other failures down the boot process.\n\nThis change adds an overflow check before using the value.\n\nSigned-off-by: Kun Qin <kun.qin@microsoft.com>\n(cherry picked from commit 5be1bccd9cd009e54c75ee31fb8f760dfb7954b1)",
"is_bot": false,
"headline": "[CHERRY-PICK] MdeModulePkg: DxeCore: Check overflow before using reso…",
"author_name": "Kun Qin",
"author_login": "kuqin12",
"committed_at": "2026-06-26T15:51:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "459ed86f8397e2a894f13198d7367df90232b66d",
"body": "…1258)\"\n\nThis reverts commit 221fa7a50bb0d25b1a51c4ed6ab8833d5dbe4f39 to apply\nit on top of the PEI memory bin changes so it lands in the correct\nplaces.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>",
"is_bot": false,
"headline": "Revert \"Add resource descriptor hob v2 for memory attributes usage (#…",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-26T15:51:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b423f72ead39a6a6cb99f607b505e97acf1de6ef",
"body": "…source descriptor hobs (#1549)\"\n\nThis reverts commit c0ab3a273ca4ec6218f2f17761639e841ebcf9c9 as it has\nbeen upstreamed to edk2.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>",
"is_bot": false,
"headline": "Revert \"Adding check for underflow/overflow when iterating through re…",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-26T15:51:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "908ca790e3077b83c1f3b49636367236d6e6f664",
"body": "This reverts commit e248a90d5974bcb081b0c537381e1f5f9ce86ce4\nas it has been upstreamed to edk2.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>",
"is_bot": false,
"headline": "Revert \"MdeModulePkg: Consolidate Memory Bin Logic\"",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-26T15:51:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ff8bd7e8763e80671d267166d9eaf1ce88017203",
"body": "This reverts commit 906650bb67b5fb682f3fbc3d5cb565895ca29f40 as\nit has been upstreamed to edk2.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>",
"is_bot": false,
"headline": "Revert \"MdeModulePkg: MemoryBin: Allocate Bins Contiguously\"",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-26T15:51:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a289bd1a557cf74c51aed92ce6e4c385869d6eec",
"body": "…d()\"\n\nThis reverts commit 8bc20a2962593caa1a472b5725022271077f6a18 as it\nhas been upstreamed to edk2.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>",
"is_bot": false,
"headline": "Revert \"MdeModulePkg: MemoryBin: Use CalculateTotalMemoryBinSizeNeede…",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-26T15:51:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d07a5552643e14e64bf1569f0ac676bc60b48a01",
"body": "This reverts commit c2a07d57def2ee6b8972a05f2c6dde1b45de61ee as it\nwas removed in upstreaming.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>",
"is_bot": false,
"headline": "Revert \"MdeModulePkg: MemoryBin: Add DefaultBin Field to Stats\"",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-26T15:51:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "cb4f26df3e5978576fd259c2a70097958d7ac05f",
"body": "This reverts commit bd8c2bbb3d37c75254e6fafa45409c8d0aaf9c2b as it\nhas been upstreamed to edk2.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>",
"is_bot": false,
"headline": "Revert \"MdeModulePkg: MemoryBin: Add Bin Resource Desc Hob Generation\"",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-26T15:51:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "528f1071c6f78ca399de120409869cded2c6c6c3",
"body": "This reverts commit ae6343cb2ddd857778dea122284dad74a2121848 as it\nhas been upstreamed to edk2.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>",
"is_bot": false,
"headline": "Revert \"MdeModulePkg: PeiCore: Add Memory Bin Support to Post-Mem PEI\"",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-26T15:51:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "768f16f1d97520466fdfc7ab631d6f40f9d699dc",
"body": "This reverts commit 59002db567b2c1fb119a0cb6f62001f9006201ff as it\nhas been upstreamed to edk2.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>",
"is_bot": false,
"headline": "Revert \"MdeModulePkg: DxeCore: Update Memory Statistics from PEI\"",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-26T15:51:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0202ef31e7798cb307d1d05fa1542ab456e3ae51",
"body": "This reverts commit d210225e80cb53d46b47e039e888ef891e0264d7 as it\nhas been upstreamed to edk2.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>",
"is_bot": false,
"headline": "Revert \"MdeModulePkg: MemoryBins: Add GoogleTest and README\"",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-26T15:51:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "cb410d038d3a2c232ada556bf8d3fda8cd07bafd",
"body": "Implemented dynamic TCG log scaling in Tcg2Dxe. When the log would become\ntruncated it instead now dynamically scales doubling the size each time.\nAn ERROR log is reported that an increase to your base log size should\noccur such that scaling is not necessary. This is a precaution against\nplatforms t\n[…]\nwhen scaling occurs on the\nnormal event log. Consumers can trigger callbacks on this event; the test\napp uses this to know when scaling occurs.\n\nSigned-off-by: Raymond Diaz <raymonddiaz@microsoft.com>",
"is_bot": false,
"headline": "SecurityPkg: Introduce Dynamic TCG Log Scaling",
"author_name": "rdiaz",
"author_login": "Raymond-MS",
"committed_at": "2026-06-25T18:28:27Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "cb92f397ac7e5c45e37a3f9b19b91ad51a42fb87",
"body": "… (#257)\"\n\nThis reverts commit 348b4bd65e20263f3655ad9437550ffc5dd9951a.",
"is_bot": false,
"headline": "Revert \"SecurityPkg: Add an assert to TCG log function if log is full…",
"author_name": "rdiaz",
"author_login": "Raymond-MS",
"committed_at": "2026-06-25T18:28:27Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "fd6a1451f8b64861ac660bf90f59f8c7af8dd8d4",
"body": "… leaf-level entries",
"is_bot": false,
"headline": "Set cacheability attributes (MemAttr and Shareability) in the Stage-2…",
"author_name": "eeshanl",
"author_login": "eeshanl",
"committed_at": "2026-06-25T17:27:32Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2bab7480d27cb8fa69eee5717b75ac9227902480",
"body": "…14 (#1836)\n\nUpdates the requirements on\n[edk2-pytool-library](https://github.com/tianocore/edk2-pytool-library)\nto permit the latest version.\n\nUpdates `edk2-pytool-library` to 0.23.14\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "pip: update edk2-pytool-library requirement from ~=0.23.13 to ~=0.23.…",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-06-24T14:09:08Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1175b2fdde286145699593d7126df786d9b4264a",
"body": "As the FFA function now returns the target ID properly, instead of\nhardcoding the FFA_RUN target ID being the TPM SP, we use the parsed\nID to issue the FFA_RUN.\n\nSigned-off-by: Kun Qin <kun.qin@microsoft.com>",
"is_bot": false,
"headline": "SecurityPkg: Tpm2DeviceLibFfa: FFA run should use the returned ID",
"author_name": "Kun Qin",
"author_login": "kuqin12",
"committed_at": "2026-06-24T00:57:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "26adbab2d31c50b3cb00fc81888d0e4bcac072ab",
"body": "As the FFA function now returns the target ID properly, instead of\nhardcoding the FFA_RUN target ID being the STMM, we use the parsed\nID to issue the FFA_RUN.\n\nSigned-off-by: Kun Qin <kun.qin@microsoft.com>",
"is_bot": false,
"headline": "ArmPkg: MmCommunication: FFA run should use the returned ID",
"author_name": "Kun Qin",
"author_login": "kuqin12",
"committed_at": "2026-06-24T00:57:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8f5f88a3622ed96bf2d273e46b12f58317436264",
"body": "The direct message arguments stripped off the header, making the\nunderlying FF-A function interface to lose information when it comes to\ncertain return code, i.e. FFA_YIELD and FFA_INTERRUPT.\n\nThis change adds back the header field for this purpose so that the\ncallers can decide how to act on the co\n[…]\npopulates the header field for this purpose in FFA direct\nmessage functions so that the callers can decide how to act on the\ncorresponding return codes.\n\nSigned-off-by: Kun Qin <kun.qin@microsoft.com>",
"is_bot": false,
"headline": "MdePkg/MdeModulePkg: ArmFfaLib: Expand to include first 4 registers",
"author_name": "Kun Qin",
"author_login": "kuqin12",
"committed_at": "2026-06-24T00:57:37Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "733cc7ea33c98d4d23054a9e456925df265baaa3",
"body": "The current implementation assumes the the caller will perform the\nnecessary cleanup before exiting boot services. This has been observed\nto drop some cached file writes that occur even before the application\ncalling exit boot services is launched.\n\nThis commit adds a per-volume pre-ExitBootServices\n[…]\n for the volume in the future to ensure that all subsequent\naccess persists.\n\nSigned-off-by: Chris Fernald <chfernal@microsoft.com>\n(cherry picked from commit 12c5ded287fc142380b0f9efab3b6ac47c2d1067)",
"is_bot": false,
"headline": "[CHERRY-PICK] FatPkg: Clean any volume caches during exit boot services",
"author_name": "Chris Fernald",
"author_login": "cfernald",
"committed_at": "2026-06-24T00:20:12Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "cccf503d05e7ea976b7dadff7b4ac31886fedc66",
"body": "synced local file(s) with\n[microsoft/mu_devops](https://github.com/microsoft/mu_devops).\n\nSigned-off-by: Project Mu UEFI Bot <uefibot@microsoft.com>\nCo-authored-by: mu-automation[bot] <204385837+mu-automation[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Repo File Sync: Bump actions/cache from 5 to 6 (#1835)",
"author_name": "mu-automation[bot]",
"author_login": "mu-automation[bot]",
"committed_at": "2026-06-23T23:12:05Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "89e0b934789da578b5579949640bb25d06595835",
"body": "Bumps the all-actions-dependencies group with 1 update:\n[actions/checkout](https://github.com/actions/checkout).\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "GitHub Action: Bump actions/checkout from 6 to 7 (#1829)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-06-23T18:18:57Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "bbb0179ff5d4d47eee7468f3d5592c8644d21f3c",
"body": "…cial-purpose\n\nFix the GCD memory type selection logic in DXE GCD initialization so persistent memory correctly takes precedence over special-purpose memory when both attributes are present.\n\nThe existing code/comment said persistent should win, but the condition order allowed special-purpose to ove\n[…]\nhe checks so behavior matches the intended precedence and comment.\n\nSigned-off-by: Sureshkumar Ponnusamy <sponnusamy@microsoft.com>\n(cherry picked from commit e03fb69e9aad9d8ee501c512c0f1a08d8aa1fa8b)",
"is_bot": false,
"headline": "[CHERRY-PICK] MdeModulePkg/Core/Dxe/Gcd: make persistent override spe…",
"author_name": "Sureshkumar Ponnusamy",
"author_login": "sureshkumarpMSFT",
"committed_at": "2026-06-23T17:20:54Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "38313254aa0ca3f1943e67ab336713485fcc6a03",
"body": "synced local file(s) with\n[microsoft/mu_devops](https://github.com/microsoft/mu_devops).\n\n🤖: View the [Repo File Sync Configuration\nFile](https://github.com/microsoft/mu_devops/blob/main/.sync/Files.yml)\nto see how files are synced.\n\n---\n\nThis PR was created automatically by the\n[repo-file-sync-acti\n[…]\ncom/microsoft/mu_devops/actions/runs/28019027788)\n\nSigned-off-by: Project Mu UEFI Bot <uefibot@microsoft.com>\nCo-authored-by: mu-automation[bot] <204385837+mu-automation[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Repo File Sync: Update checkout action in codeql.yml to v7 (#1833)",
"author_name": "mu-automation[bot]",
"author_login": "mu-automation[bot]",
"committed_at": "2026-06-23T15:03:47Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "8d72fb322df9705a2f9287daa807ef12872d404e",
"body": "MM communicate is used at runtime, and the secure partition it is communicating\nwith may provide services access through other means then the UEFI runtime\nservices. As such, the MM communication library must not assume that the\npartition will be in the waiting state. Instead it must handle the case\nwhere the partition is busy and retry the communication to some limit.\n\nSigned-off-by: Chris Fernald <chfernal@microsoft.com>",
"is_bot": false,
"headline": "ArmPkg: Handle FFA_BUSY response for MM communication",
"author_name": "Chris Fernald",
"author_login": "cfernald",
"committed_at": "2026-06-22T23:07:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0d435d356cdacca64078616dfc311f666a4ff144",
"body": "Signed-off-by: Project Mu UEFI Bot <uefibot@microsoft.com>",
"is_bot": false,
"headline": "Update BaseTools external dependency to v2025110002.0.4",
"author_name": "uefibot",
"author_login": "uefibot",
"committed_at": "2026-06-22T22:18:49Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a47ed7a6c75375ee14c500ba940baaaee2722a92",
"body": "Add TestFdfParserFvKeywordOrder test class with 8 parameterized\nsubtests verifying that FV-level keywords (FvForceRebase,\nFvBaseAddress, FvAlignment) can be freely interleaved with FV\nattribute flags in any order within an [FV] section.\n\nSigned-off-by: Michael D Kinney <michael.d.kinney@intel.com>\n(cherry picked from commit 3a1cfddd9a12bcdbbbcd0ff98c87a8747d08e433)",
"is_bot": false,
"headline": "[CHERRY-PICK] BaseTools/Tests: Add FV section keyword order parser tests",
"author_name": "Michael D Kinney",
"author_login": "mdkinney",
"committed_at": "2026-06-22T17:37:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f0e715d2db4f3eee2c3b19a99847bee23b50629d",
"body": "…keyword order\n\nFix _GetFvAttributes() to return True when it has successfully parsed\nat least one attribute before encountering a non-attribute keyword.\nPreviously it always returned False on encountering an unrecognized\nword, even after consuming prior attributes. This caused the outer\nparsing loo\n[…]\n\nchange the early return from 'return False' to 'return IsWordToken'.\n\nSigned-off-by: Michael D Kinney <michael.d.kinney@intel.com>\n(cherry picked from commit 57164cdc87cfc42083310062720d0a2eeef92bac)",
"is_bot": false,
"headline": "[CHERRY-PICK] BaseTools/GenFds: Fix FV attribute parser to allow any …",
"author_name": "Michael D Kinney",
"author_login": "mdkinney",
"committed_at": "2026-06-22T17:37:15Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "945808a762c3a55b21e33c8e7a2acf7deb4aa679",
"body": "…tests\n\nAdd TestFdfParserPe32KeywordOrder test class with 17 parameterized\nsubtests covering all permutations of Align, Xip, and\nRELOCS_STRIPPED/RELOCS_RETAINED keywords in PE32 section statements.\nTests verify pairwise orderings, all 6 three-keyword permutations,\nsingle-keyword cases, and Xip=FALSE/RELOCS_RETAINED variants.\n\nSigned-off-by: Michael D Kinney <michael.d.kinney@intel.com>\n(cherry picked from commit 2a4022b6ae4652515aa215e00f856f899693a2a3)",
"is_bot": false,
"headline": "[CHERRY-PICK] BaseTools/Tests: Add PE32 section keyword order parser …",
"author_name": "Michael D Kinney",
"author_login": "mdkinney",
"committed_at": "2026-06-22T17:37:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f2de34356b2a75bed298033268d45afeed10f4b8",
"body": "Replace sequential if-statements for Align, Xip, and\nRELOCS_STRIPPED/RELOCS_RETAINED parsing in _GetEfiSection() with a\nwhile-loop that accepts these keywords in any permutation. Previously,\nspecifying Xip before Align in a [Rule] PE32 section caused a Python\nstack trace.\n\nSigned-off-by: Michael D Kinney <michael.d.kinney@intel.com>",
"is_bot": false,
"headline": "[CHERRY-PICK] BaseTools/GenFds: Allow PE32 section keywords in any order",
"author_name": "Michael D Kinney",
"author_login": "mdkinney",
"committed_at": "2026-06-22T17:37:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6ef67fc4e03c3744de8e0fe273b3e0ab93b58a24",
"body": "…rebase\n\nAdd TestGenFvXip.py with 19 parameterized subtests covering the\ncomplete XIP rebase decision matrix:\n\n- 11 unit subtests validating DetermineXipEnabled() with\n RuleComplexFile and RuleSimpleFile objects covering Xip attribute\n parsing (TRUE/FALSE/None, case insensitive, boolean vs string)\n[…]\ndress)\n 3. PE/COFF ImageBase in the FV binary matches expected value\n\nSigned-off-by: Michael D Kinney <michael.d.kinney@intel.com>\n(cherry picked from commit 80bf0137c1ef00047769f3ea7b05f93ec9696b1c)",
"is_bot": false,
"headline": "[CHERRY-PICK] BaseTools/Tests: Add unit and functional tests for XIP …",
"author_name": "Michael D Kinney",
"author_login": "mdkinney",
"committed_at": "2026-06-22T17:37:15Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "14131d8c63422dd593e1c62d2090d36b1596dc1a",
"body": "…control\n\nUpdate ParseFvInf() to detect and strip \",XIP\" suffix from\nEFI_FILE_NAME values in the FV INF file. Store the per-file XIP\nflag in the new XipFile[] array in the FV_INFO structure.\n\nAdd FileIndex parameter to FfsRebase() so it can look up the XIP\nflag for the current file. When ForceRebase\n[…]\n TRUE, only rebase\nfiles that have their XipFile[] entry set to TRUE.\n\nSigned-off-by: Michael D Kinney <michael.d.kinney@intel.com>\n(cherry picked from commit 3ee3b60eb82d52e159641b89d66bcc91a40b84ce)",
"is_bot": false,
"headline": "[CHERRY-PICK] BaseTools/GenFv: Parse ,XIP suffix for per-file rebase …",
"author_name": "Michael D Kinney",
"author_login": "mdkinney",
"committed_at": "2026-06-22T17:37:15Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "a1e97524b54f5943d17f6097db28edb71bc06a1f",
"body": "… suffix\n\nAdd Xip attribute to FDF Rule class and parse the Xip keyword in\nEFI section rules of FDF files. Add XipEnabled attribute to\nFfsInfStatement that is determined from the applicable FDF Rule's\nsection Xip setting. When generating the FV INF file, append \",XIP\"\nto EFI_FILE_NAME entries for mo\n[…]\nng\nwhich files require XIP rebase directly in the FV INF file format.\n\nSigned-off-by: Michael D Kinney <michael.d.kinney@intel.com>\n(cherry picked from commit adc5e8d00941485ddeb185869eb35dd2de08f711)",
"is_bot": false,
"headline": "[CHERRY-PICK] BaseTools/GenFds: Propagate Xip flag to FV INF via ,XIP…",
"author_name": "Michael D Kinney",
"author_login": "mdkinney",
"committed_at": "2026-06-22T17:37:15Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "fd4b1ed41278a6ae3a9415a47447dc07064e9e02",
"body": "This PR updates the BaseTools external dependency to version\nv2025110002.0.3.\n\nSigned-off-by: Project Mu UEFI Bot <uefibot@microsoft.com>\nCo-authored-by: uefibot <uefibot@microsoft.com>",
"is_bot": true,
"headline": "[release/202511] Update BaseTools ext dep to v2025110002.0.3 (#1828)",
"author_name": "mu-automation[bot]",
"author_login": "mu-automation[bot]",
"committed_at": "2026-06-22T15:58:09Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c0c7ed5c85a7f0eb66984588d52c24bebc28b327",
"body": "## Description\n\nThese workflow files were previously using a dedicated branch for\ndevelopment of the Mu PR Validation workflow. It has been stable for a\ncouple of months now, so we can switch back to using the main branch\nwhich has the latest changes.\n\n- [ ] Impacts functionality?\n- [ ] Impacts secu\n[…]\nare branch content (`main` <-> `add_mu_pr_val_workflow_e2e_val`)\n\n## Integration Instructions\n\n- N/A. Only affects GitHub repo workflow.\n\nSigned-off-by: Michael Kubacki <michael.kubacki@microsoft.com>",
"is_bot": false,
"headline": ".github: Switch Mu PR Validation workflow to main branch (#1824)",
"author_name": "Michael Kubacki",
"author_login": "makubacki",
"committed_at": "2026-06-16T18:35:44Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "8ce0b6cf111091e46f8e411a2df23990998bf427",
"body": "EmbeddedPkg's PrePiLib and OvmfPkg's PeilessStartupLib (which\nuses PrePiLib) only produce FV2 HOBs for extracted FVs. However,\nFV3 HOBs have superceded FV2 HOBs for describing extracted FVs.\n\nThis commit updates both of these libs to also produce FV3 HOBs,\nfollowing PEI's pattern of producing an FV,\n[…]\n\nfor that.\n\nContinuous-integration-options: PatchCheck.ignore-multi-package\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>\n(cherry picked from commit c6c02f8cae2642b9a8987ef14b1606afb0688b1e)",
"is_bot": false,
"headline": "[CHERRY-PICK] EmbeddedPkg, OvmfPkg: Produce FV3 HOBs for Extracted FVs",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-15T22:45:42Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "a5348f390153c971b9af825c4903d1617a3402f9",
"body": "…V2 HOB Production\n\nPrePiLib is incorrectly producing FV2 HOBs. The FvName field of\nthe FV2 HOB is intended to be the parent FV's name. This way the\nHOB consumer phase can identify when an FV has already been\nextracted: if the file name of the extracted FV and the parent\nFV name match in the FV2 HOB\n[…]\no updated.\n\nContinuous-integration-options: PatchCheck.ignore-multi-package\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>\n(cherry picked from commit 7ad30b28b2e86ccc9cab9917d272f486140323bb)",
"is_bot": false,
"headline": "[CHERRY-PICK] EmbeddedPkg, OvmfPkg: PrePiLib: Use Correct FvName in F…",
"author_name": "Dmitry Antipov",
"author_login": "dmitryantipov",
"committed_at": "2026-06-15T22:45:42Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "8b2674e2ad3019aaad8f9d4f012db6d0f39be2c0",
"body": "…riting\n\nFfsGetVolumeInfo() in PrePiLib does not zero the VolumeInfo\nbuffer before writing to it. However, it has some fields that\nare expected to be zero if certain conditions are not met.\n\nFor example, the FvName is expected to be all 0's if the\nextended header is not present in the FV. Currently,\n[…]\nctation and have FfsGetVolumeInfo() zero the\nbuffer before it writes to it.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>\n(cherry picked from commit 6eca4a4a95942e9d7eb1809524e4116fb3ac1cd3)",
"is_bot": false,
"headline": "[CHERRY-PICK] EmbeddedPkg: PrePiLib: Zero Volume Info Buffer Before W…",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-15T22:45:42Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "335078b5d6ce7e02b9f0278c6bc5a6eb53dde4b6",
"body": "PrePiLib only searches for the existence of an FV2 HOB to\ndetermine if an FV has already been extracted. However,\nFV2 HOBs have been superceded by FV3 HOBs for describing extracted\nFVs.\n\nThis commit updates PrePiLib to check for the existence of either\nan FV2 or FV3 HOB for this FV and skips extracting if either is\nfound.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>\n(cherry picked from commit e63bba000a464fe35fb215e99bc4dcf01ebeabd6)",
"is_bot": false,
"headline": "[CHERRY-PICK] EmbeddedPkg: PrePiLib: Skip Extracting if FV3 HOB Found",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-15T22:45:42Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e3d910ea9255fdf763da9edabff0bb6b95009bd0",
"body": "PrePi.h has some duplicate HOB definitions from HobLib.h.\nInstead of redefining them, use HobLib.h.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>\n(cherry picked from commit 622a2c7abf98d36525f8122ae724d381148121df)",
"is_bot": false,
"headline": "[CHERRY-PICK] EmbeddedPkg: PrePi.h: Drop Duplicate HOB Defintions",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-15T22:45:42Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "fa4fed0bc4a8d8503f761cc1cf048ccad00ee29b",
"body": "…FV file in PrePiLib\"\n\nThis reverts commit f2af7a9a3f7b62e187cec92f744fe5e8f8a53318 as\nit has been upstreamed to edk2.",
"is_bot": false,
"headline": "Revert \"EmbeddedPkg: [TCBZ2094] Fix FV2 Hob creation when processing …",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-15T22:45:42Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "855c46388870277fda55a07502569cdfc3d2a340",
"body": "synced local file(s) with\n[microsoft/mu_devops](https://github.com/microsoft/mu_devops).\n\nSigned-off-by: Project Mu UEFI Bot <uefibot@microsoft.com>\nCo-authored-by: mu-automation[bot] <204385837+mu-automation[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Repo File Sync: update mu_devops to v18.0.7 (#1821)",
"author_name": "mu-automation[bot]",
"author_login": "mu-automation[bot]",
"committed_at": "2026-06-15T17:51:12Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d48127377d5589cbdcf9061847322a4b9b4d7a11",
"body": "This PR updates the BaseTools external dependency to version\nv2025110002.0.2.\n\nSigned-off-by: Project Mu UEFI Bot <uefibot@microsoft.com>\nCo-authored-by: uefibot <uefibot@microsoft.com>",
"is_bot": true,
"headline": "[release/202511] Update BaseTools ext dep to v2025110002.0.2 (#1822)",
"author_name": "mu-automation[bot]",
"author_login": "mu-automation[bot]",
"committed_at": "2026-06-15T15:43:17Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "aec1b7f4f43242f3dbd71b5b7e7b791c42e65794",
"body": "Replaces the previous shared-root model with on-demand per-StreamID\nstage-2 isolation:\n\n * Each StreamID gets its own stage-2 page-table root and VMID,\n allocated lazily on the first IoMmuSetAttribute call and promoted\n via break-before-make.\n * Aliases (multiple StreamIDs for one logical de\n[…]\nVICE_ENTRY {UniqueId, ObjName[32]} maps each platform\n UniqueId to an IORT Named Component name.\n\nSee ArmPkg/Drivers/SmmuDxe/README.md for flow diagrams, HOB layout,\nand platform integration steps.",
"is_bot": false,
"headline": "ArmPkg/SmmuDxe: Add per-streamId isolation for each DMA capable device",
"author_name": "eeshanl",
"author_login": "eeshanl",
"committed_at": "2026-06-12T01:19:09Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "46916353d0b14e25a4d70b3e604d1c98fb4fdc9f",
"body": "DmaMap() takes two new parameters - IommuBase and DmaId - which DmaLib\nforwards to IoMmuSetAttributeById so handle-less DMA agents can still\nprogram the IOMMU. IommuBase == 0 is the explicit \"no DMA protection /\nIOMMU not enabled\" opt-out: the SetAttributeById call short-circuits\nand no page-table m\n[…]\nCE with the same two\n fields so the unmap path can replay them.\n\nThe NonCoherentIoMmuDxe sample is updated to pass 0/0 for\nIommuBase/DmaId since it has no DmaProtection enabled.",
"is_bot": false,
"headline": "EmbeddedPkg/DmaLib: Use IoMmuSetAttributeById with IommuBase/DmaId",
"author_name": "eeshanl",
"author_login": "eeshanl",
"committed_at": "2026-06-12T01:19:09Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "50bd8cfd3054b41c37aabb8f955a78b5243807ac",
"body": "NonDiscoverablePciDeviceDxe now remembers the controller EFI_HANDLE it\nbound to on NON_DISCOVERABLE_PCI_DEVICE->Handle, and passes that handle\n(instead of NULL) to IoMmuSetAttribute from CoherentPciIoMap /\nNonCoherentPciIoMap / CoherentPciIoUnmap / NonCoherentPciIoUnmap.\n\nThis lets an IOMMU producer\n[…]\nthe\ndevice's StreamID via the IORT - the same path used for real PCIe\ndevices. Without this change SmmuDxe could not distinguish between\nnon-discoverable devices and would have to fall back to bypass.",
"is_bot": false,
"headline": "MdeModulePkg: Add Handle to NON_DISCOVERABLE_PCI_DEVICE",
"author_name": "eeshanl",
"author_login": "eeshanl",
"committed_at": "2026-06-12T01:19:09Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "7fd4fb12a91f1852e363eca42d444102ab9cf0a4",
"body": "Adds EDKII_IOMMU_PROTOCOL.SetAttributeById for callers that cannot supply\nan EFI_HANDLE for the DMA agent (firmware-internal MMIO/DMA components\nnot described in the IORT). The caller supplies the owning IOMMU base\naddress and the DMA identifier (StreamID on Arm SMMU, RequesterID on\nVT-d) the device\n[…]\neld, bump revision\n - Library/IoMmuLib : wrap mIoMmuProtocol->SetAttributeById with\n NULL/ready checks\n - Library/IoMmuLibNull : NULL implementation returns EFI_SUCCESS",
"is_bot": false,
"headline": "MdeModulePkg: Add SetAttributeById to IoMmu Protocol",
"author_name": "eeshanl",
"author_login": "eeshanl",
"committed_at": "2026-06-12T01:19:09Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "1055879405e9be5cd7e9e4dc25650e70b630d153",
"body": "RegisterNonDiscoverableMmioDevice() now takes a platform-assigned\nUniqueId as its first parameter and stores it on the\nNON_DISCOVERABLE_DEVICE protocol. NonDiscoverablePciDeviceDxe copies it\ninto NON_DISCOVERABLE_PCI_DEVICE and uses it to synthesize a\ndeterministic BDF in PciIo->GetLocation():\n S\n[…]\nment = 0xFF\n Bus = UniqueId >> 5\n Device = UniqueId & 0x1F\n Function = 0\n\nCallers of RegisterNonDiscoverableMmioDevice must be updated to pass a\nunique value per registration.",
"is_bot": false,
"headline": "MdeModulePkg: Add UniqueId to NonDiscoverableDeviceRegistrationLib",
"author_name": "eeshanl",
"author_login": "eeshanl",
"committed_at": "2026-06-12T01:19:09Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "ffc93029b4f9b112c13e9050c4c608ad1756cd2a",
"body": "…ministic UniqueId support in NonDiscoverablePciDeviceDxe\"\n\nThis reverts commit ba56d534c5149a6e7a7d72bf92822dbf31c1bae0.",
"is_bot": false,
"headline": "Revert \"Add gEdkiiNonDiscoverableDeviceUniqueIdProtocolGuid for deter…",
"author_name": "eeshanl",
"author_login": "eeshanl",
"committed_at": "2026-06-12T01:19:09Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a336f084cb9ef3ba32fe5a24d935c4ab02f0ce3b",
"body": "…a PCD\n\nAdds gEfiMdeModulePkgTokenSpaceGuid.PcdNvmeGenericTimeout (FixedAtBuild, UINT32, default 5 seconds) so platforms can tune the NVMe generic command timeout without patching the driver. NVME_GENERIC_TIMEOUT now resolves via FixedPcdGet32 to preserve compile-time evaluation and existing behavior at the default value.",
"is_bot": false,
"headline": "MdeModulePkg/NvmExpressDxe: Make NVME_GENERIC_TIMEOUT configurable vi…",
"author_name": "Maheer Aeron",
"author_login": "maheeraeron",
"committed_at": "2026-06-09T22:17:01Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b2c598ff40e6970c022a546971e68e8dcef091b0",
"body": "This patch adds ArmFfaConsoleDebugLib. A debug library that utilizes\nFF-A Console Log API to print debug messages to the console.\n\nThis is useful in context of running the StandaloneMm payload\nas a S-EL0 SP on top of SPMC where StandaloneMm isn't allowed to\naccess console device or no console device\n[…]\nnium.\n\nNOTE:\n FFA_CONSOLE_LOG* could be used by secure partition only.\n\nSigned-off-by: Mohamed Gamal Morsy <mohamed.morsy@arm.com>\n(cherry picked from commit ddc7ed1deeb0f8acadc936f8fae6f0be07232efb)",
"is_bot": false,
"headline": "[CHERRY-PICK] MdeModulePkg/Library: introduce ArmFfaConsoleDebugLib",
"author_name": "Mohamed Gamal Morsy",
"author_login": null,
"committed_at": "2026-06-08T21:46:24Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "f265718deb5127ecce4931fe59a462e1c8558503",
"body": "Adds GenStm as a C tool.\n\nSigned-off-by: Michael Kubacki <michael.kubacki@microsoft.com>",
"is_bot": false,
"headline": "BaseTools: Add GenStm",
"author_name": "Kun Qin",
"author_login": "kuqin12",
"committed_at": "2026-06-06T00:15:27Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e18ecee1af3280c913a9fadf588bf64492538625",
"body": "… on Windows\n\nCurrently, Edk2BaseToolsBuild.py cleans before doing the build\non Linux, but doesn't do so on Windows.\n\nIt has been observed on Windows that the incremental build can\nlead to a bad state of some logic from the old build and some from\nthe new build.\n\nThis commit aligns Windows to Linux and always do a clean before\nbuilding on both OSes.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>\n(cherry picked from commit b313503a60e987f0c2c131abe588a5d06e33f8c5)",
"is_bot": false,
"headline": "[CHERRY-PICK] BaseTools: Edk2BaseToolsBuild.py: Clean Before Building…",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-06T00:15:27Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3a0a42d837c10481e8bf6397f603dbf25613ee56",
"body": "Update Edk2ToolsBuild.py to support using Linux/CLANG and\nWindows Mingw/CLANG environments to build C tools within\nthe BaseTools directory. The environment variable settings\nCC=clang and CXX=clang++ must also be set before running\nEdk2ToolsBuild.py to enable the use of the clang compiler.\nPATH must \n[…]\nhe mingw-make.exe\nutility can be used to process BaseTools makefiles.\n\nSigned-off-by: Michael D Kinney <michael.d.kinney@intel.com>\n(cherry picked from commit 85e2fef2a8dfcdc64235e783abd827f33f2664b3)",
"is_bot": false,
"headline": "[CHERRY-PICK] BaseTools: Add CLANG support to Edk2ToolsBuild.py",
"author_name": "Michael D Kinney",
"author_login": "mdkinney",
"committed_at": "2026-06-06T00:15:27Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "8e32d01cde58f8e7f9177a2e05ef8a06dc7b7e79",
"body": "This reverts commit 35f2ed51e00b0a9ae4a70ebb16fee75cb35192f6\ntemporarily as part of it has been upstreamed to edk2.",
"is_bot": false,
"headline": "Revert \"BaseTools: Add GenStm\"",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-06T00:15:27Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a916a3cbebd277f8dd1b865fa7b9ed7ab3a8788a",
"body": "This reverts commit bf11205a1c6d6e1f4418893237dc8868609e019b\nto squash it with 35f2ed51e00b0a9ae4a70ebb16fee75cb35192f6.",
"is_bot": false,
"headline": "Revert \"Add CPU_INFORMATION_HEADER struct to STM_HEADER\"",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-06T00:15:27Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "bf3ee1ad43f542f7a433164dad7b600ab93078a0",
"body": "…sage\"\n\nThis temporarily reverts commit 9601f61b08b108bd3062492a2cca1f76412ff314\nto better fix up history.",
"is_bot": false,
"headline": "Revert \"Move STATIC_ASSERT abstraction to common file for BaseTools u…",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-06T00:15:27Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6f3ab75e4dae31476d32d21234d7afe5483d6421",
"body": "In StandaloneMM mode, IsStatusCodeUsingSerialPort is expecting to\nfind gMmStatusCodeUseSerialHobGuid, and will assert if it is not found.\n\nChange the logic so that if the Guided Hob is not found, to let\nthe function return FALSE and progress to proceed.\n\nSigned-off-by: Aaron Pop <aaronpop@microsoft.com>\n(cherry picked from commit 4743d8d9925654a3f4d150e3bc502a02979f3892)",
"is_bot": false,
"headline": "[Cherry-Pick] MdeModulePkg: StatusCodeHandler Stmm remove assert",
"author_name": "Aaron Pop (from Dev Box)",
"author_login": "apop5",
"committed_at": "2026-06-05T18:05:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "614b36650381e9697516e5d7438725d6db2bcb0e",
"body": "This reverts commit db8ffadfa3fd8dbc74ad0142cc616ce8a32c83ac.\n\n---\n\nCommit 4 of 4 for \"Remove MU RT cache buffer allocation changes\"\n\n\"Remove MU RT cache buffer allocation changes\" series objective:\n\nProject Mu had changes to move UEFI variable runtime cache allocation\nto DXE instead of PEI. The Pro\n[…]\nory buckets added to Project Mu beginning with the 2511\nbranch, the upstream flow to allocate the RT cache buffer in PEI can\nbe restored\n\nSigned-off-by: Michael Kubacki <michael.kubacki@microsoft.com>",
"is_bot": false,
"headline": "Revert \"MdeModulePkg/Variable: Move RT cache buffer allocation to DXE\"",
"author_name": "Michael Kubacki",
"author_login": "makubacki",
"committed_at": "2026-06-02T21:54:30Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "723d0a7f53e9c5ed858206cee8dd4ab082474034",
"body": "…lloc failure\"\n\nThis reverts commit c8e592bd3b4dd0e4f00f59d8444d5a35e21c0673.\n\n---\n\nCommit 3 of 4 for \"Remove MU RT cache buffer allocation changes\"\n\n\"Remove MU RT cache buffer allocation changes\" series objective:\n\nProject Mu had changes to move UEFI variable runtime cache allocation\nto DXE instead\n[…]\nory buckets added to Project Mu beginning with the 2511\nbranch, the upstream flow to allocate the RT cache buffer in PEI can\nbe restored\n\nSigned-off-by: Michael Kubacki <michael.kubacki@microsoft.com>",
"is_bot": false,
"headline": "Revert \"MdeModulePkg/VariableSmmRuntimeDxe: Disable var RT cache on a…",
"author_name": "Michael Kubacki",
"author_login": "makubacki",
"committed_at": "2026-06-02T21:54:30Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "4592e28a2d7d30ac1b0ea602db0ec2aa5b8d125b",
"body": "… (#1588)\"\n\nThis reverts commit 9dd4ee3bf1bb3c9073fae2e57af26a47747910b3.\n\n---\n\nCommit 2 of 4 for \"Remove MU RT cache buffer allocation changes\"\n\n\"Remove MU RT cache buffer allocation changes\" series objective:\n\nProject Mu had changes to move UEFI variable runtime cache allocation\nto DXE instead of \n[…]\nory buckets added to Project Mu beginning with the 2511\nbranch, the upstream flow to allocate the RT cache buffer in PEI can\nbe restored\n\nSigned-off-by: Michael Kubacki <michael.kubacki@microsoft.com>",
"is_bot": false,
"headline": "Revert \"MdeModulePkg/Variable: Add PCD to control RT cache allocation…",
"author_name": "Michael Kubacki",
"author_login": "makubacki",
"committed_at": "2026-06-02T21:54:30Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "2c8714a9ce1f7e2e32665fe1c15b350dab75e48e",
"body": "…UPPORTED leak (#1668)\"\n\nThis reverts commit 9994a208d9d233bd594c26c17989817536efe0b3 to\n\n---\n\nCommit 1 of 4 for \"Remove MU RT cache buffer allocation changes\"\n\n\"Remove MU RT cache buffer allocation changes\" series objective:\n\nProject Mu had changes to move UEFI variable runtime cache allocation\nto \n[…]\nory buckets added to Project Mu beginning with the 2511\nbranch, the upstream flow to allocate the RT cache buffer in PEI can\nbe restored\n\nSigned-off-by: Michael Kubacki <michael.kubacki@microsoft.com>",
"is_bot": false,
"headline": "Revert \"[CHERRY-PICK] MdeModulePkg/VariableSmmRuntimeDxe: Fix EFI_UNS…",
"author_name": "Michael Kubacki",
"author_login": "makubacki",
"committed_at": "2026-06-02T21:54:30Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "d210225e80cb53d46b47e039e888ef891e0264d7",
"body": "This commit adds unit tests and documentation for the Memory Bin\nfeature.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>",
"is_bot": false,
"headline": "MdeModulePkg: MemoryBins: Add GoogleTest and README",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-02T21:19:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "59002db567b2c1fb119a0cb6f62001f9006201ff",
"body": "If memory bins are enabled for PEI, PEI will produce\nMemory Allocation HOBs marked with gEfiMemoryTypeInformationGuid.\nIf these exist, DXE core will now process the stats from them\nto have accurate numbers.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>",
"is_bot": false,
"headline": "MdeModulePkg: DxeCore: Update Memory Statistics from PEI",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-02T21:19:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ae6343cb2ddd857778dea122284dad74a2121848",
"body": "This commit adds opt-in support for post-mem PEI memory bins.\nSee the README for full details.\n\nMemoryBin.c is duplicated to PeiCore per request.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>",
"is_bot": false,
"headline": "MdeModulePkg: PeiCore: Add Memory Bin Support to Post-Mem PEI",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-02T21:19:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "bd8c2bbb3d37c75254e6fafa45409c8d0aaf9c2b",
"body": "This commit adds a parameter to the memory bin allocation function\nto tell it whether it should create the Resource Descriptor HOB\nowned by gMemoryTypeInformationGuid. This will be used by PEI to\ntell DXE where the memory bins are.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>",
"is_bot": false,
"headline": "MdeModulePkg: MemoryBin: Add Bin Resource Desc Hob Generation",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-02T21:19:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c2a07d57def2ee6b8972a05f2c6dde1b45de61ee",
"body": "In order to prepare for PEI core to use the memory bin\nfeature, add a DefaultBin field to the stats structure\nto track which bins simply point to the default bin.\n\nThis also adds a helper function to initialize the statistics.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>",
"is_bot": false,
"headline": "MdeModulePkg: MemoryBin: Add DefaultBin Field to Stats",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-02T21:19:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8bc20a2962593caa1a472b5725022271077f6a18",
"body": "CoreSetMemoryTypeInformationRange() currently calculates the bin\nsize needed independently from the CalculateTotalMemoryBinSizeNeeded()\nfunction. This commit updates to use that function and remove the\nduplication.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>",
"is_bot": false,
"headline": "MdeModulePkg: MemoryBin: Use CalculateTotalMemoryBinSizeNeeded()",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-02T21:19:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "906650bb67b5fb682f3fbc3d5cb565895ca29f40",
"body": "Currently, there is no guarantee that the memory bins will be\nallocated contiguously. However, this is a requirement to use\nthe resource descriptor HOB that describes the memory bin\nrange.\n\nThis commit updates AllocateMemoryTypeInformationBins() to\nallocate a contiguous range.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>",
"is_bot": false,
"headline": "MdeModulePkg: MemoryBin: Allocate Bins Contiguously",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-02T21:19:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e248a90d5974bcb081b0c537381e1f5f9ce86ce4",
"body": "This commits splits out logic currently contained in\nGcd.c and Page.c to a new file called\nMemoryBin.c. This is set up in preparation to\nadd support to PEI for memory bins (an S4 resume stability\nfeature).\n\nMemoryBin.c takes all global state in as parameters so that\nDXE core can use globals and PEI core can use HOBs.\n\nThis was requested not to be a library.\n\nSigned-off-by: Oliver Smith-Denny <osde@microsoft.com>",
"is_bot": false,
"headline": "MdeModulePkg: Consolidate Memory Bin Logic",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-02T21:19:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b48ef867723cf180cffd0ca6567a4aec7769aecc",
"body": "…t type information (#1429)\"\n\nThis reverts commit b79a6ef972d651bd3f8154919d08f81b97d86ded as it\nwas rejected upstream in favor a different solution.",
"is_bot": false,
"headline": "Revert \"Update memory map descriptor merging logic to honor the bucke…",
"author_name": "Oliver Smith-Denny",
"author_login": "os-d",
"committed_at": "2026-06-02T21:19:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "84c9fdd597260fdab7d37431a73c286f48932dea",
"body": "This PR updates the BaseTools external dependency to version\nv2025110001.0.11.\n\nSigned-off-by: Project Mu UEFI Bot <uefibot@microsoft.com>\nCo-authored-by: uefibot <uefibot@microsoft.com>",
"is_bot": true,
"headline": "[release/202511] Update BaseTools ext dep to v2025110001.0.11 (#1806)",
"author_name": "mu-automation[bot]",
"author_login": "mu-automation[bot]",
"committed_at": "2026-06-02T14:55:40Z",
"body_truncated": false,
"is_coding_agent": false
}
],
"releases_count": 100,
"commits_last_year": 730,
"latest_release_at": "2026-07-21T23:20:10Z",
"latest_release_tag": "v2025110002.0.12",
"releases_from_tags": false,
"days_since_last_push": 0,
"active_weeks_last_year": 51,
"days_since_latest_release": 0,
"mean_days_between_releases": 3.6
},
"community": {
"has_readme": true,
"has_license": true,
"has_description": true,
"has_contributing": true,
"health_percentage": 87,
"has_issue_template": false,
"has_code_of_conduct": true,
"has_pull_request_template": true
},
"ecosystem": {
"packages": []
},
"popularity": {
"forks": 177,
"stars": 286,
"watchers": 19,
"fork_history": {
"days": [
{
"date": "2018-09-30",
"count": 1
},
{
"date": "2018-10-10",
"count": 1
},
{
"date": "2018-10-11",
"count": 1
},
{
"date": "2018-11-25",
"count": 1
},
{
"date": "2018-12-19",
"count": 1
},
{
"date": "2018-12-20",
"count": 2
},
{
"date": "2018-12-21",
"count": 1
},
{
"date": "2019-01-16",
"count": 1
},
{
"date": "2019-01-30",
"count": 1
},
{
"date": "2019-02-21",
"count": 1
},
{
"date": "2019-02-27",
"count": 1
},
{
"date": "2019-03-20",
"count": 1
},
{
"date": "2019-04-17",
"count": 1
},
{
"date": "2019-05-03",
"count": 1
},
{
"date": "2019-05-06",
"count": 1
},
{
"date": "2019-05-08",
"count": 1
},
{
"date": "2019-06-10",
"count": 1
},
{
"date": "2019-06-12",
"count": 1
},
{
"date": "2019-06-22",
"count": 1
},
{
"date": "2019-10-17",
"count": 1
},
{
"date": "2019-11-07",
"count": 1
},
{
"date": "2019-11-20",
"count": 1
},
{
"date": "2020-03-23",
"count": 1
},
{
"date": "2020-04-23",
"count": 1
},
{
"date": "2020-05-15",
"count": 1
},
{
"date": "2020-06-09",
"count": 1
},
{
"date": "2020-06-10",
"count": 1
},
{
"date": "2020-06-15",
"count": 1
},
{
"date": "2020-06-30",
"count": 1
},
{
"date": "2020-07-15",
"count": 1
},
{
"date": "2020-07-31",
"count": 1
},
{
"date": "2020-08-05",
"count": 1
},
{
"date": "2020-10-30",
"count": 1
},
{
"date": "2020-11-18",
"count": 1
},
{
"date": "2020-12-07",
"count": 1
},
{
"date": "2020-12-14",
"count": 1
},
{
"date": "2021-02-10",
"count": 1
},
{
"date": "2021-02-11",
"count": 3
},
{
"date": "2021-03-04",
"count": 1
},
{
"date": "2021-03-09",
"count": 1
},
{
"date": "2021-07-16",
"count": 2
},
{
"date": "2021-09-23",
"count": 1
},
{
"date": "2021-12-08",
"count": 1
},
{
"date": "2021-12-15",
"count": 1
},
{
"date": "2022-02-15",
"count": 1
},
{
"date": "2022-02-18",
"count": 1
},
{
"date": "2022-03-04",
"count": 1
},
{
"date": "2022-03-05",
"count": 1
},
{
"date": "2022-03-25",
"count": 1
},
{
"date": "2022-04-07",
"count": 1
},
{
"date": "2022-04-15",
"count": 1
},
{
"date": "2022-04-27",
"count": 1
},
{
"date": "2022-05-17",
"count": 1
},
{
"date": "2022-06-03",
"count": 1
},
{
"date": "2022-06-28",
"count": 1
},
{
"date": "2022-07-05",
"count": 1
},
{
"date": "2022-07-07",
"count": 1
},
{
"date": "2022-10-21",
"count": 1
},
{
"date": "2022-11-11",
"count": 1
},
{
"date": "2022-11-17",
"count": 1
},
{
"date": "2022-12-01",
"count": 1
},
{
"date": "2023-01-16",
"count": 1
},
{
"date": "2023-03-02",
"count": 1
},
{
"date": "2023-03-20",
"count": 1
},
{
"date": "2023-04-03",
"count": 1
},
{
"date": "2023-04-23",
"count": 1
},
{
"date": "2023-04-28",
"count": 1
},
{
"date": "2023-06-19",
"count": 1
},
{
"date": "2023-06-28",
"count": 1
},
{
"date": "2023-06-30",
"count": 1
},
{
"date": "2023-07-21",
"count": 1
},
{
"date": "2023-08-01",
"count": 1
},
{
"date": "2023-08-21",
"count": 1
},
{
"date": "2023-08-24",
"count": 1
},
{
"date": "2023-08-29",
"count": 1
},
{
"date": "2023-08-30",
"count": 1
},
{
"date": "2023-09-13",
"count": 1
},
{
"date": "2023-11-24",
"count": 1
},
{
"date": "2023-12-19",
"count": 1
},
{
"date": "2024-02-27",
"count": 1
},
{
"date": "2024-03-09",
"count": 1
},
{
"date": "2024-03-13",
"count": 1
},
{
"date": "2024-04-02",
"count": 1
},
{
"date": "2024-04-06",
"count": 1
},
{
"date": "2024-04-17",
"count": 1
},
{
"date": "2024-05-14",
"count": 1
},
{
"date": "2024-05-20",
"count": 1
},
{
"date": "2024-07-18",
"count": 3
},
{
"date": "2024-07-22",
"count": 2
},
{
"date": "2024-08-02",
"count": 1
},
{
"date": "2024-08-11",
"count": 1
},
{
"date": "2024-08-19",
"count": 1
},
{
"date": "2024-08-23",
"count": 1
},
{
"date": "2024-09-06",
"count": 1
},
{
"date": "2024-09-10",
"count": 1
},
{
"date": "2024-09-19",
"count": 1
},
{
"date": "2024-10-08",
"count": 1
},
{
"date": "2024-10-15",
"count": 1
},
{
"date": "2024-10-23",
"count": 1
},
{
"date": "2024-11-04",
"count": 1
},
{
"date": "2024-11-06",
"count": 1
},
{
"date": "2024-11-12",
"count": 1
},
{
"date": "2024-11-25",
"count": 1
},
{
"date": "2024-11-26",
"count": 1
},
{
"date": "2024-12-05",
"count": 1
},
{
"date": "2025-01-15",
"count": 2
},
{
"date": "2025-01-23",
"count": 1
},
{
"date": "2025-01-31",
"count": 1
},
{
"date": "2025-02-23",
"count": 1
},
{
"date": "2025-03-09",
"count": 1
},
{
"date": "2025-03-17",
"count": 1
},
{
"date": "2025-04-23",
"count": 1
},
{
"date": "2025-05-08",
"count": 1
},
{
"date": "2025-05-19",
"count": 1
},
{
"date": "2025-05-20",
"count": 1
},
{
"date": "2025-05-21",
"count": 1
},
{
"date": "2025-05-23",
"count": 1
},
{
"date": "2025-05-27",
"count": 2
},
{
"date": "2025-06-10",
"count": 1
},
{
"date": "2025-06-17",
"count": 1
},
{
"date": "2025-06-24",
"count": 1
},
{
"date": "2025-07-03",
"count": 1
},
{
"date": "2025-07-11",
"count": 1
},
{
"date": "2025-07-14",
"count": 1
},
{
"date": "2025-07-22",
"count": 1
},
{
"date": "2025-07-30",
"count": 1
},
{
"date": "2025-08-21",
"count": 1
},
{
"date": "2025-09-09",
"count": 1
},
{
"date": "2025-09-16",
"count": 1
},
{
"date": "2025-09-23",
"count": 1
},
{
"date": "2025-10-09",
"count": 1
},
{
"date": "2025-10-20",
"count": 1
},
{
"date": "2025-10-26",
"count": 1
},
{
"date": "2025-10-30",
"count": 1
},
{
"date": "2025-11-03",
"count": 1
},
{
"date": "2025-11-26",
"count": 2
},
{
"date": "2025-12-04",
"count": 1
},
{
"date": "2025-12-17",
"count": 1
},
{
"date": "2025-12-31",
"count": 1
},
{
"date": "2026-02-04",
"count": 1
},
{
"date": "2026-03-03",
"count": 1
},
{
"date": "2026-03-13",
"count": 1
},
{
"date": "2026-03-15",
"count": 1
},
{
"date": "2026-03-20",
"count": 1
},
{
"date": "2026-04-08",
"count": 1
},
{
"date": "2026-04-13",
"count": 1
},
{
"date": "2026-04-25",
"count": 1
},
{
"date": "2026-04-27",
"count": 1
},
{
"date": "2026-04-29",
"count": 1
},
{
"date": "2026-05-11",
"count": 1
},
{
"date": "2026-05-15",
"count": 1
},
{
"date": "2026-05-21",
"count": 1
},
{
"date": "2026-05-24",
"count": 1
},
{
"date": "2026-05-30",
"count": 1
},
{
"date": "2026-06-04",
"count": 1
},
{
"date": "2026-06-23",
"count": 1
},
{
"date": "2026-07-05",
"count": 1
},
{
"date": "2026-07-08",
"count": 1
},
{
"date": "2026-07-12",
"count": 1
}
],
"complete": true,
"collected": 169,
"total_forks": 177
},
"star_history": {
"days": [
{
"date": "2018-09-08",
"count": 1
},
{
"date": "2018-09-14",
"count": 3
},
{
"date": "2018-09-15",
"count": 1
},
{
"date": "2018-09-30",
"count": 1
},
{
"date": "2018-10-11",
"count": 1
},
{
"date": "2018-10-12",
"count": 1
},
{
"date": "2018-10-15",
"count": 1
},
{
"date": "2018-10-16",
"count": 2
},
{
"date": "2018-11-06",
"count": 1
},
{
"date": "2018-11-22",
"count": 1
},
{
"date": "2018-11-25",
"count": 1
},
{
"date": "2018-12-19",
"count": 5
},
{
"date": "2018-12-20",
"count": 50
},
{
"date": "2018-12-21",
"count": 6
},
{
"date": "2018-12-22",
"count": 5
},
{
"date": "2018-12-24",
"count": 2
},
{
"date": "2018-12-28",
"count": 1
},
{
"date": "2018-12-30",
"count": 1
},
{
"date": "2019-01-04",
"count": 2
},
{
"date": "2019-01-17",
"count": 1
},
{
"date": "2019-01-18",
"count": 1
},
{
"date": "2019-01-28",
"count": 1
},
{
"date": "2019-02-23",
"count": 1
},
{
"date": "2019-02-27",
"count": 1
},
{
"date": "2019-03-09",
"count": 3
},
{
"date": "2019-03-20",
"count": 1
},
{
"date": "2019-03-24",
"count": 1
},
{
"date": "2019-04-07",
"count": 1
},
{
"date": "2019-04-16",
"count": 1
},
{
"date": "2019-05-06",
"count": 2
},
{
"date": "2019-05-25",
"count": 1
},
{
"date": "2019-05-30",
"count": 1
},
{
"date": "2019-06-22",
"count": 1
},
{
"date": "2019-07-01",
"count": 1
},
{
"date": "2019-07-02",
"count": 1
},
{
"date": "2019-07-05",
"count": 1
},
{
"date": "2019-08-02",
"count": 1
},
{
"date": "2019-08-07",
"count": 1
},
{
"date": "2019-08-14",
"count": 1
},
{
"date": "2019-08-15",
"count": 1
},
{
"date": "2019-08-19",
"count": 1
},
{
"date": "2019-08-20",
"count": 1
},
{
"date": "2019-09-02",
"count": 1
},
{
"date": "2019-10-05",
"count": 1
},
{
"date": "2019-10-07",
"count": 1
},
{
"date": "2019-10-24",
"count": 1
},
{
"date": "2019-11-06",
"count": 1
},
{
"date": "2019-11-07",
"count": 1
},
{
"date": "2019-11-12",
"count": 1
},
{
"date": "2019-11-20",
"count": 1
},
{
"date": "2020-01-25",
"count": 1
},
{
"date": "2020-03-04",
"count": 1
},
{
"date": "2020-03-20",
"count": 1
},
{
"date": "2020-03-23",
"count": 1
},
{
"date": "2020-04-01",
"count": 1
},
{
"date": "2020-04-12",
"count": 1
},
{
"date": "2020-05-09",
"count": 1
},
{
"date": "2020-05-10",
"count": 1
},
{
"date": "2020-05-12",
"count": 1
},
{
"date": "2020-05-26",
"count": 1
},
{
"date": "2020-06-07",
"count": 1
},
{
"date": "2020-07-15",
"count": 1
},
{
"date": "2020-08-05",
"count": 1
},
{
"date": "2020-08-30",
"count": 1
},
{
"date": "2020-09-16",
"count": 1
},
{
"date": "2020-10-04",
"count": 1
},
{
"date": "2020-10-30",
"count": 1
},
{
"date": "2020-11-24",
"count": 1
},
{
"date": "2020-12-29",
"count": 1
},
{
"date": "2021-01-12",
"count": 1
},
{
"date": "2021-03-08",
"count": 1
},
{
"date": "2021-03-09",
"count": 1
},
{
"date": "2021-03-30",
"count": 1
},
{
"date": "2021-04-20",
"count": 1
},
{
"date": "2021-05-18",
"count": 1
},
{
"date": "2021-06-19",
"count": 1
},
{
"date": "2021-07-09",
"count": 1
},
{
"date": "2021-07-11",
"count": 1
},
{
"date": "2021-07-16",
"count": 1
},
{
"date": "2021-08-06",
"count": 1
},
{
"date": "2021-09-30",
"count": 1
},
{
"date": "2021-11-24",
"count": 1
},
{
"date": "2022-01-10",
"count": 1
},
{
"date": "2022-01-18",
"count": 1
},
{
"date": "2022-02-04",
"count": 1
},
{
"date": "2022-02-17",
"count": 1
},
{
"date": "2022-02-18",
"count": 2
},
{
"date": "2022-03-03",
"count": 1
},
{
"date": "2022-03-11",
"count": 1
},
{
"date": "2022-03-17",
"count": 1
},
{
"date": "2022-04-14",
"count": 1
},
{
"date": "2022-04-19",
"count": 1
},
{
"date": "2022-04-21",
"count": 1
},
{
"date": "2022-04-27",
"count": 1
},
{
"date": "2022-05-04",
"count": 1
},
{
"date": "2022-05-05",
"count": 1
},
{
"date": "2022-05-12",
"count": 1
},
{
"date": "2022-05-30",
"count": 1
},
{
"date": "2022-06-01",
"count": 1
},
{
"date": "2022-06-07",
"count": 1
},
{
"date": "2022-07-06",
"count": 1
},
{
"date": "2022-07-09",
"count": 1
},
{
"date": "2022-08-26",
"count": 1
},
{
"date": "2022-08-27",
"count": 1
},
{
"date": "2022-10-21",
"count": 1
},
{
"date": "2022-11-02",
"count": 1
},
{
"date": "2022-11-22",
"count": 1
},
{
"date": "2022-11-24",
"count": 1
},
{
"date": "2022-12-09",
"count": 1
},
{
"date": "2022-12-24",
"count": 1
},
{
"date": "2023-01-04",
"count": 1
},
{
"date": "2023-01-25",
"count": 1
},
{
"date": "2023-01-30",
"count": 1
},
{
"date": "2023-02-11",
"count": 1
},
{
"date": "2023-02-13",
"count": 1
},
{
"date": "2023-02-25",
"count": 2
},
{
"date": "2023-03-03",
"count": 1
},
{
"date": "2023-04-19",
"count": 1
},
{
"date": "2023-04-24",
"count": 1
},
{
"date": "2023-04-28",
"count": 1
},
{
"date": "2023-05-29",
"count": 1
},
{
"date": "2023-05-30",
"count": 1
},
{
"date": "2023-06-05",
"count": 1
},
{
"date": "2023-06-24",
"count": 1
},
{
"date": "2023-07-15",
"count": 1
},
{
"date": "2023-07-21",
"count": 1
},
{
"date": "2023-07-26",
"count": 1
},
{
"date": "2023-09-07",
"count": 1
},
{
"date": "2023-10-02",
"count": 1
},
{
"date": "2023-10-11",
"count": 1
},
{
"date": "2023-10-26",
"count": 1
},
{
"date": "2023-10-27",
"count": 1
},
{
"date": "2023-11-06",
"count": 1
},
{
"date": "2023-11-08",
"count": 1
},
{
"date": "2023-11-18",
"count": 1
},
{
"date": "2023-11-24",
"count": 1
},
{
"date": "2023-12-10",
"count": 1
},
{
"date": "2023-12-19",
"count": 1
},
{
"date": "2023-12-20",
"count": 1
},
{
"date": "2024-01-02",
"count": 1
},
{
"date": "2024-02-22",
"count": 1
},
{
"date": "2024-02-27",
"count": 1
},
{
"date": "2024-03-04",
"count": 2
},
{
"date": "2024-03-13",
"count": 2
},
{
"date": "2024-03-14",
"count": 2
},
{
"date": "2024-04-01",
"count": 1
},
{
"date": "2024-04-10",
"count": 1
},
{
"date": "2024-05-06",
"count": 1
},
{
"date": "2024-05-14",
"count": 2
},
{
"date": "2024-05-19",
"count": 1
},
{
"date": "2024-06-22",
"count": 1
},
{
"date": "2024-06-24",
"count": 1
},
{
"date": "2024-07-08",
"count": 1
},
{
"date": "2024-07-14",
"count": 1
},
{
"date": "2024-08-05",
"count": 1
},
{
"date": "2024-08-06",
"count": 2
},
{
"date": "2024-08-11",
"count": 1
},
{
"date": "2024-08-15",
"count": 1
},
{
"date": "2024-09-03",
"count": 1
},
{
"date": "2024-09-28",
"count": 1
},
{
"date": "2024-09-30",
"count": 1
},
{
"date": "2024-10-07",
"count": 1
},
{
"date": "2024-11-23",
"count": 1
},
{
"date": "2024-12-14",
"count": 1
},
{
"date": "2024-12-27",
"count": 1
},
{
"date": "2025-01-09",
"count": 1
},
{
"date": "2025-01-18",
"count": 1
},
{
"date": "2025-02-22",
"count": 1
},
{
"date": "2025-02-24",
"count": 1
},
{
"date": "2025-03-11",
"count": 1
},
{
"date": "2025-03-14",
"count": 1
},
{
"date": "2025-03-28",
"count": 1
},
{
"date": "2025-04-04",
"count": 1
},
{
"date": "2025-04-18",
"count": 1
},
{
"date": "2025-05-09",
"count": 1
},
{
"date": "2025-05-20",
"count": 1
},
{
"date": "2025-05-21",
"count": 3
},
{
"date": "2025-05-23",
"count": 1
},
{
"date": "2025-05-30",
"count": 1
},
{
"date": "2025-05-31",
"count": 1
},
{
"date": "2025-06-01",
"count": 1
},
{
"date": "2025-06-06",
"count": 1
},
{
"date": "2025-06-24",
"count": 1
},
{
"date": "2025-06-28",
"count": 1
},
{
"date": "2025-07-01",
"count": 1
},
{
"date": "2025-07-26",
"count": 1
},
{
"date": "2025-09-03",
"count": 1
},
{
"date": "2025-09-13",
"count": 1
},
{
"date": "2025-09-15",
"count": 1
},
{
"date": "2025-09-18",
"count": 1
},
{
"date": "2025-10-04",
"count": 1
},
{
"date": "2025-10-07",
"count": 1
},
{
"date": "2025-10-12",
"count": 1
},
{
"date": "2025-10-14",
"count": 1
},
{
"date": "2025-11-02",
"count": 1
},
{
"date": "2025-11-03",
"count": 1
},
{
"date": "2025-11-14",
"count": 1
},
{
"date": "2025-11-16",
"count": 1
},
{
"date": "2025-11-25",
"count": 1
},
{
"date": "2025-12-24",
"count": 1
},
{
"date": "2026-02-22",
"count": 1
},
{
"date": "2026-03-11",
"count": 1
},
{
"date": "2026-04-06",
"count": 1
},
{
"date": "2026-05-02",
"count": 1
},
{
"date": "2026-05-28",
"count": 1
},
{
"date": "2026-06-04",
"count": 1
},
{
"date": "2026-07-11",
"count": 1
}
],
"complete": true,
"collected": 286,
"total_stars": 286
},
"open_issues_and_prs": 24
},
"ai_readiness": {
"has_nix": false,
"example_dirs": [
"sample",
"samples"
],
"has_llms_txt": false,
"has_dockerfile": false,
"has_mcp_signal": false,
"bootstrap_files": [
"ArmPlatformPkg/Scripts/Makefile",
"BaseTools/GNUmakefile",
"BaseTools/Makefile",
"BaseTools/Source/C/BrotliCompress/GNUmakefile",
"BaseTools/Source/C/BrotliCompress/Makefile",
"BaseTools/Source/C/Common/GNUmakefile",
"BaseTools/Source/C/Common/Makefile",
"BaseTools/Source/C/DevicePath/GNUmakefile",
"BaseTools/Source/C/DevicePath/Makefile",
"BaseTools/Source/C/EfiRom/GNUmakefile",
"BaseTools/Source/C/EfiRom/Makefile",
"BaseTools/Source/C/GNUmakefile",
"BaseTools/Source/C/GenCrc32/GNUmakefile",
"BaseTools/Source/C/GenCrc32/Makefile",
"BaseTools/Source/C/GenFfs/GNUmakefile",
"BaseTools/Source/C/GenFfs/Makefile",
"BaseTools/Source/C/GenFv/GNUmakefile",
"BaseTools/Source/C/GenFv/Makefile",
"BaseTools/Source/C/GenFw/GNUmakefile",
"BaseTools/Source/C/GenFw/Makefile",
"BaseTools/Source/C/GenSec/GNUmakefile",
"BaseTools/Source/C/GenSec/Makefile",
"BaseTools/Source/C/GenStm/GNUmakefile",
"BaseTools/Source/C/GenStm/Makefile",
"BaseTools/Source/C/LzmaCompress/GNUmakefile",
"BaseTools/Source/C/LzmaCompress/Makefile",
"BaseTools/Source/C/Makefile",
"BaseTools/Source/C/PyEfiCompressor/Makefile",
"BaseTools/Source/C/TianoCompress/GNUmakefile",
"BaseTools/Source/C/TianoCompress/Makefile",
"BaseTools/Source/C/VfrCompile/GNUmakefile",
"BaseTools/Source/C/VfrCompile/Makefile",
"BaseTools/Source/C/VfrCompile/Pccts/Makefile",
"BaseTools/Source/C/VfrCompile/Pccts/antlr/makefile",
"BaseTools/Source/C/VfrCompile/Pccts/dlg/makefile",
"BaseTools/Source/C/VfrCompile/Pccts/support/genmk/makefile",
"BaseTools/Source/C/VfrCompile/Pccts/support/rexpr/makefile",
"BaseTools/Source/C/VolInfo/GNUmakefile",
"BaseTools/Source/C/VolInfo/Makefile",
"BaseTools/Source/Python/GNUmakefile",
"BaseTools/Source/Python/Makefile",
"BaseTools/Tests/GNUmakefile"
],
"api_schema_files": [],
"has_devcontainer": true,
"typecheck_configs": [],
"toolchain_manifests": [],
"largest_source_bytes": 698119,
"source_files_sampled": 5118,
"oversized_source_files": 235,
"agent_instruction_files": [],
"agent_instruction_max_bytes": null
},
"dependencies": {
"manifests": [],
"advisories": {
"error": null,
"scope": "repository_graph",
"source": "osv",
"findings": [],
"collected": true,
"malicious": [],
"truncated": false,
"by_severity": {},
"advisory_count": 0,
"affected_count": 0,
"assessed_count": 5,
"malicious_count": 0,
"assessed_package": null,
"unassessed_count": 4,
"direct_affected_count": 0
},
"ecosystems": [],
"dependencies": [],
"all_dependencies": {
"error": null,
"source": "github-sbom",
"packages": [
{
"name": "antlr4-python3-runtime",
"direct": false,
"version": "4.13.2",
"ecosystem": "pypi"
},
{
"name": "edk2-pytool-extensions",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "edk2-pytool-extensions",
"direct": false,
"version": "0.12.*",
"ecosystem": "pypi"
},
{
"name": "edk2-pytool-library",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "edk2-pytool-library",
"direct": false,
"version": "0.10.*",
"ecosystem": "pypi"
},
{
"name": "lcov-cobertura",
"direct": false,
"version": "2.1.1",
"ecosystem": "pypi"
},
{
"name": "pygount",
"direct": false,
"version": "3.2.0",
"ecosystem": "pypi"
},
{
"name": "regex",
"direct": false,
"version": "2026.7.10",
"ecosystem": "pypi"
},
{
"name": "toml",
"direct": false,
"version": "0.10.2",
"ecosystem": "pypi"
}
],
"collected": true,
"truncated": false,
"total_count": 9,
"direct_count": 0,
"indirect_count": 9
}
},
"maintainership": {
"issues": {
"open_prs": 10,
"merged_prs": 1434,
"open_issues": 14,
"closed_ratio": 0.894,
"closed_issues": 118,
"closed_unmerged_prs": 277
},
"bus_factor": 13,
"bot_contributors": 2,
"top_contributors": [
{
"type": "User",
"login": "niruiyu",
"commits": 1004,
"avatar_url": "https://avatars.githubusercontent.com/u/8294960?v=4"
},
{
"type": "User",
"login": "lzeng14",
"commits": 798,
"avatar_url": "https://avatars.githubusercontent.com/u/11768286?v=4"
},
{
"type": "User",
"login": "mdkinney",
"commits": 782,
"avatar_url": "https://avatars.githubusercontent.com/u/12265078?v=4"
},
{
"type": "User",
"login": "lgao4",
"commits": 696,
"avatar_url": "https://avatars.githubusercontent.com/u/10111266?v=4"
},
{
"type": "User",
"login": "jljusten",
"commits": 654,
"avatar_url": "https://avatars.githubusercontent.com/u/65927?v=4"
},
{
"type": "User",
"login": "hwu25",
"commits": 589,
"avatar_url": "https://avatars.githubusercontent.com/u/9983480?v=4"
},
{
"type": "User",
"login": "jljusten2",
"commits": 522,
"avatar_url": "https://avatars.githubusercontent.com/u/73260671?v=4"
},
{
"type": "User",
"login": "ydong10",
"commits": 508,
"avatar_url": "https://avatars.githubusercontent.com/u/12068401?v=4"
},
{
"type": "User",
"login": "dandanbi",
"commits": 457,
"avatar_url": "https://avatars.githubusercontent.com/u/12407378?v=4"
},
{
"type": "User",
"login": "makubacki",
"commits": 452,
"avatar_url": "https://avatars.githubusercontent.com/u/21320094?v=4"
}
],
"contributors_sampled": 98,
"top_contributor_share": 0.067
},
"quality_signals": {
"has_ci": true,
"has_tests": true,
"ci_workflows": [
"auto-approve.yml",
"auto-merge.yml",
"clangpdb-ci.yml",
"codeql.yml",
"file-paths.yml",
"issue-assignment.yml",
"label-issues.yml",
"label-sync.yml",
"mu-pr-validation-pending.yml",
"mu-pr-validation-post.yml",
"mu-pr-validation.yml",
"pull-request-formatting-validator.yml",
"regex-pull-requests.yml",
"release-basetools.yml",
"release-draft.yml",
"scheduled-maintenance.yml",
"stale.yml",
"triage-issues.yml",
"update-basetools.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": 7,
"reason": "binaries present in source code",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
},
{
"name": "Branch-Protection",
"score": 8,
"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": 10,
"reason": "10 out of 10 merged PRs checked by a CI test -- score normalized to 10",
"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 18 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": 10,
"reason": "update tool detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
},
{
"name": "Fuzzing",
"score": 0,
"reason": "project is not fuzzed",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
},
{
"name": "License",
"score": 9,
"reason": "license file detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
},
{
"name": "Maintained",
"score": 10,
"reason": "30 commit(s) and 1 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": 0,
"reason": "dependency not pinned by hash detected -- score normalized to 0",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
},
{
"name": "SAST",
"score": 10,
"reason": "SAST tool is 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": 0,
"reason": "Project has not signed or included provenance with any releases.",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#signed-releases"
},
{
"name": "Token-Permissions",
"score": 0,
"reason": "detected GitHub workflow tokens with excessive permissions",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
},
{
"name": "Vulnerabilities",
"score": 10,
"reason": "0 existing vulnerabilities detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
}
],
"commit": "18de13ad691dbe878db7d62b1139db7a65d4dbb6",
"ran_at": "2026-07-22T03:43:59Z",
"aggregate_score": 6.8,
"scorecard_version": "v5.5.0"
},
"has_codeql_workflow": true,
"has_security_policy": true,
"has_dependabot_config": true
},
"contribution_flow": {
"collected": true,
"ci_last_run_at": "2026-07-22T03:09:39Z",
"oldest_open_prs": [
{
"number": 1743,
"created_at": "2026-04-04T16:12:33Z",
"last_comment_at": "2026-04-04T16:27:41Z",
"last_comment_author": "os-d"
},
{
"number": 1799,
"created_at": "2026-05-15T23:38:56Z",
"last_comment_at": "2026-07-20T23:51:33Z",
"last_comment_author": "mu-automation"
},
{
"number": 1809,
"created_at": "2026-05-28T21:35:26Z",
"last_comment_at": "2026-07-10T16:45:27Z",
"last_comment_author": "Javagedes"
},
{
"number": 1819,
"created_at": "2026-06-10T21:18:28Z",
"last_comment_at": "2026-06-10T21:47:57Z",
"last_comment_author": "codecov-commenter"
},
{
"number": 1842,
"created_at": "2026-07-03T15:15:07Z",
"last_comment_at": "2026-07-09T15:31:20Z",
"last_comment_author": "codecov-commenter"
},
{
"number": 1843,
"created_at": "2026-07-06T23:41:57Z",
"last_comment_at": "2026-07-06T23:56:20Z",
"last_comment_author": "apop5"
},
{
"number": 1846,
"created_at": "2026-07-10T23:47:15Z",
"last_comment_at": "2026-07-10T23:47:39Z",
"last_comment_author": "mu-automation"
},
{
"number": 1854,
"created_at": "2026-07-17T05:11:59Z",
"last_comment_at": "2026-07-22T02:53:25Z",
"last_comment_author": "v-boscochen"
},
{
"number": 1855,
"created_at": "2026-07-21T17:15:09Z",
"last_comment_at": "2026-07-21T17:50:27Z",
"last_comment_author": "cfernald"
},
{
"number": 1856,
"created_at": "2026-07-21T20:43:13Z",
"last_comment_at": "2026-07-21T22:52:07Z",
"last_comment_author": "makubacki"
}
],
"last_merged_pr_at": "2026-07-21T18:33:32Z",
"ci_last_conclusion": "SUCCESS",
"oldest_open_issues": [
{
"number": 489,
"created_at": "2023-07-13T21:12:31Z",
"last_comment_at": "2023-07-25T21:37:35Z",
"last_comment_author": "makubacki"
},
{
"number": 559,
"created_at": "2023-09-11T19:48:06Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 560,
"created_at": "2023-09-11T19:51:16Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 666,
"created_at": "2024-01-05T20:24:20Z",
"last_comment_at": "2024-02-19T23:35:37Z",
"last_comment_author": "github-actions"
},
{
"number": 1082,
"created_at": "2024-07-30T23:48:36Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 1090,
"created_at": "2024-08-06T19:12:36Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 1341,
"created_at": "2025-04-24T07:23:31Z",
"last_comment_at": "2025-07-11T23:37:25Z",
"last_comment_author": "mu-automation"
},
{
"number": 1462,
"created_at": "2025-08-06T01:20:34Z",
"last_comment_at": "2025-09-22T13:42:25Z",
"last_comment_author": "makubacki"
},
{
"number": 1483,
"created_at": "2025-08-21T22:25:54Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 1637,
"created_at": "2026-02-11T21:11:18Z",
"last_comment_at": "2026-03-29T23:45:47Z",
"last_comment_author": "mu-automation"
},
{
"number": 1730,
"created_at": "2026-03-31T18:02:29Z",
"last_comment_at": "2026-06-30T23:53:45Z",
"last_comment_author": "mu-automation"
},
{
"number": 1731,
"created_at": "2026-03-31T18:09:42Z",
"last_comment_at": "2026-06-30T23:53:44Z",
"last_comment_author": "mu-automation"
},
{
"number": 1818,
"created_at": "2026-06-09T00:45:09Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 1826,
"created_at": "2026-06-18T21:03:41Z",
"last_comment_at": "2026-06-18T21:09:19Z",
"last_comment_author": "makubacki"
}
]
}
},
"config": {
"disabled_metrics": [],
"disabled_categories": [],
"disabled_components": {}
},
"source": {
"url": "https://github.com/microsoft/mu_basecore",
"host": "github.com",
"name": "mu_basecore",
"owner": "microsoft"
},
"metrics": {
"overall": {
"key": "overall",
"band": "good",
"name": "Overall health",
"note": null,
"notes": [],
"value": 84,
"inputs": {
"security": 74,
"vitality": 95,
"community": 75,
"governance": 90,
"engineering": 80
},
"components": []
},
"categories": [
{
"key": "vitality",
"band": "excellent",
"name": "Vitality",
"value": 95,
"weight": 0.22,
"metrics": [
{
"key": "development_activity",
"band": "excellent",
"name": "Development activity",
"note": null,
"notes": [],
"value": 99,
"inputs": {
"commits_last_year": 730,
"human_commit_share": 0.88,
"days_since_last_push": 0,
"active_weeks_last_year": 51
},
"components": [
{
"key": "push_recency",
"name": "Push recency",
"detail": "last push 0 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "push_recency",
"params": {
"days": 0
}
}
],
"max_points": 36
},
{
"key": "commit_cadence",
"name": "Commit cadence",
"detail": "51/52 weeks with commits",
"points": 35.3,
"status": "partial",
"details": [
{
"code": "commit_cadence_weeks",
"params": {
"weeks": 51
}
}
],
"max_points": 36
},
{
"key": "commit_volume",
"name": "Commit volume",
"detail": "730 commits in the last year",
"points": 18,
"status": "met",
"details": [
{
"code": "commits_last_year",
"params": {
"count": 730
}
}
],
"max_points": 18
},
{
"key": "openssf_scorecard_maintained",
"name": "OpenSSF Scorecard: Maintained",
"detail": "30 commit(s) and 1 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": null,
"notes": [],
"value": 90,
"inputs": {
"releases_count": 100,
"latest_release_tag": "v2025110002.0.12",
"releases_from_tags": false,
"days_since_latest_release": 0,
"mean_days_between_releases": 3.6
},
"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 0 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "release_recency",
"params": {
"days": 0
}
}
],
"max_points": 36
},
{
"key": "release_cadence",
"name": "Release cadence",
"detail": "a release every ~3.6 days",
"points": 27,
"status": "met",
"details": [
{
"code": "release_cadence",
"params": {
"gap": 3.6
}
}
],
"max_points": 27
},
{
"key": "openssf_scorecard_signed_releases",
"name": "OpenSSF Scorecard: Signed-Releases",
"detail": "Project has not signed or included provenance with any releases.",
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
}
]
},
{
"key": "abandonment",
"band": "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": 0,
"days_since_last_human_commit_is_floor": false
},
"components": [
{
"key": "project_is_still_maintained",
"name": "Project is still maintained",
"detail": "last human commit 0 days ago",
"points": 100,
"status": "met",
"details": [
{
"code": "abandonment_maintained",
"params": {
"days": 0
}
}
],
"max_points": 100
}
]
}
],
"description": "Is the project alive — is code being written and are releases shipping?"
},
{
"key": "community",
"band": "good",
"name": "Community & Adoption",
"value": 75,
"weight": 0.18,
"metrics": [
{
"key": "popularity",
"band": "moderate",
"name": "Popularity & adoption",
"note": null,
"notes": [],
"value": 66,
"inputs": {
"forks": 177,
"stars": 286,
"watchers": 19,
"growth_state": "organic",
"growth_factor_pct": 100
},
"components": [
{
"key": "stars",
"name": "Stars",
"detail": "286 stars",
"points": 39.8,
"status": "partial",
"details": [
{
"code": "stars",
"params": {
"count": 286
}
}
],
"max_points": 60
},
{
"key": "forks",
"name": "Forks",
"detail": "177 forks",
"points": 18.7,
"status": "partial",
"details": [
{
"code": "forks",
"params": {
"count": 177
}
}
],
"max_points": 25
},
{
"key": "watchers",
"name": "Watchers",
"detail": "19 watchers",
"points": 7,
"status": "partial",
"details": [
{
"code": "watchers",
"params": {
"count": 19
}
}
],
"max_points": 15
}
]
},
{
"key": "community_health",
"band": "excellent",
"name": "Community health",
"note": null,
"notes": [],
"value": 86,
"inputs": {
"has_readme": true,
"has_license": true,
"has_contributing": true,
"has_issue_template": false,
"has_code_of_conduct": true,
"has_pull_request_template": true
},
"components": [
{
"key": "readme",
"name": "README",
"detail": null,
"points": 22.5,
"status": "met",
"details": [],
"max_points": 22.5
},
{
"key": "license",
"name": "License",
"detail": "license file present, not a recognized license",
"points": 16.9,
"status": "partial",
"details": [
{
"code": "license_custom",
"params": {}
}
],
"max_points": 22.5
},
{
"key": "contributing_guide",
"name": "CONTRIBUTING guide",
"detail": null,
"points": 18,
"status": "met",
"details": [],
"max_points": 18
},
{
"key": "code_of_conduct",
"name": "Code of conduct",
"detail": null,
"points": 13.5,
"status": "met",
"details": [],
"max_points": 13.5
},
{
"key": "issue_template",
"name": "Issue template",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.2
},
{
"key": "pr_template",
"name": "PR template",
"detail": null,
"points": 6.3,
"status": "met",
"details": [],
"max_points": 6.3
}
]
}
],
"description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
},
{
"key": "governance",
"band": "excellent",
"name": "Sustainability & Governance",
"value": 90,
"weight": 0.24,
"metrics": [
{
"key": "maintainer_resilience",
"band": "excellent",
"name": "Maintainer resilience (bus factor)",
"note": null,
"notes": [],
"value": 98,
"inputs": {
"bus_factor": 13,
"contributors_sampled": 98,
"top_contributor_share": 0.067
},
"components": [
{
"key": "bus_factor",
"name": "Bus factor",
"detail": "13 contributor(s) cover half of all commits",
"points": 54,
"status": "met",
"details": [
{
"code": "bus_factor",
"params": {
"count": 13
}
}
],
"max_points": 54
},
{
"key": "commit_distribution",
"name": "Commit distribution",
"detail": "top contributor authored 7% of commits",
"points": 21,
"status": "partial",
"details": [
{
"code": "top_contributor_share",
"params": {
"share": 7
}
}
],
"max_points": 22.5
},
{
"key": "contributor_breadth",
"name": "Contributor breadth",
"detail": "98 contributors",
"points": 13.5,
"status": "met",
"details": [
{
"code": "contributors_sampled",
"params": {
"count": 98
}
}
],
"max_points": 13.5
},
{
"key": "openssf_scorecard_contributors",
"name": "OpenSSF Scorecard: Contributors",
"detail": "project has 18 contributing companies or organizations",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
}
]
},
{
"key": "responsiveness",
"band": "excellent",
"name": "Issue & PR responsiveness",
"note": null,
"notes": [],
"value": 89,
"inputs": {
"merged_prs": 1434,
"open_issues": 14,
"closed_issues": 118,
"issue_closed_ratio": 0.894,
"closed_unmerged_prs": 277
},
"components": [
{
"key": "issue_resolution",
"name": "Issue resolution",
"detail": "89% of issues closed",
"points": 41.8,
"status": "partial",
"details": [
{
"code": "issues_closed_share",
"params": {
"share": 89
}
}
],
"max_points": 46.75
},
{
"key": "pr_acceptance",
"name": "PR acceptance",
"detail": "1434/1711 decided PRs merged",
"points": 32.1,
"status": "partial",
"details": [
{
"code": "decided_prs_merged",
"params": {
"merged": 1434,
"decided": 1711
}
}
],
"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": 80,
"inputs": {
"followers": 125580,
"owner_type": "Organization",
"is_verified": null,
"owner_login": "microsoft",
"public_repos": 8215,
"account_age_days": 4606
},
"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": "125,580 followers of microsoft",
"points": 25,
"status": "met",
"details": [
{
"code": "owner_followers",
"params": {
"count": 125580,
"login": "microsoft"
}
}
],
"max_points": 25
},
{
"key": "track_record",
"name": "Track record",
"detail": "8215 public repos, account ~12 yr old",
"points": 25,
"status": "met",
"details": [
{
"code": "public_repos",
"params": {
"count": 8215
}
},
{
"code": "account_age_years",
"params": {
"years": 12
}
}
],
"max_points": 25
}
]
}
],
"description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
},
{
"key": "engineering",
"band": "good",
"name": "Engineering Quality",
"value": 80,
"weight": 0.2,
"metrics": [
{
"key": "engineering_practices",
"band": "good",
"name": "Engineering practices",
"note": null,
"notes": [],
"value": 74,
"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": "19 workflow(s)",
"points": 24,
"status": "met",
"details": [
{
"code": "ci_workflows",
"params": {
"count": 19
}
}
],
"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": "10 out of 10 merged PRs checked by a CI test -- score normalized to 10",
"points": 20,
"status": "met",
"details": [],
"max_points": 20
}
]
},
{
"key": "documentation",
"band": "excellent",
"name": "Documentation",
"note": null,
"notes": [],
"value": 90,
"inputs": {
"topics": [
"firmware",
"uefi",
"projectmu",
"uefi-development"
],
"has_wiki": false,
"homepage": "https://microsoft.github.io/mu/",
"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": "https://microsoft.github.io/mu/",
"points": 15,
"status": "met",
"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": "4 topics",
"points": 10,
"status": "met",
"details": [
{
"code": "topics_count",
"params": {
"count": 4
}
}
],
"max_points": 10
},
{
"key": "wiki",
"name": "Wiki",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
}
]
}
],
"description": "Are baseline engineering and documentation practices in place?"
},
{
"key": "security",
"band": "good",
"name": "Security",
"value": 74,
"weight": 0.16,
"metrics": [
{
"key": "security_posture",
"band": "moderate",
"name": "Security posture",
"note": "Excluded from scoring (no data or not applicable): Packaging. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"packaging"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 68,
"inputs": {
"source": "openssf_scorecard",
"checks_evaluated": 17,
"scorecard_version": "v5.5.0",
"checks_inconclusive": 1,
"scorecard_aggregate": 6.8
},
"components": [
{
"key": "binary_artifacts",
"name": "Binary-Artifacts",
"detail": "binaries present in source code",
"points": 5.2,
"status": "partial",
"details": [],
"max_points": 7.5
},
{
"key": "branch_protection",
"name": "Branch-Protection",
"detail": "branch protection is not maximal on development and all release branches",
"points": 6,
"status": "partial",
"details": [],
"max_points": 7.5
},
{
"key": "ci_tests",
"name": "CI-Tests",
"detail": "10 out of 10 merged PRs checked by a CI test -- score normalized to 10",
"points": 2.5,
"status": "met",
"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 18 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": "update tool detected",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "fuzzing",
"name": "Fuzzing",
"detail": "project is not fuzzed",
"points": 0,
"status": "missed",
"details": [],
"max_points": 5
},
{
"key": "license",
"name": "License",
"detail": "license file detected",
"points": 2.2,
"status": "partial",
"details": [],
"max_points": 2.5
},
{
"key": "maintained",
"name": "Maintained",
"detail": "30 commit(s) and 1 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 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 5
},
{
"key": "sast",
"name": "SAST",
"detail": "SAST tool is run on all commits",
"points": 5,
"status": "met",
"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": "Project has not signed or included provenance with any releases.",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
},
{
"key": "token_permissions",
"name": "Token-Permissions",
"detail": "detected GitHub workflow tokens with excessive permissions",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
},
{
"key": "vulnerabilities",
"name": "Vulnerabilities",
"detail": "0 existing vulnerabilities detected",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
}
]
},
{
"key": "dependency_advisories",
"band": "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 5 resolved dependencies against OSV; 4 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": 5
}
},
{
"code": "advisories_unassessed",
"params": {
"count": 4
}
},
{
"code": "advisories_repo_graph_caveat",
"params": {}
},
{
"code": "advisories_reachability",
"params": {}
}
],
"value": 100,
"inputs": {
"source": "osv",
"advisories": 0,
"affected_packages": 0,
"assessed_packages": 5,
"unassessed_packages": 4,
"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": 5,
"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": 7
},
"components": [
{
"key": "policy_exposure_multiplier",
"name": "Policy exposure multiplier",
"detail": "no confirmed policy-scope location match",
"points": 100,
"status": "met",
"details": [
{
"code": "jurisdiction_no_match",
"params": {}
}
],
"max_points": 100
}
]
}
],
"description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
},
{
"key": "ai_readiness",
"band": "moderate",
"name": "AI Readiness",
"value": 60,
"weight": 0,
"metrics": [
{
"key": "ai_agent_context",
"band": "at_risk",
"name": "Agent context & guidance",
"note": null,
"notes": [],
"value": 40,
"inputs": {
"has_llms_txt": false,
"legible_history_share": 0.955,
"agent_instruction_files": [],
"agent_instruction_max_bytes": null
},
"components": [
{
"key": "agent_instructions",
"name": "Agent instructions",
"detail": "no CLAUDE.md / AGENTS.md / editor rules",
"points": 0,
"status": "missed",
"details": [
{
"code": "no_agent_instructions",
"params": {}
}
],
"max_points": 45
},
{
"key": "machine_readable_docs_llms_txt",
"name": "Machine-readable docs (llms.txt)",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 15
},
{
"key": "legible_commit_history",
"name": "Legible commit history",
"detail": "84 of 88 human commits state their intent (structured subject or explanatory body)",
"points": 40,
"status": "met",
"details": [
{
"code": "legible_history",
"params": {
"legible": 84,
"sampled": 88
}
}
],
"max_points": 40
}
]
},
{
"key": "ai_verify_loop",
"band": "moderate",
"name": "Verify loop (build / test / typecheck)",
"note": null,
"notes": [],
"value": 69,
"inputs": {
"has_nix": false,
"has_tests": true,
"lockfiles": [],
"has_dockerfile": false,
"typed_language": true,
"bootstrap_files": [
"ArmPlatformPkg/Scripts/Makefile",
"BaseTools/GNUmakefile",
"BaseTools/Makefile",
"BaseTools/Source/C/BrotliCompress/GNUmakefile",
"BaseTools/Source/C/BrotliCompress/Makefile",
"BaseTools/Source/C/Common/GNUmakefile",
"BaseTools/Source/C/Common/Makefile",
"BaseTools/Source/C/DevicePath/GNUmakefile",
"BaseTools/Source/C/DevicePath/Makefile",
"BaseTools/Source/C/EfiRom/GNUmakefile",
"BaseTools/Source/C/EfiRom/Makefile",
"BaseTools/Source/C/GNUmakefile",
"BaseTools/Source/C/GenCrc32/GNUmakefile",
"BaseTools/Source/C/GenCrc32/Makefile",
"BaseTools/Source/C/GenFfs/GNUmakefile",
"BaseTools/Source/C/GenFfs/Makefile",
"BaseTools/Source/C/GenFv/GNUmakefile",
"BaseTools/Source/C/GenFv/Makefile",
"BaseTools/Source/C/GenFw/GNUmakefile",
"BaseTools/Source/C/GenFw/Makefile",
"BaseTools/Source/C/GenSec/GNUmakefile",
"BaseTools/Source/C/GenSec/Makefile",
"BaseTools/Source/C/GenStm/GNUmakefile",
"BaseTools/Source/C/GenStm/Makefile",
"BaseTools/Source/C/LzmaCompress/GNUmakefile",
"BaseTools/Source/C/LzmaCompress/Makefile",
"BaseTools/Source/C/Makefile",
"BaseTools/Source/C/PyEfiCompressor/Makefile",
"BaseTools/Source/C/TianoCompress/GNUmakefile",
"BaseTools/Source/C/TianoCompress/Makefile",
"BaseTools/Source/C/VfrCompile/GNUmakefile",
"BaseTools/Source/C/VfrCompile/Makefile",
"BaseTools/Source/C/VfrCompile/Pccts/Makefile",
"BaseTools/Source/C/VfrCompile/Pccts/antlr/makefile",
"BaseTools/Source/C/VfrCompile/Pccts/dlg/makefile",
"BaseTools/Source/C/VfrCompile/Pccts/support/genmk/makefile",
"BaseTools/Source/C/VfrCompile/Pccts/support/rexpr/makefile",
"BaseTools/Source/C/VolInfo/GNUmakefile",
"BaseTools/Source/C/VolInfo/Makefile",
"BaseTools/Source/Python/GNUmakefile",
"BaseTools/Source/Python/Makefile",
"BaseTools/Tests/GNUmakefile"
],
"has_devcontainer": true,
"has_linter_config": false,
"typecheck_configs": [],
"agent_commit_share": 0,
"toolchain_manifests": [],
"dependency_bot_commit_share": 0.04
},
"components": [
{
"key": "one_command_bootstrap",
"name": "One-command bootstrap",
"detail": "ArmPlatformPkg/Scripts/Makefile, BaseTools/GNUmakefile, BaseTools/Makefile, BaseTools/Source/C/BrotliCompress/GNUmakefile, BaseTools/Source/C/BrotliCompress/Makefile, BaseTools/Source/C/Common/GNUmakefile, BaseTools/Source/C/Common/Makefile, BaseTools/Source/C/DevicePath/GNUmakefile, BaseTools/Source/C/DevicePath/Makefile, BaseTools/Source/C/EfiRom/GNUmakefile, BaseTools/Source/C/EfiRom/Makefile, BaseTools/Source/C/GNUmakefile, BaseTools/Source/C/GenCrc32/GNUmakefile, BaseTools/Source/C/GenCrc32/Makefile, BaseTools/Source/C/GenFfs/GNUmakefile, BaseTools/Source/C/GenFfs/Makefile, BaseTools/Source/C/GenFv/GNUmakefile, BaseTools/Source/C/GenFv/Makefile, BaseTools/Source/C/GenFw/GNUmakefile, BaseTools/Source/C/GenFw/Makefile, BaseTools/Source/C/GenSec/GNUmakefile, BaseTools/Source/C/GenSec/Makefile, BaseTools/Source/C/GenStm/GNUmakefile, BaseTools/Source/C/GenStm/Makefile, BaseTools/Source/C/LzmaCompress/GNUmakefile, BaseTools/Source/C/LzmaCompress/Makefile, BaseTools/Source/C/Makefile, BaseTools/Source/C/PyEfiCompressor/Makefile, BaseTools/Source/C/TianoCompress/GNUmakefile, BaseTools/Source/C/TianoCompress/Makefile, BaseTools/Source/C/VfrCompile/GNUmakefile, BaseTools/Source/C/VfrCompile/Makefile, BaseTools/Source/C/VfrCompile/Pccts/Makefile, BaseTools/Source/C/VfrCompile/Pccts/antlr/makefile, BaseTools/Source/C/VfrCompile/Pccts/dlg/makefile, BaseTools/Source/C/VfrCompile/Pccts/support/genmk/makefile, BaseTools/Source/C/VfrCompile/Pccts/support/rexpr/makefile, BaseTools/Source/C/VolInfo/GNUmakefile, BaseTools/Source/C/VolInfo/Makefile, BaseTools/Source/Python/GNUmakefile, BaseTools/Source/Python/Makefile, BaseTools/Tests/GNUmakefile",
"points": 18,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "ArmPlatformPkg/Scripts/Makefile, BaseTools/GNUmakefile, BaseTools/Makefile, BaseTools/Source/C/BrotliCompress/GNUmakefile, BaseTools/Source/C/BrotliCompress/Makefile, BaseTools/Source/C/Common/GNUmakefile, BaseTools/Source/C/Common/Makefile, BaseTools/Source/C/DevicePath/GNUmakefile, BaseTools/Source/C/DevicePath/Makefile, BaseTools/Source/C/EfiRom/GNUmakefile, BaseTools/Source/C/EfiRom/Makefile, BaseTools/Source/C/GNUmakefile, BaseTools/Source/C/GenCrc32/GNUmakefile, BaseTools/Source/C/GenCrc32/Makefile, BaseTools/Source/C/GenFfs/GNUmakefile, BaseTools/Source/C/GenFfs/Makefile, BaseTools/Source/C/GenFv/GNUmakefile, BaseTools/Source/C/GenFv/Makefile, BaseTools/Source/C/GenFw/GNUmakefile, BaseTools/Source/C/GenFw/Makefile, BaseTools/Source/C/GenSec/GNUmakefile, BaseTools/Source/C/GenSec/Makefile, BaseTools/Source/C/GenStm/GNUmakefile, BaseTools/Source/C/GenStm/Makefile, BaseTools/Source/C/LzmaCompress/GNUmakefile, BaseTools/Source/C/LzmaCompress/Makefile, BaseTools/Source/C/Makefile, BaseTools/Source/C/PyEfiCompressor/Makefile, BaseTools/Source/C/TianoCompress/GNUmakefile, BaseTools/Source/C/TianoCompress/Makefile, BaseTools/Source/C/VfrCompile/GNUmakefile, BaseTools/Source/C/VfrCompile/Makefile, BaseTools/Source/C/VfrCompile/Pccts/Makefile, BaseTools/Source/C/VfrCompile/Pccts/antlr/makefile, BaseTools/Source/C/VfrCompile/Pccts/dlg/makefile, BaseTools/Source/C/VfrCompile/Pccts/support/genmk/makefile, BaseTools/Source/C/VfrCompile/Pccts/support/rexpr/makefile, BaseTools/Source/C/VolInfo/GNUmakefile, BaseTools/Source/C/VolInfo/Makefile, BaseTools/Source/Python/GNUmakefile, BaseTools/Source/Python/Makefile, BaseTools/Tests/GNUmakefile"
}
}
],
"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": "devcontainer",
"points": 10,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "devcontainer"
}
}
],
"max_points": 10
},
{
"key": "demonstrated_agent_practice",
"name": "Demonstrated agent practice",
"detail": "no agent-authored commits among the last 100",
"points": 0,
"status": "missed",
"details": [
{
"code": "no_agent_authored_commits",
"params": {
"sampled": 100
}
}
],
"max_points": 10
},
{
"key": "automated_maintenance",
"name": "Automated maintenance",
"detail": "4 of the last 100 commits are automated dependency updates",
"points": 8,
"status": "met",
"details": [
{
"code": "dependency_bot_commits",
"params": {
"count": 4,
"sampled": 100
}
}
],
"max_points": 8
},
{
"key": "openssf_scorecard_pinned_dependencies",
"name": "OpenSSF Scorecard: Pinned-Dependencies",
"detail": "dependency not pinned by hash detected -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
}
]
},
{
"key": "ai_code_legibility",
"band": "excellent",
"name": "Code legibility for models",
"note": null,
"notes": [],
"value": 98,
"inputs": {
"primary_language": "C",
"largest_source_bytes": 698119,
"source_files_sampled": 5118,
"oversized_source_files": 235
},
"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": "235/5118 source files over 60KB",
"points": 52.5,
"status": "partial",
"details": [
{
"code": "oversized_source_files",
"params": {
"kb": 60,
"sampled": 5118,
"oversized": 235
}
}
],
"max_points": 55
}
]
},
{
"key": "ai_interfaces",
"band": "at_risk",
"name": "Machine-readable interfaces",
"note": null,
"notes": [],
"value": 40,
"inputs": {
"example_dirs": [
"sample",
"samples"
],
"has_mcp_signal": false,
"api_schema_files": []
},
"components": [
{
"key": "api_schema_openapi_graphql_proto",
"name": "API schema (OpenAPI/GraphQL/proto)",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 40
},
{
"key": "mcp_server",
"name": "MCP server",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 20
},
{
"key": "runnable_examples",
"name": "Runnable examples",
"detail": "sample, samples",
"points": 40,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "sample, samples"
}
}
],
"max_points": 40
}
]
}
],
"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-22T03:44:39.119406Z",
"schema_version": "0.26.0",
"badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/m/microsoft/mu_basecore.svg",
"full_name": "microsoft/mu_basecore",
"license_state": "custom",
"license_spdx": null
}