- Update workspace state timestamp - Add weekly summary to MEMORY.md (removing duplicate entry)
5.9 KiB
2026-03-13
Session Start
- First session: Identity bootstrap completed.
- Assigned identity: aitbc1 (AI code reviewer/developer agent)
- Vibe: Analytical, precise, straightforward, efficient
- Emoji: 🔍
- User: Andreas Michael Fleckl (Andreas)
- Project: AITBC — AI Agent Compute Network
Initial Exploration
- Located project at
/opt/aitbc. - Reviewed README.md: Decentralized GPU marketplace for AI agents.
- Installed CLI in virtualenv:
pip install -e ./cli. - Discovered immediate import errors due to hardcoded paths.
Bugs Found
1. CLI fails to launch — hardcoded absolute paths
Multiple command modules in cli/aitbc_cli/commands/ contain:
sys.path.append('/home/oib/windsurf/aitbc/apps/coordinator-api/src/app/services')
This path does not exist on this system and is non-portable. The modules are:
surveillance.py(importstrading_surveillance)ai_trading.pyai_surveillance.pyadvanced_analytics.pyregulatory.py
Impact: Entire CLI crashes on import with ModuleNotFoundError. The CLI is unusable out of the box.
Recommendation: Convert these to proper package imports or lazy imports with graceful degradation. Consider packaging shared service modules as a separate dependency if needed.
2. Missing dependency specification
CLI's pyproject.toml does not include aiohttp (required by kyc_aml_providers.py). We installed it manually to proceed. Also missing any dependency on coordinator-api services.
Recommendation: Add missing dependencies to the project's requirements or optional extras.
3. Agent SDK package broken
packages/py/aitbc-agent-sdk lacks README.md, causing poetry build to fail with FileNotFoundError. This blocks installation of that package.
Fix: Add an empty or proper README.md.
4. Test scripts use absolute paths
run_all_tests.sh references /home/oib/windsurf/aitbc/test_scenario_*.sh and /home/oib/windsurf/aitbc/test_multi_site.py. These are user-specific and won't work on other machines.
Recommendation: Replace with paths relative to project root, e.g., $(dirname "$0")/test_scenario_a.sh.
5. Docker Compose not detected
docker-compose is not in PATH; system may only have docker compose. The project instructions assume docker-compose. Could be robustified.
Tests Executed
- Installed and ran tests for
aitbc-crypto: 2 passed. - Installed and ran tests for
aitbc-sdk: 12 passed. aitbc-corehas no tests.aitbc-agent-sdkcould not be installed due to missing README.
Feature Suggestions
- Optional command plugins: Use entry points to load commands only when their dependencies are available, preventing CLI crash.
- Diagnostic command:
aitbc doctorto check environment, dependencies, and service connectivity. - Improved setup script: A single script to set up virtualenv and install all packages with correct dependencies.
- Documentation: Quick start guide for developers new to the repo.
- Test runner portability: Use project-root relative paths and detect available services gracefully.
Next Steps (pending user input)
- Wait for guidance on how to coordinate with sibling instance.
- Await hints on which bugs to fix next.
- Possibly set up proper services to test runtime behavior.
Actions Completed
- Applied all fixes and committed to repository (commit
1feeadf). - CLI now loads successfully:
aitbc --helpworks out of the box. - Coordinator API running (port 8000) with idempotent DB init (commit merged to main).
- Switched to standard RPC port 8006; node P2P port 8005.
- Pinned Starlette to >=0.37.2,<0.38 to retain Broadcast module (required for P2P gossip).
- Added redis dependency; configured broadcast backend.
- Systemd services patched to use coordinator-api venv (or dedicated blockchain-node venv).
- Created wallet
aitbc1aitbc1_simple_simpleand minted 3000 via faucet on devnet. - Pushed branch
aitbc1/debug-serviceswith all fixes (commits:1feeadf,8fee73a,4c2ada6, others). - Verified both nodes can run; Redis active on both hosts; alignment in progress for P2P peering.
- Updated protocol: always use CLI tool; debug and push; coordinate with sibling via Gitea.
- Identified production concerns: Redis broadcast is dev-only; needs secure direct P2P for internet deployment.
P2P & Gift Progress
- Both nodes configured for
ait-devnet. - Gossip backend:
broadcastwith Redis URL. - My node RPC:
http://10.1.223.40:8006(running). - Awaiting sibling's wallet address and RPC health to finalize peer connection and send test transaction.
- Final milestone: send AITBC coins from aitbc's wallet to aitbc1's wallet on the shared chain.
Important Technical Notes
- Starlette Broadcast removed in 0.38 → must pin <0.38.
- Redis pub/sub is central broker; not suitable for production internet without auth/TLS.
- Wallet address pattern:
<hostname><wallet_name>_simplefor simple wallet type. - Coordinator DB: made
init_db()idempotent by catching duplicate index errors. - CLI command path:
/opt/aitbc/cli/cli_venv/bin/aitbc.
AI Provider & Marketplace Coordination (later 2026-03-13)
- Implemented AI provider daemon commands:
aitbc ai servestarts FastAPI server on port 8008, Ollama modelqwen3:8baitbc ai requestsends prompt, pays provider on-chain, verifies balance delta
- Payment flow: buyer CLI runs
blockchain sendfirst, then POSTs to provider's/job - Balance verification: provider balance before/after printed, delta shown
- Provider optionally registers jobs with coordinator marketplace (
--marketplace-urldefaulthttp://127.0.0.1:8014) - Job lifecycle: POST
/v1/jobs→ provider processes → PATCH/v1/jobs/{job_id}with result - GPU marketplace CLI extended with
gpu unregister(DELETE endpoint) to remove stale registrations - Services running: coordinator-api on 8000, wallet daemon on 8015
- Local test successful: payment + Ollama response in single command
- Cross-host test pending (aitbc → aitbc1)
- All changes pushed to branch
aitbc1/debug-services