aitbc
0784080465
fix: address post-push review issues - security, resilience, and code quality
...
CLI Tests / test-cli (push) Failing after 4s
Cross-Node Transaction Testing / transaction-test (push) Successful in 10s
Deploy to Testnet / deploy-testnet (push) Successful in 1m8s
Deploy to Testnet / notify-deployment (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Has been cancelled
Node Failover Simulation / failover-test (push) Has been cancelled
Integration Tests / test-service-integration (push) Successful in 2m7s
Python Tests / test-python (push) Successful in 15s
Security Scanning / security-scan (push) Has been cancelled
- Fix hardcoded DATABASE_URL in 4 new microservices (gpu-service, governance-service, trading-service, marketplace-service) - now use os.getenv() with SQLite fallback
- Move httpx.AsyncClient to API gateway lifespan for connection pooling
- Add 30-second timeout to API gateway proxy calls
- Move hardcoded service URLs to environment variables in API gateway (GPU_SERVICE_URL, MARKETPLACE_SERVICE_URL, etc.)
- Add cli/build/ and cli/dist/ to .gitignore and remove 42 stale build artifacts from git
- Fix version pinning conflicts in 4 new service pyproject.toml files (align with root: fastapi >=0.115.6, sqlmodel >=0.0.38, pytest >=9.0.3)
- Fix 18 remaining datetime.utcnow() calls in monitoring-service and ai-service (replace with datetime.now(timezone.utc))
- Add retries (3 attempts), authentication (Bearer token), rate limiting (100/min via slowapi), and circuit breaker to API gateway
- Add /ready and /live endpoints to 4 new microservices for production readiness/liveness probes
- Audit debug logging - confirmed no sensitive data (passwords, keys, secrets, tokens) is logged; cache keys and masked API keys are safe
2026-05-02 14:51:13 +02:00
aitbc
27993bee72
Update documentation to reflect 12 atomic skills and current service ports
API Endpoint Tests / test-api-endpoints (push) Successful in 15s
Blockchain Synchronization Verification / sync-verification (push) Failing after 1s
CLI Tests / test-cli (push) Failing after 5s
Cross-Chain Functionality Tests / test-cross-chain-sync (push) Successful in 3s
Cross-Chain Functionality Tests / test-cross-chain-transactions (push) Successful in 4s
Cross-Chain Functionality Tests / test-cross-chain-bridge (push) Has been skipped
Cross-Chain Functionality Tests / test-multi-chain-consensus (push) Successful in 3s
Cross-Chain Functionality Tests / aggregate-results (push) Has been skipped
Cross-Node Transaction Testing / transaction-test (push) Successful in 12s
Deploy to Testnet / deploy-testnet (push) Successful in 1m12s
Documentation Validation / validate-docs (push) Successful in 11s
Documentation Validation / validate-policies-strict (push) Successful in 6s
Integration Tests / test-service-integration (push) Successful in 2m39s
Multi-Node Blockchain Health Monitoring / health-check (push) Successful in 2s
Multi-Node Stress Testing / stress-test (push) Successful in 2s
Node Failover Simulation / failover-test (push) Successful in 2s
P2P Network Verification / p2p-verification (push) Successful in 2s
Package Tests / Python package - aitbc-agent-sdk (push) Failing after 30s
Package Tests / Python package - aitbc-core (push) Successful in 14s
Package Tests / Python package - aitbc-crypto (push) Successful in 8s
Package Tests / Python package - aitbc-sdk (push) Successful in 9s
Package Tests / JavaScript package - aitbc-sdk-js (push) Successful in 7s
Package Tests / JavaScript package - aitbc-token (push) Successful in 19s
Python Tests / test-python (push) Successful in 14s
Security Scanning / security-scan (push) Failing after 31s
Deploy to Testnet / notify-deployment (push) Successful in 2s
2026-05-02 14:38:19 +02:00
aitbc
8602732d46
Convert API gateway to old Poetry format and add service routing for new microservices
...
Node Failover Simulation / failover-test (push) Has been cancelled
Python Tests / test-python (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
API Endpoint Tests / test-api-endpoints (push) Successful in 1m55s
Blockchain Synchronization Verification / sync-verification (push) Failing after 11s
CLI Tests / test-cli (push) Failing after 8s
Cross-Chain Functionality Tests / test-cross-chain-sync (push) Failing after 12s
Cross-Chain Functionality Tests / test-cross-chain-transactions (push) Successful in 13s
Cross-Chain Functionality Tests / test-cross-chain-bridge (push) Has been skipped
Cross-Chain Functionality Tests / test-multi-chain-consensus (push) Failing after 13s
Cross-Chain Functionality Tests / aggregate-results (push) Has been skipped
P2P Network Verification / p2p-verification (push) Successful in 6s
Package Tests / Python package - aitbc-agent-sdk (push) Failing after 32s
Package Tests / Python package - aitbc-core (push) Successful in 15s
Package Tests / Python package - aitbc-crypto (push) Successful in 11s
Package Tests / Python package - aitbc-sdk (push) Successful in 11s
Package Tests / JavaScript package - aitbc-sdk-js (push) Successful in 26s
Package Tests / JavaScript package - aitbc-token (push) Successful in 25s
Production Tests / Production Integration Tests (push) Failing after 1m15s
Smart Contract Tests / test-solidity (map[name:aitbc-contracts path:contracts]) (push) Failing after 2m5s
Smart Contract Tests / test-solidity (map[name:aitbc-token path:packages/solidity/aitbc-token]) (push) Successful in 31s
Smart Contract Tests / test-foundry (push) Failing after 19s
Smart Contract Tests / lint-solidity (push) Successful in 17s
Smart Contract Tests / deploy-contracts (push) Successful in 1m24s
Staking Tests / test-staking-service (push) Failing after 14s
Staking Tests / test-staking-integration (push) Has been skipped
Staking Tests / test-staking-contract (push) Has been skipped
Staking Tests / run-staking-test-runner (push) Has been skipped
Systemd Sync / sync-systemd (push) Successful in 22s
Multi-Node Blockchain Health Monitoring / health-check (push) Failing after 14m13s
- Convert api-gateway pyproject.toml to old Poetry format for workspace compatibility
- Add routing configuration for AI service (port 8106)
- Add routing configuration for Monitoring service (port 8107)
- Add routing configuration for OpenClaw service (port 8108)
- Add routing configuration for Plugin service (port 8109)
- Remove duplicate middleware implementations from coordinator-api (app_logging.py, error
2026-04-30 16:15:05 +02:00
aitbc
dc9863afec
Replace hardcoded IPs with environment variables
...
Fixed hardcoded IP addresses in production code by replacing them with
environment variables or config settings:
- apps/blockchain-node/src/aitbc_chain/sync_cli.py: Use AITBC_SYNC_SOURCE
and AITBC_SYNC_IMPORT_URL env vars for RPC URLs
- apps/blockchain-node/src/aitbc_chain/app.py: Use AITBC_TRUSTED_IPS
env var for rate limiting bypass
- apps/coordinator-api/src/app/routers/client.py: Use settings.blockchain_rpc_url
for RPC endpoint
- dev/scripts/dev_heartbeat.py: Use AITBC_LOCAL_RPC and AITBC_GENESIS_RPC
env vars for RPC URLs
- cli/aitbc_cli.py: Use AITBC_FOLLOWER_HOST and AITBC_FOLLOWER_PORT
env vars for network peer display
This makes the codebase more portable and configurable for different
deployment environments.
2026-04-30 10:33:04 +02:00
aitbc
2777fdb987
Remove backup and temporary files from git
...
Deleted .bak, .backup, and .orig files:
- 2 .orig files from blockchain-node
- 9 .bak files from cli commands
- 1 .bak file from dev scripts
- 1 .backup file from docs
- 1 .bak file from scripts
These files add noise and should not be tracked in git.
2026-04-30 10:28:03 +02:00
aitbc
5bee7f03fb
cleanup: remove Docker references from codebase
...
API Endpoint Tests / test-api-endpoints (push) Successful in 37s
CLI Tests / test-cli (push) Successful in 10s
Cross-Node Transaction Testing / transaction-test (push) Successful in 10s
Deploy to Testnet / deploy-testnet (push) Successful in 1m7s
Integration Tests / test-service-integration (push) Successful in 2m57s
Multi-Node Stress Testing / stress-test (push) Successful in 10s
Node Failover Simulation / failover-test (push) Successful in 6s
Deploy to Testnet / notify-deployment (push) Has been cancelled
Python Tests / test-python (push) Failing after 32s
Security Scanning / security-scan (push) Successful in 28s
- Remove host.docker.internal from api-endpoint-tests.yml CI workflow
- Remove Docker build/push commands from production-deploy.sh
- Remove Docker prerequisite checks from deploy.sh
- Remove Docker from CLI deployment instructions
- Remove Docker from marketplace_scaler.py scaling comment
- Remove Docker from agent_security.py sandbox config and comments
- Remove Docker from developer_platform.py skills list
- Remove Dockerfile/docker-compose.yml from final-cleanup.sh output
- Addresses request to remove all Docker support references
2026-04-30 08:51:01 +02:00
aitbc
e41b782347
fix: replace hardcoded IPs with environment variables in CLI commands
...
- Replace hardcoded 10.1.223.40 in sync.py with AITBC_SYNC_SOURCE_URL env var
- Replace hardcoded 10.1.223.1 in explorer.py with AITBC_EXPLORER_URL env var
- Default to localhost if env vars not set
- Addresses report item #4 (hardcoded IPs)
2026-04-30 08:39:50 +02:00
aitbc
5f03ded7ff
fix: replace deprecated datetime.utcnow() with datetime.now(datetime.UTC)
...
- Replace all 2,087 uses of datetime.utcnow() across 294 files
- Add UTC import to datetime statements where needed
- Addresses Python 3.12+ deprecation warning (report item #3 )
2026-04-30 08:36:55 +02:00
aitbc
7e8bf7dd83
fix: Correct return indentation to match try level
...
CLI Tests / test-cli (push) Successful in 3s
Deploy to Testnet / deploy-testnet (push) Successful in 1m4s
Security Scanning / security-scan (push) Successful in 28s
Deploy to Testnet / notify-deployment (push) Successful in 2s
- Change return from 16 spaces to 12 spaces
- Matches try: block indentation level
- Fixes IndentationError on line 555
2026-04-29 20:48:26 +02:00
aitbc
4876895644
fix: IndentationError in wallet.py line 555
...
CLI Tests / test-cli (push) Failing after 11s
Deploy to Testnet / deploy-testnet (push) Successful in 1m5s
Deploy to Testnet / notify-deployment (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
- Fix unexpected indent on return statement
- Return should be at same level as except block
- Fixes cli-level1-tests CI failure
2026-04-29 20:47:09 +02:00
aitbc
58cc6676fa
feat: update CLI and agent SDK with contract integration
...
CLI Tests / test-cli (push) Failing after 10s
Contract Performance Benchmarks / benchmark-gas-usage (push) Failing after 20s
Contract Performance Benchmarks / benchmark-execution-time (push) Failing after 1m2s
Contract Performance Benchmarks / benchmark-throughput (push) Failing after 1m11s
Contract Performance Benchmarks / compare-benchmarks (push) Has been skipped
Cross-Chain Functionality Tests / test-cross-chain-sync (push) Failing after 18s
Cross-Chain Functionality Tests / test-cross-chain-transactions (push) Successful in 25s
Cross-Chain Functionality Tests / test-cross-chain-bridge (push) Failing after 1m13s
Cross-Chain Functionality Tests / test-multi-chain-consensus (push) Failing after 5s
Cross-Chain Functionality Tests / aggregate-results (push) Has been skipped
Deploy to Testnet / deploy-testnet (push) Failing after 1m3s
Documentation Validation / validate-docs (push) Successful in 8s
Documentation Validation / validate-policies-strict (push) Failing after 2s
Integration Tests / test-service-integration (push) Successful in 59s
Package Tests / Python package - aitbc-agent-sdk (push) Failing after 1m1s
Package Tests / Python package - aitbc-core (push) Successful in 34s
Package Tests / Python package - aitbc-crypto (push) Successful in 28s
Package Tests / Python package - aitbc-sdk (push) Successful in 15s
Package Tests / JavaScript package - aitbc-sdk-js (push) Successful in 6s
Package Tests / JavaScript package - aitbc-token (push) Successful in 13s
Python Tests / test-python (push) Successful in 25s
Security Scanning / security-scan (push) Has started running
Smart Contract Tests / test-solidity (map[name:aitbc-contracts path:contracts]) (push) Failing after 1m11s
Smart Contract Tests / test-solidity (map[name:aitbc-token path:packages/solidity/aitbc-token]) (push) Successful in 11s
Smart Contract Tests / test-foundry (push) Failing after 2s
Smart Contract Tests / lint-solidity (push) Successful in 15s
Smart Contract Tests / deploy-contracts (push) Failing after 1m12s
Deploy to Testnet / notify-deployment (push) Successful in 8s
- Update CLI parsers and unified CLI for agent SDK integration
- Add agent_sdk command for CLI
- Update agent SDK with contract integration module
- Update compute provider and consumer with contract support
- Update agent SDK documentation
- Update package-lock.json and solidity cache
2026-04-29 10:44:52 +02:00
aitbc
8781d15a5b
Use existing book endpoint for marketplace buy instead of custom buy endpoint
CLI Tests / test-cli (push) Failing after 2s
Security Scanning / security-scan (push) Successful in 22s
2026-04-28 18:32:50 +02:00
aitbc
97252911b3
Simplify handlers - remove wallet daemon integration due to import issues, use direct file-based operations
Blockchain Synchronization Verification / sync-verification (push) Failing after 5s
CLI Tests / test-cli (push) Failing after 4s
Security Scanning / security-scan (push) Has been cancelled
Integration Tests / test-service-integration (push) Successful in 2m29s
Multi-Node Blockchain Health Monitoring / health-check (push) Failing after 2s
P2P Network Verification / p2p-verification (push) Successful in 2s
Python Tests / test-python (push) Successful in 11s
2026-04-28 18:31:59 +02:00
aitbc
10f5a48df1
Fix import errors in wallet adapter utils - clean up duplicate imports
CLI Tests / test-cli (push) Failing after 2s
Security Scanning / security-scan (push) Successful in 17s
2026-04-28 18:25:18 +02:00
aitbc
36b1937fcb
Fix import errors in handlers - use absolute imports instead of relative imports
API Endpoint Tests / test-api-endpoints (push) Successful in 13s
CLI Tests / test-cli (push) Failing after 2s
Security Scanning / security-scan (push) Has been cancelled
Integration Tests / test-service-integration (push) Successful in 2m57s
Python Tests / test-python (push) Successful in 11s
2026-04-28 18:21:48 +02:00
aitbc
31df4d538f
Simplify marketplace buy/sell endpoint paths to avoid conflicts
API Endpoint Tests / test-api-endpoints (push) Successful in 49s
CLI Tests / test-cli (push) Failing after 2s
Integration Tests / test-service-integration (push) Has started running
Python Tests / test-python (push) Has been cancelled
Security Scanning / security-scan (push) Has started running
2026-04-28 18:19:49 +02:00
aitbc
c725e71aeb
Fix ai.py syntax error
CLI Tests / test-cli (push) Failing after 4s
Security Scanning / security-scan (push) Successful in 15s
2026-04-28 18:18:13 +02:00
aitbc
1bacb0a3eb
Update market buy handler to use dual-mode wallet adapter
CLI Tests / test-cli (push) Failing after 2s
Security Scanning / security-scan (push) Successful in 39s
2026-04-28 18:15:30 +02:00
aitbc
0c995f7412
Change GPU buy/sell endpoints to avoid path conflicts
API Endpoint Tests / test-api-endpoints (push) Successful in 12s
CLI Tests / test-cli (push) Failing after 1s
Security Scanning / security-scan (push) Has been cancelled
Integration Tests / test-service-integration (push) Successful in 1m57s
Python Tests / test-python (push) Successful in 26s
2026-04-28 18:12:20 +02:00
aitbc
05e5d59b8c
Update market buy handler to use new GPU buy endpoint
Security Scanning / security-scan (push) Has been cancelled
CLI Tests / test-cli (push) Failing after 3s
2026-04-28 18:09:49 +02:00
aitbc
670a79f723
Remove dollar sign from GPU price display
CLI Tests / test-cli (push) Failing after 4s
Security Scanning / security-scan (push) Successful in 49s
2026-04-28 18:03:58 +02:00
aitbc
43aa888d36
Fix GPU marketplace price display to use AIT coins
CLI Tests / test-cli (push) Failing after 8s
Security Scanning / security-scan (push) Successful in 24s
2026-04-28 18:03:20 +02:00
aitbc
ed5dc40386
Update GPU marketplace prices to use AIT coins instead of USD
CLI Tests / test-cli (push) Failing after 3s
Security Scanning / security-scan (push) Successful in 16s
2026-04-28 18:01:17 +02:00
aitbc
cac4c65aab
Fix wallet handler to use importlib for decrypt_private_key
CLI Tests / test-cli (push) Failing after 3s
Security Scanning / security-scan (push) Successful in 33s
P2P Network Verification / p2p-verification (push) Successful in 2s
Multi-Node Blockchain Health Monitoring / health-check (push) Successful in 2s
2026-04-28 17:57:59 +02:00
aitbc
2d73f51452
Fix wallet handler to import decrypt_private_key correctly
2026-04-28 17:53:55 +02:00
aitbc
5ea244c6b7
Simplify market buy to use coordinator API without blockchain transactions
2026-04-28 17:48:09 +02:00
aitbc
49a2655b40
Simplify market buy to use coordinator API without blockchain transactions
CLI Tests / test-cli (push) Failing after 5s
Security Scanning / security-scan (push) Successful in 34s
2026-04-28 17:46:47 +02:00
aitbc
7a2ee6fb4b
Add handle_market_buy to unified_cli handlers
CLI Tests / test-cli (push) Failing after 2s
Security Scanning / security-scan (push) Successful in 36s
2026-04-28 17:45:11 +02:00
aitbc
b3a123329d
Fix market buy parser to route to correct handler
CLI Tests / test-cli (push) Failing after 2s
Security Scanning / security-scan (push) Successful in 30s
2026-04-28 17:43:48 +02:00
aitbc
90535433dc
Add market buy handler with blockchain transaction execution
2026-04-28 17:36:31 +02:00
aitbc
1a62d9ab75
Remove password requirement from AI handler
CLI Tests / test-cli (push) Failing after 8s
Security Scanning / security-scan (push) Successful in 34s
2026-04-28 17:35:44 +02:00
aitbc
da1d8c4c77
Remove password requirement for AI job submission to Agent Coordinator
CLI Tests / test-cli (push) Failing after 4s
Security Scanning / security-scan (push) Has been cancelled
2026-04-28 17:34:53 +02:00
aitbc
d997ced044
Simplify AI handler to submit directly to Agent Coordinator without wallet signing
CLI Tests / test-cli (push) Failing after 2s
Security Scanning / security-scan (push) Has been cancelled
2026-04-28 17:34:38 +02:00
aitbc
565ca25e85
Fix AI job submission to use Agent Coordinator endpoint
CLI Tests / test-cli (push) Failing after 2s
Security Scanning / security-scan (push) Successful in 16s
2026-04-28 17:33:21 +02:00
aitbc
ad06297593
Fix AI handler to use same decryption as wallet handler
CLI Tests / test-cli (push) Failing after 8s
Security Scanning / security-scan (push) Has been cancelled
2026-04-28 17:31:41 +02:00
aitbc
279517a53a
Add detailed error logging to AI handler decryption
CLI Tests / test-cli (push) Failing after 10s
Security Scanning / security-scan (push) Successful in 45s
2026-04-28 17:30:46 +02:00
aitbc
1cf46405f8
Fix AI handler with inline AES-256-GCM decryption
CLI Tests / test-cli (push) Failing after 1s
Security Scanning / security-scan (push) Successful in 17s
2026-04-28 17:29:10 +02:00
aitbc
a009ba1192
Fix AI handler to import decrypt_private_key from correct module
CLI Tests / test-cli (push) Failing after 10s
Security Scanning / security-scan (push) Has been cancelled
2026-04-28 17:28:41 +02:00
aitbc
b1a6f89219
Fix AI handler import path for decrypt_private_key
CLI Tests / test-cli (push) Failing after 7s
Security Scanning / security-scan (push) Has started running
2026-04-28 17:28:09 +02:00
aitbc
1555746fb8
Fix AI handler to use correct keystore decryption
CLI Tests / test-cli (push) Failing after 1s
Security Scanning / security-scan (push) Successful in 53s
2026-04-28 17:27:08 +02:00
aitbc
1fedd8b9ee
Fix AI job submission to use correct keystore decryption and modern transaction format
CLI Tests / test-cli (push) Failing after 7s
Security Scanning / security-scan (push) Successful in 1m0s
2026-04-28 17:25:30 +02:00
aitbc
1c7192852f
Fix agent action handler to handle message send results
CLI Tests / test-cli (push) Failing after 6s
Security Scanning / security-scan (push) Successful in 16s
2026-04-28 17:22:13 +02:00
aitbc
de3e31cc0a
Fix agent message to use modern transaction payload format
CLI Tests / test-cli (push) Failing after 3s
Security Scanning / security-scan (push) Has been cancelled
2026-04-28 17:21:48 +02:00
aitbc
3a2789a718
Fix CLI wallet send to decrypt private key and use modern payload
2026-04-28 17:19:10 +02:00
aitbc
5aa5038a76
Fix CLI wallet send to use modern transaction payload format
CLI Tests / test-cli (push) Failing after 2s
Security Scanning / security-scan (push) Successful in 1m17s
2026-04-28 17:18:34 +02:00
aitbc
b91f00b697
fix: handle transaction payload migration at validator level
...
Blockchain Synchronization Verification / sync-verification (push) Failing after 2s
CLI Tests / test-cli (push) Failing after 5s
Integration Tests / test-service-integration (push) Successful in 1m2s
Multi-Node Blockchain Health Monitoring / health-check (push) Has been cancelled
P2P Network Verification / p2p-verification (push) Has been cancelled
Python Tests / test-python (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
- TransactionRequest now supports both payload shapes during migration:
- Modern: recipient + amount
- Legacy: to + value
- Validator normalizes both key sets and throws clear error if neither recipient key is present
- Updated send_transaction to derive gossip recipient from either payload.recipient or payload.to
- Added regression tests for the alias/normalization path
- Updated CLI to use payload-based approach with recipient and amount
2026-04-28 16:55:22 +02:00
aitbc
b0ca0cb321
fix: use 'recipient' instead of 'to' in CLI to avoid Pydantic alias issues
CLI Tests / test-cli (push) Failing after 8s
Security Scanning / security-scan (push) Successful in 29s
Multi-Node Blockchain Health Monitoring / health-check (push) Successful in 2s
2026-04-28 15:58:50 +02:00
aitbc
79a5289cf5
fix: add type field to CLI transaction construction
Security Scanning / security-scan (push) Has been cancelled
CLI Tests / test-cli (push) Failing after 2s
2026-04-28 15:53:58 +02:00
aitbc
a8f6cdaa4d
feat: add support for new genesis-init.py script in CLI
...
CLI Tests / test-cli (push) Failing after 11s
Security Scanning / security-scan (push) Successful in 1m27s
- Updated genesis_cli.py and unified_cli.py to prefer new genesis-init.py script
- Falls back to unified_genesis.py for wallet creation operations
- New script used for basic genesis initialization without wallet creation
- Made --proposer required when using new script
- Improved error messaging when genesis scripts not found
2026-04-28 11:56:04 +02:00
aitbc
b77a6ce007
ci: add daily failover simulation schedule and standardize service configurations
...
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
2026-04-27 16:51:13 +02:00