Problemas Comunes con Codex
Un problema frecuente con Codex es la tendencia a diseñar o implementar cosas con términos definidos de manera imprecisa. En mi experiencia, esto es un poco menos común con Claude, pero con Codex fue un problema en la versión 5.5 y persiste en la 5.6. Esta es una contramedida para ese problema.
Por ejemplo, una sección de un informe de investigación tenía un encabezado llamado "Punto de Compresión". Al leer el cuerpo, el término fluctuaba entre tres significados: "cuando el historial de la conversación alcanza una cantidad establecida", "el umbral para iniciar la summarización automática" y "el momento real en que comienza la summarización". El texto era fluido y parecía una explicación técnica. Sin embargo, en el momento en que un solo término servía como condición de inicio, un valor y un evento, el sujeto de la explicación se volvió indefinido. Como resultado, los hallazgos de la investigación lamentablemente se desviaron en la dirección equivocada.
Desencadenado por este fallo, creé una habilidad llamada semantic-generation. Aunque el nombre suena como una técnica de generación de texto, lo que realmente cambié fue la definición de las palabras antes de escribir el texto.
Estructura e Impacto del Problema
Existe el problema de que el término japonés "Punto de Compresión" es inherentemente impreciso, pero cuando se le señaló esto a Codex, primero intentó solucionarlo como una falta de explicación y luego como un problema de expresión del encabezado. No se dio cuenta de inmediato de que había confundido una condición de inicio con un evento de ejecución.
En la misma sesión, ocurrió algo similar. Como la causa aún no se conocía, el plan era realizar una prueba, aislar la causa a partir de los resultados y luego elegir una contramedida. Codex resumió esto como "recopilar observaciones en una sola".
El objetivo de la recopilación no eran las observaciones en sí mismas. Eran los valores o registros obtenidos de la prueba. Además, recopilar valores no era el objetivo, sino un medio para aislar la causa.
Al resumirlo en una frase corta, desapareció la siguiente secuencia:
- La causa aún no se conoce.
- Realizar una prueba.
- Aislar la causa a partir de los resultados.
- Elegir una contramedida después del aislamiento.
"Recopilar observaciones en una sola" parece plausible. Porque parece plausible, oculta partes desorganizadas y se convierte en la premisa para el diseño posterior.
Las Listas de Corrección de Términos Originales No Pueden Detenerlo
Al considerar mejoras, se propuso registrar la correspondencia entre palabras corregidas y significados y trasladarla a la siguiente sesión.
Lo que quiero detener no es "usar nuevamente una palabra previamente incorrecta". Es colocar una palabra primero mientras el objetivo es ambiguo y proceder con el pensamiento basado en esa palabra. Incluso si haces una lista de palabras incorrectas, nacerá una palabra inventada diferente la próxima vez.
Por lo tanto, en lugar de palabras corregidas, cambié la política para crear palabras candidatas antes de crear términos originales al inicio de cada sesión.
Contramedida) Forzar la Creación de una Lista de Palabras Candidatas Antes del Diseño
Decidí que la IA creara una tabla de correspondencia para términos definidos de manera única y luego realizara el diseño después de cargar ese archivo.
La tabla de correspondencia tiene las siguientes siete columnas:
- Fuente
- Propósito
- Objeto Concreto
- Rol
- Contexto
- Palabra Candidata
- Definición Inicial
El orden de las columnas es significativo. La palabra candidata está en el extremo derecho y no se puede completar hasta que se escriban el objeto concreto y el rol.
Si la palabra candidata estuviera en el extremo izquierdo, se podría escribir la palabra "Punto de Compresión" primero y luego crear una explicación que se ajuste a esa palabra después. Eso reproduciría el orden de generación que quiero detener dentro de la tabla.
Los roles también se colocan uno por línea. Si quieres manejar una condición de inicio y un evento con la misma palabra, divides las líneas. Entonces, antes de la presión de "terminarlo en una sola palabra", el hecho de que hay dos objetos que se están manejando se vuelve visible.
Al hacer esto, la propia IA generativa puede notar cuando las palabras se vuelven ambiguas, y pude prohibir activamente el uso de palabras mientras permanecen ambiguas.
Resumen
La IA generativa no es buena para mantener un espacio en blanco como espacio en blanco. Incluso si el objetivo o propósito aún no está determinado, puede continuar el texto si se coloca una palabra plausible. Esa fluidez puede ser peligrosa en el diseño.
semantic-generation no es una habilidad para encontrar buenas palabras. Es una habilidad para hacer que la IA se detenga un momento y elija palabras apropiadas cuando intenta usar un término original.
¿Cuál es el objetivo? ¿Es una condición, un estado o un evento? ¿Con qué propósito se maneja, y qué sucede después de qué?
Solo para las líneas escritas hasta ese punto, finalmente damos un nombre al final. A primera vista, parece un rodeo, pero es más corto que reconstruir todo el diseño a partir de una sola palabra como "Punto de Compresión".
Habilidad semantic-generation
1---2name: semantic-generation3description: |4 Un procedimiento de generación donde, antes de escribir el documento objetivo (materiales de diseño, diseño a partir de requisitos, informes de investigación, planes de aislamiento de causas, planes de contramedidas, nomenclatura, resumen del orden de razonamiento), se presenta primero una tabla de correspondencia (tabla de referentes) como entregable independiente para fijar el referente y el rol antes de la palabra.5 Disparadores: Escribir materiales de diseño, crear documentos de diseño, escribir informes de investigación, escribir planes de contramedidas, nomenclatura, decidir nombres de estado/nombres de condición/nombres de tipo/nombres de método, resumir orden de razonamiento, tabla de referentes, tabla de correspondencia.6 NO DISPARAR: Citar texto original del usuario, edición mecánica simple, reutilizar nombres existentes, salida fija, charla informal, oraciones cortas que se pueden escribir solo con términos establecidos.7---89# semantic-generation — Procedimiento para fijar el objetivo antes de la palabra1011Si se coloca primero una palabra (a menudo una palabra inventada en el momento) mientras el objetivo es ambiguo, y el pensamiento procede basado en esa palabra, la discrepancia con el referente se propaga a las oraciones en japonés, las oraciones de diseño y los identificadores de código sin corregirse. Esta habilidad fuerza la secuencia de "presentar la tabla de correspondencia de forma independiente primero y escribir el cuerpo como una copia de la misma".12Los criterios para la disciplina se mantienen en la regla [[referent-before-label]].1314## Criterios de Aplicación1516Úsalo cuando se aplique cualquiera de los siguientes. Si no puedes juzgar, trátalo como aplicable.17181. Escribir materiales de diseño, diseño a partir de requisitos, informes de investigación, planes de aislamiento de causas o planes de contramedidas.192. Nomenclatura (especificaciones públicas, nombres de estado, nombres de condición, nombres de evento, nombres de tipo para valores o registros, nombres de método, nombres booleanos).203. Intentar resumir un orden de razonamiento dado por el usuario en etiquetas de trabajo cortas.2122## Flujo Normal2324### 1. Guardar la tabla de correspondencia como un entregable independiente primero (Envío en dos etapas)2526Antes de escribir un solo carácter del cuerpo, guarda la tabla de correspondencia como un archivo independiente.2728- Destino de guardado: `referent-table-<slug>.md` en el directorio de trabajo (si el entregable está en `output/`, colócalo en el mismo directorio).29- Registra el sha256 después de guardar (por ejemplo, `shasum -a 256 <ruta>`). Este registro se convierte en evidencia de que "la tabla de correspondencia se creó antes del cuerpo". Simplemente colocar la tabla al comienzo del documento completo no prueba el orden de generación.3031### 2. Formato de la tabla de correspondencia (Prohibido cambiar el orden de las columnas)3233| Fuente | Propósito | Objeto Concreto | Rol | Contexto | Palabra Candidata | Definición Inicial |3435- **La palabra candidata se fija en el extremo derecho. Mantén la columna de palabra candidata en blanco hasta que se hayan completado el objeto concreto y el rol.** Esto es para hacer que el orden de decidir la palabra primero y adjuntar el objetivo después sea imposible a través del formato.36- Elige el rol de las opciones cerradas: `Condición de Inicio / Estado / Evento / Valor / Registro / Propósito / Medio`. Si la misma palabra se refiere a múltiples roles, divide las líneas.37- En "Contexto", escribe el orden de razonamiento dado por el usuario (por ejemplo, Prueba → Aislamiento → Contramedida) usando las palabras del texto original. No mezcles con la columna de rol.38- Las tablas generalmente se limitan a 1–6 líneas. Si se excede, divide la tabla en los límites donde cambia el significado.39- Al completar, confirma que el significado es claro solo con la columna "Objeto Concreto", incluso si la columna de palabra candidata está oculta.4041### 3. Completar las palabras candidatas4243- Usa la terminología del usuario y la terminología establecida con la máxima prioridad.44- Al colocar otras palabras nuevas, escribe "X se refiere a..." en la columna "Definición Inicial". No introduzcas palabras para las que no se pueda escribir una definición; usa la descripción del objeto concreto tal cual en el cuerpo.4546### 4. Escribir el cuerpo como una copia de la tabla de correspondencia4748- Usa solo las palabras listadas en la tabla de correspondencia como el vocabulario central del cuerpo.49- Mantén la misma correspondencia en las tres capas de oraciones en japonés, elementos de diseño e identificadores de código (por ejemplo, "El volumen del historial alcanza 250K" = Condición de Inicio → Nombre de Condición / "Comienza la summarización automática" = Evento → Nombre de Evento/Nombre de Método / "Summarización automática en curso" = Estado → Nombre de Estado. Diferentes roles deben tener diferentes nombres).50- No uses etiquetas de trabajo (frases sustantivas abstractas que omiten propósito, objetivo y juicio) para marcos o encabezados. Si quieres usar una, intenta escribir el referente de esa frase en la tabla; si no puedes, escríbela en oraciones concretas.5152## Acciones Preliminares en Caso de Problemas5354- Si te das cuenta de que comenzaste a escribir el cuerpo sin presentar una tabla de correspondencia, no continúes agregando la tabla después. Descarta el cuerpo, vuelve a presentar la tabla de correspondencia de forma independiente y luego regenera el cuerpo.55- Si se señala que una línea de la tabla era incorrecta (confusión de referente o rol), no agregues una explicación; reescribe la línea relevante y luego regenera la parte correspondiente del cuerpo.56- En entornos donde no se pueda cargar esta habilidad, guarda una tabla con al menos 6 columnas (Fuente, Propósito, Objeto Concreto, Rol, Contexto, Palabra Candidata) como un archivo independiente antes de comenzar el cuerpo.5758## Observaciones5960- No incluyas entradas de prueba o respuestas esperadas para verificación en el cuerpo de esta habilidad (para mantener la independencia de la verificación. Las pruebas se gestionan en fixtures en un directorio separado).61- El objetivo no es comparar con una lista de términos incorrectos. El objetivo de comparación es la "tabla de correspondencia declarada por el propio documento".
Regla referent-before-label
1# Fijar el referente antes de la palabra23<!-- codex-runtime-summary -->4- IMPORTANTE: Para documentos objetivo (oraciones de diseño, informes de investigación, planes de contramedidas, nomenclatura, resumen del orden de razonamiento), escribe el cuerpo después de presentar de forma independiente una tabla de correspondencia. Está prohibido presentar el cuerpo sin una tabla de correspondencia. Si comienzas a escribir sin una tabla, descarta el cuerpo y comienza de nuevo desde la tabla de correspondencia.5- IMPORTANTE: No uses etiquetas de trabajo (frases que envuelven trabajo no organizado en sustantivos abstractos) para marcos o encabezados. No introduzcas palabras nuevas o inventadas a menos que puedas escribir una definición inicial; descompón el objetivo en descripciones concretas.6- IMPORTANTE: Activa la habilidad semantic-generation al comenzar un documento objetivo. Incluso si no se puede usar la habilidad, guarda una tabla de correspondencia con al menos 6 columnas (Fuente, Propósito, Objeto Concreto, Rol, Contexto, Palabra Candidata) como un entregable independiente primero.7<!-- /codex-runtime-summary -->89Si se coloca primero una palabra (a menudo una palabra inventada en el momento) mientras el objetivo es ambiguo, y el pensamiento procede basado en esa palabra, la discrepancia con el referente se propaga a las oraciones de diseño, nombres de estado, nombres de condición, nombres de método y nombres de tipo (como en los ejemplos de "Punto de Compresión" y "Recopilar observaciones en una sola" en TASK-52). Esta regla detiene este proceso de generación en sí mismo. La comparación contra una lista de términos incorrectos (caza de palabras) no es la contramedida, porque las palabras inventadas no se pueden enumerar. Los criterios para la fluctuación de palabras se mantienen en [[terminology]], y esta regla mantiene el "procedimiento antes de colocar la palabra".1011## Alcance (Documentos Objetivo)1213Aplica solo a tareas que caigan bajo cualquiera de los siguientes. Si no puedes juzgar, aplícalo.14151. Escribir materiales de diseño, diseño a partir de requisitos, informes de investigación, planes de aislamiento de causas o planes de contramedidas.162. Nomenclatura (especificaciones públicas, nombres de estado, nombres de condición, nombres de evento, nombres de tipo para valores o registros, nombres de método, nombres booleanos).173. Intentar resumir un orden de razonamiento dado por el usuario en etiquetas de trabajo cortas.1819No aplicar a citar texto original del usuario, edición mecánica simple, reutilizar nombres existentes, salida fija, charla informal u oraciones cortas que se pueden escribir solo con términos establecidos.2021## Aplicación Constante (3 Prohibiciones)2223- IMPORTANTE: En documentos objetivo, no presentes el cuerpo sin presentar de forma independiente una tabla de correspondencia (tabla de referentes). La tabla de correspondencia debe guardarse primero en un archivo separado o en un turno separado del cuerpo, y el cuerpo se escribe después de eso (simplemente colocar la tabla al comienzo del documento completo no prueba que se "hizo primero").24- IMPORTANTE: No uses etiquetas de trabajo para marcos, encabezados o conclusiones. Una etiqueta de trabajo se refiere a una frase que envuelve trabajo no organizado en sustantivos abstractos sin propósito, objetivo o juicio (por ejemplo, "Resumir observaciones"). Si quieres usar una, intenta escribir el objetivo al que se refiere esa frase en la tabla de correspondencia; si no puedes, descarta la frase y escribe en oraciones concretas.25- IMPORTANTE: Al introducir palabras nuevas distintas de la terminología del usuario o la terminología establecida, escribe una oración de definición "X se refiere a..." en la primera aparición. No introduzcas palabras para las que no se pueda escribir una oración de definición; escribe el objetivo tal cual en oraciones.2627## Flujo Normal28291. Determina si cae bajo documentos objetivo (si tienes dudas, trátalo como aplicable).302. Activa la habilidad [[semantic-generation]] y guarda la tabla de correspondencia como un entregable independiente primero.313. Escribe el cuerpo usando solo las palabras listadas en la tabla de correspondencia como el vocabulario central, manteniendo la misma correspondencia en las oraciones en japonés, elementos de diseño e identificadores de código.3233## Acciones Preliminares en Caso de Problemas3435- Si te das cuenta de que comenzaste a escribir el cuerpo sin presentar una tabla de correspondencia para un documento objetivo, no continúes agregando la tabla después. Descarta el cuerpo, vuelve a presentar la tabla de correspondencia de forma independiente y luego regenera el cuerpo.36- En entornos donde la habilidad no esté disponible, guarda una tabla de correspondencia con al menos 6 columnas (Fuente, Propósito, Objeto Concreto, Rol, Contexto, Palabra Candidata) como un archivo independiente en el directorio de trabajo antes de comenzar el cuerpo.





