chore: remove configuration files and enhance blockchain explorer with advanced search, analytics, and export features
- Delete .aitbc.yaml.example CLI configuration template - Delete .lycheeignore link checker exclusion rules - Delete .nvmrc Node.js version specification - Add advanced search panel with filters for address, amount range, transaction type, time range, and validator - Add analytics dashboard with transaction volume, active addresses, and block time metrics - Add Chart.js integration
This commit is contained in:
82
dev/tests/test_scenario_b.sh
Executable file
82
dev/tests/test_scenario_b.sh
Executable file
@@ -0,0 +1,82 @@
|
||||
#!/bin/bash
|
||||
# Scenario B: Localhost GPU Client → aitbc1 Marketplace Test
|
||||
|
||||
echo "🚀 Scenario B: Localhost GPU Client → aitbc1 Marketplace"
|
||||
echo "======================================================"
|
||||
|
||||
# Set up client1 environment
|
||||
export CLIENT_ID="client1"
|
||||
export CLIENT_WALLET="0xabcdef1234567890abcdef1234567890abcdef12"
|
||||
export CLIENT_REGION="localhost"
|
||||
|
||||
echo "📋 Step 1: Check client1 wallet configuration"
|
||||
echo "=========================================="
|
||||
if [ -f "/home/oib/windsurf/aitbc/home/client1/client_wallet.json" ]; then
|
||||
echo "✅ client1 wallet found:"
|
||||
cat /home/oib/windsurf/aitbc/home/client1/client_wallet.json
|
||||
else
|
||||
echo "❌ client1 wallet not found"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "📋 Step 2: Verify aitbc1 marketplace connectivity"
|
||||
echo "=========================================="
|
||||
curl -s http://127.0.0.1:18001/v1/health | jq .
|
||||
|
||||
echo ""
|
||||
echo "📋 Step 3: Wait for marketplace synchronization"
|
||||
echo "=========================================="
|
||||
echo "⏳ Waiting 30 seconds for miner1 registration to sync from aitbc to aitbc1..."
|
||||
sleep 30
|
||||
|
||||
echo ""
|
||||
echo "📋 Step 4: Discover available services on aitbc1"
|
||||
echo "=========================================="
|
||||
curl -s http://127.0.0.1:18001/v1/marketplace/offers | jq '.[] | select(.miner_id == "miner1")'
|
||||
|
||||
echo ""
|
||||
echo "📋 Step 5: Client1 discovers GPU services"
|
||||
echo "=========================================="
|
||||
aitbc marketplace gpu discover \
|
||||
--client-id $CLIENT_ID \
|
||||
--region $CLIENT_REGION \
|
||||
--marketplace-url "http://127.0.0.1:18001"
|
||||
|
||||
echo ""
|
||||
echo "📋 Step 6: Client1 requests service from miner1 via aitbc1"
|
||||
echo "=========================================="
|
||||
aitbc marketplace gpu request \
|
||||
--client-id $CLIENT_ID \
|
||||
--miner-id "miner1" \
|
||||
--model "gemma3:1b" \
|
||||
--prompt "What is artificial intelligence?" \
|
||||
--marketplace-url "http://127.0.0.1:18001"
|
||||
|
||||
echo ""
|
||||
echo "📋 Step 7: Verify transaction on aitbc1"
|
||||
echo "=========================================="
|
||||
sleep 5
|
||||
aitbc marketplace transactions $CLIENT_ID \
|
||||
--marketplace-url "http://127.0.0.1:18001"
|
||||
|
||||
echo ""
|
||||
echo "📋 Step 8: Test cross-container service routing"
|
||||
echo "=========================================="
|
||||
# This should route from client1 (localhost) → aitbc1 → aitbc → localhost miner1
|
||||
curl -X POST http://127.0.0.1:18001/v1/gpu/inference \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"miner_id": "miner1", "model": "gemma3:1b", "prompt": "Cross-container routing test"}' | jq .
|
||||
|
||||
echo ""
|
||||
echo "📋 Step 9: Verify marketplace stats on both sites"
|
||||
echo "=========================================="
|
||||
echo "aitbc marketplace stats:"
|
||||
curl -s http://127.0.0.1:18000/v1/marketplace/stats | jq '.total_offers, .active_miners'
|
||||
|
||||
echo ""
|
||||
echo "aitbc1 marketplace stats:"
|
||||
curl -s http://127.0.0.1:18001/v1/marketplace/stats | jq '.total_offers, .active_miners'
|
||||
|
||||
echo ""
|
||||
echo "🎉 Scenario B Complete!"
|
||||
echo "======================="
|
||||
Reference in New Issue
Block a user