- Fix character portrait crops and version assets to portrait_v2, ensuring correct identities (resolving Nat/Verena mismatch) - Update Schankraum scene image and configure Nginx cache-control to prevent stale asset caching - Make secret beer tap completely invisible in tavern until clicked - Reposition room hotspots in Act III to eliminate overlapping click targets - Add exit button [✕] to Bavarian Gstanzl duel minigame - Implement localStorage persistence in gameStore to maintain progress across page reloads - Enable clean game state and storage reset when clicking "Nochmal spielen" - Expand automated playtest script to cover Nat dialogue, duel exit, reload persistence, and game restart
5.3 KiB
5.3 KiB
OpenClaw Troubleshooting & Incident Playbook
This document captures fixed issues, operational quirks, and incident root-cause analyses for the OpenClaw deployment on Kubernetes.
Important
Rule for Agents & Operators: Whenever you fix a bug, diagnose an operational failure, or resolve a configuration pitfall in OpenClaw, document it here immediately. This prevents recurring regressions and serves as the single source of truth for troubleshooting.
📋 Catalog of Incidents & Fixed Issues
| Date | Category | Summary / Symptom | Status | Key Resolution |
|---|---|---|---|---|
| 2026-09-20 | Timeout & Execution | Telegram #IT Guy (Topic 119) and #Recherche (Topic 117) request timed out before response generated (timeoutSeconds exceeded) |
RESOLVED |
Raised global agents.defaults.timeoutSeconds from 600 to 1800 (30 min). |
| 2026-09-20 | Config Schema Validation | Pod crash with CrashLoopBackOff: agents.entries.<id>: Unrecognized key: "timeoutSeconds" |
RESOLVED |
timeoutSeconds is strictly global under agents.defaults.timeoutSeconds; do not place it under agents.entries.*. |
| 2026-09-24 | Database & Startup Latency | Gateway crash/restart during initialization: slow OpenClaw agent database open leading to Startup/Liveness probe failures |
RESOLVED |
Probe budget vs WAL checkpointing on large SQLite files (~1.5GB across subagents). |
🔍 Detailed Incident Records
Issue 1: Telegram Agent Request Timeout (agents.defaults.timeoutSeconds)
- Date: 2026-09-20
- Severity: High (User-facing timeout in Telegram topics
#IT Guyand#Recherche) - Symptom:
Telegram replies with error message:
Request timed out before a response was generated. Please try again, or increase agents.defaults.timeoutSeconds in your config. - Root Cause:
The IT Guy agent (
itguy) performs deep, sequential DevOps investigations (multipleexec/kubectlcalls, file writes, and PR operations) usingdeepseek/deepseek-v4.1-flash. Similarly,#Rechercheruns deep research chains. The global default was set totimeoutSeconds: 600(10 minutes), causing active, non-stuck runs to be killed mid-flight. - Resolution:
In
k8s/openclaw/openclaw-instance.secret.yaml, configure:spec: config: raw: agents: defaults: timeoutSeconds: 1800 # 30 minutes - How to Avoid Recurrence: Always verify timeout requirements against the longest-running task types (multi-step K8s audits and deep research). Never assume 10 minutes is sufficient for multi-turn tool loops.
Issue 2: Schema Crash on Per-Agent Timeout Override
- Date: 2026-09-20
- Severity: Critical (Deployment blocked with
CrashLoopBackOff) - Symptom:
Gateway container fails during startup:
Gateway failed to start: Invalid config at /home/openclaw/.openclaw/openclaw.json: openclaw.json:169 — agents.entries.itguy: Unrecognized key: "timeoutSeconds" - Root Cause:
OpenClaw’s JSON schema strict validator does not permit
timeoutSecondsinside individual agent entries underagents.entries.<name>. - Resolution:
Remove
timeoutSecondsfromagents.entries.*. Configure it strictly at the root ofagents.defaults.timeoutSeconds. - How to Avoid Recurrence:
Before adding new keys to agent configurations in
openclaw-instance.secret.yaml, inspect the upstream OpenClaw schema or test locally to ensure the key is recognized under that exact path.
Issue 3: Startup Probe Failures due to Slow SQLite Database Initialization
- Date: 2026-09-24
- Severity: High (Intermittent container kills on gateway restart)
- Symptom:
Container
openclawfails startup or liveness probes, causing kubelet to restart the container:Logs display repeated warnings:Liveness probe failed: Get "http://...:18790/healthz": context deadline exceeded Startup probe failed: context deadline exceeded / connection reset by peer[state/agent-db] slow OpenClaw agent database open - Root Cause:
OpenClaw maintains separate SQLite databases for each specialist subagent (
agents/*/agent/openclaw-agent.sqlite). Over time, databases and uncommitted WAL logs accumulate significant size:agents/main/agent/openclaw-agent.sqlite: >220 MBagents/fitness/,agents/itguy/,agents/hebamme/,agents/recherche/: >100 MB each + multi-megabyte WAL files. On startup, SQLite WAL recovery and integrity passes across 10+ databases on single-node hostpath storage can take several minutes. If this exceeds thestartupProbelimit (failureThreshold * periodSeconds), Kubernetes kills the container before it finishes opening databases.
- Resolution:
- Ensure
probes.startup.failureThresholdinopenclaw-instance.secret.yamlallows adequate startup headroom (e.g. at least 120 attempts with 5s period = 600s). - Periodically ensure SQLite VACUUM / WAL checkpoints run during maintenance windows or let the database open without interrupting it.
- Ensure
- How to Avoid Recurrence:
Monitor SQLite database sizes under
/home/openclaw/.openclaw/agents/*/agent/and avoid overly aggressive liveness/startup probe kill thresholds during gateway initialization.