✅ v0.2 Release Preparation: - Update version to 0.2.0 in pyproject.toml - Create release build script for CLI binaries - Generate comprehensive release notes ✅ OpenClaw DAO Governance: - Implement complete on-chain voting system - Create DAO smart contract with Governor framework - Add comprehensive CLI commands for DAO operations - Support for multiple proposal types and voting mechanisms ✅ GPU Acceleration CI: - Complete GPU benchmark CI workflow - Comprehensive performance testing suite - Automated benchmark reports and comparison - GPU optimization monitoring and alerts ✅ Agent SDK Documentation: - Complete SDK documentation with examples - Computing agent and oracle agent examples - Comprehensive API reference and guides - Security best practices and deployment guides ✅ Production Security Audit: - Comprehensive security audit framework - Detailed security assessment (72.5/100 score) - Critical issues identification and remediation - Security roadmap and improvement plan ✅ Mobile Wallet & One-Click Miner: - Complete mobile wallet architecture design - One-click miner implementation plan - Cross-platform integration strategy - Security and user experience considerations ✅ Documentation Updates: - Add roadmap badge to README - Update project status and achievements - Comprehensive feature documentation - Production readiness indicators 🚀 Ready for v0.2.0 release with agent-first architecture
146 lines
4.2 KiB
Markdown
146 lines
4.2 KiB
Markdown
# AITBC Payment Architecture
|
|
|
|
## Overview
|
|
|
|
The AITBC platform uses a dual-currency system:
|
|
- **AITBC Tokens**: For job payments and platform operations
|
|
- **Bitcoin**: For purchasing AITBC tokens through the exchange
|
|
|
|
## Payment Flow
|
|
|
|
### 1. Job Payments (AITBC Tokens)
|
|
```
|
|
Client ──► Creates Job with AITBC Payment ──► Coordinator API
|
|
│ │
|
|
│ ▼
|
|
│ Create Token Escrow
|
|
│ │
|
|
│ ▼
|
|
│ Exchange API (Token)
|
|
│ │
|
|
▼ ▼
|
|
Miner completes job ──► Release AITBC Escrow ──► Miner Wallet
|
|
```
|
|
|
|
### 2. Token Purchase (Bitcoin → AITBC)
|
|
```
|
|
Client ──► Bitcoin Payment ──► Exchange API
|
|
│ │
|
|
│ ▼
|
|
│ Process Bitcoin
|
|
│ │
|
|
▼ ▼
|
|
Receive AITBC Tokens ◄─── Exchange Rate ◄─── 1 BTC = 100,000 AITBC
|
|
```
|
|
|
|
## Implementation Details
|
|
|
|
### Job Payment Structure
|
|
```json
|
|
{
|
|
"payload": {...},
|
|
"ttl_seconds": 900,
|
|
"payment_amount": 100, // AITBC tokens
|
|
"payment_currency": "AITBC" // Always AITBC for jobs
|
|
}
|
|
```
|
|
|
|
### Payment Methods
|
|
- `aitbc_token`: Default for all job payments
|
|
- `bitcoin`: Only used for exchange purchases
|
|
|
|
### Escrow System
|
|
- **AITBC Token Escrow**: Managed by Exchange API
|
|
- Endpoint: `/api/v1/token/escrow/create`
|
|
- Timeout: 1 hour default
|
|
- Release on job completion
|
|
|
|
- **Bitcoin Escrow**: Managed by Wallet Daemon
|
|
- Endpoint: `/api/v1/escrow/create`
|
|
- Only for token purchases
|
|
|
|
## API Endpoints
|
|
|
|
### Job Payment Endpoints
|
|
- `POST /v1/jobs` - Create job with AITBC payment
|
|
- `GET /v1/jobs/{id}/payment` - Get job payment status
|
|
- `POST /v1/payments/{id}/release` - Release AITBC payment
|
|
- `POST /v1/payments/{id}/refund` - Refund AITBC tokens
|
|
|
|
### Exchange Endpoints
|
|
- `POST /api/exchange/purchase` - Buy AITBC with BTC
|
|
- `GET /api/exchange/rate` - Get current rate (1 BTC = 100,000 AITBC)
|
|
|
|
## Database Schema
|
|
|
|
### Job Payments Table
|
|
```sql
|
|
CREATE TABLE job_payments (
|
|
id VARCHAR(255) PRIMARY KEY,
|
|
job_id VARCHAR(255) NOT NULL,
|
|
amount DECIMAL(20, 8) NOT NULL,
|
|
currency VARCHAR(10) DEFAULT 'AITBC',
|
|
payment_method VARCHAR(20) DEFAULT 'aitbc_token',
|
|
status VARCHAR(20) DEFAULT 'pending',
|
|
...
|
|
);
|
|
```
|
|
|
|
## Security Considerations
|
|
|
|
1. **Token Validation**: All AITBC payments require valid token balance
|
|
2. **Escrow Security**: Tokens held in smart contract escrow
|
|
3. **Rate Limiting**: Exchange purchases limited per user
|
|
4. **Audit Trail**: All transactions recorded on blockchain
|
|
|
|
## Example Flow
|
|
|
|
### 1. Client Creates Job
|
|
```bash
|
|
curl -X POST http://localhost:18000/v1/jobs \
|
|
-H "X-Api-Key: ${CLIENT_API_KEY}" \
|
|
-H "Content-Type: application/json" \
|
|
-d '{
|
|
"payload": {
|
|
"job_type": "ai_inference",
|
|
"parameters": {"model": "gpt-4"}
|
|
},
|
|
"payment_amount": 100,
|
|
"payment_currency": "AITBC"
|
|
}'
|
|
```
|
|
|
|
### 2. Response with Payment
|
|
```json
|
|
{
|
|
"job_id": "abc123",
|
|
"state": "queued",
|
|
"payment_id": "pay456",
|
|
"payment_status": "escrowed",
|
|
"payment_currency": "AITBC"
|
|
}
|
|
```
|
|
|
|
### 3. Job Completion & Payment Release
|
|
```bash
|
|
curl -X POST http://localhost:18000/v1/payments/pay456/release \
|
|
-H "X-Api-Key: ${CLIENT_API_KEY}" \
|
|
-d '{"job_id": "abc123", "reason": "Job completed"}'
|
|
```
|
|
|
|
## Benefits
|
|
|
|
1. **Stable Pricing**: AITBC tokens provide stable job pricing
|
|
2. **Fast Transactions**: Token payments faster than Bitcoin
|
|
3. **Gas Optimization**: Batch operations reduce costs
|
|
4. **Platform Control**: Token supply managed by platform
|
|
|
|
## Migration Path
|
|
|
|
1. **Phase 1**: Implement AITBC token payments for new jobs
|
|
2. **Phase 2**: Migrate existing Bitcoin job payments to tokens
|
|
3. **Phase 3**: Phase out Bitcoin for direct job payments
|
|
4. **Phase 4**: Bitcoin only used for token purchases
|
|
|
|
This architecture ensures efficient job payments while maintaining Bitcoin as the entry point for platform participation.
|