gioser

sergio/takana

> Una distribución Linux construida con un laboratorio funcional y hermético en el > sótano, y una terminal mutable, clásica y anárquica en el piso de arriba — diseñada > desde el suelo para que una IA programadora entienda, modifique y co…

⎇ main docs/runbooks/harkaq-campana-desatendida.md Markdown · 52 lines · 2.6 KB History raw

takana: espejo de GitHub renombrado, y las dos colas que quedaban f9ed89cd1 · Sergio ·

1# Runbook — campaña harkaq desatendida (medir → declarar → verificar)
2
3**Arrancada:** 2026-07-15 · **Worker:** `hk-campana` (`root@37.27.199.213`) · **Cola:** 98 recetas
4
5## Qué está corriendo
6
7| Dónde | Qué | Cómo |
8|---|---|---|
9| worker | mide: construye cada receta bajo la jaula, guarda veredictos | `systemctl status harkaq-campana` · log: `/var/log/harkaq-campana.log` |
10| hub (laptop) | cosecha: clasifica y declara las deps medidas | `crontab -l` (cada 30min) · log: `work/harvest-harkaq.log` |
11
12**Diseñado para la noche: nunca bloquea esperando una decisión.** Una pregunta a las 3am son 8
13horas de idle — ése es el fallo que esto existe para no tener. Build que falla ⇒ se salta y sigue.
14Deuda irreducible ⇒ `tandas/needs-review-harkaq/`, no se toca la receta.
15
16## Revisar por la mañana
17
18```sh
19tail -30 work/harvest-harkaq.log          # qué declaró
20git log --oneline --grep='cosecha automática'
21ls tandas/needs-review-harkaq/            # lo que NO se pudo declarar solo
22ssh -i ~/.ssh/github5 root@37.27.199.213 'tail -20 /var/log/harkaq-campana.log'
23```
24
25## Parar (el cron del runbook NO funciona acá: ver abajo)
26
27```sh
28crontab -l | grep -v harvest-harkaq | crontab -    # deja de cosechar
29hcloud server delete hk-campana                    # deja de moler (y de cobrar)
30```
31
32## Lo que NO hace, a propósito
33
34- **No declara deuda irreducible.** Declarar algo que el store no provee rompe el build en vez de
35  arreglarlo. Va a needs-review con el motivo.
36- **No compila en el hub.** La cadena GUI se rompe en el laptop (zig-skew/cairo); el hub sólo
37  cosecha.
38- **No usa un regex para decidir.** La lista de "a quién le falta declarar make" salió mal dos
39  veces (69→45→99 según el retoque): `\bmake\b` colaba `cargo-make`, y la versión estrecha
40  perdía las cinco recetas donde harkaq había medido la deuda de verdad. **La fuente de verdad es
41  la medición.** El regex sólo ordena la cola.
42- **No firma ni promueve.** Eso queda para una decisión humana con el índice de 748 delante.
43
44## Rastrillos que ya se pagaron
45
46- El cron corre con `cwd=$HOME`: la línea **necesita** `cd /mnt/vvv/takana &&`. Sin eso falla
47  en silencio y la noche se pierde. Se escribió mal 4 veces seguidas ⇒ el instalador lleva un
48  `assert` que se niega a poner una línea sin el `cd`.
49- `git pull --rebase` del harvest falla con cualquier cambio sin committear ⇒ la cosecha nunca
50  sincroniza. Mantener el árbol limpio.
51- El worker tiene cargo en `~/.cargo/bin` (fuera del PATH no-interactivo) y `/opt/hammer` **no es
52  un git repo**: se le rsyncea el código y se compila allá.

harkaq-campana-desatendida.md

Runbook — campaña harkaq desatendida (medir → declarar → verificar)

Arrancada: 2026-07-15 · Worker: hk-campana (root@37.27.199.213) · Cola: 98 recetas

Qué está corriendo

DóndeQuéCómo
workermide: construye cada receta bajo la jaula, guarda veredictossystemctl status harkaq-campana · log: /var/log/harkaq-campana.log
hub (laptop)cosecha: clasifica y declara las deps medidascrontab -l (cada 30min) · log: work/harvest-harkaq.log

Diseñado para la noche: nunca bloquea esperando una decisión. Una pregunta a las 3am son 8 horas de idle — ése es el fallo que esto existe para no tener. Build que falla ⇒ se salta y sigue. Deuda irreducible ⇒ tandas/needs-review-harkaq/, no se toca la receta.

Revisar por la mañana

tail -30 work/harvest-harkaq.log          # qué declaró
git log --oneline --grep='cosecha automática'
ls tandas/needs-review-harkaq/            # lo que NO se pudo declarar solo
ssh -i ~/.ssh/github5 root@37.27.199.213 'tail -20 /var/log/harkaq-campana.log'

Parar (el cron del runbook NO funciona acá: ver abajo)

crontab -l | grep -v harvest-harkaq | crontab -    # deja de cosechar
hcloud server delete hk-campana                    # deja de moler (y de cobrar)

Lo que NO hace, a propósito

Rastrillos que ya se pagaron