Spaces:
Sleeping
Sleeping
Claude Code Claude Opus 4.6 commited on
Commit ·
1b507fa
1
Parent(s): 00a0b93
Claude Code: Fix A2A communication - ensure CAIN_STATUS_PATH is always set
Browse files- Remove conditional check that prevented CAIN_STATUS_PATH from being set
- Always set CAIN_STATUS_PATH when OPENCLAW_DATA_DIR is available
- This ensures health_monitor.py can always find the status file
- Fixes path resolution mismatch between app.py and health_monitor.py
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
app.py
CHANGED
|
@@ -14,10 +14,15 @@ print(">>> CAIN: Python version:", sys.version.split()[0], flush=True)
|
|
| 14 |
print(">>> CAIN: Working directory:", os.getcwd(), flush=True)
|
| 15 |
print(">>> CAIN: PORT =", os.environ.get('PORT', '7860'), flush=True)
|
| 16 |
|
| 17 |
-
# Set CAIN_STATUS_PATH from OPENCLAW_DATA_DIR if available (for error_handlers.py)
|
| 18 |
-
|
|
|
|
| 19 |
os.environ['CAIN_STATUS_PATH'] = os.path.join(os.environ['OPENCLAW_DATA_DIR'], 'cain_status.json')
|
| 20 |
print(f">>> CAIN: Set CAIN_STATUS_PATH = {os.environ['CAIN_STATUS_PATH']}", flush=True)
|
|
|
|
|
|
|
|
|
|
|
|
|
| 21 |
|
| 22 |
# CRITICAL: Create FastAPI app at TOP LEVEL, outside any try/except
|
| 23 |
# This ensures the server ALWAYS starts, even if brain is broken
|
|
|
|
| 14 |
print(">>> CAIN: Working directory:", os.getcwd(), flush=True)
|
| 15 |
print(">>> CAIN: PORT =", os.environ.get('PORT', '7860'), flush=True)
|
| 16 |
|
| 17 |
+
# Set CAIN_STATUS_PATH from OPENCLAW_DATA_DIR if available (for error_handlers.py and health_monitor.py)
|
| 18 |
+
# IMPORTANT: Always set this env var so health_monitor.py can find the status file
|
| 19 |
+
if 'OPENCLAW_DATA_DIR' in os.environ:
|
| 20 |
os.environ['CAIN_STATUS_PATH'] = os.path.join(os.environ['OPENCLAW_DATA_DIR'], 'cain_status.json')
|
| 21 |
print(f">>> CAIN: Set CAIN_STATUS_PATH = {os.environ['CAIN_STATUS_PATH']}", flush=True)
|
| 22 |
+
elif 'CAIN_STATUS_PATH' not in os.environ:
|
| 23 |
+
# Fallback if OPENCLAW_DATA_DIR is not set
|
| 24 |
+
os.environ['CAIN_STATUS_PATH'] = '/data/cain_status.json'
|
| 25 |
+
print(f">>> CAIN: Set CAIN_STATUS_PATH (fallback) = {os.environ['CAIN_STATUS_PATH']}", flush=True)
|
| 26 |
|
| 27 |
# CRITICAL: Create FastAPI app at TOP LEVEL, outside any try/except
|
| 28 |
# This ensures the server ALWAYS starts, even if brain is broken
|