chimera-run-the-projects-own-gate-command
Ejecuta literalmente el comando de verificación del proyecto — mismo alcance, mismos flags. La variante casi idéntica que improvisas miente en ambas direcciones.
Conferida por quien revisó y leyó la tarjeta, no reclamada por el propio archivo. Una tarjeta que el agente destila durante una ejecución que consumió contenido no confiable nace contaminada y queda retenida para revisión antes de ser recuperada.
Cuándo viene a la mente
- a punto de correr lint o chequeo de tipos
- verificando antes de un commit o PR
- CI falló pero en local pasaba
- agregando un argumento de alcance o un flag de estrictez
- reportando la compuerta en verde
Evita y Comprueba es donde suele estar el valor. Haz es la sección que todo el mundo escribe.
El cuerpo de la tarjeta de arriba es una traducción. El original en inglés es lo que importa la CLI, lo que lee el agente en ejecución y lo que atestigua el hash de abajo.
Disparador
Estás a punto de ejecutar la compuerta de calidad del proyecto — lint, verificación de tipos,
pruebas — y de reportar el resultado como evidencia de que un cambio es seguro. La tentación es
estrecharla («solo toqué chimera/») o apretarla («--strict seguro que es mejor»).
No aplica a la exploración. Ejecutar pytest tests/test_governed_surfaces.py -x mientras iteras
sobre un archivo es lo correcto; la regla trata de a qué puedes llamar la compuerta. Una ejecución
estrechada es una ayuda de depuración, nunca la verificación.
Haz
- Encuentra dónde está escrito el comando, y nombra UNA fuente como canónica. En Chimera ese es el
target
checkdelMakefile—make check— porque un target es ejecutable y una línea en prosa es una copia de uno. Las tres comprobaciones que ejecuta sonruff check .,mypy chimeraypytest -q. - Ejecuta la forma canónica byte por byte. Sin argumento de ruta añadido, sin flag añadido, sin
runner sustituido. Ten en cuenta que una copia en prosa puede diferir de maneras que parecen
cosméticas y no lo son:
Makefile:21lo envuelve comouv run --no-sync,CONTRIBUTING.md:105comouv run --extra dev --extra desktop. La misma herramienta, entornos distintos — que es exactamente por qué una de las dos tiene que ser la fuente. - Si dos fuentes discrepan, trata el workflow de CI como autoritativo, ejecuta ese, y corrige el
documento desactualizado en el mismo PR —
CONTRIBUTING.mdcargó una líneamypy --strictequivocada durante un tiempo, y una instrucción desactualizada se propaga a todo el que la lea. - Si el comando canónico no puede ejecutarse en tu entorno, di que la compuerta no se ejecutó. En
Windows el
.venvlocal está roto (litellm quiere Rust/MSVC), así que la compuerta corre en WSL — mover el shell está permitido, editar el comando no. - Reporta el comando y su salida literalmente, no un resumen de cómo fue.
Evita
Dos casi-aciertos, ambos reales, ambos en una misma sesión, y fíjate en que fallan en direcciones opuestas:
mypy --strict chimera # WRONG — lies toward failure
mypy chimera # right
El flag explícito anula el propio warn_unused_ignores = false del proyecto en pyproject.toml y
reporta unos quince errores unused-ignore en archivos que nadie tocó. Eso casi se convirtió en un
reporte de bug presentado contra código limpio.
ruff check chimera tests # WRONG — lies toward success
ruff check . # right
El alcance estrechado no reporta un B023 (un closure capturando una variable de bucle) que
ruff check . sí reporta, porque el alcance cambia qué archivos — y por tanto qué ajustes de reglas
por directorio — entran en juego. CI falló en un PR cuya «compuerta» local estaba en verde.
El mecanismo compartido: el flag decide qué configuración gana, y el alcance decide qué reglas se disparan. Ninguna de las dos es una diferencia cosmética, y ambas variantes se parecen lo bastante al comando real como para que la salida se lea como autoritativa.
Comprueba
Señala el archivo y la línea donde está escrito tu comando. Makefile:21, CONTRIBUTING.md:105. Si
no puedes, lo improvisaste.
La pregunta binaria: ¿podría pegarse la cadena que escribiste en la receta check sin ninguna
edición? Si tu comando tiene un argumento o un flag que la receta no tiene, la respuesta es no, y lo
que ejecutaste fue una comprobación distinta que casualmente comparte el nombre.
Riesgo
El comando canónico suele ser el más lento, y una regla que prohíbe la variante rápida empuja hacia no ejecutar nada en absoluto. Eso es peor resultado que una ejecución estrechada etiquetada con honestidad.
Mide el costo antes de decidir que la regla es barata, y vuelve a medirlo a medida que la suite crece. El primer borrador de esta tarjeta decía que la suite completa de Chimera tardaba «unos quince segundos» — un número que fue cierto una vez y que ya había derivado a unos 100 segundos en cuatro ejecuciones medidas para cuando se escribió la tarjeta. Una tarjeta sobre no improvisar comandos es mal sitio para publicar una cifra que no sobrevive a ejecutar el comando.
Y la receta misma puede estar equivocada. Seguirla literalmente significa heredar sus puntos ciegos:
make check no te dirá que una prueba lee un bench/local_lift/results/paired.json ignorado por git
que un clon nuevo no tiene. El arreglo para una compuerta mala es cambiar la receta en un PR, no
ejecutar calladamente una mejor en privado — una mejora privada protege exactamente a una persona y
deja a CI, y a todos los demás, con el comando viejo.
Cómo usarla
La tarjeta es un dato. Clona el repositorio e impórtala por ruta: lo que llega por la red se trata como contaminado y queda retenido a la espera de aprobación, que es el comportamiento deseable y la razón por la que aquí no hay un instalador de una línea.
git clone https://github.com/brcampidelli/chimera-agent.gitchimera skills-import chimera-agent/skills/chimera-run-the-projects-own-gate-command/SKILL.mdIntegridad
SHA-256 del archivo tal como se publicó. Quien lo importe puede comprobar que lo que recibió es lo que mostró esta página.
12e60e2bbe0fa29b4a242ec429a1897741266f43812148c3a55356f77de227b9