From 78f12aa7ff814d0567259c61dc80476a0ccf9c36 Mon Sep 17 00:00:00 2001 From: Colin L Date: Thu, 30 Apr 2026 07:43:01 -0700 Subject: [PATCH] fix: drop OBSERVABILITY_DB_PATH from .env.example to unbreak host installs .env.example shipped OBSERVABILITY_DB_PATH=/app/data/observability.sqlite3, which is the path used inside the Docker container (where ./data is bind-mounted to /app/data). On macOS/Linux non-Docker hosts, /app is read-only or absent. A fresh `cp .env.example .env` install therefore boots cleanly until startup_event runs, at which point observability_recorder.start() raises: OSError: [Errno 30] Read-only file system: '/app' and the proxy never binds to :8083. Removing the line lets the resolution fall through to the existing defaults that already handle both cases: - Non-Docker: src/core/config.py defaults to "observability.sqlite3" in CWD (host-writable, no /app involvement). - Docker: docker-compose.yml line 10 self-overrides to /app/data/observability.sqlite3 via ${OBSERVABILITY_DB_PATH:-/app/data/...} alongside the ./data:/app/data bind mount. The compose `environment:` block takes precedence over `env_file:`, so this is unaffected by anything in .env. A multi-line comment in place of the removed value documents the decision so a future contributor doesn't reintroduce it. Co-Authored-By: Claude Opus 4.7 (1M context) --- .env.example | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/.env.example b/.env.example index 7dc5ed02..6b508e9e 100644 --- a/.env.example +++ b/.env.example @@ -26,8 +26,11 @@ MAX_RETRIES=2 # Observability dashboard OBSERVABILITY_ENABLED=true -# Docker Compose bind-mounts ./data to /app/data, so history stays in the repo root. -OBSERVABILITY_DB_PATH=/app/data/observability.sqlite3 +# Non-Docker installs fall back to "observability.sqlite3" in the current +# working directory (see src/core/config.py). Docker users get the +# /app/data/... path via docker-compose.yml's environment override and the +# matching ./data:/app/data bind mount, so this line is intentionally +# omitted to avoid breaking host installs that don't have /app. OBSERVABILITY_QUEUE_SIZE=1000 # Keep tool argument storage off unless you explicitly need deeper debugging. OBSERVABILITY_STORE_TOOL_ARGS=false