Regla y política
Una implementación, límites distintos por proyecto
Una regla sabe cómo comprobar algo. Su política decide si se ejecuta, sus parámetros, gravedad y comportamiento de bloqueo. Dos proyectos usan el mismo assembly con límites de tamaño distintos, sin bifurcar el código. La lógica se prueba por separado y los requisitos pueden cambiar sin recompilar la herramienta.
{
"schemaVersion": 1,
"pipeline": "projecta",
"rules": {
"core.presubmit.large-file": {
"settings": {
"maxBytes": 5242880
}
}
},
"targets": {
"win64": {
"rules": {
"core.presubmit.large-file": {
"settings": {
"maxBytes": 2621440
}
}
}
}
}
}Sin target explícito, maxBytes vale 5.242.880 (5 MiB). Con --platform win64, pasa a 2.621.440 (2,5 MiB). La implementación C# es la misma; cambia el requisito. El fragmento ilustra la selección de parámetros sin reproducir el manifiesto de distribución.