Apple
a818f2ac2f
feat: add router health metrics to node_cache and node-guardian
...
- Add migration 042_node_cache_router_metrics.sql
- Node guardian now collects router health and sends in heartbeat
- City-service uses cached router_healthy from node_cache
- This allows NODE2 router status to be displayed correctly
2025-12-01 08:03:46 -08:00
Apple
9b9a72ffbd
feat: full node isolation - use node-specific swapper_url and router_url from DB
...
- Add migration 041_node_local_endpoints.sql
- Add get_node_endpoints() to repo_city.py
- Update routes_city.py to use DB endpoints instead of hardcoded URLs
- Update node-guardian-loop.py to use NODE_SWAPPER_URL/NODE_ROUTER_URL env vars
- Update launchd plist for NODE2 with router URL
2025-12-01 08:01:53 -08:00
Apple
b25e002db6
feat: add logging for node isolation debugging in node-guardian
2025-12-01 07:35:37 -08:00
Apple
9e7b1f25ef
fix: add node button visibility, fix node-guardian swapper health check, fix banner URL transform
2025-12-01 07:08:36 -08:00
Apple
b3e3c6417d
fix: update Swapper endpoints (/health, /models), remove upload size limits, auto-convert images
2025-12-01 03:03:27 -08:00
Apple
135e8ed83c
fix: suppress expected swapper connection errors in guardian loop
2025-11-30 15:41:42 -08:00
Apple
fd814b2059
feat: implement Swapper metrics collection and UI
2025-11-30 15:12:49 -08:00
Apple
5b5160ad8b
fix: correct API endpoints in node-guardian-loop script
2025-11-30 15:01:06 -08:00
Apple
bca81dc719
feat: Node Self-Healing, DAGI Audit, Agent Prompts, Infra Invariants
...
### Backend (city-service)
- Node Registry + Self-Healing API (migration 039)
- Improved get_all_nodes() with robust fallback for node_registry/node_cache
- Agent Prompts Runtime API for DAGI Router integration
- DAGI Router Audit endpoints (phantom/stale detection)
- Node Agents API (Guardian/Steward)
- Node metrics extended (CPU/GPU/RAM/Disk)
### Frontend (apps/web)
- Node Directory with improved error handling
- Node Cabinet with metrics cards
- DAGI Router Card component
- Node Metrics Card component
- useDAGIAudit hook
### Scripts
- check-invariants.py - deploy verification
- node-bootstrap.sh - node self-registration
- node-guardian-loop.py - continuous self-healing
- dagi_agent_audit.py - DAGI audit utility
### Migrations
- 034: Agent prompts seed
- 035: Agent DAGI audit
- 036: Node metrics extended
- 037: Node agents complete
- 038: Agent prompts full coverage
- 039: Node registry self-healing
### Tests
- test_infra_smoke.py
- test_agent_prompts_runtime.py
- test_dagi_router_api.py
### Documentation
- DEPLOY_CHECKLIST_2024_11_30.md
- Multiple TASK_PHASE docs
2025-11-30 13:52:01 -08:00