> Esta traducción se ofrece por comodidad. El texto normativo es el original en inglés. # Coherencia de políticas **Especificación del Meta-Universo** **ID del documento:** MU-V2-ARCH-014 **Título:** Coherencia de políticas, precedencia y tratamiento de bloqueos **Clase de documento:** normativo **Versión:** 2.0 (borrador) **Estado:** borrador de trabajo **Referencias normativas:** MUC, [Validation](../02-architecture/Validation.md), [Change-Process](../01-constitution/Change-Process.md), [Contract](../04-core-concepts/Contract.md) **Referencias informativas:** [Conflict-Resolution](../03-federation/Conflict-Resolution.md), [AI-Agent-Guide](../07-guides/AI-Agent-Guide.md), [Traceability](../02-architecture/Traceability.md) **Copyright:** © Orkestron.AI **Licencia:** Apache-2.0 --- # 1. Propósito Cuando un meta-modelo trata las reglas normativas como derecho vinculante, se vuelven posibles dos fallos que las herramientas ordinarias no ven: 1. Dos cambios superan cada uno una fusión línea a línea y aun así dejan el conjunto de reglas **lógicamente contradictorio** (un `git merge` entiende de líneas, no de lógica). 2. En el momento de decidir, **la Regla A exige X mientras la Regla B lo prohíbe**: un bloqueo de políticas que mete a un agente estricto en un bucle infinito o en la negativa a actuar. Este documento define cómo mantener internamente coherente un cuerpo de reglas normativas: una **comprobación de coherencia de políticas previa a la fusión**, una **precedencia de reglas** explícita y un **tratamiento obligatorio de bloqueos con escalado a una persona**. Se distingue de [Conflict-Resolution](../03-federation/Conflict-Resolution.md): aquel rige las *interpretaciones divergentes entre universos soberanos*; este rige la *contradicción lógica dentro de las reglas normativas de un mismo modelo*. --- # 2. Las reglas normativas como entidades de primer orden Una **regla normativa** es un enunciado vinculante (`SHALL` / `SHALL NOT`) con identidad estable. Toda regla DEBERÁ declarar: - un identificador de regla estable; - su **alcance** (los objetos y contextos que restringe); - su **precedencia** (un peso o rango explícito, véase la Sección 4); - su procedencia y su ciclo de vida. Las reglas se versionan y se trazan como cualquier otro artefacto semántico. --- # 3. Comprobación de coherencia de políticas Antes de que un cambio en la base normativa entre en el [canon del modelo](../05-reference-architecture/Reference-Repository.md), DEBERÁ ejecutarse una **comprobación de coherencia de políticas**. Esta evalúa si el conjunto de reglas resultante es **satisfacible**, es decir, si existe algún estado que satisfaga todas las reglas a la vez. - Un cambio que vuelva insatisfacible el conjunto de reglas DEBERÁ rechazarse como **fallo constitucional (V3)** en [Validation](../02-architecture/Validation.md); las reglas contradictorias DEBERÁN reportarse por identificador. - La comprobación DEBERÁ operar al nivel de la semántica de las reglas (predicados sobre el modelo), no del texto. Una implementación PUEDE usar un solucionador lógico o un agente de razonamiento validador; el requisito es que el veredicto sea **reproducible y explicable**. - La comprobación es una compuerta del [Proceso de cambios](../01-constitution/Change-Process.md): ningún cambio normativo se fusiona hasta que la supera. Esta es la forma concreta y a corto plazo de la rama de «validación del razonamiento de IA» del futuro Marco de validación semántica (véase [Validation](../02-architecture/Validation.md)). --- # 4. Precedencia de reglas Cuando dos reglas *podrían* entrar en conflicto en algunos estados pero existe un orden de autoridad claro, la **precedencia** lo resuelve de forma determinista: - Las reglas de mayor precedencia prevalecen sobre las de menor; la resolución DEBERÁ registrarse como una decisión [trazable](../02-architecture/Traceability.md), no aplicarse en silencio. - Las reglas constitucionales ([MUC](../01-constitution/Meta-Universe-Constitution.md)) DEBERÁN tener la máxima precedencia; ninguna regla subordinada puede prevalecer sobre un artículo constitucional. - La precedencia resuelve conflictos *priorizables*. NO DEBERÁ usarse para tapar una contradicción lógica genuina que ningún orden pueda satisfacer: eso es un fallo de la Sección 3. --- # 5. Detección de bloqueos y tratamiento de excepciones Un **bloqueo de políticas** es un estado en ejecución en el que las reglas aplicables no pueden satisfacerse todas y la precedencia no las resuelve (la Regla A exige X, la Regla B de igual rango lo prohíbe). Una implementación DEBERÁ: 1. **Detectar** el bloqueo en lugar de entrar en bucle: un agente de razonamiento DEBERÁ acotar sus intentos y reconocer el bloqueo mutuo. 2. **Registrar** el bloqueo como [Evento](../04-core-concepts/Event.md) inmutable (un evento `Conflict`) nombrando las reglas que bloquean. 3. **Escalar** de inmediato a una persona (human-in-the-loop). El agente NO DEBERÁ elegir bando en silencio, inventarse una resolución ni quedarse indefinidamente parado. 4. **Detener** la acción afectada hasta que se resuelva el escalado; el resto del trabajo no afectado PUEDE continuar. La resolución (un cambio de precedencia, una enmienda de la regla o una excepción puntual) DEBERÁ superar a su vez la comprobación de coherencia de políticas antes de surtir efecto. --- # 6. Enganches de validación - `V3` (constitucional) se amplía con una comprobación de **coherencia de políticas**: el conjunto de reglas normativas DEBERÁ ser satisfacible. - Un modelo que no pueda demostrar la satisfacibilidad de las reglas que declara NO DEBERÁ reclamar conformidad V3. Véase [Validation](../02-architecture/Validation.md) para las definiciones de nivel. --- # 7. Invariantes arquitectónicos - El conjunto de reglas normativas DEBERÁ ser satisfacible; las contradicciones DEBERÁN rechazarse antes de la fusión. - Las reglas constitucionales DEBERÁN tener la máxima precedencia. - Las resoluciones por precedencia DEBERÁN registrarse, nunca ser silenciosas. - Un bloqueo de políticas DEBERÁ desencadenar detección, un Evento y escalado a una persona, nunca un bucle infinito ni una elección silenciosa. --- # Direcciones futuras - Un **vocabulario de predicados** estándar para expresar la semántica de las reglas, de modo que los solucionadores interoperen. - **Artefactos de prueba** adjuntos a una comprobación de coherencia superada, para que un consumidor pueda reverificar la satisfacibilidad sin volver a ejecutar el solucionador. - Integración con las [proyecciones de sandbox simulado](../02-architecture/Simulation-Sandbox.md) para probar un cambio de regla en busca de bloqueos antes de proponerlo. --- # Declaración final > Unas reglas que se contradicen entre sí son peores que ninguna regla: congelan justamente a los agentes que deberían actuar con ellas. La coherencia de políticas mantiene la ley satisfacible y, cuando no puede, entrega el caso difícil a una persona en lugar de dar vueltas para siempre.