Skip to main content

Hard Compiler & Linter Gates

PARA AGENTE IAChatGPTClaude

La práctica de revertir o bloquear inmediatamente los cambios del agente de IA si el compilador (tsc, rustc) o un linter rápido (Biome, Ruff) devuelven un código de salida no nulo.

1. Visión general del concepto y problema sistémico

Los modelos de IA tienden a escribir código que visualmente parece impecable, pero falla al intentar compilarse. Si un desarrollador acepta un diff sin una verificación automática estricta:

  • Se acumulan desajustes de tipos (Type Mismatches) en el proyecto.
  • Se importan módulos que fueron eliminados hace tres meses.
  • Se rompen acuerdos sobre la limpieza del código (Dead Code, variables no utilizadas, reglas de formato contradictorias).

Deterministic Linter Gates transforman al linter y al compilador en un censor implacable. No se permite que el agente deje su código en el repositorio hasta que el exit_code == 0 sea confirmado por el sistema de verificación.

2. Taxonomía arquitectónica y modelo mental

┌─────────────────────────────────────────────────────────────┐
│                 DETERMINISTIC GATE PIPELINE                 │
├─────────────────────────────────────────────────────────────┤
│ AGENT PROPOSES PATCH                                        │
│   • Writes code directly or via unified diff                │
├─────────────────────────────────────────────────────────────┤
│                          │                                  │
│                          ▼ TRIGGER HARNESS                  │
│   1. Format & Lint: `biome check --write`                   │
│   2. Strict Types: `tsc --noEmit --strict`                  │
│   3. Security Audit: `pnpm audit --audit-level=high`        │
├─────────────────────────────────────────────────────────────┤
│                          │                                  │
│                 ┌────────┴────────┐                         │
│                 ▼                 ▼                         │
│           [ EXIT CODE 0 ]   [ EXIT CODE != 0 ]              │
│                 │                 │                         │
│                 ▼                 ▼                         │
│          COMMIT & PROCEED   AUTOMATIC GIT ROLLBACK          │
│                             & FEED ERROR BACK TO AGENT      │
└─────────────────────────────────────────────────────────────┘

3. Pipeline técnico y mecánica interna

01. Prohibición de any y supresión de errores

En la configuración de Biome / ESLint se activa la regla estricta:

{
  "rules": {
    "suspicious": { "noExplicitAny": "error" },
    "correctness": { "noUnusedVariables": "error" }
  }
}

Si el agente intenta usar any para eludir rápidamente un error de tipado, el gate rechaza inmediatamente el cambio con un requerimiento claro: "Especifica un discriminated union en lugar de any".

02. Protección contra rutas de importación rotas

El gate ejecuta una verificación de resolución de módulos. Si el modelo alucina y llama a import { helper } from '@/lib/helpers', que no existe en el sistema de archivos, el compilador lo detecta en 40 milisegundos, evitando que el código llegue al commit.

4. Escenarios prácticos de ingeniería en producción

01. Prohibición de any y supresión de errores

En la configuración de Biome / ESLint se activa la regla estricta:

{
  "rules": {
    "suspicious": { "noExplicitAny": "error" },
    "correctness": { "noUnusedVariables": "error" }
  }
}

Si el agente intenta usar any para eludir rápidamente un error de tipado, el gate rechaza inmediatamente el cambio con un requerimiento claro: "Especifica un discriminated union en lugar de any".

02. Protección contra rutas de importación rotas

El gate ejecuta una verificación de resolución de módulos. Si el modelo alucina y llama a import { helper } from '@/lib/helpers', que no existe en el sistema de archivos, el compilador lo detecta en 40 milisegundos, evitando que el código llegue al commit.

5. Errores comunes, trampas y seguridad

  • Bucle de retroalimentación lento (Slow Feedback Loop): Si la verificación toma 45 segundos, el agente trabajará extremadamente lento. Ejecuta la verificación solo en archivos modificados (tsc --build o staged-files check) en lugar de recompilar todo el monorepo.
  • Ciclo de auto-sabotaje: Si el linter exige un formato y el prompt del sistema del agente instruye a escribir de otra manera, el agente y el linter lucharán eternamente. Las configuraciones de formato deben tomarse exclusivamente de los archivos de configuración del proyecto (biome.json, .prettierrc).
/ Preguntas frecuentesSchema.org FAQPage

FAQ: Hard Compiler & Linter Gates

Las advertencias menores en el código del agente son síntomas de alucinaciones ocultas. Si se pasa por alto un `any` 'insignificante' o una importación no utilizada, el siguiente agente lo tomará como norma de estilo del proyecto, y en un mes la base de código se convertirá en espagueti.
/ Enlaces internos
Todos los términos

Recursos relacionados del ecosistema

Guías prácticas, terminología clave y habilidades de agentes

Concepto del glosario

Linters y Formateadores para IA (Linters & Formatters)

Herramientas de análisis estático de código (ESLint, Prettier, Biome, Ruff) integradas en el proceso de generación de IA. Verifican automáticamente el código generado para cumplir con las reglas de sintaxis, detectan importaciones inexistentes, paréntesis olvidados y unifican el estilo de código antes de la ejecución del programa.

Guía práctica

Jev y System One AI: guía práctica completa del modelo de decisiones de TypeSafe

Análisis ingenieril profundo del modelo insignia Jev: arquitectura System One frente a LLM, primitivas Choice/Score/Noul, paralelismo de consultas, matemática de la confianza, casos de vídeo, código y revisión de alternativas open-weight locales (Laya, GLiNER2.5, CLM-8B).

Guía práctica

Guía Me Encanta Antigravity

Esta guía está dedicada a todos los desarrolladores que utilizan el ecosistema de Google AI, Antigravity IDE/CLI y los modelos Gemini.

Concepto del glosario

Verification Discipline (Disciplina de Verificación del Código Generado)

Principio ingenieril fundamental que establece que cualquier resultado de generación de inteligencia artificial se considera una hipótesis no verificada que requiere confirmación empírica obligatoria antes de su aceptación.

Noticia

Claude Code reduce un 99% el coste de actualizar el estado de los subagentes en segundo plano

En la versión CLI de Claude Code, Haiku 5.5 ahora actualiza el estado de los subagentes en segundo plano a partir de notas breves, lo que reduce el consumo de límites.

Noticia

OpenCode afirma obtener 30 veces más uso de DeepSeek por el mismo precio

El cofundador de OpenCode, Dax, dijo que el equipo encontró una forma de mejorar significativamente la eficiencia de uso de DeepSeek: ahora $10 rinden lo que antes costaba $300.