diff --git a/.windsurf/meta/REFACTORING_SUMMARY.md b/.windsurf/meta/REFACTORING_SUMMARY.md index fc1b8e2e..591f0866 100644 --- a/.windsurf/meta/REFACTORING_SUMMARY.md +++ b/.windsurf/meta/REFACTORING_SUMMARY.md @@ -8,7 +8,7 @@ version: 1.0 ## Refactoring Completed -### โœ… **Atomic Skills Created (11/11)** +### โœ… **Atomic Skills Created (12/12)** #### **AITBC Blockchain Skills (6/6)** 1. **aitbc-wallet-manager** - Wallet creation, listing, balance checking @@ -18,12 +18,13 @@ version: 1.0 5. **aitbc-node-coordinator** - Cross-node coordination and messaging 6. **aitbc-analytics-analyzer** - Blockchain analytics and performance metrics -#### **OpenClaw Agent Skills (5/5)** +#### **OpenClaw Agent Skills (6/6)** 7. **openclaw-agent-communicator** - Agent message handling and responses 8. **openclaw-session-manager** - Session creation and context management 9. **openclaw-coordination-orchestrator** - Multi-agent workflow coordination 10. **openclaw-performance-optimizer** - Agent performance tuning and optimization 11. **openclaw-error-handler** - Error detection and recovery procedures +12. **openclaw-agent-testing-skill** - Agent communication validation and performance testing --- @@ -149,12 +150,12 @@ cd /opt/aitbc && source venv/bin/activate && ./aitbc-cli chain ## ๐ŸŽฏ **Next Steps** -### **Complete Remaining Skills (5/11)** -1. Create aitbc-node-coordinator for cross-node operations -2. Create aitbc-analytics-analyzer for performance metrics -3. Create openclaw-coordination-orchestrator for multi-agent workflows -4. Create openclaw-performance-optimizer for agent tuning -5. Create openclaw-error-handler for error recovery +### **Validation and Documentation Follow-Up** +1. Run the canonical 3-node validation harness: [`docs/scenarios/VALIDATION.md`](../../docs/scenarios/VALIDATION.md) +2. Validate all active skills with Cascade Chat/Write modes +3. Confirm @mentions context targeting +4. Verify model routing recommendations +5. Update performance benchmarks and usage guides ### **Integration Testing** 1. Test all skills with Cascade Chat/Write modes @@ -197,8 +198,8 @@ cd /opt/aitbc && source venv/bin/activate && ./aitbc-cli chain ## ๐ŸŽ‰ **Mission Status** -**Phase 1**: โœ… **COMPLETED** - 6/11 atomic skills created -**Phase 2**: โœ… **COMPLETED** - All 11/11 atomic skills created -**Phase 3**: ๏ฟฝ **IN PROGRESS** - Integration testing and documentation +**Phase 1**: โœ… **COMPLETED** - 6/12 atomic skills created +**Phase 2**: โœ… **COMPLETED** - All 12/12 atomic skills created +**Phase 3**: โณ **IN PROGRESS** - Integration testing and documentation -**Result**: Successfully transformed legacy monolithic skills into atomic, deterministic, structured, and reusable skills with 70% performance improvement and 100% Windsurf compatibility. +**Result**: Successfully transformed legacy monolithic skills into 12 atomic, deterministic, structured, and reusable skills with 70% performance improvement and 100% Windsurf compatibility. diff --git a/.windsurf/meta/SKILL_ANALYSIS.md b/.windsurf/meta/SKILL_ANALYSIS.md index 255e3a91..8fdd5e98 100644 --- a/.windsurf/meta/SKILL_ANALYSIS.md +++ b/.windsurf/meta/SKILL_ANALYSIS.md @@ -8,7 +8,7 @@ version: 1.0 ## Current Skill Analysis -### File: `aitbc-blockchain.md` +### File: `aitbc-blockchain.md` (archived legacy) #### **IDENTIFIED WEAKNESSES:** @@ -39,11 +39,22 @@ version: 1.0 5. `aitbc-node-coordinator` - Cross-node coordination and messaging 6. `aitbc-analytics-analyzer` - Blockchain analytics and performance metrics +#### **CURRENT ACTIVE SKILL SET** + +The active OpenClaw-style split skills now live in `.windsurf/skills/` and include: + +- `openclaw-agent-communicator` +- `openclaw-session-manager` +- `openclaw-coordination-orchestrator` +- `openclaw-performance-optimizer` +- `openclaw-error-handler` +- `openclaw-agent-testing-skill` + --- ## Current Skill Analysis -### File: `openclaw-aitbc.md` +### File: `openclaw-aitbc.md` (archived legacy) #### **IDENTIFIED WEAKNESSES:** @@ -53,14 +64,23 @@ version: 1.0 #### **RECOMMENDED ACTION:** -- **DELETE** - This skill is deprecated and serves no purpose -- **Migration already completed** - Skills are properly split +- **ARCHIVE** - This skill is deprecated and serves no purpose +- **Migration already completed** - The active skill set now uses the atomic OpenClaw skills listed below + +#### **CURRENT ACTIVE SKILL SET** + +- `openclaw-agent-communicator` +- `openclaw-session-manager` +- `openclaw-coordination-orchestrator` +- `openclaw-performance-optimizer` +- `openclaw-error-handler` +- `openclaw-agent-testing-skill` --- ## Current Skill Analysis -### File: `openclaw-management.md` +### File: `openclaw-management.md` (archived legacy) #### **IDENTIFIED WEAKNESSES:** @@ -84,6 +104,17 @@ version: 1.0 4. `openclaw-performance-optimizer` - Agent performance tuning and optimization 5. `openclaw-error-handler` - Error detection and recovery procedures +#### **CURRENT ACTIVE SKILL SET** + +These are the actual active files in `.windsurf/skills/`: + +- `openclaw-agent-communicator` +- `openclaw-session-manager` +- `openclaw-coordination-orchestrator` +- `openclaw-performance-optimizer` +- `openclaw-error-handler` +- `openclaw-agent-testing-skill` + --- ## Refactoring Strategy diff --git a/.windsurf/plans/OPENCLAW_AITBC_MASTERY_PLAN.md b/.windsurf/plans/OPENCLAW_AITBC_MASTERY_PLAN.md index 26c12601..dbaec3c5 100644 --- a/.windsurf/plans/OPENCLAW_AITBC_MASTERY_PLAN.md +++ b/.windsurf/plans/OPENCLAW_AITBC_MASTERY_PLAN.md @@ -1,7 +1,7 @@ --- description: Comprehensive OpenClaw agent training plan for AITBC software mastery from beginner to expert level title: OPENCLAW_AITBC_MASTERY_PLAN -version: 2.0 +version: 2.1 --- # OpenClaw AITBC Mastery Plan @@ -44,7 +44,7 @@ AITBC Multi-Node Setup: โ”œโ”€โ”€ Genesis Node (aitbc) - Port 8006 (Primary, IP: 10.1.223.40) โ”œโ”€โ”€ Follower Node (aitbc1) - Port 8006 (Secondary, different IP) โ”œโ”€โ”€ CLI Tool: /opt/aitbc/aitbc-cli -โ”œโ”€โ”€ Services: Coordinator (8001), Exchange (8000), Blockchain RPC (8006 on both nodes) +โ”œโ”€โ”€ Services: Agent Coordinator (9001), Exchange (8001), Blockchain RPC (8006 on both nodes) โ”œโ”€โ”€ AI Operations: Ollama integration, job processing, marketplace โ””โ”€โ”€ Node Synchronization: Gitea-based git pull/push (NOT SCP) ``` @@ -79,7 +79,7 @@ ssh aitbc1 'cd /opt/aitbc && git reset --hard origin/main' **GitHub Mirror**: `https://github.com/oib/AITBC.git` (push only after milestones) ### ๏ฟฝ **Workflow Integration** -**Multi-Node Workflows**: Comprehensive workflow suite for deployment and operations +**Multi-Node Workflow Integration**: Comprehensive workflow suite for deployment and operations - **Master Index**: [`/opt/aitbc/.windsurf/workflows/MULTI_NODE_MASTER_INDEX.md`](../workflows/MULTI_NODE_MASTER_INDEX.md) - **Core Setup**: [`multi-node-blockchain-setup-core.md`](../workflows/multi-node-blockchain-setup-core.md) - Prerequisites and basic node configuration - **Operations**: [`multi-node-blockchain-operations.md`](../workflows/multi-node-blockchain-operations.md) - Daily operations and monitoring @@ -89,6 +89,7 @@ ssh aitbc1 'cd /opt/aitbc && git reset --hard origin/main' - **Reference**: [`multi-node-blockchain-reference.md`](../workflows/multi-node-blockchain-reference.md) - Configuration reference - **OpenClaw Setup**: [`multi-node-blockchain-setup-openclaw.md`](../workflows/multi-node-blockchain-setup-openclaw.md) - OpenClaw-specific deployment - **Communication Test**: [`blockchain-communication-test.md`](../workflows/blockchain-communication-test.md) - Cross-node verification +- **Scenario Validation**: [`VALIDATION.md`](../scenarios/VALIDATION.md) - Canonical 3-node validation guide and harness **Test Phases**: Structured test suite for comprehensive validation - **Phase 1**: Consensus testing ([`/opt/aitbc/tests/phase1/consensus`](../../tests/phase1/consensus)) @@ -350,7 +351,7 @@ cd /opt/aitbc/scripts/training # AI service operations (debug mode) ./aitbc-cli ai service list --verbose --output json ./aitbc-cli ai service status --name ollama --debug - ./aitbc-cli ai service test --name coordinator --verbose + ./aitbc-cli ai service test --name agent-coordinator --verbose # API integration (non-interactive) ./aitbc-cli api test --endpoint /ai/job --yes --no-confirm @@ -565,8 +566,8 @@ export NODE_URL=http://:8006 # Follower node export CLI_PATH=/opt/aitbc/aitbc-cli # Service endpoints -export COORDINATOR_URL=http://localhost:8001 -export EXCHANGE_URL=http://localhost:8000 +export AGENT_COORDINATOR_URL=http://localhost:9001 +export EXCHANGE_URL=http://localhost:8001 export OLLAMA_URL=http://localhost:11434 # Authentication @@ -577,7 +578,7 @@ export WALLET_PASSWORD= ### **Service Dependencies** - **AITBC CLI**: `/opt/aitbc/aitbc-cli` accessible - **Blockchain Services**: Port 8006 on both nodes (different IPs) -- **AI Services**: Ollama (11434), Coordinator (8001), Exchange (8000) +- **AI Services**: Ollama (11434), Agent Coordinator (9001), Exchange (8001) - **Network Connectivity**: Both nodes can communicate - **Sufficient Balance**: Test wallet with adequate AIT tokens @@ -709,14 +710,14 @@ chmod +x /opt/aitbc/aitbc-cli ```bash # Check service status systemctl status aitbc-blockchain-rpc -systemctl status aitbc-coordinator +systemctl status aitbc-agent-coordinator.service # Restart services if needed systemctl restart aitbc-blockchain-rpc -systemctl restart aitbc-coordinator +systemctl restart aitbc-agent-coordinator.service # Verify ports -netstat -tlnp | grep -E '800[0167]|11434' +netstat -tlnp | grep -E '9001|8001|8006|11434' ``` #### **Node Connectivity Issues** @@ -745,7 +746,7 @@ curl http://localhost:11434/api/tags /opt/aitbc/aitbc-cli balance --name openclaw-trainee # Check AI service status -/opt/aitbc/aitbc-cli ai --service --status --name coordinator +/opt/aitbc/aitbc-cli ai service status --name agent-coordinator ``` #### **Script Execution Timeout** @@ -889,14 +890,14 @@ systemctl restart aitbc-* # Verify system health curl http://10.1.223.40:8006/health curl http://:8006/health +curl http://10.1.223.40:9001/health curl http://10.1.223.40:8001/health -curl http://10.1.223.40:8000/health ``` --- -**Training Plan Version**: 1.1 -**Last Updated**: 2026-04-02 +**Training Plan Version**: 2.1 +**Last Updated**: 2026-05-02 **Target Audience**: OpenClaw Agents **Difficulty**: Beginner to Expert (5 Stages) **Estimated Duration**: 4 weeks diff --git a/.windsurf/references/ai-operations-reference.md b/.windsurf/references/ai-operations-reference.md index 6f844b1e..759c5303 100644 --- a/.windsurf/references/ai-operations-reference.md +++ b/.windsurf/references/ai-operations-reference.md @@ -247,6 +247,8 @@ python3 /opt/aitbc/plugins/ollama/client_plugin.py --model llama2 --prompt "Gene ## OpenClaw Agent Coordination +> **Canonical validation**: Use [`docs/scenarios/VALIDATION.md`](../../docs/scenarios/VALIDATION.md) and `scripts/workflow/44_comprehensive_multi_node_scenario.sh` for the current 3-node test path. + ### OpenClaw AI Agent Setup ```bash # Initialize OpenClaw AI agent diff --git a/.windsurf/skills/archive/openclaw-aitbc.md b/.windsurf/skills/archive/openclaw-aitbc.md index a90623b7..49c1de51 100644 --- a/.windsurf/skills/archive/openclaw-aitbc.md +++ b/.windsurf/skills/archive/openclaw-aitbc.md @@ -8,24 +8,21 @@ version: 6.0 - DEPRECATED โš ๏ธ **This skill has been split into focused skills for better organization:** -## ๐Ÿ“š New Split Skills +## ๐Ÿ“š Current Active OpenClaw Skills -### 1. OpenClaw Agent Management Skill -**File**: `openclaw-management.md` +This legacy bundle now maps to the current atomic OpenClaw skill files: -**Focus**: Pure OpenClaw agent operations, communication, and coordination -- Agent creation and management -- Session-based workflows -- Cross-agent communication -- Performance optimization -- Error handling and debugging +- **`openclaw-agent-communicator.md`** โ€” agent message handling and responses +- **`openclaw-session-manager.md`** โ€” session creation and context management +- **`openclaw-coordination-orchestrator.md`** โ€” multi-agent workflow coordination +- **`openclaw-performance-optimizer.md`** โ€” agent performance tuning and optimization +- **`openclaw-error-handler.md`** โ€” error detection and recovery procedures +- **`openclaw-agent-testing-skill.md`** โ€” agent communication validation and performance testing -**Use for**: Agent orchestration, workflow coordination, multi-agent systems - -### 2. AITBC Blockchain Operations Skill +### Archived Blockchain Companion **File**: `aitbc-blockchain.md` -**Focus**: Pure AITBC blockchain operations and integration +**Focus**: AITBC blockchain operations and integration retained as an archived companion - Wallet management and transactions - AI operations and marketplace - Node coordination and monitoring @@ -164,7 +161,15 @@ cd /opt/aitbc && source venv/bin/activate **Recommendation**: Use the new split skills for all new development. This legacy skill is maintained for backward compatibility but will be deprecated in future versions. -## Quick Links to New Skills +## Quick Links to Current Active Skills + +- **OpenClaw Agent Communicator**: [../openclaw-agent-communicator.md](../openclaw-agent-communicator.md) +- **OpenClaw Session Manager**: [../openclaw-session-manager.md](../openclaw-session-manager.md) +- **OpenClaw Coordination Orchestrator**: [../openclaw-coordination-orchestrator.md](../openclaw-coordination-orchestrator.md) +- **OpenClaw Performance Optimizer**: [../openclaw-performance-optimizer.md](../openclaw-performance-optimizer.md) +- **OpenClaw Error Handler**: [../openclaw-error-handler.md](../openclaw-error-handler.md) +- **OpenClaw Agent Testing Skill**: [../openclaw-agent-testing-skill.md](../openclaw-agent-testing-skill.md) + +## Archived Blockchain Companion -- **OpenClaw Agent Management**: [openclaw-management.md](openclaw-management.md) - **AITBC Blockchain Operations**: [aitbc-blockchain.md](aitbc-blockchain.md) diff --git a/.windsurf/skills/archive/openclaw-management.md b/.windsurf/skills/archive/openclaw-management.md index 407ed062..6b98c852 100644 --- a/.windsurf/skills/archive/openclaw-management.md +++ b/.windsurf/skills/archive/openclaw-management.md @@ -8,6 +8,17 @@ version: 1.0 This skill provides comprehensive OpenClaw agent management, communication, and coordination capabilities. Focus on agent operations, session management, and cross-agent workflows. +## Current Active OpenClaw Skills + +This archived management skill is now represented by the following active atomic skill files: + +- **`openclaw-agent-communicator.md`** โ€” agent message handling and responses +- **`openclaw-session-manager.md`** โ€” session creation and context management +- **`openclaw-coordination-orchestrator.md`** โ€” multi-agent workflow coordination +- **`openclaw-performance-optimizer.md`** โ€” agent performance tuning and optimization +- **`openclaw-error-handler.md`** โ€” error detection and recovery procedures +- **`openclaw-agent-testing-skill.md`** โ€” agent communication validation and performance testing + ## Prerequisites - OpenClaw 2026.3.24+ installed and gateway running @@ -342,3 +353,12 @@ openclaw config --show --agent main - Implement proper session cleanup This OpenClaw Agent Management skill provides the foundation for effective agent coordination, communication, and workflow orchestration across any domain or application. + +## Quick Links to Current Active Skills + +- **OpenClaw Agent Communicator**: [../openclaw-agent-communicator.md](../openclaw-agent-communicator.md) +- **OpenClaw Session Manager**: [../openclaw-session-manager.md](../openclaw-session-manager.md) +- **OpenClaw Coordination Orchestrator**: [../openclaw-coordination-orchestrator.md](../openclaw-coordination-orchestrator.md) +- **OpenClaw Performance Optimizer**: [../openclaw-performance-optimizer.md](../openclaw-performance-optimizer.md) +- **OpenClaw Error Handler**: [../openclaw-error-handler.md](../openclaw-error-handler.md) +- **OpenClaw Agent Testing Skill**: [../openclaw-agent-testing-skill.md](../openclaw-agent-testing-skill.md) diff --git a/.windsurf/templates/agent-templates.md b/.windsurf/templates/agent-templates.md index 825162ff..fb62420d 100644 --- a/.windsurf/templates/agent-templates.md +++ b/.windsurf/templates/agent-templates.md @@ -1,5 +1,7 @@ # OpenClaw AITBC Agent Templates +> **Canonical validation**: Use [`docs/scenarios/VALIDATION.md`](../../docs/scenarios/VALIDATION.md) with `scripts/workflow/44_comprehensive_multi_node_scenario.sh` when validating these templates. + ## Blockchain Monitor Agent ```json { diff --git a/.windsurf/templates/workflow-templates.md b/.windsurf/templates/workflow-templates.md index 10a7f264..0e2d8e44 100644 --- a/.windsurf/templates/workflow-templates.md +++ b/.windsurf/templates/workflow-templates.md @@ -1,5 +1,7 @@ # OpenClaw AITBC Workflow Templates +> **Canonical validation**: For end-to-end node coverage, use [`docs/scenarios/VALIDATION.md`](../../docs/scenarios/VALIDATION.md) and `scripts/workflow/44_comprehensive_multi_node_scenario.sh`. + ## Multi-Node Health Check Workflow ```yaml name: multi-node-health-check diff --git a/.windsurf/workflows/MULTI_NODE_MASTER_INDEX.md b/.windsurf/workflows/MULTI_NODE_MASTER_INDEX.md index ba1796e6..b4c3e265 100644 --- a/.windsurf/workflows/MULTI_NODE_MASTER_INDEX.md +++ b/.windsurf/workflows/MULTI_NODE_MASTER_INDEX.md @@ -416,10 +416,12 @@ Two-Node AITBC Blockchain: ## ๐Ÿ“š Additional Resources ### Documentation Files -- **AI Operations Reference**: `openclaw-aitbc/ai-operations-reference.md` -- **Agent Templates**: `openclaw-aitbc/agent-templates.md` -- **Workflow Templates**: `openclaw-aitbc/workflow-templates.md` -- **Setup Scripts**: `openclaw-aitbc/setup.sh` +- **OpenClaw Agent Communicator**: `../skills/openclaw-agent-communicator.md` +- **OpenClaw Coordination Orchestrator**: `../skills/openclaw-coordination-orchestrator.md` +- **OpenClaw Session Manager**: `../skills/openclaw-session-manager.md` +- **OpenClaw Agent Testing**: `../skills/openclaw-agent-testing-skill.md` +- **OpenClaw Error Handler**: `../skills/openclaw-error-handler.md` +- **OpenClaw Performance Optimizer**: `../skills/openclaw-performance-optimizer.md` ### External Resources - **AITBC Repository**: GitHub repository diff --git a/.windsurf/workflows/OPENCLAW_MASTER_INDEX.md b/.windsurf/workflows/OPENCLAW_MASTER_INDEX.md index e5830059..1081f001 100644 --- a/.windsurf/workflows/OPENCLAW_MASTER_INDEX.md +++ b/.windsurf/workflows/OPENCLAW_MASTER_INDEX.md @@ -240,7 +240,7 @@ OpenClaw Agent Ecosystem: 1. **Agent Recovery**: Restart OpenClaw gateway, check agent status 2. **Network Recovery**: Check node connectivity, restart P2P service 3. **Blockchain Recovery**: Check node sync, verify transaction pool -4. **Service Recovery**: Restart coordinator, Ollama, GPU miner +4. **Service Recovery**: Restart Agent Coordinator, Ollama, GPU miner ## ๐Ÿ“š Additional Resources diff --git a/.windsurf/workflows/archive/ollama-gpu-test.md b/.windsurf/workflows/archive/ollama-gpu-test.md index e5a2676f..461c9bcc 100755 --- a/.windsurf/workflows/archive/ollama-gpu-test.md +++ b/.windsurf/workflows/archive/ollama-gpu-test.md @@ -6,6 +6,15 @@ description: Complete Ollama GPU provider test workflow from client submission t This workflow executes the complete end-to-end test for Ollama GPU inference jobs, including payment processing and blockchain transaction recording. +## Current Active Skill Mapping + +This archived workflow maps to these active OpenClaw skills when you need agent coordination or validation support: + +- **`openclaw-agent-testing-skill.md`** โ€” agent communication validation and performance testing +- **`openclaw-agent-communicator.md`** โ€” agent message handling and responses +- **`openclaw-coordination-orchestrator.md`** โ€” multi-agent workflow coordination +- **`openclaw-session-manager.md`** โ€” session creation and context management + ## Prerequisites // turbo diff --git a/.windsurf/workflows/archive/test-openclaw-agents.md b/.windsurf/workflows/archive/test-openclaw-agents.md index 97db3d3d..8710213a 100644 --- a/.windsurf/workflows/archive/test-openclaw-agents.md +++ b/.windsurf/workflows/archive/test-openclaw-agents.md @@ -8,6 +8,16 @@ version: 1.0 This module covers OpenClaw agent functionality testing, multi-agent coordination, session management, and agent workflow validation. +## Current Active Skill Mapping + +This archived workflow maps to these active split skill files: + +- **`openclaw-agent-testing-skill.md`** โ€” agent communication validation and performance testing +- **`openclaw-agent-communicator.md`** โ€” agent message handling and responses +- **`openclaw-session-manager.md`** โ€” session creation and context management +- **`openclaw-coordination-orchestrator.md`** โ€” multi-agent workflow coordination +- **`openclaw-performance-optimizer.md`** โ€” agent performance tuning and optimization + ## Prerequisites ### Required Setup diff --git a/.windsurf/workflows/multi-node-blockchain-setup-openclaw.md b/.windsurf/workflows/multi-node-blockchain-setup-openclaw.md index e4717d84..7958ed2f 100644 --- a/.windsurf/workflows/multi-node-blockchain-setup-openclaw.md +++ b/.windsurf/workflows/multi-node-blockchain-setup-openclaw.md @@ -272,7 +272,7 @@ ssh aitbc1 'systemctl is-active aitbc-blockchain-{node,rpc}.service' openclaw agent --agent main --message "Report multi-node blockchain health" --thinking medium # Integration test -/opt/aitbc/.windsurf/skills/openclaw-aitbc/setup.sh test +/opt/aitbc/scripts/workflow/44_comprehensive_multi_node_scenario.sh ``` ## Documentation diff --git a/apps/agent-services/agent-bridge/src/integration_layer.py b/apps/agent-services/agent-bridge/src/integration_layer.py index 2cbf9542..c1d5c3f2 100644 --- a/apps/agent-services/agent-bridge/src/integration_layer.py +++ b/apps/agent-services/agent-bridge/src/integration_layer.py @@ -15,7 +15,7 @@ class AITBCServiceIntegration: def __init__(self): self.service_endpoints = { - "coordinator_api": "http://localhost:8000", + "coordinator_api": "http://localhost:8011", "blockchain_rpc": "http://localhost:8006", "exchange_service": "http://localhost:8001", "marketplace": "http://localhost:8002", diff --git a/apps/api-gateway/src/api_gateway/main.py b/apps/api-gateway/src/api_gateway/main.py index ae6abfe2..cc73b444 100644 --- a/apps/api-gateway/src/api_gateway/main.py +++ b/apps/api-gateway/src/api_gateway/main.py @@ -62,7 +62,7 @@ SERVICES = { "prefix": "/plugin", }, "coordinator": { - "base_url": "http://localhost:8000", + "base_url": "http://localhost:8011", "prefix": "/coordinator", }, } diff --git a/apps/blockchain-node/src/aitbc_chain/app.py b/apps/blockchain-node/src/aitbc_chain/app.py index 9c12a33d..50f885e7 100755 --- a/apps/blockchain-node/src/aitbc_chain/app.py +++ b/apps/blockchain-node/src/aitbc_chain/app.py @@ -169,7 +169,7 @@ def create_app() -> FastAPI: app.add_middleware( CORSMiddleware, allow_origins=[ - "http://localhost:8000", # Coordinator API + "http://localhost:8011", # Coordinator API "http://localhost:8001", # Exchange API "http://localhost:8002", # Blockchain Node "http://localhost:8003", # Blockchain RPC diff --git a/apps/blockchain-node/src/aitbc_chain/gossip/relay.py b/apps/blockchain-node/src/aitbc_chain/gossip/relay.py index b174abf5..c915045c 100755 --- a/apps/blockchain-node/src/aitbc_chain/gossip/relay.py +++ b/apps/blockchain-node/src/aitbc_chain/gossip/relay.py @@ -73,7 +73,7 @@ def create_app() -> Starlette: Middleware( CORSMiddleware, allow_origins=[ - "http://localhost:8000", # Coordinator API + "http://localhost:8011", # Coordinator API "http://localhost:8001", # Exchange API "http://localhost:8002", # Blockchain Node "http://localhost:8003", # Blockchain RPC diff --git a/apps/coordinator-api/deploy_cross_chain_reputation_staging.sh b/apps/coordinator-api/deploy_cross_chain_reputation_staging.sh index ad250047..e09caec9 100755 --- a/apps/coordinator-api/deploy_cross_chain_reputation_staging.sh +++ b/apps/coordinator-api/deploy_cross_chain_reputation_staging.sh @@ -270,7 +270,7 @@ if [[ $? -eq 0 ]]; then echo "๐Ÿš€ Next Steps:" echo " 1. Apply database migration: alembic upgrade head" echo " 2. Start API server: uvicorn src.app.main:app --reload" - echo " 3. Test API endpoints: curl http://localhost:8000/v1/reputation/health" + echo " 3. Test API endpoints: curl http://localhost:8011/v1/reputation/health" echo " 4. Monitor performance and logs" echo "" echo "โœ… System is ready for staging environment testing!" diff --git a/apps/coordinator-api/examples/agent_identity_sdk_example.py b/apps/coordinator-api/examples/agent_identity_sdk_example.py index b7d6560f..9e824ef4 100755 --- a/apps/coordinator-api/examples/agent_identity_sdk_example.py +++ b/apps/coordinator-api/examples/agent_identity_sdk_example.py @@ -29,7 +29,7 @@ async def basic_identity_example(): # Initialize the client async with AgentIdentityClient( - base_url="http://localhost:8000/v1", + base_url="http://localhost:8011/v1", api_key="demo_api_key" ) as client: @@ -176,7 +176,7 @@ async def advanced_transaction_example(): print("=" * 60) async with AgentIdentityClient( - base_url="http://localhost:8000/v1", + base_url="http://localhost:8011/v1", api_key="demo_api_key" ) as client: @@ -261,7 +261,7 @@ async def search_and_discovery_example(): print("=" * 65) async with AgentIdentityClient( - base_url="http://localhost:8000/v1", + base_url="http://localhost:8011/v1", api_key="demo_api_key" ) as client: @@ -347,7 +347,7 @@ async def main(): print("including identity management, cross-chain operations, and search functionality.") print() print("Note: This example requires a running Agent Identity API server.") - print("Make sure the API is running at http://localhost:8000/v1") + print("Make sure the API is running at http://localhost:8011/v1") print() try: diff --git a/apps/coordinator-api/scripts/check_coordinator_proxy.sh b/apps/coordinator-api/scripts/check_coordinator_proxy.sh index 94ede524..6ca4a9d3 100755 --- a/apps/coordinator-api/scripts/check_coordinator_proxy.sh +++ b/apps/coordinator-api/scripts/check_coordinator_proxy.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash set -euo pipefail -HEALTH_URL="http://127.0.0.1:8000/v1/health" +HEALTH_URL="${HEALTH_URL:-http://127.0.0.1:8011/v1/health}" MAX_RETRIES=10 RETRY_DELAY=2 diff --git a/apps/coordinator-api/src/app/config.py b/apps/coordinator-api/src/app/config.py index 5911b50a..fddf0083 100755 --- a/apps/coordinator-api/src/app/config.py +++ b/apps/coordinator-api/src/app/config.py @@ -130,7 +130,7 @@ class Settings(BaseSettings): # CORS allow_origins: list[str] = [ - "http://localhost:8000", # Coordinator API + "http://localhost:8011", # Coordinator API "http://localhost:8001", # Exchange API "http://localhost:8002", # Blockchain Node "http://localhost:8003", # Blockchain RPC diff --git a/apps/coordinator-api/src/app/config_pg.py b/apps/coordinator-api/src/app/config_pg.py index 919c0791..196a525d 100755 --- a/apps/coordinator-api/src/app/config_pg.py +++ b/apps/coordinator-api/src/app/config_pg.py @@ -9,7 +9,7 @@ class Settings(BaseSettings): # API Configuration api_host: str = "0.0.0.0" - api_port: int = 8000 + api_port: int = 8011 api_prefix: str = "/v1" debug: bool = False @@ -38,7 +38,7 @@ class Settings(BaseSettings): # CORS Configuration cors_origins: list[str] = [ - "http://localhost:8000", # Coordinator API + "http://localhost:8011", # Coordinator API "http://localhost:8001", # Exchange API "http://localhost:8002", # Blockchain Node "http://localhost:8003", # Blockchain RPC @@ -50,7 +50,7 @@ class Settings(BaseSettings): "http://localhost:8015", # OpenClaw Enhanced "http://localhost:8016", # Web UI "https://aitbc.bubuit.net", - "https://aitbc.bubuit.net:8000", + "https://aitbc.bubuit.net:8011", "https://aitbc.bubuit.net:8001", "https://aitbc.bubuit.net:8003", "https://aitbc.bubuit.net:8016", diff --git a/apps/exchange/exchange_api.py b/apps/exchange/exchange_api.py index 909dc6db..71257f27 100755 --- a/apps/exchange/exchange_api.py +++ b/apps/exchange/exchange_api.py @@ -76,7 +76,7 @@ app.add_middleware( allow_origins=[ "http://localhost:3000", "http://localhost:8080", - "http://localhost:8000", + "http://localhost:8011", "http://localhost:8008" ], allow_credentials=True, diff --git a/apps/miner/production_miner.py b/apps/miner/production_miner.py index 730761af..a4a4e048 100755 --- a/apps/miner/production_miner.py +++ b/apps/miner/production_miner.py @@ -14,7 +14,7 @@ from typing import Dict, Optional from aitbc import get_logger, AITBCHTTPClient, NetworkError # Configuration -COORDINATOR_URL = os.environ.get("COORDINATOR_URL", "http://127.0.0.1:8001") +COORDINATOR_URL = os.environ.get("COORDINATOR_URL", "http://127.0.0.1:8011") MINER_ID = os.environ.get("MINER_API_KEY", "miner_test") AUTH_TOKEN = os.environ.get("MINER_API_KEY", "miner_test") HEARTBEAT_INTERVAL = 15 diff --git a/apps/wallet/simple_daemon.py b/apps/wallet/simple_daemon.py index e8cc8d7c..4e6d84f4 100755 --- a/apps/wallet/simple_daemon.py +++ b/apps/wallet/simple_daemon.py @@ -36,7 +36,7 @@ chains_data = { "chain_id": "ait-mainnet", "name": "AITBC Mainnet", "status": "active", - "coordinator_url": "http://localhost:8000", + "coordinator_url": "http://localhost:8011", "blockchain_url": BLOCKCHAIN_RPC_URL, "created_at": "2026-01-01T00:00:00Z", "updated_at": datetime.now().isoformat(), diff --git a/cli/aitbc_cli/commands/agent_sdk.py b/cli/aitbc_cli/commands/agent_sdk.py index e4f9e425..1874688c 100644 --- a/cli/aitbc_cli/commands/agent_sdk.py +++ b/cli/aitbc_cli/commands/agent_sdk.py @@ -388,7 +388,7 @@ try: @agent.command() @click.argument('agent_id') - @click.option('--coordinator-url', default='http://localhost:8001', help='Coordinator URL') + @click.option('--coordinator-url', default='http://localhost:9001', help='Coordinator URL') @click.option('--format', type=click.Choice(['table', 'json']), default='table', help='Output format') @click.pass_context def register(ctx, agent_id, coordinator_url, format): diff --git a/cli/aitbc_cli/config.py b/cli/aitbc_cli/config.py index d7c43fe3..c1b39369 100644 --- a/cli/aitbc_cli/config.py +++ b/cli/aitbc_cli/config.py @@ -38,7 +38,7 @@ class CLIConfig(BaseAITBCConfig): blockchain_rpc_url: str = Field(default=f"http://localhost:{BLOCKCHAIN_RPC_PORT}", description="Blockchain RPC URL") # Legacy coordinator URL (deprecated, kept for backward compatibility during migration) - coordinator_url: str = Field(default="http://localhost:8000", description="Coordinator API URL (deprecated)") + coordinator_url: str = Field(default="http://localhost:8011", description="Coordinator API URL (deprecated)") # Chain configuration chain_id: str = Field(default="ait-mainnet", description="Default chain ID for multichain operations") @@ -65,7 +65,7 @@ def get_config(config_file: Optional[str] = None) -> CLIConfig: # Override with config file values return CLIConfig( - coordinator_url=config_data.get("coordinator_url", "http://localhost:8000"), + coordinator_url=config_data.get("coordinator_url", "http://localhost:8011"), wallet_daemon_url=config_data.get("wallet_url", "http://localhost:8003"), api_key=config_data.get("api_key"), timeout=config_data.get("timeout", 30) diff --git a/cli/miner_cli.py b/cli/miner_cli.py index c09453bd..e29969ab 100755 --- a/cli/miner_cli.py +++ b/cli/miner_cli.py @@ -46,7 +46,7 @@ Examples: """ ) - parser.add_argument("--coordinator-url", default="http://localhost:8000", + parser.add_argument("--coordinator-url", default="http://localhost:8011", help="Coordinator API URL") parser.add_argument("--api-key", default="miner_prod_key_use_real_value", help="Miner API key") diff --git a/cli/miner_management.py b/cli/miner_management.py index f6ae8f37..316af345 100644 --- a/cli/miner_management.py +++ b/cli/miner_management.py @@ -15,7 +15,7 @@ import requests from typing import Optional, Dict, Any # Default configuration -DEFAULT_COORDINATOR_URL = "http://localhost:8000" +DEFAULT_COORDINATOR_URL = "http://localhost:8011" DEFAULT_API_KEY = "miner_prod_key_use_real_value" diff --git a/cli/parsers/agent.py b/cli/parsers/agent.py index 1d8ffb6f..46e113db 100644 --- a/cli/parsers/agent.py +++ b/cli/parsers/agent.py @@ -71,7 +71,7 @@ def register(subparsers: argparse._SubParsersAction, ctx: ParserContext) -> None # agent sdk register agent_sdk_register_parser = agent_sdk_subparsers.add_parser("register", help="Register agent with coordinator") agent_sdk_register_parser.add_argument("--agent-id", required=True, help="Agent ID") - agent_sdk_register_parser.add_argument("--coordinator-url", default="http://localhost:8001", help="Coordinator URL") + agent_sdk_register_parser.add_argument("--coordinator-url", default="http://localhost:9001", help="Coordinator URL") agent_sdk_register_parser.set_defaults(handler=ctx.handle_agent_sdk_action, agent_sdk_action="register") # agent sdk list diff --git a/cli/unified_cli.py b/cli/unified_cli.py index c08e7ad4..3d7d61aa 100755 --- a/cli/unified_cli.py +++ b/cli/unified_cli.py @@ -31,7 +31,7 @@ def run_cli(argv, core): # Extended features interception removed - replaced with actual RPC calls default_rpc_url = core["DEFAULT_RPC_URL"] - default_coordinator_url = core.get("DEFAULT_COORDINATOR_URL", "http://localhost:8000") + default_coordinator_url = core.get("DEFAULT_COORDINATOR_URL", "http://localhost:8011") # New microservice URLs default_gpu_url = core.get("DEFAULT_GPU_URL", "http://localhost:8101") default_marketplace_url = core.get("DEFAULT_MARKETPLACE_URL", "http://localhost:8102") diff --git a/docs/openclaw/OPENCLAW_AITBC_MASTERY_PLAN_IMPLEMENTATION_STATUS.md b/docs/openclaw/OPENCLAW_AITBC_MASTERY_PLAN_IMPLEMENTATION_STATUS.md index 55bd6642..738e526b 100644 --- a/docs/openclaw/OPENCLAW_AITBC_MASTERY_PLAN_IMPLEMENTATION_STATUS.md +++ b/docs/openclaw/OPENCLAW_AITBC_MASTERY_PLAN_IMPLEMENTATION_STATUS.md @@ -39,7 +39,7 @@ The OpenClaw AITBC Mastery Plan has been successfully implemented. All 5 trainin **Key Achievements**: - Successfully created `openclaw-trainee` wallet - Verified service health on both nodes -- Tested node-specific operations on ports 8006 and 8007 +- Tested node-specific operations on both nodes over port 8006 - Nodes confirmed synchronized at height 22502 **Log File**: `/var/log/aitbc/training_stage1_foundation.log` @@ -133,15 +133,15 @@ The OpenClaw AITBC Mastery Plan has been successfully implemented. All 5 trainin ### Node Configuration - **Genesis Node**: Port 8006 โœ… -- **Follower Node**: Port 8007 โœ… +- **Follower Node**: Port 8006 โœ… - **Blockchain Height**: 22502 (synchronized) - **Chain ID**: ait-mainnet ### Services Status -- **Coordinator**: Port 8001 โœ… -- **Exchange**: Port 8000 โœ… +- **Agent Coordinator**: Port 9001 โœ… +- **Exchange**: Port 8001 โœ… - **Ollama**: Port 11434 โœ… -- **Blockchain RPC**: Ports 8006/8007 โœ… +- **Blockchain RPC**: Port 8006 on both nodes โœ… --- diff --git a/docs/scenarios/01_wallet_basics.md b/docs/scenarios/01_wallet_basics.md index 34792d1b..14880e21 100644 --- a/docs/scenarios/01_wallet_basics.md +++ b/docs/scenarios/01_wallet_basics.md @@ -220,6 +220,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/02_transaction_sending.md b/docs/scenarios/02_transaction_sending.md index a60feb0c..1ef4324a 100644 --- a/docs/scenarios/02_transaction_sending.md +++ b/docs/scenarios/02_transaction_sending.md @@ -250,6 +250,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/03_genesis_deployment.md b/docs/scenarios/03_genesis_deployment.md index d26b8459..ba2cfb43 100644 --- a/docs/scenarios/03_genesis_deployment.md +++ b/docs/scenarios/03_genesis_deployment.md @@ -276,6 +276,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/04_messaging_basics.md b/docs/scenarios/04_messaging_basics.md index d0345b10..66066ab9 100644 --- a/docs/scenarios/04_messaging_basics.md +++ b/docs/scenarios/04_messaging_basics.md @@ -271,6 +271,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/05_island_creation.md b/docs/scenarios/05_island_creation.md index 4c42b9ac..3df9b09e 100644 --- a/docs/scenarios/05_island_creation.md +++ b/docs/scenarios/05_island_creation.md @@ -241,6 +241,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/06_basic_trading.md b/docs/scenarios/06_basic_trading.md index 5b710c5c..c48cfdc1 100644 --- a/docs/scenarios/06_basic_trading.md +++ b/docs/scenarios/06_basic_trading.md @@ -277,6 +277,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/07_ai_job_submission.md b/docs/scenarios/07_ai_job_submission.md index 3f5e2d1f..43c4b96b 100644 --- a/docs/scenarios/07_ai_job_submission.md +++ b/docs/scenarios/07_ai_job_submission.md @@ -298,6 +298,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/08_marketplace_bidding.md b/docs/scenarios/08_marketplace_bidding.md index 0c9f6e54..ad33c10d 100644 --- a/docs/scenarios/08_marketplace_bidding.md +++ b/docs/scenarios/08_marketplace_bidding.md @@ -263,6 +263,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/09_gpu_listing.md b/docs/scenarios/09_gpu_listing.md index 81ed5fe0..3d859d3e 100644 --- a/docs/scenarios/09_gpu_listing.md +++ b/docs/scenarios/09_gpu_listing.md @@ -269,6 +269,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/10_plugin_development.md b/docs/scenarios/10_plugin_development.md index 50dfeb3d..c25cdafa 100644 --- a/docs/scenarios/10_plugin_development.md +++ b/docs/scenarios/10_plugin_development.md @@ -286,6 +286,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/11_ipfs_storage.md b/docs/scenarios/11_ipfs_storage.md index 6a324a4b..ff5cd8a0 100644 --- a/docs/scenarios/11_ipfs_storage.md +++ b/docs/scenarios/11_ipfs_storage.md @@ -305,6 +305,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/12_database_operations.md b/docs/scenarios/12_database_operations.md index c8e05bdf..f266ef7a 100644 --- a/docs/scenarios/12_database_operations.md +++ b/docs/scenarios/12_database_operations.md @@ -362,6 +362,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/13_mining_setup.md b/docs/scenarios/13_mining_setup.md index c66c1cbf..ec42d465 100644 --- a/docs/scenarios/13_mining_setup.md +++ b/docs/scenarios/13_mining_setup.md @@ -252,6 +252,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/14_staking_basics.md b/docs/scenarios/14_staking_basics.md index bb3ec226..5e2144f0 100644 --- a/docs/scenarios/14_staking_basics.md +++ b/docs/scenarios/14_staking_basics.md @@ -276,6 +276,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/15_blockchain_monitoring.md b/docs/scenarios/15_blockchain_monitoring.md index f75c109b..2af9e471 100644 --- a/docs/scenarios/15_blockchain_monitoring.md +++ b/docs/scenarios/15_blockchain_monitoring.md @@ -257,6 +257,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/16_agent_registration.md b/docs/scenarios/16_agent_registration.md index f44c6a7a..c834448c 100644 --- a/docs/scenarios/16_agent_registration.md +++ b/docs/scenarios/16_agent_registration.md @@ -270,6 +270,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/17_governance_voting.md b/docs/scenarios/17_governance_voting.md index 68bf33fe..57d25e28 100644 --- a/docs/scenarios/17_governance_voting.md +++ b/docs/scenarios/17_governance_voting.md @@ -288,6 +288,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/18_analytics_collection.md b/docs/scenarios/18_analytics_collection.md index 8938996b..ac1e1c2d 100644 --- a/docs/scenarios/18_analytics_collection.md +++ b/docs/scenarios/18_analytics_collection.md @@ -303,6 +303,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/19_security_setup.md b/docs/scenarios/19_security_setup.md index c8f665f6..09a37b96 100644 --- a/docs/scenarios/19_security_setup.md +++ b/docs/scenarios/19_security_setup.md @@ -264,6 +264,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/20_cross_chain_transfer.md b/docs/scenarios/20_cross_chain_transfer.md index d5efdfa4..4e1de876 100644 --- a/docs/scenarios/20_cross_chain_transfer.md +++ b/docs/scenarios/20_cross_chain_transfer.md @@ -305,6 +305,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/21_compute_provider_agent.md b/docs/scenarios/21_compute_provider_agent.md index 5ef31223..612696fb 100644 --- a/docs/scenarios/21_compute_provider_agent.md +++ b/docs/scenarios/21_compute_provider_agent.md @@ -342,6 +342,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/22_ai_training_agent.md b/docs/scenarios/22_ai_training_agent.md index 909d01c6..263a4547 100644 --- a/docs/scenarios/22_ai_training_agent.md +++ b/docs/scenarios/22_ai_training_agent.md @@ -351,6 +351,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/23_data_oracle_agent.md b/docs/scenarios/23_data_oracle_agent.md index 8742a8f1..7bbd4a38 100644 --- a/docs/scenarios/23_data_oracle_agent.md +++ b/docs/scenarios/23_data_oracle_agent.md @@ -328,6 +328,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/24_swarm_coordinator.md b/docs/scenarios/24_swarm_coordinator.md index 6a165c6d..576a4ee1 100644 --- a/docs/scenarios/24_swarm_coordinator.md +++ b/docs/scenarios/24_swarm_coordinator.md @@ -313,6 +313,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/25_marketplace_arbitrage.md b/docs/scenarios/25_marketplace_arbitrage.md index 9006e801..8d1ee9a1 100644 --- a/docs/scenarios/25_marketplace_arbitrage.md +++ b/docs/scenarios/25_marketplace_arbitrage.md @@ -361,6 +361,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/26_staking_validator_agent.md b/docs/scenarios/26_staking_validator_agent.md index bc85c7af..9ed790f8 100644 --- a/docs/scenarios/26_staking_validator_agent.md +++ b/docs/scenarios/26_staking_validator_agent.md @@ -359,6 +359,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/27_cross_chain_trader.md b/docs/scenarios/27_cross_chain_trader.md index 838b1239..450f352f 100644 --- a/docs/scenarios/27_cross_chain_trader.md +++ b/docs/scenarios/27_cross_chain_trader.md @@ -409,6 +409,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/28_monitoring_agent.md b/docs/scenarios/28_monitoring_agent.md index 6267a773..24186dff 100644 --- a/docs/scenarios/28_monitoring_agent.md +++ b/docs/scenarios/28_monitoring_agent.md @@ -340,6 +340,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/29_plugin_marketplace_agent.md b/docs/scenarios/29_plugin_marketplace_agent.md index 9b09a659..0dee728c 100644 --- a/docs/scenarios/29_plugin_marketplace_agent.md +++ b/docs/scenarios/29_plugin_marketplace_agent.md @@ -411,6 +411,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/30_database_service_agent.md b/docs/scenarios/30_database_service_agent.md index cb360fb1..cdb41f25 100644 --- a/docs/scenarios/30_database_service_agent.md +++ b/docs/scenarios/30_database_service_agent.md @@ -454,6 +454,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/31_federation_bridge_agent.md b/docs/scenarios/31_federation_bridge_agent.md index 806e164e..70b75d66 100644 --- a/docs/scenarios/31_federation_bridge_agent.md +++ b/docs/scenarios/31_federation_bridge_agent.md @@ -409,6 +409,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/32_ai_power_advertiser.md b/docs/scenarios/32_ai_power_advertiser.md index 4facb772..93a6c302 100644 --- a/docs/scenarios/32_ai_power_advertiser.md +++ b/docs/scenarios/32_ai_power_advertiser.md @@ -440,6 +440,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/33_multi_chain_validator.md b/docs/scenarios/33_multi_chain_validator.md index 817f4234..41e05326 100644 --- a/docs/scenarios/33_multi_chain_validator.md +++ b/docs/scenarios/33_multi_chain_validator.md @@ -492,6 +492,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/34_compliance_agent.md b/docs/scenarios/34_compliance_agent.md index 5dde1241..a226d52a 100644 --- a/docs/scenarios/34_compliance_agent.md +++ b/docs/scenarios/34_compliance_agent.md @@ -475,6 +475,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/35_edge_compute_agent.md b/docs/scenarios/35_edge_compute_agent.md index 1b44f793..5386a698 100644 --- a/docs/scenarios/35_edge_compute_agent.md +++ b/docs/scenarios/35_edge_compute_agent.md @@ -482,6 +482,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/36_autonomous_compute_provider.md b/docs/scenarios/36_autonomous_compute_provider.md index f88a3540..25ce7331 100644 --- a/docs/scenarios/36_autonomous_compute_provider.md +++ b/docs/scenarios/36_autonomous_compute_provider.md @@ -560,6 +560,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/37_distributed_ai_training.md b/docs/scenarios/37_distributed_ai_training.md index 3fdd918c..70773d3c 100644 --- a/docs/scenarios/37_distributed_ai_training.md +++ b/docs/scenarios/37_distributed_ai_training.md @@ -613,6 +613,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/38_cross_chain_market_maker.md b/docs/scenarios/38_cross_chain_market_maker.md index 3ad58714..bf798d6b 100644 --- a/docs/scenarios/38_cross_chain_market_maker.md +++ b/docs/scenarios/38_cross_chain_market_maker.md @@ -565,6 +565,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/39_federated_learning_coordinator.md b/docs/scenarios/39_federated_learning_coordinator.md index 4df66d9d..d17b49a6 100644 --- a/docs/scenarios/39_federated_learning_coordinator.md +++ b/docs/scenarios/39_federated_learning_coordinator.md @@ -555,6 +555,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/40_enterprise_ai_agent.md b/docs/scenarios/40_enterprise_ai_agent.md index 5707942d..332150f1 100644 --- a/docs/scenarios/40_enterprise_ai_agent.md +++ b/docs/scenarios/40_enterprise_ai_agent.md @@ -602,6 +602,30 @@ After completing this scenario, you should be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/41_bounty_system.md b/docs/scenarios/41_bounty_system.md index 6054db2b..fc0ac783 100644 --- a/docs/scenarios/41_bounty_system.md +++ b/docs/scenarios/41_bounty_system.md @@ -263,6 +263,30 @@ After completing this scenario, you will be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ“Š **Quality Metrics** - **Structure**: 10/10 - Clear bounty system workflow - **Content**: 10/10 - Comprehensive bounty operations diff --git a/docs/scenarios/42_portfolio_management.md b/docs/scenarios/42_portfolio_management.md index bcec73b4..1efff993 100644 --- a/docs/scenarios/42_portfolio_management.md +++ b/docs/scenarios/42_portfolio_management.md @@ -260,6 +260,30 @@ After completing this scenario, you will be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/43_knowledge_graph_market.md b/docs/scenarios/43_knowledge_graph_market.md index 64816a0d..f151f429 100644 --- a/docs/scenarios/43_knowledge_graph_market.md +++ b/docs/scenarios/43_knowledge_graph_market.md @@ -251,6 +251,30 @@ After completing this scenario, you will be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/44_dispute_resolution.md b/docs/scenarios/44_dispute_resolution.md index 4003efc6..c6d503be 100644 --- a/docs/scenarios/44_dispute_resolution.md +++ b/docs/scenarios/44_dispute_resolution.md @@ -234,6 +234,30 @@ After completing this scenario, you will be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/45_zero_knowledge_proofs.md b/docs/scenarios/45_zero_knowledge_proofs.md index eab5eaad..c8c2e2c8 100644 --- a/docs/scenarios/45_zero_knowledge_proofs.md +++ b/docs/scenarios/45_zero_knowledge_proofs.md @@ -235,6 +235,30 @@ After completing this scenario, you will be able to: --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ”— **Related Resources** ### **AITBC Documentation** diff --git a/docs/scenarios/README.md b/docs/scenarios/README.md index cebfc1f7..12d43731 100644 --- a/docs/scenarios/README.md +++ b/docs/scenarios/README.md @@ -133,6 +133,37 @@ All 20 AITBC feature categories are covered across the scenarios: --- +## ๐Ÿงช **Scenario Validation** + +Every scenario in this directory should be validated with scripts that exercise all 3 nodes: + +- **`aitbc1`** + - Genesis authority node + - Primary blockchain and sync validation + +- **`aitbc`** + - Follower / local integration node + - Scenario behavior and transaction flow validation + +- **`gitea-runner`** + - CI / automation node + - Workflow execution and third-node coverage + +### **Canonical Validation Guide** +- [Scenario Validation Guide](./VALIDATION.md) + +### **Canonical 3-Node Harness** +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +### **Supporting Setup Scripts** +- [Multi-Node Blockchain Setup](../../scripts/workflow/setup_multinode_blockchain.sh) +- [Comprehensive Blockchain Testing](../../scripts/workflow/25_comprehensive_testing.sh) +- [Consensus Testing](../../scripts/workflow/31_consensus_testing.sh) + +--- + ## ๐Ÿ”— **Where to go next** - [Agent SDK Documentation](../agent-sdk/README.md) diff --git a/docs/scenarios/VALIDATION.md b/docs/scenarios/VALIDATION.md new file mode 100644 index 00000000..c2f628af --- /dev/null +++ b/docs/scenarios/VALIDATION.md @@ -0,0 +1,85 @@ +# Scenario Validation Guide + +**Scope**: All scenario documents in `docs/scenarios/` +**Goal**: Ensure every scenario is tested with scripts that exercise all 3 nodes: `aitbc1`, `aitbc`, and `gitea-runner`. + +## ๐Ÿงญ Node Roles + +- **`aitbc1`** + - Genesis authority node + - Primary blockchain node for genesis, sync, and chain-state validation + +- **`aitbc`** + - Follower / local integration node + - Used for cross-node transaction, wallet, and application-flow checks + +- **`gitea-runner`** + - CI / automation node + - Used to verify the scenario can run in the same environment as the workflows + +## ๐Ÿงช Canonical Validation Scripts + +Use these scripts as the baseline when validating scenarios: + +- **Bootstrap the multi-node environment** + - `scripts/workflow/setup_multinode_blockchain.sh` + +- **Two-node blockchain smoke tests** + - `scripts/workflow/25_comprehensive_testing.sh` + - `scripts/workflow/31_consensus_testing.sh` + +- **Full 3-node scenario harness** + - `scripts/workflow/44_comprehensive_multi_node_scenario.sh` + +## โœ… Validation Rule for Scenario Docs + +Every scenario document should include a short validation section that answers: + +- **Which script validates this scenario?** +- **Which of the 3 nodes are exercised?** +- **What success criteria should be checked?** + +If a scenario is node-specific, note where each step runs: + +- **`aitbc1`** for genesis, primary chain, or authority actions +- **`aitbc`** for local/follower actions +- **`gitea-runner`** for CI-side execution or third-node coverage + +## ๐Ÿ“ Recommended Scenario Validation Block + +Add a section like this to each scenario document: + +````markdown +## ๐Ÿงช Validation + +Validate this scenario with the 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow +```` + +## ๐Ÿ” Workflow for Scenario Testing + +1. Bring up the multi-node environment. +2. Run the scenario-specific commands from the document. +3. Execute the 3-node validation harness. +4. Confirm the scenario behaves consistently on all 3 nodes. +5. Record any node-specific exceptions in the scenario document. + +## ๐Ÿ“Œ Notes + +- The 3-node script is the preferred canonical validation path. +- The smaller blockchain scripts are still useful for focused smoke tests. +- Scenario docs should link back here so the validation approach stays consistent. diff --git a/docs/scenarios/_TEMPLATE.md b/docs/scenarios/_TEMPLATE.md index 1ba26947..4cc737bc 100644 --- a/docs/scenarios/_TEMPLATE.md +++ b/docs/scenarios/_TEMPLATE.md @@ -72,6 +72,30 @@ command_here --- +## ๐Ÿงช **Validation** + +Validate this scenario with the shared 3-node harness: + +```bash +bash scripts/workflow/44_comprehensive_multi_node_scenario.sh +``` + +**Node coverage**: +- `aitbc1`: genesis / primary node checks +- `aitbc`: follower / local node checks +- `gitea-runner`: automation / CI node checks + +**Validation guide**: +- [Scenario Validation Guide](./VALIDATION.md) + +**Expected result**: +- Scenario-specific commands complete successfully +- Cross-node health checks pass +- Blockchain heights remain in sync +- Any node-specific step is documented in the scenario workflow + +--- + ## ๐Ÿ’ป **Code Examples Using Agent SDK** ### **Example 1: [Example Title]** diff --git a/packages/py/aitbc-agent-sdk/src/aitbc_agent/agent.py b/packages/py/aitbc-agent-sdk/src/aitbc_agent/agent.py index e75fd2e7..a3ec2995 100755 --- a/packages/py/aitbc-agent-sdk/src/aitbc_agent/agent.py +++ b/packages/py/aitbc-agent-sdk/src/aitbc_agent/agent.py @@ -98,7 +98,7 @@ class Agent: self.registered = False self.reputation_score = 0.0 self.earnings = 0.0 - self.coordinator_url = coordinator_url or "http://localhost:8001" + self.coordinator_url = coordinator_url or "http://localhost:9001" self.http_client = AITBCHTTPClient(base_url=self.coordinator_url) @classmethod diff --git a/scripts/services/gpu/gpu_miner_host.py b/scripts/services/gpu/gpu_miner_host.py index 7b469cca..2a2f97bf 100644 --- a/scripts/services/gpu/gpu_miner_host.py +++ b/scripts/services/gpu/gpu_miner_host.py @@ -13,7 +13,7 @@ import os from datetime import datetime, UTC # Configuration -COORDINATOR_URL = "http://127.0.0.1:8000" +COORDINATOR_URL = "http://127.0.0.1:8011" MINER_ID = "${MINER_API_KEY}" AUTH_TOKEN = "${MINER_API_KEY}" HEARTBEAT_INTERVAL = 15 diff --git a/scripts/services/gpu/miner_workflow.py b/scripts/services/gpu/miner_workflow.py index 45376f20..e43c8da0 100644 --- a/scripts/services/gpu/miner_workflow.py +++ b/scripts/services/gpu/miner_workflow.py @@ -9,7 +9,7 @@ import time from datetime import datetime # Configuration -COORDINATOR_URL = "http://localhost:8001" +COORDINATOR_URL = "http://localhost:8011" MINER_API_KEY = "${MINER_API_KEY}" MINER_ID = "localhost-gpu-miner" diff --git a/scripts/training/README.md b/scripts/training/README.md index fa8db509..795bc968 100644 --- a/scripts/training/README.md +++ b/scripts/training/README.md @@ -94,7 +94,7 @@ cd /opt/aitbc/scripts/training All scripts are designed to work with both AITBC nodes: - **Genesis Node (aitbc)**: Port 8006 - Primary operations -- **Follower Node (aitbc1)**: Port 8007 - Secondary operations +- **Follower Node (aitbc1)**: Port 8006 - Secondary operations ### Node-Specific Operations Each stage includes node-specific testing using the training library: @@ -103,7 +103,7 @@ Each stage includes node-specific testing using the training library: NODE_URL="http://localhost:8006" ./aitbc-cli wallet balance wallet # Follower node operations -NODE_URL="http://localhost:8007" ./aitbc-cli wallet balance wallet +NODE_URL="http://localhost:8006" ./aitbc-cli wallet balance wallet # Using training library functions cli_cmd_node "$GENESIS_NODE" "balance --name $WALLET_NAME" @@ -137,7 +137,7 @@ cli_cmd_node "$FOLLOWER_NODE" "blockchain --info" ### System Requirements - **AITBC CLI**: `/opt/aitbc/aitbc-cli` accessible and executable -- **Services**: Ports 8000, 8001, 8006, 8007 running and accessible +- **Services**: Ports 8001, 9001, 8006 running and accessible - **Ollama**: Port 11434 for AI operations (Stage 3+) - **Bash**: Version 4.0+ for associative array support - **Standard Tools**: bc (for calculations), curl, timeout @@ -272,7 +272,8 @@ print_progress 3 10 "Step name" # Print progress (current, total, name) ```bash check_cli # Verify CLI availability and permissions check_wallet "name" # Check if wallet exists -check_service 8000 "Exchange" 5 # Check service on port +check_service 8001 "Exchange" 5 # Check Exchange service on port +check_service 9001 "Agent-Coordinator" 5 # Check Agent Coordinator service on port check_all_services # Check all required services check_prerequisites_full # Comprehensive prerequisites check ``` diff --git a/scripts/training/master_training_launcher.sh b/scripts/training/master_training_launcher.sh index cda1c32b..dde5cd5d 100755 --- a/scripts/training/master_training_launcher.sh +++ b/scripts/training/master_training_launcher.sh @@ -84,7 +84,7 @@ show_overview() { echo -e "${BOLD}๐Ÿ—๏ธ Two-Node Architecture:${NC}" echo "โ€ข Genesis Node (aitbc) - Port 8006 - Primary operations" - echo "โ€ข Follower Node (aitbc1) - Port 8007 - Secondary operations" + echo "โ€ข Follower Node (aitbc1) - Port 8006 - Secondary operations" echo "โ€ข CLI Tool: $CLI_PATH" echo @@ -100,7 +100,7 @@ show_overview() { echo -e "${BOLD}๐Ÿ“Š Prerequisites:${NC}" echo "โ€ข AITBC CLI accessible at $CLI_PATH" - echo "โ€ข Services running on ports 8000, 8001, 8006, 8007" + echo "โ€ข Services running on ports 8001 (Exchange), 9001 (Agent-Coordinator), 8006 (Blockchain RPC)" echo "โ€ข Basic computer skills and command-line familiarity" echo } @@ -120,7 +120,7 @@ check_system_readiness() { fi # Check service availability - local services=("8001:Exchange" "8000:Coordinator" "8006:Genesis-Node" "8006:Follower-Node") + local services=("8001:Exchange" "9001:Agent-Coordinator" "8006:Genesis-Node" "8006:Follower-Node") for service in "${services[@]}"; do local port=$(echo "$service" | cut -d: -f1) local name=$(echo "$service" | cut -d: -f2) diff --git a/scripts/training/stage1_foundation.sh b/scripts/training/stage1_foundation.sh index 1863afe5..f979918b 100755 --- a/scripts/training/stage1_foundation.sh +++ b/scripts/training/stage1_foundation.sh @@ -67,7 +67,7 @@ genesis_block_initialization() { if ssh aitbc1 "curl -s http://localhost:8006/rpc/info" > /dev/null 2>&1; then print_success "Follower Node RPC also accessible on port 8006" else - print_warning "Follower Node RPC not accessible on port 8006 (may only be on 8007)" + print_warning "Follower Node RPC not accessible on port 8006 (check follower node health)" fi print_status "Funding training wallet from genesis block initial coins..." diff --git a/scripts/training/stage3_ai_operations.sh b/scripts/training/stage3_ai_operations.sh index 93d30bcd..4651b489 100755 --- a/scripts/training/stage3_ai_operations.sh +++ b/scripts/training/stage3_ai_operations.sh @@ -15,6 +15,7 @@ WALLET_NAME="openclaw-trainee" WALLET_PASSWORD="trainee123" TEST_PROMPT="Analyze the performance of AITBC blockchain system" TEST_PAYMENT=100 +AGENT_COORDINATOR_URL="${AGENT_COORDINATOR_URL:-http://localhost:9001}" # Colors for output RED='\033[0;31m' @@ -45,6 +46,37 @@ print_warning() { echo -e "${YELLOW}[WARNING]${NC} $1" } +submit_ai_task() { + local task_id="$1" + local prompt="$2" + local model="${3:-llama2}" + local task_payload + + task_payload=$(jq -n \ + --arg task_id "$task_id" \ + --arg prompt "$prompt" \ + --arg model "$model" \ + '{ + task_data: { + task_id: $task_id, + task_type: "inference", + data: { + model: $model, + prompt: $prompt + }, + required_capabilities: ["ai_inference"] + }, + priority: "high", + requirements: { + model: $model + } + }') + + curl -s -X POST "${AGENT_COORDINATOR_URL}/tasks/submit" \ + -H "Content-Type: application/json" \ + -d "$task_payload" +} + # Check prerequisites check_prerequisites() { print_status "Checking prerequisites..." @@ -77,40 +109,37 @@ check_prerequisites() { ai_job_submission() { print_status "3.1 AI Job Submission" - print_status "Submitting AI job..." - # Use coordinator API directly for job submission - JOB_ID=$(curl -s -X POST http://localhost:8000/v1/jobs \ - -H "Content-Type: application/json" \ - -H "X-Api-Key: test-key" \ - -d "{\"payload\":{\"type\":\"inference\",\"prompt\":\"$TEST_PROMPT\"},\"ttl_seconds\":900}" \ - | jq -r '.job_id' 2>/dev/null || echo "") - - if [ -n "$JOB_ID" ]; then - print_success "AI job submitted with ID: $JOB_ID" - log "AI job submitted: $JOB_ID" + print_status "Submitting AI task..." + TASK_ID="ai_training_$(date +%s)" + TASK_RESPONSE=$(submit_ai_task "$TASK_ID" "$TEST_PROMPT") + SUBMITTED_TASK_ID=$(echo "$TASK_RESPONSE" | jq -r '.task_id // empty' 2>/dev/null || echo "") + + if [ -n "$SUBMITTED_TASK_ID" ]; then + print_success "AI task submitted with ID: $SUBMITTED_TASK_ID" + log "AI task submitted: $SUBMITTED_TASK_ID" else - print_warning "AI job submission may have failed" - JOB_ID="job_test_$(date +%s)" + print_warning "AI task submission may have failed" + SUBMITTED_TASK_ID="task_test_$(date +%s)" fi - print_status "Checking job status..." - curl -s http://localhost:8000/v1/jobs/$JOB_ID 2>/dev/null || print_warning "Job status command not available" - log "Job status checked for $JOB_ID" + print_status "Checking task status..." + curl -s "${AGENT_COORDINATOR_URL}/tasks/status" 2>/dev/null || print_warning "Task status command not available" + log "Task status checked for $SUBMITTED_TASK_ID" - print_status "Monitoring job processing..." + print_status "Monitoring task processing..." for i in {1..5}; do - print_status "Check $i/5 - Job status..." - curl -s http://localhost:8000/v1/jobs/$JOB_ID 2>/dev/null || print_warning "Job status check failed" + print_status "Check $i/5 - Task status..." + curl -s "${AGENT_COORDINATOR_URL}/tasks/status" 2>/dev/null || print_warning "Task status check failed" sleep 2 done - print_status "Getting job results..." - curl -s http://localhost:8000/v1/jobs/$JOB_ID/result 2>/dev/null || print_warning "Job result command not available" - log "Job results retrieved for $JOB_ID" + print_status "Getting task status summary..." + curl -s "${AGENT_COORDINATOR_URL}/tasks/status" 2>/dev/null || print_warning "Task summary command not available" + log "Task summary retrieved for $SUBMITTED_TASK_ID" - print_status "Listing all jobs..." - curl -s http://localhost:8000/v1/jobs 2>/dev/null || print_warning "Job list command not available" - log "All jobs listed" + print_status "Listing task submissions..." + curl -s "${AGENT_COORDINATOR_URL}/tasks/status" 2>/dev/null || print_warning "Task list command not available" + log "Task list checked" print_success "3.1 AI Job Submission completed" } @@ -188,21 +217,36 @@ ai_service_integration() { $CLI_PATH ai service list 2>/dev/null || print_warning "AI service list command not available" log "AI services listed" - print_status "Checking coordinator API service..." - $CLI_PATH ai service status --name coordinator 2>/dev/null || print_warning "Coordinator service status command not available" - log "Coordinator service status checked" + print_status "Checking Agent Coordinator service health..." + coordinator_health=$(curl -s "${AGENT_COORDINATOR_URL}/health" 2>/dev/null) + if [ -n "$coordinator_health" ]; then + coordinator_service=$(echo "$coordinator_health" | jq -r '.service // empty' 2>/dev/null || echo "") + if [ "$coordinator_service" = "agent-coordinator" ]; then + print_success "Agent Coordinator service is running" + log "Agent Coordinator service: RUNNING" + else + print_warning "Agent Coordinator service returned unexpected response" + log "Agent Coordinator service: UNEXPECTED RESPONSE" + fi + else + print_error "Agent Coordinator service is not accessible" + log "Agent Coordinator service: NOT ACCESSIBLE" + return 1 + fi - print_status "Testing AI service endpoints..." - $CLI_PATH ai service test --name coordinator 2>/dev/null || print_warning "AI service test command not available" - log "AI service test completed" + print_status "Testing Agent Coordinator task endpoint..." + if curl -s "${AGENT_COORDINATOR_URL}/tasks/status" > /dev/null 2>&1; then + print_success "Agent Coordinator task endpoint is accessible" + log "Agent Coordinator task endpoint tested" + else + print_error "Agent Coordinator task endpoint is not accessible" + log "Agent Coordinator task endpoint: NOT ACCESSIBLE" + return 1 + fi - print_status "Testing AI API endpoints..." - curl -s http://localhost:8000/health 2>/dev/null > /dev/null || print_warning "API test command not available" - log "AI API endpoint tested" - - print_status "Monitoring AI API status..." - $CLI_PATH ai status --job-id test 2>/dev/null || print_warning "API monitor command not available" - log "AI API status monitored" + print_status "Monitoring Agent Coordinator task status..." + curl -s "${AGENT_COORDINATOR_URL}/tasks/status" 2>/dev/null > /dev/null || print_warning "Agent Coordinator task status unavailable" + log "Agent Coordinator task status monitored" print_success "3.4 AI Service Integration completed" } @@ -210,66 +254,72 @@ ai_service_integration() { # Node-specific AI operations node_specific_ai() { print_status "Node-Specific AI Operations" - + print_status "Testing AI operations on Genesis Node (port 8006)..." - curl -s -X POST http://localhost:8000/v1/jobs \ - -H "Content-Type: application/json" \ - -H "X-Api-Key: test-key" \ - -d "{\"payload\":{\"type\":\"inference\",\"prompt\":\"Genesis node test\"},\"ttl_seconds\":900}" \ - 2>/dev/null || print_warning "Genesis node AI job submission failed" + GENESIS_TASK_RESPONSE=$(submit_ai_task "genesis-node-$(date +%s)" "Genesis node test") + if [ -n "$(echo "$GENESIS_TASK_RESPONSE" | jq -r '.task_id // empty' 2>/dev/null || echo "")" ]; then + print_success "Genesis node AI task submission succeeded" + GENESIS_STATUS="available" + else + print_warning "Genesis node AI task submission failed" + GENESIS_STATUS="unavailable" + fi log "Genesis node AI operations tested" - + print_status "Testing AI operations on Follower Node (port 8006 on aitbc1)..." - curl -s -X POST http://localhost:8000/v1/jobs \ - -H "Content-Type: application/json" \ - -H "X-Api-Key: test-key" \ - -d "{\"payload\":{\"type\":\"inference\",\"prompt\":\"Follower node test\"},\"ttl_seconds\":900}" \ - 2>/dev/null || print_warning "Follower node AI job submission failed" + FOLLOWER_TASK_RESPONSE=$(submit_ai_task "follower-node-$(date +%s)" "Follower node test") + if [ -n "$(echo "$FOLLOWER_TASK_RESPONSE" | jq -r '.task_id // empty' 2>/dev/null || echo "")" ]; then + print_success "Follower node AI task submission succeeded" + FOLLOWER_STATUS="available" + else + print_warning "Follower node AI task submission failed" + FOLLOWER_STATUS="unavailable" + fi log "Follower node AI operations tested" - + print_status "Comparing AI service availability between nodes..." - GENESIS_STATUS="unavailable" - FOLLOWER_STATUS="unavailable" - print_status "Genesis AI services: $GENESIS_STATUS" print_status "Follower AI services: $FOLLOWER_STATUS" log "Node AI services comparison: Genesis=$GENESIS_STATUS, Follower=$FOLLOWER_STATUS" - + print_success "Node-specific AI operations completed" } # Performance benchmarking performance_benchmarking() { print_status "AI Performance Benchmarking" - - print_status "Running AI job performance benchmark..." - - # Test job submission speed + + print_status "Running AI task performance benchmark..." + + # Test task submission speed START_TIME=$(date +%s.%N) - curl -s -X POST http://localhost:8000/v1/jobs \ - -H "Content-Type: application/json" \ - -H "X-Api-Key: test-key" \ - -d "{\"payload\":{\"type\":\"inference\",\"prompt\":\"Performance test\"},\"ttl_seconds\":900}" \ - > /dev/null 2>&1 + BENCHMARK_RESPONSE=$(submit_ai_task "benchmark-$(date +%s)" "Performance test") END_TIME=$(date +%s.%N) if command -v bc > /dev/null 2>&1; then SUBMISSION_TIME=$(echo "$END_TIME - $START_TIME" | bc -l) else SUBMISSION_TIME="2.0" fi - - print_status "AI job submission time: ${SUBMISSION_TIME}s" - log "Performance benchmark: AI job submission ${SUBMISSION_TIME}s" - + + if [ -n "$(echo "$BENCHMARK_RESPONSE" | jq -r '.task_id // empty' 2>/dev/null || echo "")" ]; then + print_status "AI task submission completed successfully" + log "Benchmark task submitted successfully" + else + print_warning "AI task benchmark submission did not return a task ID" + fi + + print_status "AI task submission time: ${SUBMISSION_TIME}s" + log "Performance benchmark: AI task submission ${SUBMISSION_TIME}s" + # Test resource status check speed START_TIME=$(date +%s.%N) print_warning "Resource status command not available - skipping benchmark" END_TIME=$(date +%s.%N) RESOURCE_TIME="0.0" - + print_status "Resource status check time: ${RESOURCE_TIME}s (skipped)" log "Performance benchmark: Resource status ${RESOURCE_TIME}s (skipped)" - + # Test Ollama response time if curl -s http://localhost:11434/api/tags > /dev/null 2>&1; then START_TIME=$(date +%s.%N) diff --git a/scripts/training/stage5_expert_automation.sh b/scripts/training/stage5_expert_automation.sh index d1e6e6f5..9bb3906f 100755 --- a/scripts/training/stage5_expert_automation.sh +++ b/scripts/training/stage5_expert_automation.sh @@ -285,7 +285,7 @@ expert_performance_analysis() { $CLI_PATH wallet balance "$WALLET_NAME" > /dev/null 2>&1 & $CLI_PATH blockchain info > /dev/null 2>&1 & $CLI_PATH market list > /dev/null 2>&1 & - $CLI_PATH ai status --name coordinator > /dev/null 2>&1 & + curl -s http://localhost:9001/health > /dev/null 2>&1 & wait # Wait for all background jobs @@ -296,11 +296,15 @@ expert_performance_analysis() { log "Performance analysis: Concurrent operations ${CONCURRENT_TIME}s" # Test individual operation performance - OPERATIONS=("wallet balance $WALLET_NAME" "blockchain info" "market list" "ai status") + OPERATIONS=("wallet balance $WALLET_NAME" "blockchain info" "market list" "curl -s http://localhost:9001/health") for op in "${OPERATIONS[@]}"; do START_TIME=$(date +%s.%N) - $CLI_PATH $op > /dev/null 2>&1 + if [[ "$op" == curl\ * ]]; then + eval "$op" > /dev/null 2>&1 + else + $CLI_PATH $op > /dev/null 2>&1 + fi END_TIME=$(date +%s.%N) OP_TIME=$(echo "$END_TIME - $START_TIME" | bc -l 2>/dev/null || echo "1.0") diff --git a/scripts/training/training_lib.sh b/scripts/training/training_lib.sh index 1327fb0f..c5433c8b 100755 --- a/scripts/training/training_lib.sh +++ b/scripts/training/training_lib.sh @@ -24,7 +24,8 @@ export FOLLOWER_NODE="http://aitbc1:8006" # Service endpoints export SERVICES=( - "8000:Coordinator" + "8001:Exchange" + "9001:Agent-Coordinator" "8006:Genesis-Node" "8006:Follower-Node" "11434:Ollama" diff --git a/scripts/utils/check-aitbc-services.sh b/scripts/utils/check-aitbc-services.sh index 422f7454..4bdbf9fd 100755 --- a/scripts/utils/check-aitbc-services.sh +++ b/scripts/utils/check-aitbc-services.sh @@ -117,7 +117,7 @@ done # Port scan summary print_status "Port Scan Summary:" -ports=("8001:Coordinator API" "8002:Wallet Daemon" "8003:Blockchain RPC" "8000:Coordinator API (alt)") +ports=("8001:Coordinator API" "8002:Wallet Daemon" "8003:Blockchain RPC" "8011:Coordinator API (alt)") for port_info in "${ports[@]}"; do port=$(echo "$port_info" | cut -d: -f1) diff --git a/scripts/utils/end_to_end_workflow.py b/scripts/utils/end_to_end_workflow.py index 9774f6d6..8d8a48f1 100755 --- a/scripts/utils/end_to_end_workflow.py +++ b/scripts/utils/end_to_end_workflow.py @@ -11,7 +11,7 @@ import sys from typing import Dict, List class MarketplaceWorkflow: - def __init__(self, coordinator_url: str = "http://localhost:8000"): + def __init__(self, coordinator_url: str = "http://localhost:8011"): self.coordinator_url = coordinator_url self.workflow_steps = [] diff --git a/scripts/utils/security_hardening.sh b/scripts/utils/security_hardening.sh index 25ec5b41..86c30c0c 100755 --- a/scripts/utils/security_hardening.sh +++ b/scripts/utils/security_hardening.sh @@ -118,7 +118,7 @@ configure_firewall() { ufw allow 443/tcp # Allow internal services (restricted to localhost) - ufw allow from 127.0.0.1 to any port 8000 + ufw allow from 127.0.0.1 to any port 8011 ufw allow from 127.0.0.1 to any port 8082 # Enable firewall diff --git a/scripts/utils/setup-dev-permissions.sh b/scripts/utils/setup-dev-permissions.sh index 2a9953ba..22b5bcad 100755 --- a/scripts/utils/setup-dev-permissions.sh +++ b/scripts/utils/setup-dev-permissions.sh @@ -243,7 +243,7 @@ export AITBC_DEBUG=1 export AITBC_LOG_LEVEL=DEBUG # Service URLs (development) -export AITBC_COORDINATOR_URL=http://localhost:8000 +export AITBC_COORDINATOR_URL=http://localhost:8011 export AITBC_BLOCKCHAIN_RPC=http://localhost:8006 export AITBC_WEB_UI=http://localhost:3000 diff --git a/scripts/utils/validate-requirements.sh b/scripts/utils/validate-requirements.sh index cd6db380..b72b3de9 100755 --- a/scripts/utils/validate-requirements.sh +++ b/scripts/utils/validate-requirements.sh @@ -143,7 +143,7 @@ check_network() { echo -e "\n๐Ÿ“‹ Checking Network Requirements..." # Check if required ports are available - REQUIRED_PORTS=(8000 8001 8003 8007 8008 8010 8011 8012 8013 8014 8015) + REQUIRED_PORTS=(8011 8001 8003 8007 8008 8010 8012 8013 8014 8015) OCCUPIED_PORTS=() for port in "${REQUIRED_PORTS[@]}"; do diff --git a/scripts/workflow/33_enhanced_contract_service_testing.sh b/scripts/workflow/33_enhanced_contract_service_testing.sh index cff67074..2a9d22c0 100755 --- a/scripts/workflow/33_enhanced_contract_service_testing.sh +++ b/scripts/workflow/33_enhanced_contract_service_testing.sh @@ -21,7 +21,7 @@ GENESIS_NODE="localhost" FOLLOWER_NODE="aitbc" GENESIS_PORT="8006" FOLLOWER_PORT="8006" -COORDINATOR_PORT="8000" +COORDINATOR_PORT="8011" # API Key configuration API_KEY_FILE="/opt/aitbc/api_keys.txt" diff --git a/scripts/workflow/34_service_health_monitoring.sh b/scripts/workflow/34_service_health_monitoring.sh index a16e8978..6f9220e6 100755 --- a/scripts/workflow/34_service_health_monitoring.sh +++ b/scripts/workflow/34_service_health_monitoring.sh @@ -21,7 +21,7 @@ GENESIS_NODE="localhost" FOLLOWER_NODE="aitbc" GENESIS_PORT="8006" FOLLOWER_PORT="8006" -COORDINATOR_PORT="8000" +COORDINATOR_PORT="8011" # Monitoring configuration ALERT_THRESHOLD_CPU=80 diff --git a/scripts/workflow/35_contract_deployment_integration.sh b/scripts/workflow/35_contract_deployment_integration.sh index dbf6ee35..92cca8c0 100755 --- a/scripts/workflow/35_contract_deployment_integration.sh +++ b/scripts/workflow/35_contract_deployment_integration.sh @@ -21,7 +21,7 @@ GENESIS_NODE="localhost" FOLLOWER_NODE="aitbc" GENESIS_PORT="8006" FOLLOWER_PORT="8006" -COORDINATOR_PORT="8000" +COORDINATOR_PORT="8011" # Test configuration TEST_CONTRACT_CODE='{ diff --git a/scripts/workflow/36_contract_security_testing.sh b/scripts/workflow/36_contract_security_testing.sh index 93c92c9b..cdcaa502 100755 --- a/scripts/workflow/36_contract_security_testing.sh +++ b/scripts/workflow/36_contract_security_testing.sh @@ -21,7 +21,7 @@ GENESIS_NODE="localhost" FOLLOWER_NODE="aitbc" GENESIS_PORT="8006" FOLLOWER_PORT="8006" -COORDINATOR_PORT="8000" +COORDINATOR_PORT="8011" # Security testing configuration SECURITY_REPORT_DIR="/opt/aitbc/security_reports" diff --git a/scripts/workflow/37_contract_event_monitoring.sh b/scripts/workflow/37_contract_event_monitoring.sh index 27ad1013..4e2936de 100755 --- a/scripts/workflow/37_contract_event_monitoring.sh +++ b/scripts/workflow/37_contract_event_monitoring.sh @@ -21,7 +21,7 @@ GENESIS_NODE="localhost" FOLLOWER_NODE="aitbc" GENESIS_PORT="8006" FOLLOWER_PORT="8006" -COORDINATOR_PORT="8000" +COORDINATOR_PORT="8011" # Event monitoring configuration EVENT_LOG_DIR="/var/log/aitbc/events" diff --git a/scripts/workflow/38_contract_data_analytics.sh b/scripts/workflow/38_contract_data_analytics.sh index 1c821a27..bcb17af2 100755 --- a/scripts/workflow/38_contract_data_analytics.sh +++ b/scripts/workflow/38_contract_data_analytics.sh @@ -21,7 +21,7 @@ GENESIS_NODE="localhost" FOLLOWER_NODE="aitbc" GENESIS_PORT="8006" FOLLOWER_PORT="8006" -COORDINATOR_PORT="8000" +COORDINATOR_PORT="8011" # Analytics configuration ANALYTICS_DIR="/var/log/aitbc/analytics" diff --git a/scripts/workflow/39_agent_communication_testing.sh b/scripts/workflow/39_agent_communication_testing.sh index f5bfb0e6..d84c1f74 100755 --- a/scripts/workflow/39_agent_communication_testing.sh +++ b/scripts/workflow/39_agent_communication_testing.sh @@ -20,7 +20,7 @@ NC='\033[0m' # No Color GENESIS_NODE="localhost" FOLLOWER_NODE="aitbc" GENESIS_PORT="8006" -COORDINATOR_PORT="8000" +COORDINATOR_PORT="8011" # Test agents AGENT_1_ID="agent_forum_test_1" @@ -208,7 +208,7 @@ try: # Create communication client client = AgentCommunicationClient( - base_url="http://localhost:8000", + base_url="http://localhost:8011", agent_id="test_sdk_agent", private_key="test_private_key" ) diff --git a/scripts/workflow/40_deploy_messaging_contract.sh b/scripts/workflow/40_deploy_messaging_contract.sh index 88795312..3c86191a 100755 --- a/scripts/workflow/40_deploy_messaging_contract.sh +++ b/scripts/workflow/40_deploy_messaging_contract.sh @@ -20,7 +20,8 @@ NC='\033[0m' # No Color GENESIS_NODE="localhost" FOLLOWER_NODE="aitbc" GENESIS_PORT="8006" -COORDINATOR_PORT="8000" +FOLLOWER_PORT="8006" +COORDINATOR_PORT="8011" # Contract configuration CONTRACT_ADDRESS="0xagent_messaging_001" diff --git a/scripts/workflow/41_complete_optimization_workflow.sh b/scripts/workflow/41_complete_optimization_workflow.sh index 61ab7fa7..07f094c8 100755 --- a/scripts/workflow/41_complete_optimization_workflow.sh +++ b/scripts/workflow/41_complete_optimization_workflow.sh @@ -20,7 +20,7 @@ NC='\033[0m' # No Color GENESIS_NODE="localhost" FOLLOWER_NODE="aitbc" GENESIS_PORT="8006" -COORDINATOR_PORT="8000" +COORDINATOR_PORT="8011" echo "๐Ÿš€ COMPLETE SYSTEM OPTIMIZATION" echo "Comprehensive optimization and testing of all AITBC features" @@ -213,7 +213,7 @@ run_test_verbose "Comprehensive system test" " echo 'Testing all major services:' echo \"โœ… Blockchain RPC: \$(curl -s http://localhost:8006/rpc/info >/dev/null && echo 'Working' || echo 'Failed')\" - echo \"โœ… Coordinator API: \$(curl -s http://localhost:8000/health/live >/dev/null && echo 'Working' || echo 'Failed')\" + echo \"โœ… Coordinator API: \$(curl -s http://localhost:8011/health/live >/dev/null && echo 'Working' || echo 'Failed')\" echo \"โœ… Marketplace: \$(curl -s http://localhost:8006/rpc/marketplace/listings >/dev/null && echo 'Working' || echo 'Failed')\" echo \"โœ… AI Service: \$(ssh aitbc 'curl -s http://localhost:8006/rpc/ai/stats' >/dev/null && echo 'Working' || echo 'Failed')\" echo \"โœ… Agent Communication: \$(curl -s http://localhost:8006/rpc/messaging/topics >/dev/null && echo 'Working' || echo 'Failed')\" diff --git a/scripts/workflow/42_production_deployment_workflow.sh b/scripts/workflow/42_production_deployment_workflow.sh index c36a8d17..30ceaed4 100755 --- a/scripts/workflow/42_production_deployment_workflow.sh +++ b/scripts/workflow/42_production_deployment_workflow.sh @@ -20,7 +20,7 @@ NC='\033[0m' # No Color GENESIS_NODE="localhost" FOLLOWER_NODE="aitbc" GENESIS_PORT="8006" -COORDINATOR_PORT="8000" +COORDINATOR_PORT="8011" echo "๐Ÿš€ PRODUCTION DEPLOYMENT" echo "Complete production deployment with all AITBC features" @@ -244,7 +244,7 @@ run_test_verbose "Production validation" " echo 'Production validation checklist:' echo \"โœ… Blockchain RPC: \$(curl -s http://localhost:8006/rpc/info >/dev/null && echo 'PASS' || echo 'FAIL')\" - echo \"โœ… Coordinator API: \$(curl -s http://localhost:8000/health/live >/dev/null && echo 'PASS' || echo 'FAIL')\" + echo \"โœ… Coordinator API: \$(curl -s http://localhost:8011/health/live >/dev/null && echo 'PASS' || echo 'FAIL')\" echo \"โœ… Marketplace: \$(curl -s http://localhost:8006/rpc/marketplace/listings >/dev/null && echo 'PASS' || echo 'FAIL')\" echo \"โœ… AI Service: \$(ssh aitbc 'curl -s http://localhost:8006/rpc/ai/stats' >/dev/null && echo 'PASS' || echo 'FAIL')\" echo \"โœ… Agent Communication: \$(curl -s http://localhost:8006/rpc/messaging/topics >/dev/null && echo 'PASS' || echo 'FAIL')\" diff --git a/scripts/workflow/43_contract_integration_testing.sh b/scripts/workflow/43_contract_integration_testing.sh index ef5e8aa8..7183609f 100755 --- a/scripts/workflow/43_contract_integration_testing.sh +++ b/scripts/workflow/43_contract_integration_testing.sh @@ -20,7 +20,8 @@ NC='\033[0m' # No Color GENESIS_NODE="localhost" FOLLOWER_NODE="aitbc" GENESIS_PORT="8006" -COORDINATOR_PORT="8000" +FOLLOWER_PORT="8006" +COORDINATOR_PORT="8011" # Test counters TESTS_PASSED=0 diff --git a/scripts/wrappers/aitbc-coordinator-api-wrapper.py b/scripts/wrappers/aitbc-coordinator-api-wrapper.py index 002634e5..c691ad26 100755 --- a/scripts/wrappers/aitbc-coordinator-api-wrapper.py +++ b/scripts/wrappers/aitbc-coordinator-api-wrapper.py @@ -30,6 +30,6 @@ exec_cmd = [ "--host", "0.0.0.0", "--port", - "8000" + "8011" ] os.execvp(exec_cmd[0], exec_cmd)