fix(ops): Add network aliases and stabilize DNS for NODA1

- docker-compose.node1.yml: Add network aliases (router, gateway,
  memory-service, qdrant, nats, neo4j) to eliminate manual
  `docker network connect --alias` commands
- docker-compose.node1.yml: ROUTER_URL now uses env variable with
  fallback: ${ROUTER_URL:-http://router:8000}
- docker-compose.node1.yml: Increase router healthcheck start_period
  to 30s and retries to 5
- .gitignore: Add noda1-credentials.local.mdc (local-only SSH creds)
- scripts/node1/verify_agents.sh: Improved output with agent list
- docs: Add NODA1-AGENT-VERIFICATION.md, NODA1-AGENT-ARCHITECTURE.md,
  NODA1-VERIFICATION-REPORT-2026-02-03.md
- config/README.md: How to add new agents
- .cursor/rules/, .cursor/skills/: NODA1 operations skill for Cursor

Root cause fixed: Gateway could not resolve 'router' DNS name when
Router container was named 'dagi-staging-router' without alias.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Apple
2026-02-03 05:55:56 -08:00
parent 8f046e7226
commit a46a70c014
10 changed files with 537 additions and 15 deletions

View File

@@ -37,12 +37,20 @@ echo " $PING_RESULT"
echo ""
# 4. Gateway health
echo "4. Gateway health..."
# 4. Gateway health та список агентів
echo "4. Gateway health та агенти..."
HEALTH=$(curl -s http://localhost:9300/health 2>/dev/null || echo '{"status":"error"}')
if echo "$HEALTH" | grep -q "healthy"; then
echo " ✅ Gateway healthy"
echo " $HEALTH" | head -c 200
AGENTS_COUNT=$(echo "$HEALTH" | grep -o '"agents_count":[0-9]*' | cut -d: -f2)
echo " Агентів у реєстрі: ${AGENTS_COUNT:-?}"
if command -v jq >/dev/null 2>&1; then
echo " Агенти (prompt | telegram token):"
echo "$HEALTH" | jq -r '.agents | to_entries[] | " - \(.key): prompt=\(.value.prompt_loaded) token=\(.value.telegram_token_configured)"' 2>/dev/null || echo "$HEALTH" | head -c 400
else
echo " (встановіть jq для детального виводу: .agents)"
echo "$HEALTH" | head -c 400
fi
else
echo " ❌ Gateway unhealthy: $HEALTH"
fi