ci: add daily failover simulation schedule and standardize service configurations
Some checks failed
API Endpoint Tests / test-api-endpoints (push) Successful in 16s
CLI Tests / test-cli (push) Failing after 3s
Documentation Validation / validate-docs (push) Failing after 10s
Documentation Validation / validate-policies-strict (push) Failing after 3s
Integration Tests / test-service-integration (push) Successful in 3m0s
Python Tests / test-python (push) Successful in 17s
Security Scanning / security-scan (push) Failing after 23s
Blockchain Synchronization Verification / sync-verification (push) Failing after 10s
Node Failover Simulation / failover-test (push) Failing after 5s
P2P Network Verification / p2p-verification (push) Successful in 5s
Multi-Node Blockchain Health Monitoring / health-check (push) Successful in 5s
Systemd Sync / sync-systemd (push) Failing after 14m56s

Add daily 2 AM cron schedule for node failover simulation workflow. Relax AITBC address validation to support variable-length addresses. Add missing logging import to chain_sync. Make coordinator database initialization non-fatal to allow startup even if init_db fails. Replace Ethereum address validation with AITBC-specific format checks in multisig transactions. Standardize PYTHONPATH across all systemd services to include
This commit is contained in:
aitbc
2026-04-27 16:51:13 +02:00
parent 963910c787
commit b77a6ce007
21 changed files with 305 additions and 22 deletions

View File

@@ -18,6 +18,7 @@ Restart=always
RestartSec=10
StandardOutput=journal
StandardError=journal
SyslogIdentifier=AgentDaemon
# Security settings
NoNewPrivileges=true

View File

@@ -14,6 +14,7 @@ Restart=always
RestartSec=5
StandardOutput=journal
StandardError=journal
SyslogIdentifier=EventBridge
NoNewPrivileges=true
PrivateTmp=true
ProtectSystem=strict

View File

@@ -16,6 +16,7 @@ Restart=always
RestartSec=5
StandardOutput=journal
StandardError=journal
SyslogIdentifier=BlockchainRPC
[Install]
WantedBy=multi-user.target

View File

@@ -14,6 +14,7 @@ Restart=always
RestartSec=5
StandardOutput=journal
StandardError=journal
SyslogIdentifier=Coordinator
# Allow database writes for SQLite WAL mode
ProtectSystem=no

View File

@@ -10,6 +10,7 @@ Group=root
WorkingDirectory=/opt/aitbc/apps/exchange
EnvironmentFile=/etc/aitbc/.env
EnvironmentFile=/etc/aitbc/node.env
Environment="PYTHONPATH=/opt/aitbc"
ExecStart=/opt/aitbc/venv/bin/python simple_exchange_api.py --port 8001
ExecReload=/bin/kill -HUP $MAINPID
Restart=always

View File

@@ -8,7 +8,7 @@ Type=simple
User=root
Group=root
WorkingDirectory=/opt/aitbc/apps/coordinator-api/
Environment=PYTHONPATH=/opt/aitbc/apps/coordinator-api/src:/opt/aitbc/packages/py/aitbc-sdk/src:/opt/aitbc/packages/py/aitbc-crypto/src
Environment=PYTHONPATH=/opt/aitbc:/opt/aitbc/apps/coordinator-api/src:/opt/aitbc/packages/py/aitbc-sdk/src:/opt/aitbc/packages/py/aitbc-crypto/src
EnvironmentFile=/etc/aitbc/.env
EnvironmentFile=/etc/aitbc/node.env
ExecStart=/opt/aitbc/venv/bin/python -m uvicorn app.services.adaptive_learning_app:app --host 127.0.0.1 --port 8011

View File

@@ -9,7 +9,7 @@ User=root
Group=root
WorkingDirectory=/opt/aitbc
Environment=PATH=/usr/bin:/usr/local/bin:/usr/bin:/bin
Environment=PYTHONPATH=/opt/aitbc/apps/marketplace/scripts:/opt/aitbc/apps/marketplace/src:/opt/aitbc/apps/coordinator-api/src
Environment=PYTHONPATH=/opt/aitbc:/opt/aitbc/apps/marketplace/scripts:/opt/aitbc/apps/marketplace/src:/opt/aitbc/apps/coordinator-api/src:/opt/aitbc/packages/py/aitbc-sdk/src:/opt/aitbc/packages/py/aitbc-crypto/src
EnvironmentFile=/etc/aitbc/.env
EnvironmentFile=/etc/aitbc/node.env

View File

@@ -5,11 +5,11 @@ Wants=aitbc-coordinator-api.service
[Service]
Type=simple
User=debian
Group=debian
User=root
Group=root
WorkingDirectory=/opt/aitbc/apps/coordinator-api
Environment=PATH=/opt/aitbc/venv/bin:/usr/bin
Environment=PYTHONPATH=/opt/aitbc/apps/coordinator-api/src
Environment=PYTHONPATH=/opt/aitbc:/opt/aitbc/apps/coordinator-api/src:/opt/aitbc/packages/py/aitbc-sdk/src:/opt/aitbc/packages/py/aitbc-crypto/src
EnvironmentFile=/etc/aitbc/.env
EnvironmentFile=/etc/aitbc/node.env
ExecStart=/opt/aitbc/venv/bin/python -m uvicorn src.app.services.modality_optimization_app:app --host 127.0.0.1 --port 8021

View File

@@ -8,6 +8,7 @@ User=root
Group=root
WorkingDirectory=/opt/aitbc
Environment=PATH=/usr/bin:/usr/local/bin:/usr/bin:/bin
Environment=PYTHONPATH=/opt/aitbc:/opt/aitbc/packages/py/aitbc-sdk/src:/opt/aitbc/packages/py/aitbc-crypto/src
EnvironmentFile=/etc/aitbc/.env
EnvironmentFile=/etc/aitbc/node.env

View File

@@ -5,11 +5,11 @@ Wants=aitbc-coordinator-api.service
[Service]
Type=simple
User=debian
Group=debian
User=root
Group=root
WorkingDirectory=/opt/aitbc/apps/coordinator-api
Environment=PATH=/opt/aitbc/venv/bin:/usr/bin
Environment=PYTHONPATH=/opt/aitbc/apps/coordinator-api/src
Environment=PYTHONPATH=/opt/aitbc:/opt/aitbc/apps/coordinator-api/src:/opt/aitbc/packages/py/aitbc-sdk/src:/opt/aitbc/packages/py/aitbc-crypto/src
EnvironmentFile=/etc/aitbc/.env
EnvironmentFile=/etc/aitbc/node.env
ExecStart=/opt/aitbc/venv/bin/python -m uvicorn src.app.services.multimodal_app:app --host 127.0.0.1 --port 8020

View File

@@ -5,11 +5,11 @@ Wants=aitbc-coordinator-api.service
[Service]
Type=simple
User=debian
Group=debian
User=root
Group=root
WorkingDirectory=/opt/aitbc/apps/coordinator-api
Environment=PATH=/opt/aitbc/venv/bin:/usr/bin
Environment=PYTHONPATH=/opt/aitbc/apps/coordinator-api/src
Environment=PYTHONPATH=/opt/aitbc:/opt/aitbc/apps/coordinator-api/src:/opt/aitbc/packages/py/aitbc-sdk/src:/opt/aitbc/packages/py/aitbc-crypto/src
EnvironmentFile=/etc/aitbc/.env
EnvironmentFile=/etc/aitbc/node.env
ExecStart=/opt/aitbc/venv/bin/python -m uvicorn src.app.routers.openclaw_enhanced_app:app --host 127.0.0.1 --port 8014