Por qué compliance en desarrollo con IA

El uso de agentes IA en desarrollo de software introduce riesgos regulatorios específicos:

licit evalúa estos aspectos contra marcos regulatorios establecidos.


EU AI Act (Reglamento UE 2024/1689)

Alcance

El EU AI Act es el primer marco regulatorio integral para inteligencia artificial. Entró en vigor en agosto de 2024, con aplicación gradual hasta agosto de 2027.

licit evalúa los artículos relevantes para equipos de desarrollo que usan agentes IA:

Artículos evaluados

ArtículoNombreQué evalúa licit
Art. 9(1)Sistema de gestión de riesgosGuardrails, quality gates, budget limits, security scanning
Art. 10(1)Datos y gobernanza de datosPerspectiva deployer — documentar prácticas del proveedor
Art. 12(1)Record keeping — logging automáticoGit history, audit trail, provenance tracking, OTel
Art. 13(1)TransparenciaAnnex IV, changelog de configs, trazabilidad de requisitos
Art. 14(1)Supervisión humanaDry-run, human review gate, quality gates, budget limits
Art. 14(4)(a)Oversight — entender capacidadesMisma evidencia que Art. 14(1)
Art. 14(4)(d)Oversight — capacidad de intervenirDry-run + rollback
Art. 26(1)Deployer — uso conformeConfigs de agentes presentes
Art. 26(5)Deployer — monitoreoMisma evidencia que Art. 12(1)
Art. 27(1)FRIADocumento FRIA completado
Annex IVDocumentación técnicaDocumento Annex IV generado

Scoring del evaluador

Cada artículo tiene un método de evaluación dedicado con scoring numérico. El score se convierte a status con _score_to_status(score, compliant_at, partial_at):

ArtículoIndicadores (score)Compliant atPartial at
Art. 9Guardrails +1, quality gates +1, budget +1, scanning +13+1+
Art. 10Siempre PARTIAL (deployer no entrena)
Art. 12Git +1, audit trail +2, provenance +1, OTel +13+1+
Art. 13Annex IV +2, changelog +1, traceability +12+1+
Art. 14Dry-run +1, review gate +2, quality gates +1, budget +13+1+

El evaluador genera recomendaciones accionables con comandos licit concretos (ej: “Run: licit trace — to start tracking code provenance”).

FRIA — Evaluación de Impacto en Derechos Fundamentales

El FRIA (Fundamental Rights Impact Assessment) es obligatorio para sistemas de IA de alto riesgo según el Art. 27. licit genera un FRIA interactivo en 5 pasos con 16 preguntas y auto-detección de 8 campos:

  1. System Description (5 preguntas): Propósito, tecnología AI, modelos, alcance, revisión humana.
  2. Fundamental Rights Identification (4 preguntas): Datos personales, empleo, seguridad, discriminación.
  3. Impact Assessment (3 preguntas): Nivel de riesgo, impacto máximo, velocidad de detección.
  4. Mitigation Measures (5 preguntas): Guardrails, scanning, testing, audit trail, medidas adicionales.
  5. Monitoring & Review (3 preguntas): Frecuencia de revisión, responsable, proceso de incidentes.

Auto-detección: Para campos como system_purpose, guardrails, security_scanning, testing, y audit_trail, licit infiere la respuesta desde el ProjectContext y EvidenceBundle del proyecto.

Comando:

licit fria            # Cuestionario interactivo nuevo
licit fria --update   # Actualizar FRIA existente

Archivos generados:

Annex IV — Documentación Técnica

El Anexo IV define la documentación técnica requerida para sistemas de IA. licit genera esta documentación auto-poblándola desde 27 variables de template extraídas de:

6 secciones auto-generadas:

  1. General Description — Propósito, componentes AI, lenguajes, frameworks
  2. Development Process — Version control, provenance, configs de agentes
  3. Monitoring & Control — CI/CD, audit trail, changelog
  4. Risk Management — Guardrails, quality gates, budget, oversight, FRIA
  5. Testing & Validation — Test framework, security scanning
  6. Changes & Lifecycle — Mecanismos de tracking

Cada sección sin evidencia genera una recomendación accionable (ej: “Run licit trace to begin tracking code provenance”).

Comando:

licit annex-iv --organization "Mi Empresa" --product "Mi Producto"

OWASP Agentic Top 10

Alcance

El OWASP Agentic Top 10 identifica los 10 principales riesgos de seguridad en aplicaciones que usan agentes IA. licit evalúa la postura del proyecto contra cada riesgo.

Riesgos evaluados

IDRiesgoQué evalúa licit
ASI-01Excessive AgencyGuardrails, archivos protegidos, comandos bloqueados
ASI-02Uncontrolled AutonomyLímites de presupuesto, dry-run, aprobación humana
ASI-03Supply Chain VulnerabilitiesHerramientas de seguridad (Semgrep, Snyk, etc.)
ASI-04Improper Output HandlingValidación de outputs, quality gates
ASI-05Insecure CommunicationConfiguración de conectores, protección de datos
ASI-06Insufficient MonitoringAudit trail, logging, OpenTelemetry
ASI-07Identity and Access MismanagementPermisos de agentes, scope de acceso
ASI-08Inadequate SandboxingAislamiento de ejecución, rollback capability
ASI-09Prompt InjectionValidación de inputs, configuración de guardrails
ASI-10Insufficient LoggingLogs estructurados, trazabilidad de sesiones

Mapeo a evidencia

Cada riesgo OWASP se mapea a evidencia recopilable:

ASI-01 (Excessive Agency)
  ├── has_guardrails → ¿Hay guardrails configurados?
  ├── guardrail_count → ¿Cuántos controles existen?
  └── has_human_review_gate → ¿Hay revisión humana?

ASI-02 (Uncontrolled Autonomy)
  ├── has_budget_limits → ¿Hay límites de presupuesto?
  ├── has_dry_run → ¿Existe modo dry-run?
  └── has_rollback → ¿Hay capacidad de rollback?

ASI-06 (Insufficient Monitoring)
  ├── has_audit_trail → ¿Hay trail de auditoría?
  ├── audit_entry_count → ¿Cuántas entradas?
  └── has_otel → ¿Hay instrumentación OpenTelemetry?

Cómo evalúa licit el compliance

Proceso de evaluación

1. Detectar    → ProjectDetector analiza el proyecto
2. Recopilar   → EvidenceCollector reúne evidencia
3. Evaluar     → Evaluadores aplican requisitos del marco
4. Clasificar  → Cada requisito: compliant / partial / non-compliant / n/a
5. Reportar    → Reporte con evidencia, brechas y recomendaciones

Fuentes de evidencia

FuenteQué aportaEstado
Git historyProveniencia del código, contribuidores, frecuenciaFuncional (v0.2.0)
Session logsLogs de sesión de agentes IA (Claude Code)Funcional (v0.2.0)
Agent config changelogCambios en configs de agentes con severidadFuncional (v0.3.0)
Agent configsGuardrails, modelos usados, reglas de códigoFuncional (v0.1.0)
CI/CD configsHuman review gates, steps de seguridadFuncional (v0.1.0)
Architect reportsAudit trail, calidad de ejecuciónFase 7
SARIF filesHallazgos de seguridad (vulnerabilidades)Fase 7
.licit/ dataFRIA, Annex IV, changelog, provenance storeFuncional (v0.4.0 — todos los generadores operativos)

La evidencia de provenance (licit trace) alimenta directamente los artículos de transparencia (Art. 13) y trazabilidad (Art. 10) del EU AI Act. El changelog de configs (licit changelog) alimenta los artículos de transparencia (Art. 13) y obligaciones de deployers (Art. 26). Ambos alimentan los controles de monitoring (ASI-06, ASI-10) del OWASP Agentic Top 10.

Niveles de cumplimiento

EstadoSignificadoAcción requerida
compliantRequisito totalmente cumplidoNinguna
partialRequisito parcialmente cumplidoMejorar evidencia o controles
non-compliantRequisito no cumplidoImplementar controles faltantes
n/aNo aplica al proyectoNinguna
not-evaluatedAún no evaluadoEjecutar evaluación

Reportes de compliance

Formatos disponibles

FormatoUso recomendado
MarkdownRevisión humana, PRs, documentación
JSONIntegración con otras herramientas, dashboards
HTMLPresentación a stakeholders, auditorías

Estructura del reporte

# Compliance Report — Mi Proyecto
Generated: 2026-03-10

## Summary
- EU AI Act: 72% compliant (13/18 controls)
- OWASP Agentic: 60% compliant (6/10 controls)

## EU AI Act
### Article 9 — Risk Management
Status: PARTIAL
Evidence: FRIA exists but incomplete
Recommendation: Complete FRIA sections 3-5

### Article 14 — Human Oversight
Status: COMPLIANT
Evidence: GitHub Actions requires approval for deployment
...

## Gaps
| Priority | Requirement | Gap | Effort |
|---|---|---|---|
| 1 | ART-9-1 | No risk assessment | Medium |
| 2 | ASI-01 | No guardrails | Low |

CI/CD Gate

licit puede actuar como gate de compliance en pipelines de CI/CD:

# .github/workflows/compliance.yml
name: Compliance Check
on: [push, pull_request]

jobs:
  compliance:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
        with:
          fetch-depth: 0   # Necesario para análisis git

      - uses: actions/setup-python@v5
        with:
          python-version: "3.12"

      - name: Install licit
        run: pip install licit-ai-cli

      - name: Run compliance check
        run: licit verify
        # Exit 0 = pass, Exit 1 = fail, Exit 2 = warnings

Códigos de salida:

CódigoResultadoPipeline
0Todos los requisitos críticos cumplidosPass
1Algún requisito crítico no cumplidoFail
2Algún requisito parcialmente cumplidoWarning (configurable)

Marcos futuros (V1+)

licit está diseñado para soportar marcos adicionales:

MarcoEstadoDescripción
NIST AI RMFPlanificado (V1)Risk Management Framework del NIST
ISO/IEC 42001Planificado (V1)Sistema de gestión de IA
SOC 2 AIConsideradoControles SOC 2 específicos de IA
IEEE 7000ConsideradoDiseño ético de sistemas

La arquitectura de frameworks/ permite añadir nuevos marcos implementando un evaluador con la interfaz Protocol correspondiente.