HOMELAB-2655: fix(sbx-sendrast): el arranque no pisa models.json del pool #793

Merged
pi-landing merged 1 commit from plane/HOMELAB-2655-sbx-sendrast-t7 into live 2026-11-04 02:02:40 +00:00
Collaborator

Refs HOMELAB-2655 (épica F3, HOMELAB-2544). ld-init-pool:136 renderiza la plantilla genérica sobre PI_CODING_AGENT_DIR en cada arranque, y pisaba 0,7 s después lo sembrado por seed-pi-agent desde Git. El parche lo vuelve "solo si falta" y el build falla si la base cambia. Agrega LD_STEP_GATEWAY_KEY_FILE con el valor de LD_OMNIROUTE_KEY_FILE. El pod no reinicia (OnDelete).

🤖 Generated with Claude Code

https://claude.ai/code/session_01DByxwH1da2gtK6b3nyX5Hd

Refs HOMELAB-2655 (épica F3, HOMELAB-2544). `ld-init-pool:136` renderiza la plantilla genérica sobre `PI_CODING_AGENT_DIR` en cada arranque, y pisaba 0,7 s después lo sembrado por `seed-pi-agent` desde Git. El parche lo vuelve "solo si falta" y el build falla si la base cambia. Agrega `LD_STEP_GATEWAY_KEY_FILE` con el valor de `LD_OMNIROUTE_KEY_FILE`. El pod no reinicia (OnDelete). 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01DByxwH1da2gtK6b3nyX5Hd
T7 (HOMELAB-2655): el arranque no pisa models.json del pool del sandbox
All checks were successful
0/0 projects applied successfully.
CI Review / runner-manifest-test (pull_request) Successful in 8s
CI Review / receiver-test (pull_request) Successful in 8s
CI Review / helm-validate (pull_request) Successful in 13s
Lint & Validate / shellcheck (pull_request) Successful in 10s
CI Review / alert-receiver-test (pull_request) Successful in 23s
Lint & Validate / yaml-lint (pull_request) Successful in 20s
Build sbx-sendrast Sandbox Image / build-and-push (pull_request) Successful in 53s
CI Review / record-sql-test (pull_request) Successful in 2m0s
Lint & Validate / terraform-validate (pull_request) Successful in 3m2s
CI Review / cockpit-test (pull_request) Successful in 4m38s
CI Review / cockpit-e2e (pull_request) Successful in 4m37s
CI Review / dispatcher-test (pull_request) Successful in 5m21s
a6ceea93fb
- Dockerfile: parche ld-init-pool-models-guard.py — el render de la plantilla
  generica de ld-init-pool pasa a 'solo si falta': seed-pi-agent (init) siembra
  el models.json desde el ConfigMap sbx-sendrast-models-json y SIEMPRE corre
  antes; medido en el pod, el render pisaba el sembrado 0,7 s despues con el
  models.json generico de la flota (byte-identico al de sbx-lab, porque la
  plantilla no lleva nada del pod). Anclado a la linea exacta: el build FALLA
  si la base ld-fleet cambia (build rojo, no pisa silencioso).
- StatefulSet: env LD_STEP_GATEWAY_KEY_FILE = LD_OMNIROUTE_KEY_FILE
  (/run/secrets/sendrast/omniroute/key): el models.json generico lee la llave
  con '!cat $LD_STEP_GATEWAY_KEY_FILE' (literal en la plantilla, HOMELAB-2402)
  y esa env no existia en este pod.
La llave OmniRoute sigue compartida con sbx-lab (eleccion del operador, R20
intent v5 linea 4): el ExternalSecret no cambia. Si Aaron decide llave propia,
sera otro PR. El pod NO se reinicia por esto (OnDelete).
Sign in to join this conversation.
No reviewers
No labels
operator-review
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Homelab/infra-core!793
No description provided.