Agrega RUNBOOK.md y runbooks/ (fuera de content/, para no interferir con la publicación de Zola), con reglas de nombres/etiquetas/aislamiento de celdas mutantes verificadas por clusterlog validate. Instalación pinneada a v3.17.4 con checksum verificado (scripts/runme-install.sh), un job de CI separado (.gitea/workflows/ci.yml) que sólo corre celdas ci-safe, y la decisión documentada en docs/adr/0004-runme-sidecar.md y docs/RUNME.md. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
3.1 KiB
Ciclo de desarrollo de clusterlog
Propósito: correr el mismo ciclo que AGENTS.md pide "antes de entregar",
como notebook en vez de copiar/pegar bloques sueltos. Todas las celdas de
este documento envuelven targets existentes de Makefile; ninguna reimplementa
lo que ya hace go test, go vet o clusterlog.
Prerrequisitos
- Go 1.23+, Git con firmas SSH.
- Para las celdas con Zola: binario
zolaenPATH(opcional; las celdas devalidate/syncno lo requieren).
Formato
test -z "$(gofmt -l cmd internal)"
Pruebas y análisis estático
go vet ./...
go test -race ./...
Compilar y proyectar
make build
# Escribe data/generated/site_state.json. Revise el diff antes de confirmar
# cualquier commit que incluya ese archivo regenerado.
make sync
git diff --stat -- data/generated/site_state.json
Prerrequisitos de clusterlog-dev-sync
- Haber corrido
clusterlog-dev-builden esta sesión (o tenerbin/clusterlogya compilado).
Validación posterior
make sync-check
Rollback
data/generated/site_state.json es 100% regenerable desde el contenido
fuente (content/, data/admins.json, data/*-events/). Si make sync
produjo un diff no deseado, descarte el archivo con
git checkout -- data/generated/site_state.json y no lo incluya en el commit.
Validar
make validate-local
Flujo completo local (equivalente a CI, sin Zola)
make build
./bin/clusterlog --root . sync --check
./bin/clusterlog --root . validate --skip-zola
./scripts/smoke.sh
Registro en Clusterlog
Ninguna celda de este runbook crea memorias, tareas ni commits. Si el
trabajo de la sesión amerita una memoria, hágalo con el flujo normal descrito
en AGENTS.md (clusterlog memory create --from-json, con --dry-run antes
de --commit) — fuera de Runme, con su propia llave.
Limitaciones
clusterlog-dev-syncestá marcadomanual-onlya propósito: regenera un archivo versionado y su diff debe revisarse antes de confirmarlo.- Este runbook no incluye
make site/zola build: verRUNBOOK.mdpara por qué esa celda vive ahí y no se duplica aquí.