Registro público
Informe de salud del softwareesquema 0.26.0 · métricas 1.13.0 · 2026-07-22 03:44 UTC

microsoft / mu_basecore

Project Mu BaseCore

C · PythonLicencia propia★ 286 estrellas⑂ 177 forksdesde sept 2018Ver en GitHub ↗

microsoft/mu_basecore tiene un índice de salud de 84 sobre 100, lo que lo sitúa en la banda Bueno. Su puntuación más alta es Vitality (95/100) y la más baja, AI Readiness (60/100). Se actualizó por última vez hoy. 13 personas concentran la mayor parte del trabajo reciente.

84
global / 100
Bueno

Índice de salud del software

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

84
Excelente85-100Ejemplar; cumple prácticamente todos los criterios evaluados
Bueno70-84Saludable; carencias menores
Moderado50-69Aceptable con carencias notables; se recomienda revisión
En riesgo30-49Debilidades significativas; su adopción exige cautela
Crítico1-29Problemas graves (proyecto abandonado, un solo mantenedor, sin higiene)
VitalidadComunidad yAdopciónSostenibilidady GobernanzaCalidad deIngenieríaSeguridadPreparaciónpara IA

Perfil de puntuación

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

Titularidad

MicrosoftOrganización
125.580 seguidores8215 repositorios públicosdesde dic 2013

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

Métricas por categoría

Vitalidad

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

95Excelente · 22% del índice global
Cómo se puntúa
36/36Recencia de push — último push hace 0 días
35.3/36Cadencia de commits — 51/52 semanas con commits
18/18Volumen de commits — 730 commits en el último año
10/10OpenSSF Scorecard: Maintained — 30 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 10
Datos de entrada utilizados
commits_last_year730
human_commit_share0,88
days_since_last_push0
active_weeks_last_year51
Cómo se puntúa
27/27Publica versiones — 100 versiones publicadas
36/36Recencia de las versiones — última versión hace 0 días
27/27Cadencia de publicación — una versión cada ~3,6 días
0/10OpenSSF Scorecard: Signed-Releases — Project has not signed or included provenance with any releases.
Datos de entrada utilizados
releases_count100
latest_release_tagv2025110002.0.12
releases_from_tagsno
days_since_latest_release0
mean_days_between_releases3,6

Comunidad y Adopción

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

75Bueno · 18% del índice global
Cómo se puntúa
39.8/60Estrellas — 286 estrellas
18.7/25Forks — 177 forks
7/15Observadores — 19 observadores
Datos de entrada utilizados
forks177
stars286
watchers19
growth_stateorganic
growth_factor_pct100
Cómo se puntúa
22.5/22.5README
16.9/22.5Licencia — archivo de licencia presente, no es una licencia reconocida
18/18Guía CONTRIBUTING
13.5/13.5Código de conducta
0/7.2Plantilla de issues
6.3/6.3Plantilla de PR
Datos de entrada utilizados
has_readme
has_license
has_contributing
has_issue_templateno
has_code_of_conduct
has_pull_request_template

Sostenibilidad y Gobernanza

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

90Excelente · 24% del índice global
Cómo se puntúa
54/54Factor bus — la mitad de los commits recae en 13 contribuyente(s)
21/22.5Distribución de commits — el principal contribuyente firma el 7% de los commits
13.5/13.5Amplitud de contribuyentes — 98 contribuyentes
10/10OpenSSF Scorecard: Contributors — project has 18 contributing companies or organizations
Datos de entrada utilizados
bus_factor13
contributors_sampled98
top_contributor_share0,067
Cómo se puntúa
41.8/46.8Resolución de issues — 89% de issues cerradas
32.1/38.3Aceptación de PR — 1434/1711 PR decididos fusionados
15/15OpenSSF Scorecard: Code-Review — all changesets reviewed
Datos de entrada utilizados
merged_prs1434
open_issues14
closed_issues118
issue_closed_ratio0,894
closed_unmerged_prs277
Cómo se puntúa
30/30Respaldo de la propiedad — propiedad de una organización
0/20Dominio verificado
25/25Alcance del propietario — 125.580 seguidores de microsoft
25/25Trayectoria — 8215 repos públicos, cuenta de ~12 años
Datos de entrada utilizados
followers125.580
owner_typeOrganization
is_verified
owner_loginmicrosoft
public_repos8215
account_age_days4606

Calidad de Ingeniería

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

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

Documentación

90Excelente
Cómo se puntúa
30/30README
25/25Directorio de documentación
15/15Sitio de documentación / página del proyecto — https://microsoft.github.io/mu/
10/10Descripción del repositorio
10/10Topics — 4 topics
0/10Wiki
Datos de entrada utilizados
topicsfirmware, uefi, projectmu, uefi-development
has_wikino
homepagehttps://microsoft.github.io/mu/
has_readme
has_docs_dir
has_description

Seguridad

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

74Bueno · 16% del índice global
Cómo se puntúa
5.2/7.5Binary-Artifacts — binaries present in source code
6/7.5Branch-Protection — branch protection is not maximal on development and all release branches
2.5/2.5CI-Tests — 10 out of 10 merged PRs checked by a CI test -- score normalized to 10
0/2.5CII-Best-Practices — no effort to earn an OpenSSF best practices badge detected
7.5/7.5Code-Review — all changesets reviewed
2.5/2.5Contributors — project has 18 contributing companies or organizations
10/10Dangerous-Workflow — no dangerous workflow patterns detected
7.5/7.5Dependency-Update-Tool — update tool detected
0/5Fuzzing — project is not fuzzed
2.2/2.5Licencia — license file detected
7.5/7.5Maintained — 30 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 10
0/5Packaging — sin datos
0/5Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
5/5SAST — SAST tool is run on all commits
5/5Security-Policy — security policy file detected
0/7.5Signed-Releases — Project has not signed or included provenance with any releases.
0/7.5Token-Permissions — detected GitHub workflow tokens with excessive permissions
7.5/7.5Vulnerabilities — 0 existing vulnerabilities detected
Datos de entrada utilizados
sourceopenssf_scorecard
checks_evaluated17
scorecard_versionv5.5.0
checks_inconclusive1
scorecard_aggregate6,8
Excluidos de la puntuación (sin datos o no aplicable): packaging. Los pesos restantes se han renormalizado.
Cómo se puntúa
35/35Dependencias directas libres de avisos conocidos — ninguna dependencia directa tiene un aviso conocido
0/25Dependencias indirectas libres de avisos conocidos — el conjunto transitivo no es separable de las dependencias de desarrollo y prueba en este alcance
0/40Sin avisos pendientes — ningún aviso tiene fecha de publicación
Datos de entrada utilizados
sourceosv
advisories0
affected_packages0
assessed_packages5
unassessed_packages4
affected_by_severitynone
direct_affected_packages0
Excluidos de la puntuación (sin datos o no aplicable): Dependencias indirectas libres de avisos conocidos, Sin avisos pendientes. Los pesos restantes se han renormalizado. Se cotejaron 5 dependencias resueltas con OSV. 4 no pudieron evaluarse: sin versión resuelta, ecosistema no admitido o fuera de la lista de paquetes informada. Este repositorio no publica ningún paquete que el índice resuelva, por lo que se evaluó en su lugar el grafo de dependencias del repositorio. Ese grafo mezcla fijaciones de desarrollo y prueba con las dependencias distribuidas, de modo que solo se puntúan las dependencias declaradas en tiempo de ejecución; los hallazgos transitivos se informan como contexto y quedan excluidos de la puntuación. No se analiza la alcanzabilidad.

Preparación para IA

¿Hasta qué punto está el repositorio preparado para desarrollarse y mantenerse con agentes de codificación de IA? Es una insignia independiente y experimental — peso 0,0, de modo que se presenta por separado y no afecta a la puntuación de salud global.

60Moderado · 0% del índice global
Cómo se puntúa
0/45Instrucciones para agentes — sin CLAUDE.md / AGENTS.md / reglas de editor
0/15Documentación legible por máquinas (llms.txt)
40/40Historial de commits legible — 84 de 88 commits humanos declaran su intención (asunto estructurado o cuerpo explicativo)
Datos de entrada utilizados
has_llms_txtno
legible_history_share0,955
agent_instruction_files
agent_instruction_max_bytes
Cómo se puntúa
18/18Arranque con un solo comando — 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
22/22Pruebas automatizadas
0/11Configuración de lint / formato
11/11Verificación estática de tipos — C (tipado estático)
10/10Entorno reproducible — devcontainer
0/10Práctica demostrada con agentes — ningún commit con autoría de agente entre los últimos 100
8/8Mantenimiento automatizado — 4 de los últimos 100 commits son actualizaciones automáticas de dependencias
0/10OpenSSF Scorecard: Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
Datos de entrada utilizados
has_nixno
has_tests
lockfiles
has_dockerfileno
typed_language
bootstrap_filesArmPlatformPkg/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
has_linter_configno
typecheck_configs
agent_commit_share0
toolchain_manifests
dependency_bot_commit_share0,04
Cómo se puntúa
45/45Código verificable por tipos — C (tipado estático)
52.5/55Tamaños de archivo manejables — 235/5118 archivos fuente de más de 60 KB
Datos de entrada utilizados
primary_languageC
largest_source_bytes698.119
source_files_sampled5118
oversized_source_files235
Cómo se puntúa
0/40Esquema de API (OpenAPI/GraphQL/proto)
0/20Servidor MCP
40/40Ejemplos ejecutables — sample, samples
Datos de entrada utilizados
example_dirssample, samples
has_mcp_signalno
api_schema_files

Datos clave

286estrellas de GitHub
98contribuidores
730commits en los últimos 12 meses
0días desde el último push
100versiones publicadas
13factor bus
14issues abiertas
ecosistemas de paquetes

Más detalle

Historial de estrellas y forks 286 ★ / 177 ⇿
286Estrellas
177Forks
95Versiones

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

050100150200250300286169552018-092022-082026-07
Mayor 9Menor 2Parche 60

Cada punto abarca 8 días.

OpenSSF Scorecard 6.8 / 10
6.8agregado

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

7Binary-Artifactsbinaries present in source code
8Branch-Protectionbranch protection is not maximal on development and all release branches
10CI-Tests10 out of 10 merged PRs checked by a CI test -- score normalized to 10
0CII-Best-Practicesno effort to earn an OpenSSF best practices badge detected
10Code-Reviewall changesets reviewed
10Contributorsproject has 18 contributing companies or organizations
10Dangerous-Workflowno dangerous workflow patterns detected
10Dependency-Update-Toolupdate tool detected
0Fuzzingproject is not fuzzed
9Licenselicense file detected
10Maintained30 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 10
n/dPackagingpackaging workflow not detected
0Pinned-Dependenciesdependency not pinned by hash detected -- score normalized to 0
10SASTSAST tool is run on all commits
10Security-Policysecurity policy file detected
0Signed-ReleasesProject has not signed or included provenance with any releases.
0Token-Permissionsdetected GitHub workflow tokens with excessive permissions
10Vulnerabilities0 existing vulnerabilities detected
Todas las dependencias 9

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

RegistroPaqueteVersiónRelación
PyPIantlr4-python3-runtime4.13.2indirecta
PyPIedk2-pytool-extensionsindirecta
PyPIedk2-pytool-extensions0.12.*indirecta
PyPIedk2-pytool-libraryindirecta
PyPIedk2-pytool-library0.10.*indirecta
PyPIlcov-cobertura2.1.1indirecta
PyPIpygount3.2.0indirecta
PyPIregex2026.7.10indirecta
PyPItoml0.10.2indirecta
Avisos de dependencias 0

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

Ningún aviso conocido afecta a las dependencias evaluadas.

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

Informe JSON sin procesar legible por máquina
{
  "data": {
    "repo": {
      "topics": [
        "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
}

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

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

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