Commit Graph

308 Commits

Author SHA1 Message Date
aitbc
e3e5f806a0 Fix: Uncomment cross_chain and monitor imports to match re-enabled commands
- Uncommented line 22: from aitbc_cli.commands.cross_chain import cross_chain
- Uncommented line 24: from aitbc_cli.commands.monitor import monitor
- Cleared pycache to ensure imports are reloaded
- Fixes NameError that would occur on CLI startup
2026-05-27 07:14:09 +02:00
aitbc
81f6aac768 Update disabled commands documentation and re-enable cross_chain/monitor
- Updated DISABLED_COMMANDS_CLEANUP.md to reflect current state (2026-05-27)
- Re-enabled cross_chain command (no core dependency)
- Re-enabled monitor command (no core dependency)
- Updated analysis: 6 commands disabled due to missing aitbc_cli.core modules
- hermes now marked as previously disabled but now enabled
- Added clear action items for remaining disabled commands
2026-05-27 07:07:37 +02:00
aitbc
f505145a48 Implement missing RPC endpoints and fix GPU operations
- Add mining RPC endpoints: /rpc/mining/start, /rpc/mining/stop, /rpc/mining/status, /rpc/mining/miners
- Add pending transactions endpoint: /rpc/pending (alias for mempool)
- Update GPU register/update commands to not require island credentials
- All mining endpoints use in-memory storage for simplified implementation
2026-05-26 22:53:25 +02:00
aitbc
51209844c9 Implement 36 missing CLI subcommands for scenarios 04-47
Phase 1: Simple GET Commands (system, resource, edge, config)
- system: restart, status, config
- resource: status, deallocate
- edge: status, balance, transfer
- config: import (already existed)

Phase 2: Exchange & Market Commands
- exchange: order, orders, book, history
- marketplace: bid, bids, ask, asks

Phase 3: AI & GPU Commands
- agent (AI): job, jobs, submit, cancel
- gpu: register, update

Phase 4: Wallet, Hermes, Operations
- wallet: export, import
- hermes: send, receive, peers
- operations: vote, proposal, delegate

Phase 5: Simulate Commands
- simulate: run, status, result

All commands follow common pattern using AITBCHTTPClient for backend API interaction.
2026-05-26 22:03:58 +02:00
aitbc
ac59e3ee0a Add genesis sync-from-hub CLI command to fetch genesis.json from hub RPC
Some checks failed
CLI Tests / test-cli (push) Failing after 2s
Deploy to Testnet / deploy-testnet (push) Failing after 8s
Security Scanning / security-scan (push) Failing after 17s
Multi-Node Stress Testing / stress-test (push) Successful in 5s
Cross-Node Transaction Testing / transaction-test (push) Successful in 4s
2026-05-26 21:33:39 +02:00
aitbc
27312dcf2a Standardize config files: use blockchain.env and node.env instead of .env
Some checks failed
Cross-Node Transaction Testing / transaction-test (push) Has been cancelled
Deploy to Testnet / deploy-testnet (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
CLI Tests / test-cli (push) Has been cancelled
Documentation Validation / validate-docs (push) Failing after 11s
Documentation Validation / validate-policies-strict (push) Successful in 4s
- Update CLI config to load from /etc/aitbc/blockchain.env
- Update operational-features.md documentation
- Update setup.sh to create/use blockchain.env
- Update utility scripts (setup-credentials, migrate_secrets, generate_unique_node_ids, chain_regen_node, load-keystore-secrets)
- Update workflow scripts (01_preflight_setup, hermes preflight setups)
- Maintain backward compatibility for existing deployments
2026-05-26 15:53:04 +02:00
aitbc
755d5bdeaf fix: move transaction fields to top level (not nested in payload)
Some checks failed
Cross-Node Transaction Testing / transaction-test (push) Has been cancelled
Deploy to Testnet / deploy-testnet (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
CLI Tests / test-cli (push) Has been cancelled
- RPC expects from, to, amount, fee, nonce, type, signature at top level
- Payload is additional free-form object, not container for all fields
- Fixes validation error: missing field 'from' at body level
- Matches TransactionRequest OpenAPI schema
2026-05-26 14:44:00 +02:00
aitbc
8ad9f6c425 fix: use cryptography library signature directly (no .signature attribute)
Some checks failed
CLI Tests / test-cli (push) Has been cancelled
Cross-Node Transaction Testing / transaction-test (push) Has been cancelled
Deploy to Testnet / deploy-testnet (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
- cryptography library's Ed25519PrivateKey.sign() returns just signature bytes
- Not a SignedMessage object like PyNaCl
- Reverted .signature attribute access
- Fixes AttributeError when signing transactions
2026-05-26 14:35:02 +02:00
aitbc
2e9e7c5798 fix: extract 64-byte signature from SignedMessage using .signature attribute
Some checks failed
CLI Tests / test-cli (push) Has been cancelled
Cross-Node Transaction Testing / transaction-test (push) Has been cancelled
Deploy to Testnet / deploy-testnet (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
- private_key.sign() returns SignedMessage (signature + message)
- Extract only the 64-byte signature using .signature attribute
- Fixes signature length mismatch (was sending 216 hex chars instead of 128)
- RPC expects only the 64-byte signature portion
2026-05-26 14:30:06 +02:00
aitbc
f70b7e691c fix: restructure transaction with nested payload and proper signing
Some checks failed
CLI Tests / test-cli (push) Has been cancelled
Cross-Node Transaction Testing / transaction-test (push) Has been cancelled
Deploy to Testnet / deploy-testnet (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
- Move transaction data into nested payload object
- Sign only the payload, not the entire request
- Submit as {"payload": {...}, "signature": "..."}
- Matches RPC server expectation for nested structure
- Ensures Ed25519 signature is properly included
2026-05-26 14:16:13 +02:00
aitbc
fe1525cc05 fix: restructure transaction payload to match RPC server schema
Some checks failed
CLI Tests / test-cli (push) Has been cancelled
Cross-Node Transaction Testing / transaction-test (push) Has been cancelled
Deploy to Testnet / deploy-testnet (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
- Move amount and recipient/to to top level instead of nested in payload
- Remove chain_id from top level (not in TransactionRequest schema)
- Match TransactionRequest model in apps/blockchain-node/src/aitbc_chain/rpc/transactions.py
- Fixes 422 validation error: field amount is required
- Fixes int_from_flo error by ensuring amount and fee are integers
2026-05-26 14:01:38 +02:00
aitbc
dd1c3c69a5 fix: strip 0x prefix from private key hex string
Some checks failed
CLI Tests / test-cli (push) Has been cancelled
Cross-Node Transaction Testing / transaction-test (push) Has been cancelled
Deploy to Testnet / deploy-testnet (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
- Wallet stores private key with 0x prefix (e.g., 0xf0295e...)
- Strip 0x prefix before converting to bytes with bytes.fromhex()
- Fixes hex parsing error when loading private key from wallet
2026-05-26 13:51:45 +02:00
aitbc
37e30bd309 fix: skip decryption for unencrypted wallets in transactions send
Some checks failed
CLI Tests / test-cli (push) Has been cancelled
Cross-Node Transaction Testing / transaction-test (push) Has been cancelled
Deploy to Testnet / deploy-testnet (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
- Check if wallet is encrypted before attempting decryption
- For unencrypted wallets (created with --no-encrypt), use private_key directly
- Checks both 'encrypted' and 'encrypted_private_key' fields for encryption status
- Fixes 'Unsupported cipher' error when using unencrypted wallets
2026-05-26 13:47:25 +02:00
aitbc
c425ff760c fix: use same wallet directory for transactions as wallet create
Some checks failed
CLI Tests / test-cli (push) Has been cancelled
Cross-Node Transaction Testing / transaction-test (push) Has been cancelled
Deploy to Testnet / deploy-testnet (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
- Changed DEFAULT_KEYSTORE_DIR from KEYSTORE_DIR to Path.home()/.aitbc/wallets
- This matches the wallet directory used by wallet create command
- Fixes 'Wallet not found' error in transactions send command
- Wallets created at ~/.aitbc/wallets/ are now accessible to transactions commands
2026-05-26 13:41:37 +02:00
aitbc
7128927707 fix: restructure password resolution and improve genesis chain_id detection
Some checks failed
CLI Tests / test-cli (push) Has been cancelled
Cross-Node Transaction Testing / transaction-test (push) Has been cancelled
Deploy to Testnet / deploy-testnet (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
- Restructured password resolution in transactions send/batch to check env var before TTY
- Changed from os.environ.get() to 'in os.environ' to detect empty string env vars
- Added unencrypted wallet detection to skip password for --no-encrypt wallets
- Updated genesis info to auto-detect chain_id from blockchain RPC health endpoint
- Added --rpc-url option to genesis info for custom RPC URL
- Improved error messages to show RPC URL used for detection
- Fixes termios.error when AITBC_WALLET_PASSWORD is set to empty string
2026-05-26 13:38:24 +02:00
aitbc
99ef26e464 fix: add TTY handling to transactions commands and improve genesis info
Some checks failed
CLI Tests / test-cli (push) Has been cancelled
Cross-Node Transaction Testing / transaction-test (push) Has been cancelled
Deploy to Testnet / deploy-testnet (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
- Added sys.stdin.isatty() check before getpass in transactions send and batch commands
- Added environment variable fallback (AITBC_WALLET_PASSWORD) for non-interactive environments
- Added --data-dir option to genesis info command to allow custom data directory paths
- Improved error messages in genesis info to show chain_id and data directory
- Fixes termios.error in non-interactive environments for transactions
2026-05-26 13:14:03 +02:00
aitbc
d365b84885 fix: add TTY handling for password prompts and config get alias
Some checks failed
CLI Tests / test-cli (push) Has been cancelled
Cross-Node Transaction Testing / transaction-test (push) Has been cancelled
Deploy to Testnet / deploy-testnet (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
- Fixed getpass TTY error by checking sys.stdin.isatty() before prompting
- Added environment variable fallback for non-interactive environments (AITBC_WALLET_PASSWORD)
- Added config get command as alias for show command
- Wrapped getpass calls in try/except for better error handling
- Fixes termios.error in non-interactive environments like CI/scripts
2026-05-26 12:36:26 +02:00
aitbc
f67819c7e5 fix: add optional positional wallet name argument to balance and address commands
Some checks failed
CLI Tests / test-cli (push) Has been cancelled
Cross-Node Transaction Testing / transaction-test (push) Has been cancelled
Deploy to Testnet / deploy-testnet (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
- Added @click.argument("name", required=False) to balance command
- Added @click.argument("name", required=False) to address command
- Commands now accept wallet name as positional argument or fall back to --wallet-name option
- Fixes UsageError when running "aitbc wallet balance my-agent-wallet"
- Matches scenario documentation syntax expectations
2026-05-26 12:27:20 +02:00
aitbc
7ced360c1f refactor: move cli/core/ to cli/aitbc_cli/core/ for proper package structure
Some checks failed
CLI Tests / test-cli (push) Has been cancelled
Cross-Node Transaction Testing / transaction-test (push) Has been cancelled
Deploy to Testnet / deploy-testnet (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
- Moved core/ directory to aitbc_cli/core/ to make it a proper subpackage
- Updated aitbc_cli.py to load from new path
- Simplified aitbc_cli/__init__.py to use normal import instead of spec_from_file_location
- Updated all core imports to use aitbc_cli.core prefix
- Copied utils files (wallet_daemon_client, error_handling, crypto_utils, subprocess) to aitbc_cli/utils/
- Fixed wallet list command to work with new structure
- This fixes ModuleNotFoundError for aitbc_cli.core submodules
2026-05-26 12:17:58 +02:00
aitbc
f8150ae1aa fix: copy cli/models/ directory to cli/aitbc_cli/models/
Some checks failed
CLI Tests / test-cli (push) Has been cancelled
Cross-Node Transaction Testing / transaction-test (push) Has been cancelled
Deploy to Testnet / deploy-testnet (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
- Copied all files from cli/models/ to cli/aitbc_cli/models/
- Commands use relative imports like from ..models.chain import ChainType
- Files were in cli/models/ but imports expected them in cli/aitbc_cli/models/
- Fixes ModuleNotFoundError for ChainType and other model imports
2026-05-26 12:08:15 +02:00
aitbc
c009aa3066 fix: copy dual_mode_wallet_adapter.py to aitbc_cli/utils/
Some checks failed
CLI Tests / test-cli (push) Has been cancelled
Cross-Node Transaction Testing / transaction-test (push) Has been cancelled
Deploy to Testnet / deploy-testnet (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
- Copied from cli/utils/ to cli/aitbc_cli/utils/
- Wallet command imports from aitbc_cli.utils.dual_mode_wallet_adapter
- File was in cli/utils/ but import expected it in cli/aitbc_cli/utils/
- Fixes ModuleNotFoundError for DualModeWalletAdapter
2026-05-26 11:45:13 +02:00
aitbc
98390554b2 fix: register aitbc_cli.core in sys.modules before loading core/main.py
Some checks failed
CLI Tests / test-cli (push) Has been cancelled
Cross-Node Transaction Testing / transaction-test (push) Has been cancelled
Deploy to Testnet / deploy-testnet (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
- Register aitbc_cli.core module pointing to core/ directory before loading
- Register aitbc_cli.core.main in sys.modules before exec_module
- Fixes No module named 'aitbc_cli.core' error when core/main.py imports
- Allows core/main.py to import from aitbc_cli.commands.* correctly
2026-05-26 11:39:18 +02:00
aitbc
cff0dc1393 fix: add sys.path setup in core/main.py for aitbc_cli imports
Some checks failed
CLI Tests / test-cli (push) Has been cancelled
Cross-Node Transaction Testing / transaction-test (push) Has been cancelled
Deploy to Testnet / deploy-testnet (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
- Added sys.path.insert(0, str(CLI_DIR)) where CLI_DIR is /opt/aitbc/cli
- Ensures aitbc_cli package is importable from core/main.py
- Fixes No module named 'aitbc_cli.core' error
- core/ and aitbc_cli/ are siblings, so core/main.py needs explicit path setup
2026-05-26 11:36:11 +02:00
aitbc
020f7435c8 fix: prevent sys.modules corruption in aitbc_cli/__init__.py
Some checks failed
CLI Tests / test-cli (push) Has been cancelled
Cross-Node Transaction Testing / transaction-test (push) Has been cancelled
Deploy to Testnet / deploy-testnet (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
- Disabled compatibility aliases for core and models (sibling directories, not subpackages)
- Changed __getattr__ to use spec_from_file_location instead of import_module
- Prevents sys.modules corruption that broke aitbc_cli.utils imports
- Fixes wallet command ModuleNotFoundError for dual_mode_wallet_adapter
2026-05-26 11:32:57 +02:00
aitbc
7fdc3e2619 fix: register CLI module in sys.modules for proper package resolution
Some checks failed
CLI Tests / test-cli (push) Has been cancelled
Cross-Node Transaction Testing / transaction-test (push) Has been cancelled
Deploy to Testnet / deploy-testnet (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
- Added sys.modules["aitbc_cli.core.main"] registration before exec_module
- Fixes ModuleNotFoundError for aitbc_cli.utils.dual_mode_wallet_adapter
- Ensures subpackage imports resolve correctly when loaded via spec_from_file_location
- Allows wallet commands to import from aitbc_cli.utils properly
2026-05-26 11:26:18 +02:00
aitbc
c96309e76f fix: correct config import name in main.py
Some checks failed
CLI Tests / test-cli (push) Has been cancelled
Cross-Node Transaction Testing / transaction-test (push) Has been cancelled
Deploy to Testnet / deploy-testnet (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
- Changed from config_cmd to config as config_cmd
- The function in config.py is named config, not config_cmd
- All other import names matched their actual function names
2026-05-26 11:21:19 +02:00
aitbc
86058671eb fix: remove non-existent Config import from config command
Some checks failed
CLI Tests / test-cli (push) Has been cancelled
Cross-Node Transaction Testing / transaction-test (push) Has been cancelled
Deploy to Testnet / deploy-testnet (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
- Removed Config from import in config.py command file
- Config class doesn't exist in aitbc_cli.config (only CLIConfig exists)
- Config was unused in the command file anyway
- Fixes ImportError that cascaded to fail all commands
2026-05-26 11:17:09 +02:00
aitbc
a1321d85ac fix: re-enable exchange and config commands (no ..core imports)
Some checks failed
CLI Tests / test-cli (push) Has been cancelled
Cross-Node Transaction Testing / transaction-test (push) Has been cancelled
Deploy to Testnet / deploy-testnet (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
- Re-enabled exchange and config commands as they don't import from ..core
- exchange imports from ..config and ..utils (both exist)
- config imports from ..config and ..utils (both exist)
- Commands with ..core imports remain disabled until aitbc_cli.core subpackage is created
2026-05-26 11:12:56 +02:00
aitbc
b42a4d9b5f fix: disable all commands with invalid ..core.* imports
Some checks failed
CLI Tests / test-cli (push) Has been cancelled
Cross-Node Transaction Testing / transaction-test (push) Has been cancelled
Deploy to Testnet / deploy-testnet (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
- Disabled analytics, crosschain, deployment, monitor, node, agent_comm, exchange, config commands
- These commands import from aitbc_cli.core.* which doesn't exist (core/ is at cli/core/, not cli/aitbc_cli/core/)
- Kept working commands: system, marketplace, chain, agent_sdk, gpu_marketplace, exchange_island, wallet, genesis, transactions, mining, hermes, workflow, resource, operations, simulate, edge
- Prevents ModuleNotFoundError when loading CLI
2026-05-26 11:11:47 +02:00
aitbc
598bc350f3 fix: disable deployment command due to missing core.deployment module
Some checks failed
CLI Tests / test-cli (push) Has been cancelled
Cross-Node Transaction Testing / transaction-test (push) Has been cancelled
Deploy to Testnet / deploy-testnet (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
- Commented out deployment command import and registration
- deployment.py imports from aitbc_cli.core.deployment which doesn't exist
- Other commands using ..core.* imports are valid (config, chain_manager, analytics, etc.)
- Prevents ModuleNotFoundError when loading CLI
2026-05-26 11:10:56 +02:00
aitbc
16162897d5 feat: add missing CLI command groups and fix genesis chain_id detection
Some checks failed
CLI Tests / test-cli (push) Has been cancelled
Cross-Node Transaction Testing / transaction-test (push) Has been cancelled
Deploy to Testnet / deploy-testnet (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
- Added missing command groups: analytics, crosschain, deployment, monitor, node, agent, exchange, config
- Fixed genesis commands to auto-detect chain_id from config instead of hardcoding ait-mainnet
- Addresses scenario requirements for staking, governance, agent, marketplace commands
- Fixes genesis config path mismatch for nodes configured for different chains
2026-05-26 11:06:31 +02:00
aitbc
d281eff8ef fix: use full package path for utils import in wallet commands
Some checks failed
CLI Tests / test-cli (push) Has been cancelled
Cross-Node Transaction Testing / transaction-test (push) Has been cancelled
Deploy to Testnet / deploy-testnet (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
- Changed from utils.dual_mode_wallet_adapter to aitbc_cli.utils.dual_mode_wallet_adapter
- Removes need for sys.path manipulation
- Works correctly with spec_from_file_location loading
- Fixes ModuleNotFoundError when core/main.py loads wallet commands
2026-05-26 11:00:16 +02:00
aitbc
a70b901072 fix: correct utils module import path in wallet commands
Some checks failed
CLI Tests / test-cli (push) Has been cancelled
Cross-Node Transaction Testing / transaction-test (push) Has been cancelled
Deploy to Testnet / deploy-testnet (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
- Fixed path to include /cli directory for utils.dual_mode_wallet_adapter import
- Changed from parent.parent.parent to parent.parent.parent.parent / "cli"
- Ensures utils module can be found when running wallet commands
- Fixes ModuleNotFoundError for utils.dual_mode_wallet_adapter
2026-05-26 10:58:37 +02:00
aitbc
db19c80026 fix: prevent hermes-agent cli module conflict in aitbc-cli
Some checks failed
Cross-Node Transaction Testing / transaction-test (push) Has been cancelled
Deploy to Testnet / deploy-testnet (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Has been cancelled
CLI Tests / test-cli (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
- Remove /usr/local/lib/hermes-agent from sys.path in aitbc-cli wrapper
- Prevents python -m cli.core.main from resolving to hermes-agent's cli module
- Ensures AITBC CLI loads from correct module path
- Fixes hermes agent stumble when CLI picks up wrong module
2026-05-26 10:53:32 +02:00
aitbc
013d848132 fix: update legacy port 8545 to 8006 across codebase
Some checks failed
Cross-Node Transaction Testing / transaction-test (push) Has been cancelled
Deploy to Testnet / deploy-testnet (push) Has been cancelled
Documentation Validation / validate-docs (push) Has been cancelled
Documentation Validation / validate-policies-strict (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Has been cancelled
CLI Tests / test-cli (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
Blockchain Synchronization Verification / sync-verification (push) Has been cancelled
Coverage Phase 1 (70% Target) / test-coverage-70 (push) Has been cancelled
Coverage Phase 2 (85% Target) / test-coverage-85 (push) Has been cancelled
Cross-Chain Functionality Tests / test-cross-chain-sync (push) Has been cancelled
Cross-Chain Functionality Tests / test-cross-chain-transactions (push) Has been cancelled
Cross-Chain Functionality Tests / test-multi-chain-consensus (push) Has been cancelled
Cross-Chain Functionality Tests / aggregate-results (push) Has been cancelled
Integration Tests / test-service-integration (push) Has been cancelled
Multi-Chain Island Architecture Tests / test-multi-chain-island (push) Has been cancelled
Multi-Node Blockchain Health Monitoring / health-check (push) Has been cancelled
Node Failover Simulation / failover-test (push) Has been cancelled
P2P Network Verification / p2p-verification (push) Has been cancelled
Python Tests / test-python (push) Has been cancelled
Package Tests / Python package - aitbc-agent-sdk (push) Successful in 58s
Package Tests / Python package - aitbc-core (push) Failing after 3s
Package Tests / Python package - aitbc-crypto (push) Successful in 19s
Package Tests / Python package - aitbc-sdk (push) Successful in 16s
Package Tests / JavaScript package - aitbc-sdk-js (push) Successful in 24s
Package Tests / JavaScript package - aitbc-token (push) Failing after 10s
Production Tests / Production Integration Tests (push) Failing after 1m10s
API Endpoint Tests / test-api-endpoints (push) Failing after 11m17s
- Updated Blockchain RPC port from legacy 8545 to current 8006
- Updated documentation files (SETUP.md, infrastructure README, etc.)
- Updated code files (config.py, wallet_adapter.py, base.py, blockchain_simple.py)
- Updated scripts (production-setup.sh, production-deploy.sh, dashboard.sh)
- Updated test configuration (tests/README.md)
- Fixed service endpoints table in SETUP.md
- hermes agents will now use correct port 8006 for blockchain RPC
2026-05-26 09:28:40 +02:00
aitbc
214c1b65ec ci: migrate from requirements.txt to poetry.lock as source of truth
Some checks failed
Coverage Phase 1 (70% Target) / test-coverage-70 (push) Has been cancelled
Coverage Phase 2 (85% Target) / test-coverage-85 (push) Has been cancelled
Cross-Node Transaction Testing / transaction-test (push) Has been cancelled
Deploy to Testnet / deploy-testnet (push) Has been cancelled
Integration Tests / test-service-integration (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Has been cancelled
Python Tests / test-python (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
Documentation Validation / validate-docs (push) Has been cancelled
Documentation Validation / validate-policies-strict (push) Has been cancelled
CLI Tests / test-cli (push) Has been cancelled
Package Tests / Python package - aitbc-agent-sdk (push) Has been cancelled
Package Tests / Python package - aitbc-core (push) Has been cancelled
Package Tests / Python package - aitbc-crypto (push) Has been cancelled
Package Tests / Python package - aitbc-sdk (push) Has been cancelled
Package Tests / JavaScript package - aitbc-sdk-js (push) Has been cancelled
Package Tests / JavaScript package - aitbc-token (push) Has been cancelled
Smart Contract Tests / test-solidity (map[name:aitbc-contracts path:contracts]) (push) Has been cancelled
Smart Contract Tests / test-solidity (map[name:aitbc-token path:packages/solidity/aitbc-token]) (push) Has been cancelled
Smart Contract Tests / test-foundry (push) Has been cancelled
Smart Contract Tests / lint-solidity (push) Has been cancelled
Smart Contract Tests / deploy-contracts (push) Has been cancelled
- Updated CI workflows to track poetry.lock instead of requirements.txt
- Removed check-requirements-sync.py step from python-tests.yml
- Updated dependency_scanner.py default from requirements.txt to pyproject.toml
- Replaced all print() with click.echo() in deploy_edge_node.py (CLI script)
- Replaced print() with logger.warning() in zk_cache.py
- Updated setup.py files to read dependencies from pyproject.toml via tomli
- Removed
2026-05-25 15:10:12 +02:00
aitbc
a7b6e39cdf fix: replace all print() with click.echo() or logger in CLI production code
- 55 CLI files: handlers/, aitbc_cli/commands/, cli/core/, cli/utils/, top-level scripts
- Click-based files: print() -> click.echo()
- Library modules: print() -> logger.info/error/warning
- Fixed pre-existing indentation bugs in monitor.py dashboard function
- Fixed bare print() -> logger.info('') in chain_manager.py
- 0 remaining print() in production CLI code
- All files compile cleanly
2026-05-25 13:53:49 +02:00
aitbc
fd6ade31dc fix: remove backup files and fix zero-address defaults
- Removed router_old.py (2473 lines - backup reference file)
- Removed cli/aitbc_cli.legacy.py (3256 lines - legacy CLI)
- Fixed zero-address defaults in dispute_resolution.py:
  - Dispute.winner: changed from "0x0000000000000000000000000000000000000000" to None
  - Evidence.verified_by: changed from "0x0000000000000000000000000000000000000000" to None

These changes address remaining cleanup items from the gap analysis.
2026-05-25 10:08:41 +02:00
aitbc
573aae065b feat: complete codebase remediation with all phases
Some checks failed
Coverage Phase 1 (70% Target) / test-coverage-70 (push) Failing after 19s
Coverage Phase 2 (85% Target) / test-coverage-85 (push) Failing after 18s
Cross-Chain Functionality Tests / test-cross-chain-sync (push) Successful in 3s
Cross-Chain Functionality Tests / test-cross-chain-transactions (push) Successful in 4s
Cross-Chain Functionality Tests / test-multi-chain-consensus (push) Successful in 5s
Deploy to Testnet / deploy-testnet (push) Failing after 21s
Documentation Validation / validate-docs (push) Failing after 13s
Documentation Validation / validate-policies-strict (push) Successful in 4s
Integration Tests / test-service-integration (push) Failing after 2s
Multi-Chain Island Architecture Tests / test-multi-chain-island (push) Successful in 4s
Multi-Node Blockchain Health Monitoring / health-check (push) Failing after 14s
Node Failover Simulation / failover-test (push) Successful in 9s
P2P Network Verification / p2p-verification (push) Successful in 5s
Package Tests / Python package - aitbc-agent-sdk (push) Successful in 51s
Package Tests / Python package - aitbc-core (push) Failing after 3s
Package Tests / Python package - aitbc-crypto (push) Successful in 22s
Package Tests / Python package - aitbc-sdk (push) Successful in 16s
Package Tests / JavaScript package - aitbc-sdk-js (push) Successful in 21s
Package Tests / JavaScript package - aitbc-token (push) Failing after 18s
Production Tests / Production Integration Tests (push) Failing after 1m9s
Python Tests / test-python (push) Failing after 3s
Security Scanning / security-scan (push) Failing after 41s
Smart Contract Tests / test-solidity (map[name:aitbc-contracts path:contracts]) (push) Failing after 6s
Smart Contract Tests / test-solidity (map[name:aitbc-token path:packages/solidity/aitbc-token]) (push) Failing after 7s
Smart Contract Tests / test-foundry (push) Failing after 20s
Smart Contract Tests / lint-solidity (push) Failing after 4s
Smart Contract Tests / deploy-contracts (push) Failing after 5s
Cross-Chain Functionality Tests / aggregate-results (push) Successful in 2s
Multi-Node Stress Testing / stress-test (push) Successful in 2s
Cross-Node Transaction Testing / transaction-test (push) Successful in 3s
Phase 1: Security fixes
- Added CORSMiddleware to marketplace-service with specific origins
- Fixed blockchain-node auth to fail closed on JWT errors
- Added security regression tests (test_cors_configuration.py, test_dispute_auth.py)

Phase 2: Repository cleanup
- Removed 51 fix/backup/legacy files
- Deleted marketplace-service-debug directory

Phase 3.1: Python version constraints
- Updated aitbc-crypto and aitbc-sdk with requires-python >=3.13
- Added explicit [tool.poetry].packages declarations

Phase 3.2: Agent service DI architecture
- Created aitbc-agent-core package with protocols and shared service
- Implemented adapters for agent-management and coordinator-api
- Created factory functions for gradual migration
- Added migration comments to existing integration files

Phase 4.1: Auth/utils extraction
- Created auth.py module with JWT validation and security utilities
- Created utils.py module with common helpers

Phase 4.2: Router decomposition
- Decomposed router.py into 10 domain modules (58 endpoints)
- Created route table snapshot for verification
- Preserved router_old.py as reference

Phase 5: App shell classification
- Documented app shell patterns across services

Phase 6: Quality gates
- Verified mypy type checking (75% error reduction)
- Analyzed logging inconsistencies with structlog migration plan
- Removed unused orjson dependency

Documentation:
- Created comprehensive remediation report
- Added architecture documentation for DI pattern
- Added quality analysis documents
2026-05-24 20:21:23 +02:00
aitbc
494bd962b4 Add authentication to dispute endpoints and improve test coverage infrastructure
Some checks failed
Cross-Chain Functionality Tests / test-multi-chain-consensus (push) Has been cancelled
Deploy to Testnet / deploy-testnet (push) Has been cancelled
Documentation Validation / validate-docs (push) Has been cancelled
Documentation Validation / validate-policies-strict (push) Has been cancelled
Integration Tests / test-service-integration (push) Has been cancelled
Multi-Chain Island Architecture Tests / test-multi-chain-island (push) Has been cancelled
Multi-Node Blockchain Health Monitoring / health-check (push) Has been cancelled
Node Failover Simulation / failover-test (push) Has been cancelled
P2P Network Verification / p2p-verification (push) Has been cancelled
Package Tests / Python package - aitbc-agent-sdk (push) Has been cancelled
Package Tests / Python package - aitbc-core (push) Has been cancelled
Package Tests / Python package - aitbc-crypto (push) Has been cancelled
Package Tests / Python package - aitbc-sdk (push) Has been cancelled
Package Tests / JavaScript package - aitbc-sdk-js (push) Has been cancelled
Package Tests / JavaScript package - aitbc-token (push) Has been cancelled
Python Tests / test-python (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
Smart Contract Tests / test-solidity (map[name:aitbc-contracts path:contracts]) (push) Has been cancelled
Smart Contract Tests / test-solidity (map[name:aitbc-token path:packages/solidity/aitbc-token]) (push) Has been cancelled
Smart Contract Tests / test-foundry (push) Has been cancelled
Smart Contract Tests / lint-solidity (push) Has been cancelled
Smart Contract Tests / deploy-contracts (push) Has been cancelled
Staking Tests / test-staking-service (push) Has been cancelled
Contract Performance Benchmarks / compare-benchmarks (push) Has been cancelled
Cross-Chain Functionality Tests / aggregate-results (push) Has been cancelled
Staking Tests / test-staking-integration (push) Has been cancelled
Staking Tests / test-staking-contract (push) Has been cancelled
Staking Tests / run-staking-test-runner (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Successful in 3s
Cross-Node Transaction Testing / transaction-test (push) Successful in 3s
- Add get_authenticated_address() helper to extract wallet address from X-Wallet-Address header or JWT token
- Add authentication to dispute filing, evidence submission, verification, voting, and arbitrator authorization endpoints
- Replace hardcoded zero addresses with authenticated addresses from request headers
- Add DEV_MODE fallback for development without authentication
- Add --mock flag to experimental resource
2026-05-22 23:13:47 +02:00
aitbc
60ec340e92 feat: add wallet fund command using blockchain faucet
Some checks failed
CLI Tests / test-cli (push) Failing after 10s
Cross-Node Transaction Testing / transaction-test (push) Successful in 3s
Deploy to Testnet / deploy-testnet (push) Successful in 1m28s
Multi-Node Stress Testing / stress-test (push) Successful in 8s
Security Scanning / security-scan (push) Failing after 1m21s
- Add 'wallet fund' CLI command to fund wallets via blockchain faucet
- Uses POST /faucet endpoint to request test tokens
- Supports custom amount and chain_id parameters
- Auto-creates account if it doesn't exist
- Rate-limited to 10 requests per hour per IP
2026-05-20 10:38:53 +02:00
aitbc
83a03be376 fix: update output() signature with format and title parameters, fix Config import in dual_mode_wallet_adapter
Some checks failed
CLI Tests / test-cli (push) Failing after 3s
Cross-Node Transaction Testing / transaction-test (push) Successful in 2s
Deploy to Testnet / deploy-testnet (push) Successful in 1m20s
Multi-Node Stress Testing / stress-test (push) Successful in 2s
Security Scanning / security-scan (push) Successful in 35s
- Added format and title parameters to output() function in utils/__init__.py
- Handle format='json'/'yaml' for structured data output
- Display optional title with underline separator when provided
- Fixed import in dual_mode_wallet_adapter.py from config.Config to aitbc_cli.config.CLIConfig
2026-05-19 20:20:40 +02:00
aitbc
26f7d72b8e fix: resolve CLI config package shadowing config.py module
Some checks failed
CLI Tests / test-cli (push) Failing after 7s
Deploy to Testnet / deploy-testnet (push) Successful in 1m17s
Security Scanning / security-scan (push) Successful in 38s
Multi-Node Stress Testing / stress-test (push) Successful in 2s
Cross-Node Transaction Testing / transaction-test (push) Successful in 2s
Renamed cli/config/ directory to cli/config_data/ to prevent package
shadowing of cli/aitbc_cli/config.py module. Removed problematic
sys.modules manipulation in aitbc_cli/__init__.py that was causing
circular import issues. Now 'from aitbc_cli.config import CLIConfig' works correctly.
2026-05-19 19:53:34 +02:00
aitbc
27a078a279 fix: CLI bugs - island list, output signature, GPU credentials, mining subcommand
Some checks failed
CLI Tests / test-cli (push) Failing after 3s
Cross-Node Transaction Testing / transaction-test (push) Successful in 3s
Deploy to Testnet / deploy-testnet (push) Successful in 1m18s
Multi-Node Stress Testing / stress-test (push) Successful in 2s
Security Scanning / security-scan (push) Successful in 31s
- S05 Islands: edge.py list_islands now has name='list' for 'aitbc edge island list'
- S06 Market: output() now handles structured data (dict/list) by JSON-encoding
- S09 GPU: added safe_load_credentials() to gpu_marketplace.py and exchange_island.py
  with graceful FileNotFoundError handling and helpful error message
- S13 Mining: added 'list' subcommand to mining.py for listing active miners
2026-05-19 19:38:06 +02:00
aitbc
ee22bba246 refactor: remove website directory - migrate to separate repository
Some checks failed
CLI Tests / test-cli (push) Failing after 3s
Cross-Node Transaction Testing / transaction-test (push) Successful in 2s
Deploy to Testnet / deploy-testnet (push) Successful in 1m14s
Integration Tests / test-service-integration (push) Successful in 1m24s
Multi-Node Stress Testing / stress-test (push) Successful in 2s
Python Tests / test-python (push) Failing after 33s
Security Scanning / security-scan (push) Successful in 36s
- Deleted website/ directory containing static site, docs, and dashboards
- Removed 16 HTML documentation pages (index, clients, miners, developers, API reference, etc.)
- Removed browser wallet redirect page and agent endpoints (.htaccess)
- Deleted nginx proxy config example and README
- Removed admin, client, and miner dashboard HTML files
- Cleaned up static assets (CSS, JS, SVG, fonts)
- Website content moved to dedicated repository for
2026-05-19 18:23:14 +02:00
aitbc
57cfa2e65a refactor: simplify CLI dependencies and update package metadata
Some checks failed
CLI Tests / test-cli (push) Failing after 3s
Cross-Node Transaction Testing / transaction-test (push) Successful in 2s
Deploy to Testnet / deploy-testnet (push) Successful in 1m18s
Multi-Node Stress Testing / stress-test (push) Successful in 3s
Security Scanning / security-scan (push) Successful in 36s
- Reduced requires.txt from 58 dependencies to 5 core packages (click, pydantic, pyyaml, requests, rich)
- Removed heavy dependencies: fastapi, uvicorn, sqlalchemy, web3, pandas, numpy, opencv, redis, tenseal
- Updated PKG-INFO with expanded technical documentation including navigation, quick start, and quality metrics
- Added aitbc_cli package modules to SOURCES.txt (config, auth, commands, utils subdirs)
- Reorganized top_level.txt to include aitbc
2026-05-19 17:48:28 +02:00
aitbc
93a823c655 fix: resolve NameError for Config in wallet_daemon_client.py
Some checks failed
CLI Tests / test-cli (push) Failing after 5s
Cross-Node Transaction Testing / transaction-test (push) Successful in 3s
Deploy to Testnet / deploy-testnet (push) Successful in 1m19s
Multi-Node Stress Testing / stress-test (push) Successful in 3s
Security Scanning / security-scan (push) Successful in 56s
Config was used as a type annotation in WalletDaemonClient.__init__ but
never imported, causing NameError at class definition time. Fixed by
importing Config under TYPE_CHECKING guard and using string annotation
'Config' to defer resolution to type-checkers only.
2026-05-19 17:25:09 +02:00
aitbc
83ca64f7b8 feat: add /v1 API prefix to all business logic endpoints and create CLI test suite
Some checks failed
API Endpoint Tests / test-api-endpoints (push) Has been cancelled
Cross-Node Transaction Testing / transaction-test (push) Has been cancelled
Deploy to Testnet / deploy-testnet (push) Has been cancelled
Integration Tests / test-service-integration (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Has been cancelled
Production Tests / Production Integration Tests (push) Has been cancelled
Python Tests / test-python (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
CLI Tests / test-cli (push) Failing after 3s
- Added /v1 prefix to all business logic routers in coordinator-api (analytics, portfolio, reputation, rewards, staking)
- Updated agent-coordinator to include /v1 prefix for all routers
- Changed agent-management API prefix from /api/v1 to /v1
- Updated api-gateway service prefixes to include /v1 for all proxied services
- Fixed coordinator-api routers to use correct service imports (AgentServiceMarketplace instead
2026-05-19 12:46:59 +02:00
aitbc
00bd0e5e5e refactor: update CLI commands to use /v1 API versioning prefix
Some checks failed
Cross-Node Transaction Testing / transaction-test (push) Has been cancelled
Deploy to Testnet / deploy-testnet (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
CLI Tests / test-cli (push) Has been cancelled
- Changed monitor.py job endpoints from /jobs to /v1/jobs
- Changed monitor.py miner endpoints from /miners to /v1/miners
- Changed operations.py agent discovery from /agents/discover to /v1/agents/discover
- Changed system.py agent endpoints from /agents/* to /v1/agents/*
- Updated agent status, registration, discovery, and retrieval endpoints
- Aligns CLI with coordinator-api versioning structure for business logic endpoints
2026-05-19 11:42:17 +02:00
aitbc
c4a2afee37 Add missing plugin CLI commands and REST API endpoint
Some checks failed
Cross-Node Transaction Testing / transaction-test (push) Has been cancelled
Deploy to Testnet / deploy-testnet (push) Has been cancelled
Integration Tests / test-service-integration (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Has been cancelled
Python Tests / test-python (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
CLI Tests / test-cli (push) Has been cancelled
CLI:
- Added 'aitbc plugin create' - Create new plugin skeleton
- Added 'aitbc plugin package' - Package plugin for distribution
- Added 'aitbc market list-plugin' - List marketplace plugins

Marketplace service:
- Added GET /v1/marketplace/plugins endpoint
- Returns mock plugin data (cli_enhancer, web_dashboard, security_scanner)

Fixes scenario doc references to non-existent plugin commands
2026-05-15 00:24:29 +02:00