diff --git a/CHANGELOG.md b/CHANGELOG.md index a130132..4ffb792 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,36 @@ All notable changes to this project will be documented in this file. +## [v1.4] - 2026-03-13 + +### Fixed + +#### Real-Time Logging Not Visible in journalctl + +**Error:** Watcher was capturing turns to Qdrant but `journalctl -u mem-qdrant-watcher -f` showed no output between restarts. + +**Root Cause:** +- Python buffers stdout when not connected to a TTY (systemd service) +- `print()` statements in the watcher were buffered, not flushed +- Logs only appeared on service restart when buffer was flushed + +**Impact:** Impossible to monitor real-time capture status, difficult to debug + +**Fix:** +- Added `Environment="PYTHONUNBUFFERED=1"` to systemd service file +- This disables Python's stdout buffering, forcing immediate flush + +**Changed Files:** +- `watcher/mem-qdrant-watcher.service` - Added PYTHONUNBUFFERED environment variable + +**Validation:** +```bash +journalctl -u mem-qdrant-watcher -f +# Now shows: ✅ Turn 170 (assistant) → Qdrant (in real-time) +``` + +--- + ## [v1.3] - 2026-03-10 ### Fixed diff --git a/watcher/mem-qdrant-watcher.service b/watcher/mem-qdrant-watcher.service index 2adb653..b60a679 100644 --- a/watcher/mem-qdrant-watcher.service +++ b/watcher/mem-qdrant-watcher.service @@ -11,6 +11,7 @@ Environment="QDRANT_COLLECTION=memories_tr" Environment="OLLAMA_URL=http://localhost:11434" Environment="EMBEDDING_MODEL=snowflake-arctic-embed2" Environment="USER_ID=rob" +Environment="PYTHONUNBUFFERED=1" ExecStart=/usr/bin/python3 /root/.openclaw/workspace/.local_projects/openclaw-true-recall-base/watcher/realtime_qdrant_watcher.py --daemon Restart=always RestartSec=5