Skip to main content

Restricciones Negativas y Prompts de Anti-Patrón

Metodología para formular prohibiciones y excluir explícitamente patrones de ingeniería no deseados (Anti-Goals) en instrucciones sistémicas para prevenir código redundante y de mala calidad (AI Slop).

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

Los modelos de lenguaje han sido entrenados en trillones de líneas de código diverso de internet. Como resultado, tienden por defecto a utilizar el llamado "estilo más promedio" (The Mediocre Average):

  • El modelo ve una operación matemática trivial y automáticamente añade import _ from 'lodash' al archivo, inflando el bundle.
  • El modelo encuentra un tipo complejo de TypeScript y coloca // @ts-ignore o as any para completar más rápido la generación.
  • El modelo genera comentarios obsoletos y redundantes como // Esta función suma dos números.

Negative Constraints (Restricciones Negativas) son un filtro ingenieril que cierra el acceso del modelo a hábitos perjudiciales y lo obliga a moverse exclusivamente por un estrecho corredor de arquitectura limpia.

2. Taxonomía arquitectónica y modelo mental

┌─────────────────────────────────────────────────────────────┐
│                 MATRIZ DE RESTRICCIONES NEGATIVAS          │
├─────────────────────────────────────────────────────────────┤
│ 1. HIGIENE DE DEPENDENCIAS:                                 │
│    • NEVER run `npm install <package>` without asking.      │
│    • DO NOT import deprecated libraries (Axios, Lodash).    │
│    • Use native browser `fetch` and ES6 methods ONLY.       │
├─────────────────────────────────────────────────────────────┤
│ 2. INVARIANTES DE CALIDAD DE CÓDIGO:                        │
│    • BANNED: `any`, `unknown` without type guards.          │
│    • BANNED: `console.log` in production-facing code.       │
│    • BANNED: Commenting obvious self-explanatory lines.     │
├─────────────────────────────────────────────────────────────┤
│ 3. REGLAS DEL SISTEMA DE DISEÑO / UI:                       │
│    • NEVER invent custom HEX colors (#ff4422).              │
│    • USE predefined Tailwind semantic tokens ONLY.          │
│    • NEVER hardcode strings; use i18n translation keys.     │
└─────────────────────────────────────────────────────────────┘

3. Pipeline técnico y mecánica interna

01. Protección contra marcadores perezosos (Anti-Placeholder Rule)

En las reglas se establece un castigo severo:

CRITICAL INSTRUCTION:
Do NOT output placeholders like `// ...existing code...` or `/* rest of implementation */`.
Always provide the FULL drop-in replacement. Truncated outputs are considered system failure.

Esto elimina al 100% la costumbre de los modelos de ser perezosos en archivos grandes.

02. Prohibición de crear nuevos archivos sin aprobación

Los agentes a menudo tienden a "multiplicar entidades": crear 5 pequeños archivos utilitarios para una línea de código. La regla: "DO NOT create new utility files unless explicitly specified in the RFC" mantiene la estructura de carpetas compacta.

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

  • Negación ciega sin alternativa: Si simplemente se escribe "No uses React Router", pero no se menciona que el proyecto funciona con Next.js App Router, el modelo se confundirá y comenzará a inventar manejadores de navegación. Siempre indique qué hacer en lugar de lo prohibido.
  • Inflación de la lista de prohibiciones: Si en el prompt sistémico hay 200 reglas "NO", el modelo comenzará a experimentar parálisis de acción (Refusal Loop), negándose a responder incluso a prompts seguros.

5. Errores comunes, trampas y seguridad

El prompting negativo es una herramienta para establecer líneas rojas claras. La disciplina de prohibiciones explícitas elimina el 80% de los casos de generación de basura sintética (AI Slop), manteniendo una alta cultura de la base de código del proyecto.

/ Preguntas frecuentesSchema.org FAQPage

FAQ: Restricciones Negativas y Prompts de Anti-Patrón

Las formulaciones positivas son demasiado vagas y subjetivas; el modelo tiene millones de representaciones de lo que es 'buen código'. Las restricciones negativas reducen drásticamente el espacio de elección de tokens, eliminando el 90% de las tentaciones típicas del modelo (por ejemplo, instalar 15 paquetes npm innecesarios).
/ Enlaces internos
Todos los términos