- Add get_miner_id() dependency to extract miner ID from X-Miner-ID header
- Update miner register and heartbeat endpoints to require both X-Miner-ID and X-Api-Key headers
- Remove miner_id from query parameters in favor of header-based extraction
- Fix miner heartbeat CLI to send proper JSON payload with inflight, status, and metadata fields
- Fix typo in MinerService: extra_metadata → extra_meta_data
- Add POST /api/v1/miners/{miner_id}/jobs endpoint for listing miner-assigned jobs with filtering
- Add POST /api/v1/miners/{miner_id}/earnings endpoint for miner earnings tracking (mock implementation)
- Add PUT /api/v1/miners/{miner_id}/capabilities endpoint for updating miner capabilities
- Add DELETE /api/v1/miners/{miner_id} endpoint for miner deregistration (sets OFFLINE status)
- Add JobService.fail_job()
- Add /rpc/info endpoint to blockchain node for comprehensive chain information
- Add /rpc/supply endpoint for token supply metrics with genesis parameters
- Add /rpc/validators endpoint to list PoA validators and consensus info
- Add /api/v1/agents/networks endpoint for creating collaborative agent networks
- Add /api/v1/agents/executions/{id}/receipt endpoint for verifiable execution receipts
- Add /api/v1/jobs and /api/v1/jobs/
- Add asyncio.run() wrapper to get_chain_info, delete_chain, and add_chain_to_node calls in chain.py
- Update all exchange command endpoints from /exchange/* to /api/v1/exchange/* for API consistency
- Mark blockchain block command as fixed in CLI checklist (uses local node)
- Mark all chain management commands help as available (backup, delete, migrate, remove, restore)
- Mark client batch-submit
- Change blockchain block command to query local node at /rpc/blocks/by_hash/{hash} instead of coordinator
- Add fallback to /rpc/blocks/{height} for numeric block identifiers
- Implement block hash search across recent blocks (last 10) when direct lookup fails
- Revert client job submission endpoint from
- Change all agent endpoints from /agents/* and /v1/agents/* to /api/v1/agents/* for consistency
- Update client job submission endpoint from /v1/jobs to /api/v1/jobs
- Fix blockchain blocks command to query local node at /rpc/blocks-range instead of coordinator
- Fix blockchain peers command to query local node at /rpc/peers with RPC-only mode fallback
- Add proper error handling for blockchain
- Change marketplace endpoints from /v1/* to /api/v1/* for consistency
- Update blockchain status node 1 URL from localhost:8082 to localhost:8003
- Fix blockchain health endpoint to use /health instead of /v1/health
- Generate unique workflow_id using uuid.uuid4() instead of undefined agent_id variable
- Accept both 200 and 202 status codes for agent
- Add three-tier fallback strategy for balance queries: getBalance endpoint, addresses list, and faucet mint
- Try direct getBalance endpoint first at /rpc/getBalance/{address}
- Fall back to addresses list endpoint and search for matching address
- Use faucet mint as last resort, subtracting minted amount from returned balance
- Add sync status note to output showing whether local and blockchain balances match
- Change balance endpoint from GET /rpc/balance to POST /rpc/admin/mintFaucet with amount=1 as temporary workaround
- Subtract minted amount from returned balance to get actual balance
- Update send endpoint from /rpc/transactions to /rpc/sendTx with proper transaction structure
- Add transaction type, nonce, fee, and payload fields to send request
- Convert amount to smallest unit (multiply by 1000000
- Update agent execute endpoint to use /v1/agents/workflows/{id}/execute path
- Add workflow_id and inputs fields to agent creation and execution payloads
- Accept both 200 and 201 status codes for agent create, network create, and contribution submit
- Update wallet balance and send RPC endpoints to use rstrip('/') instead of replace('/api', '')
- Add chain_id parameter to wallet R
- Update all agent command endpoints to remove /v1 prefix for API consistency
- Rename `success` variable to `is_success` in chain.py to avoid conflict with success() function
- Rename `output` parameter to `output_file` in genesis.py for clarity
- Add admin command help tests to verify command structure
- Update blockchain status endpoint from /status to /v1/health in tests
- Mark admin help command as working
- Document Python 3.13 incompatibility with Concrete ML library
- Detail current TenSEAL-only implementation and its functionality
- Provide multiple resolution options with effort assessments
- Include testing procedures and monitoring guidelines
- Create clear impact assessment and communication plan
- Establish timeline for short, medium, and long-term solutions
This documentation provides a complete reference for the Concrete ML
compatibility limitation and guides future decision-making for FHE
provider architecture in the AITBC platform.
- Update requirements.txt to make concrete-ml optional with clear comment
- Enhance FHE service warning message to include Python version info
- Remove concrete-ml from mandatory dependencies due to Python 3.13 incompatibility
- Maintain full functionality with TenSEAL provider as default
This resolves the 'Concrete ML not installed' warning by providing clear
information about the version compatibility issue while preserving all
FHE functionality through the TenSEAL provider.
- Define supported versions with security support timeline
- Establish vulnerability reporting process and procedures
- Outline security practices for development, infrastructure, and smart contracts
- Provide coordinated disclosure guidelines and credit system
- Include security best practices for node operators, developers, and users
- Add legal information and safe harbor provisions
- Create comprehensive security contacts and bug bounty program framework
This security policy helps the community understand how to securely report
security vulnerabilities and demonstrates our commitment to platform security.
- Delete agent-contributions.yml (399 lines) with agent validation, rewards, swarm integration, and deployment jobs
- Delete build-macos-packages.yml (172 lines) with macOS native package build pipeline for arm64 and x86_64 targets
- Update CORS allow_origins in blockchain-node app.py and gossip relay.py to use new port logic (8000-8016)
- Update coordinator-api config.py and config_pg.py with standardized port ranges and service labels
- Update coordinator-api health check script from port 18000 to 8000
- Update geo_load_balancer.py to use configurable host/port (default 0.0.0.0:8017)
- Update agent_security.py sandbox
- Add development environment organized structure
- Exclude large backup files (*.tar.gz, *.zip) from backup/updates/
- Remove large backup files from git tracking (112MB+ files)
- Update ignore rules for new dev/ directory structure
- Convert _propose_block, _ensure_genesis_block to async methods in PoAProposer
- Add await to gossip_broker.publish calls in block broadcasting
- Add await to _ensure_genesis_block and _propose_block method calls
- Update coordinator-api Python version constraint to >=3.13,<3.15
- Add torch ^2.10.0 dependency to coordinator-api
- Add make_asgi_app import to prometheus_client in main.py
- Export new routers: global
- Add comprehensive CLI tool section with quick start guide and key features
- Add "Earn Money with Your GPU" section highlighting provider benefits and success tips
- Add CLI installation and usage examples for marketplace, agent management, and development
- Add multi-language CLI support documentation
- Add performance metrics section with response times, processing speed, and up