Files
cayce-ops/docs/DECISIONS.md
T

28 lines
1.4 KiB
Markdown

# DECISIONES del operador (binding para todos los agentes)
## D1 (r26): Cuentas y tokens
NINGUN agente puede: modificar permisos de la cuenta del operador (pattern),
promoverla/degradarla de admin, ni crear tokens a su nombre — ni con fines de
prueba. Para pruebas de API: cuentas de prueba propias (p.ej. ci-bot o una
dedicada), creadas y revocadas por el agente. Antecedente: en r25 se generó un
token de pattern para una prueba; práctica prohibida desde esta decisión.
## D2 (r26): Estado del runtime
Ningún proceso escribe estado dentro de los checkouts de deploy. El estado
vive en /var/lib/cayce/ (lessons.md y similares). Los árboles de
/srv/cayce-core, /srv/bitcoinhotels y /srv/hardcap-news quedan limpios sin
excepciones (check-clean-trees en verde).
## D3 (r26): Trazabilidad de pushes
Todo push queda identificado por autor; el reporte diario lista los pushes
del día por autor, y todo merge a main que toque archivos de CODEOWNERS
dispara DM urgente si no lo mergeó pattern.
## D4 (r32, regla dura R7): Nada de builds ni pruebas en /srv/*
NINGUN agente compila, instala dependencias ni prueba codigo dentro de
los directorios de produccion (/srv/*). Todo build, npm ci, prueba o
servidor de testeo va en una copia bajo /tmp o en el workspace del
runner (/var/lib/gitea-act/work). Antecedente: r31 — un build de prueba
sobrescribio el .next de produccion de bitcoinhotels por ~7 minutos.
Los checkouts de /srv solo los toca el autodeploy (con su lock).