⚙️
Gobernanza de Prompts — Lexia AI
Sistema de registro versionado · Pipeline de evaluación · Flujo de despliegue con gates
Sistema activo · 6 prompts gestionados
🔴
Incidente post-mortem: clasificador-riesgo v1.3.0 — 3 jun 2026
Durante 48 horas, el prompt de clasificación de riesgo de cláusulas contrató clasificó erróneamente casos de "riesgo alto" como "moderado". 3 clientes afectados reportaron que sus revisiones de contratos omitían alertas críticas. Causa raíz: cambio de prompt sin golden dataset ni eval pre-deploy. Esta arquitectura de gobernanza habría bloqueado el despliegue.
48h de impacto 3 clientes afectados Sin rollback disponible Detección: usuarios (no monitoreo)
Prompts en producción
6
Sistema legacy: hardcodeados en prompts.py
Pass rate global evals
94,2%
▲ +8,1pp vs. antes del registro
Casos en golden datasets
340
Cubiertos: clasificador 120 · revisor 85 · otros 135
Tiempo medio iter. prompts
2,3h
▼ −72% (antes: 8,1h + deploy manual)
📚 Registro de Prompts
Fuente única de verdad para todos los prompts en producción. Versionado semántico + trazabilidad de propietario y evaluación.
Prompt ID Versión activa Entorno Eval score Modelo Propietario Últ. promoción Estado
clasificador-riesgo
Clasifica cláusulas: riesgo alto / moderado / bajo
v1.4.0 Producción
97%
claude-sonnet-4-5 carmen@lexia.io 10 jun 2026 PRIORITARIO
revisor-contratos
Revisión completa de contratos, detecta gaps
v2.1.0 Producción
93%
claude-sonnet-4-5 pilar@lexia.io 8 jun 2026
extractor-clausulas
Extrae cláusulas clave con metadatos estructurados
v1.2.1 Staging
88%
claude-haiku-3-5 luis@lexia.io En revisión ⚠ Gate pendiente
generador-respuestas
Genera borrador de respuesta a contrapartes
v1.5.0 Producción
91%
claude-sonnet-4-5 carmen@lexia.io 5 jun 2026
resumen-ejecutivo
Genera resumen 1-pág para socio del despacho
v1.1.0 Producción
95%
claude-sonnet-4-5 pilar@lexia.io 1 jun 2026
chatbot-consultas
Responde consultas legales del cliente en portal
v3.0.1 Dev
82%
claude-sonnet-4-5 luis@lexia.io En desarrollo WIP

🔬 Pipeline de Evaluación — clasificador-riesgo v1.4.0
Ejecución automática en CI/CD. Gate de calidad: 95% pass rate en exact-match + 0.90 score LLM-as-judge. Resultado: APROBADO
Estado del pipeline CI
✓ PASSED
Branch
Lint
Eval Auto
Compare
PR Review
Staging
Producción
Monitor 48h
✓ Gate de calidad superado
Pass rate: 97,5% (umbral: 95%) · LLM-judge: 0,93 (umbral: 0.90) · Δ score vs. prod: +5,1pp
📊Resultados eval — 120 casos
3 fallos de 120
Cláusula penalización >5% sin notificación previa
Exact Match
100%
PASS
Jurisdicción extranjera sin cláusula arbitraje
Exact Match
100%
PASS
Renovación automática con preaviso 30 días
LLM-Judge
4,6/5
PASS
Exclusividad geográfica implícita
LLM-Judge
3,2/5
FAIL
Output JSON con campos risk_level, confidence, rationale
Schema
100%
PASS
Indemnización proporcional al periodo facturado
Contains
98%
PASS
⚠ 3 fallos: Todos en categoría "exclusividad implícita" — edge case a añadir al golden dataset en próxima revisión trimestral.

🔍 Diff del Prompt — v1.3.0 (incidente) → v1.4.0 (fix)
Comparación lado a lado del cambio que resolvió el incidente. El diff muestra exactamente qué instrucción faltaba.
📛 v1.3.0 — RETIRADO (causó incidente)
✅ v1.4.0 — PRODUCCIÓN ACTUAL
Eres un experto en derecho contractual español.
Analiza la siguiente cláusula y clasifícala.
Categorías de riesgo:
- alto: consecuencias graves para el cliente
- moderado: requiere atención pero negociable
- bajo: cláusula estándar sin impacto material
Responde SOLO con JSON:
{"risk_level": "...", "confidence": 0.0-1.0,
"rationale": "..."}
Cláusula a analizar:
{{clausula}}
Eres un experto en derecho contractual español.
Analiza la siguiente cláusula y clasifícala.
Categorías de riesgo:
- alto: consecuencias graves o irreparables para el
cliente. Incluye: penalizaciones desproporcionadas,
exclusividades tácitas, jurisdicciones desfavorables,
responsabilidad ilimitada. En caso de duda, clasifica
como ALTO, no como moderado.
- moderado: requiere atención pero negociable
- bajo: cláusula estándar sin impacto material
Responde SOLO con JSON:
{"risk_level": "...", "confidence": 0.0-1.0,
"rationale": "..."}
Cláusula a analizar:
{{clausula}}
v1.3.0 — Diagnóstico
La definición ambigua de "alto" permitía al modelo clasificar como "moderado" casos graves cuando tenía incertidumbre. Sin regla de desempate explícita, el modelo optó por la categoría conservadora.
v1.4.0 — Fix aplicado
Se añadió enumeración explícita de subtipos de "alto" y regla de desempate: "en caso de duda, clasifica como ALTO". El golden dataset pasó de 37 fallos a 3 en la categoría de riesgo alto.

🔀 A/B Test — generador-respuestas v1.5.0 vs v1.4.0
Test en producción: 2.400 generaciones, 1.200 por variante. Asignación estable por user_id hash. Duración: 10 días (completado).
📈Resultados del test
p=0.012 · Significativo
▌ Variante A — v1.4.0 (control)
Aprobación abogados
71%
Tiempo edición media
14,3 min
Coste / generación
$0,018
▌ Variante B — v1.5.0 (challenger)
Aprobación abogados
84%
Tiempo edición media
9,7 min
Coste / generación
$0,024
✓ GANADORA · Promover a producción
🔄Historial de versiones — clasificador-riesgo
Rollback disponible
v1.4.0 10 jun 2026
Fix: regla de desempate alto/moderado + 45 nuevos golden cases
✓ Producción · Eval: 97%
v1.3.0 3 jun 2026 — INCIDENTE
Redefinición de categorías sin actualizar golden dataset
✗ Retirado · Eval habría fallado: 69%
v1.2.0 18 may 2026
Añadido soporte contratos internacionales (inglés/francés)
Archivada · Eval: 91%
v1.1.0 2 may 2026
Prompt inicial de producción (sistema legacy)
Archivada · Sin eval
# Rollback en 1 comando:
python registry.py rollback clasificador-riesgo

🏅 Golden Dataset — clasificador-riesgo (muestra)
120 casos cubiertos. Revisados y aprobados por Pilar (abogada). Actualización trimestral con casos de producción fallidos.
#GD-001 Riesgo alto Tipo: penalización
Input (cláusula):
"El proveedor facturará el 150% del valor del contrato restante en caso de rescisión anticipada por cualquier causa, sin posibilidad de negociación."
Expected: risk_level: "alto"
Rationale requerido:
Penalización desproporcionada (150%) + sin excepciones + clausula potencialmente nula por abusiva.
#GD-034 Moderado Tipo: jurisdicción
Input (cláusula):
"Las partes se someten a los Juzgados y Tribunales de Madrid, renunciando a cualquier otro fuero que pudiera corresponderles."
Expected: risk_level: "moderado"
Rationale requerido:
Cláusula de fuero estándar. Riesgo solo si cliente fuera de Madrid. Negociable en fase contractual.
#GD-067 Riesgo alto Tipo: exclusividad implícita
Input (cláusula):
"El cliente se compromete a utilizar los servicios del proveedor como canal preferente para todas las actividades descritas en el Anexo A durante la vigencia del contrato."
Expected: risk_level: "alto"
Rationale requerido:
"Canal preferente" puede interpretarse como exclusividad de facto. Restricción competitiva con impacto material.
#GD-098 Bajo Tipo: notificaciones
Input (cláusula):
"Las notificaciones entre las partes se realizarán por correo electrónico a las direcciones indicadas en el encabezamiento, con confirmación de recepción."
Expected: risk_level: "bajo"
Rationale requerido:
Cláusula procedimental estándar. Sin impacto en derechos ni obligaciones económicas.

⚙️ GitHub Actions — CI/CD de prompts
Pipeline automático en cada PR que modifique archivos en prompts/
name: "Prompt Governance CI" on: pull_request: paths: - "prompts/**" jobs: eval-gate: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Run eval pipeline run: | python eval_runner.py \ --prompt ${{ env.CHANGED_PROMPT }} \ --dataset golden_datasets/ \ --threshold-pass 0.95 \ --threshold-judge 0.90 \ --output eval_results.json - name: Compare vs. production run: | python compare_scores.py \ --new eval_results.json \ --prod registry.yaml \ --fail-on-regression 0.02 - name: Post results to PR uses: actions/github-script@v7 # Comenta el PR con tabla de resultados eval - name: Block if gate fails if: steps.eval.outputs.passed != 'true' run: exit 1
📋 Política de Gobernanza
Reglas del equipo Lexia AI para gestión de prompts
🔴 Obligatorio (bloquea merge)
R
Eval automática en CI superando 95% (clasificación) o 90% LLM-judge (generación)
R
Golden dataset con ≥20 casos antes de promover a staging cualquier prompt nuevo
R
PR review por Pilar (abogada) para cambios en clasificador-riesgo y revisor-contratos
R
Versión semántica en registry.yaml actualizada antes de cada deploy
🔵 Recomendado
Añadir al golden dataset los casos que fallaron en producción (revisión semanal)
A/B test en producción para cambios que afecten >10% de las respuestas
Monitoreo 48h post-deploy con métricas de satisfacción de usuario
⚪ Opcional
?
Eval semántica con embeddings para prompts de resumen ejecutivo
?
Revisión trimestral completa del golden dataset vs. distribución de producción
Generado por CULTIVA IA — Skill: Gobernanza de Prompts en Producción v1.0.0 · Cliente: Lexia AI · 12 jun 2026
Modo 1: Registro ✓ Modo 2: Eval Pipeline ✓ Modo 3: Gobernanza ✓