Some checks failed
AITBC CI/CD Pipeline / lint-and-test (3.11) (pull_request) Has been cancelled
AITBC CI/CD Pipeline / lint-and-test (3.12) (pull_request) Has been cancelled
AITBC CI/CD Pipeline / lint-and-test (3.13) (pull_request) Has been cancelled
AITBC CLI Level 1 Commands Test / test-cli-level1 (3.11) (pull_request) Has been cancelled
AITBC CLI Level 1 Commands Test / test-cli-level1 (3.12) (pull_request) Has been cancelled
AITBC CLI Level 1 Commands Test / test-cli-level1 (3.13) (pull_request) Has been cancelled
Security Scanning / Bandit Security Scan (apps/coordinator-api/src) (pull_request) Has been cancelled
Security Scanning / Bandit Security Scan (cli/aitbc_cli) (pull_request) Has been cancelled
Security Scanning / Bandit Security Scan (packages/py/aitbc-core/src) (pull_request) Has been cancelled
Security Scanning / Bandit Security Scan (packages/py/aitbc-crypto/src) (pull_request) Has been cancelled
Security Scanning / Bandit Security Scan (packages/py/aitbc-sdk/src) (pull_request) Has been cancelled
Security Scanning / Bandit Security Scan (tests) (pull_request) Has been cancelled
Security Scanning / CodeQL Security Analysis (javascript) (pull_request) Has been cancelled
Security Scanning / CodeQL Security Analysis (python) (pull_request) Has been cancelled
Security Scanning / Dependency Security Scan (pull_request) Has been cancelled
Security Scanning / Container Security Scan (pull_request) Has been cancelled
Security Scanning / OSSF Scorecard (pull_request) Has been cancelled
AITBC CI/CD Pipeline / test-cli (pull_request) Has been cancelled
AITBC CI/CD Pipeline / test-services (pull_request) Has been cancelled
AITBC CI/CD Pipeline / test-production-services (pull_request) Has been cancelled
AITBC CI/CD Pipeline / security-scan (pull_request) Has been cancelled
AITBC CI/CD Pipeline / build (pull_request) Has been cancelled
AITBC CI/CD Pipeline / deploy-staging (pull_request) Has been cancelled
AITBC CI/CD Pipeline / deploy-production (pull_request) Has been cancelled
AITBC CI/CD Pipeline / performance-test (pull_request) Has been cancelled
AITBC CI/CD Pipeline / docs (pull_request) Has been cancelled
AITBC CI/CD Pipeline / release (pull_request) Has been cancelled
AITBC CI/CD Pipeline / notify (pull_request) Has been cancelled
AITBC CLI Level 1 Commands Test / test-summary (pull_request) Has been cancelled
Security Scanning / Security Summary Report (pull_request) Has been cancelled
- Add production genesis initialization scripts - Add keystore management for production - Add production node runner - Add setup production automation - Add AI memory system for development tracking - Add translation cache service - Add development heartbeat monitoring - Update blockchain RPC router - Update coordinator API main configuration - Update secure pickle service - Update claim task script - Update blockchain service configuration - Update gitignore for production files Resolves conflicts by accepting PR branch changes
Coordinator API
Purpose & Scope
FastAPI service that accepts client compute jobs, matches miners, and tracks job lifecycle for the AITBC network.
Marketplace Extensions
Stage 2 introduces public marketplace endpoints exposed under /v1/marketplace:
GET /v1/marketplace/offers– list available provider offers (filterable by status).GET /v1/marketplace/stats– aggregated supply/demand metrics surfaced in the marketplace web dashboard.POST /v1/marketplace/bids– accept bid submissions for matching (mock-friendly; returns202 Accepted).
These endpoints serve the apps/marketplace-web/ dashboard via VITE_MARKETPLACE_DATA_MODE=live.
Explorer Endpoints
The coordinator now exposes read-only explorer data under /v1/explorer for apps/explorer-web/ live mode:
GET /v1/explorer/blocks– block summaries derived from recent job activity.GET /v1/explorer/transactions– transaction-like records for coordinator jobs.GET /v1/explorer/addresses– aggregated address activity and balances.GET /v1/explorer/receipts– latest job receipts (filterable byjob_id).
Set VITE_DATA_MODE=live and VITE_COORDINATOR_API in the explorer web app to consume these APIs.
Development Setup
- Create a virtual environment in
apps/coordinator-api/.venv. - Install dependencies listed in
pyproject.tomlonce added. - Run the FastAPI app via
uvicorn app.main:app --reload.
Configuration
Expects environment variables defined in .env (see docs/bootstrap/coordinator_api.md).
Signed receipts (optional)
- Generate an Ed25519 key:
python - <<'PY' from nacl.signing import SigningKey sk = SigningKey.generate() print(sk.encode().hex()) PY - Set
RECEIPT_SIGNING_KEY_HEXin the.envfile to the printed hex string to enable signed receipts returned by/v1/miners/{job_id}/resultand retrievable via/v1/jobs/{job_id}/receipt. - Receipt history is available at
/v1/jobs/{job_id}/receipts(requires client API key) and returns all stored signed payloads. - To enable coordinator attestations, set
RECEIPT_ATTESTATION_KEY_HEXto a separate Ed25519 private key; responses include anattestationsarray alongside the miner signature. - Clients can verify
signatureobjects using theaitbc_cryptopackage (seeprotocols/receipts/spec.md).
Systemd
Service name: aitbc-coordinator-api (to be defined under configs/systemd/).