Un auditor ejecutable y el checklist que lo acompaña, para construir, revisar y escalar sitios web estáticos sin reinventar la rueda cada vez.
No es un lint de HTML ni un medidor de rendimiento — de eso ya hay. Es lo que falta entre un validador de páginas y una auditoría de SEO: la comprobación del sitio como sistema.
Teníamos un estándar de página de 265 líneas y un gate de integridad de 5 comprobaciones. Entre los dos no había nada que validara el sitio completo. Todo lo que se coló era de sistema, no de página:
| Se coló | Por qué nadie lo vio |
|---|---|
llms.txt con 11 URLs a 404 de 28 |
No es HTML: un barrido de href= no lo cubre |
AGENTS.md afirmando el posicionamiento retirado meses antes |
Ninguna herramienta compara mensaje entre superficies |
Cero cabeceras Cache-Control |
Las auditorías de página no miran la entrega |
| Una página indexable huérfana y a medio publicar | Estaba bien formada. Solo no debía existir |
| 14 meta descriptions por encima del corte, una de 276 caracteres | Ninguna estaba "mal", solo truncada |
Ninguna página estaba mal por separado.
Y la segunda mitad: un estándar es un documento que alguien tiene que acordarse de leer. Lo que no falla solo, no se cumple.
CHECKLIST.md El checklist completo, en dos mitades:
Parte A - lo que comprueba la maquina
Parte B - lo que solo puede juzgar una persona
audit.sh El auditor. ~30 comprobaciones en 6 bloques
audit.conf.example Toda la particularidad del sitio. El script no se toca
docs/
01-estructura.md Carriles por prioridad de negocio · PASO 0 · migraciones
02-plantillas.md Tipos de pagina y que lleva cada uno · el generador
03-estilos.md Tokens en dos capas · contraste · la libreria
04-ficheros-maquina.md sitemap · llms.txt · AGENTS.md · robots
05-rendimiento-y-entrega.md Animaciones · cache · cabeceras · que NO hacer
06-deploy-y-verificacion.md El gate · como mirar sin engañarse
cp audit.sh audit.conf.example TU-PROYECTO/
cd TU-PROYECTO && mv audit.conf.example audit.conf
# editar audit.conf: URL base, marca, carpetas excluidas, rutas muertas
bash audit.sh # local
bash audit.sh --live # + entrega real en produccionVerde = EXIT 0. Sin dependencias: bash, grep, sed, find y curl. Sin jq, sin Node, sin
Python.
[ ok ] pasa
[FAIL] rompe el deploy
[warn] mirar, no bloquea
[skip] no se pudo comprobar Y POR QUE <- nunca se salta en silencio
[ ok ] sin haber mirado un solo fichero.
Iterar sobre una lista vacía no falla, "pasa" — y es la forma más silenciosa de que
una auditoría mienta.
Cuando algo se rompa y no estuviera en el checklist:
- Arreglarlo.
- Añadir la comprobación al auditor si una máquina puede detectarlo.
- Si no, a la Parte B con el caso real que la originó.
Un checklist que no crece con los fallos se queda obsoleto en un mes.
Extraído del trabajo real sobre climentmedia.com.
Cada línea marcada con