Skip to content

Commit 2a39524

Browse files
fix: recreate OpenClaw after bootstrap model upgrade
bootstrap-upgrade.sh updates .env with the new model name but only restarts LiteLLM and DreamForge — it never recreates OpenClaw. inject-token.js reads GGUF_FILE from env vars baked in at container creation time, so a restart still uses the stale bootstrap model name (extra.Qwen3.5-2B-Q4_K_M.gguf) causing HTTP 404 on every request. Use `docker compose up -d --force-recreate openclaw` so the container picks up the updated GGUF_FILE and LLM_MODEL from .env. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent a9b6c78 commit 2a39524

1 file changed

Lines changed: 12 additions & 0 deletions

File tree

dream-server/scripts/bootstrap-upgrade.sh

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -394,6 +394,18 @@ LITELLM_UPGRADE_EOF
394394
log "Restarting DreamForge to pick up model change..."
395395
docker restart dream-dreamforge 2>&1 || log "WARNING: DreamForge restart failed (non-fatal)"
396396
fi
397+
# Recreate OpenClaw so inject-token.js picks up the new GGUF_FILE/LLM_MODEL
398+
# from .env. A restart alone won't work — env vars are baked in at container
399+
# creation time, and inject-token.js builds the Lemonade model name from them.
400+
if docker ps --filter name=dream-openclaw --format '{{.Names}}' 2>/dev/null | grep -q dream-openclaw; then
401+
log "Recreating OpenClaw to pick up model change..."
402+
if [[ ${#COMPOSE_ARGS[@]} -gt 0 ]]; then
403+
docker compose "${COMPOSE_ARGS[@]}" up -d --force-recreate openclaw 2>&1 || \
404+
log "WARNING: OpenClaw recreate failed (non-fatal)"
405+
else
406+
log "WARNING: No compose args — cannot recreate OpenClaw. Restart manually."
407+
fi
408+
fi
397409
else
398410
log "WARNING: llama-server health check timed out. The model may still be loading."
399411
log "Check: docker logs dream-llama-server"

0 commit comments

Comments
 (0)