Commit Graph

1078 Commits

Author SHA1 Message Date
aitbc
054adaf7be feat: switch SQLite to WAL mode and disable Btrfs CoW for data directory
Some checks failed
Blockchain Synchronization Verification / sync-verification (push) Failing after 2s
CLI Tests / test-cli (push) Successful in 4s
Integration Tests / test-service-integration (push) Failing after 12s
Multi-Node Blockchain Health Monitoring / health-check (push) Successful in 2s
P2P Network Verification / p2p-verification (push) Successful in 3s
Python Tests / test-python (push) Successful in 11s
Security Scanning / security-scan (push) Successful in 1m11s
- Change SQLite journal mode from DELETE to WAL for better concurrency
- Add chattr +C to /var/lib/aitbc in setup.sh to disable Btrfs Copy-on-Write
- Add fallback logging when chattr is unavailable or fails
- Prevent SQLite corruption on Btrfs filesystems by ensuring overwrite-in-place behavior
2026-04-21 22:00:47 +02:00
Andreas Michael Fleckl
be48ec8a1b Merge pull request #77 from oib/feature/test-restructuring
refactor: restructure test suite
2026-04-21 21:27:48 +02:00
Andreas Michael Fleckl
f5e4ec8742 Merge pull request #76 from oib/feature/cli-config-hardening
feat: harden CLI config editing with safer subprocess invocation
2026-04-21 21:25:11 +02:00
Andreas Michael Fleckl
387bbce8d0 Merge pull request #74 from oib/feature/website-cleanup
chore: cleanup website files
2026-04-21 21:23:01 +02:00
Andreas Michael Fleckl
872e2deeb6 Merge pull request #73 from oib/feature/test-config-improvements
feat: improve test configuration and fixtures
2026-04-21 21:22:21 +02:00
Andreas Michael Fleckl
488a75aebe Merge pull request #72 from oib/feature/wallet-improvements
Feature/wallet improvements
2026-04-21 21:19:23 +02:00
aitbc
cad12ab2fe chore: cleanup website files
- Remove website/dashboards/ directory
- Remove website/aitbc-proxy.conf
- Remove website/README.md
- Update website documentation files with minimum Python version
- Update website assets (CSS, JS) for improved performance
- Update docs/ with minimum Python version and updated paths
2026-04-21 21:15:55 +02:00
aitbc
14e2d96870 refactor: restructure test suite
- Remove tests/production/ directory (JWT auth, production monitoring, etc.)
- Remove tests/staking/ directory
- Remove tests/services/test_staking_service.py
- Remove tests/phase1/ directory
- Remove tests/load_test.py
- Add tests/verification/ directory with 20+ new test files
- Add tests/load/locustfile.py for load testing
- Add tests/security/test_confidential_transactions.py
- Add tests/integration/test_working_integration.py
- Update docs/ for minimum Python version and paths
2026-04-21 21:15:27 +02:00
aitbc
43d81553dd feat: add wallet improvements and new commands
- Add multisig transaction support with approval workflow
- Add liquidity staking with tier-based APY (bronze/silver/gold/platinum)
- Add liquidity unstaking with rewards calculation
- Add rewards command to view staking and liquidity rewards
- Adjust wallet balance flow for non-interactive table output mode
- Store unencrypted by default in table output flow
2026-04-21 21:15:00 +02:00
aitbc
369b7fb000 feat: improve test configuration and fixtures
- Add cli to pytest.ini pythonpath for test discovery
- Simplify tests/conftest.py to only mock aitbc_crypto when not importable
- Add minimal aitbc_crypto.signing.ReceiptSigner mock for coordinator imports
- Remove complex test fixtures and collection hooks
- Update pytest.ini with comprehensive pythonpath entries
- Add environment variables for tests
- Add warning filters for common deprecations
2026-04-21 21:14:31 +02:00
aitbc
2233a16294 feat: harden CLI config editing with safer subprocess invocation
- Replace os.system editor invocation with shlex.split + subprocess.run
- Add yaml.safe_load fallback to {} when exporting empty YAML
- Add new config commands: import, validate, environments, profiles, secrets
- Update tests to patch subprocess.run and test new config commands
- Protect against empty EDITOR env values
2026-04-21 21:14:09 +02:00
aitbc
cdba253fb2 fix: add default_peer_rpc_url for bulk sync fallback
All checks were successful
Integration Tests / test-service-integration (push) Successful in 11s
Python Tests / test-python (push) Successful in 19s
Security Scanning / security-scan (push) Successful in 33s
Blockchain Synchronization Verification / sync-verification (push) Successful in 4s
P2P Network Verification / p2p-verification (push) Successful in 3s
Multi-Node Blockchain Health Monitoring / health-check (push) Successful in 3s
- Add default_peer_rpc_url configuration parameter
- Update bulk sync fallback to use default_peer_rpc_url instead of gossip_broadcast_url
- Fixes 'unsupported protocol redis://' error in bulk sync
- gossip_broadcast_url is for Redis backend, not HTTP RPC calls
2026-04-20 22:05:05 +02:00
aitbc
ca4e3d9c46 feat: implement dynamic batch size for bulk sync
Some checks failed
Blockchain Synchronization Verification / sync-verification (push) Failing after 3s
Integration Tests / test-service-integration (push) Successful in 12s
Multi-Node Blockchain Health Monitoring / health-check (push) Successful in 2s
P2P Network Verification / p2p-verification (push) Successful in 2s
Python Tests / test-python (push) Successful in 9s
Security Scanning / security-scan (push) Successful in 32s
- Add _calculate_dynamic_batch_size method to sync.py
- Scale batch size based on gap size:
  - Small gaps (< 100): 20-50 blocks for precision
  - Medium gaps (100-500): 50-100 blocks
  - Large gaps (> 500): 100-200 blocks for speed
- Add min_bulk_sync_batch_size and max_bulk_sync_batch_size config params
- Update bulk_import_from to use dynamic batch size
- Replaces fixed 50-block batch size with adaptive sizing
2026-04-20 22:00:31 +02:00
aitbc
404cec1098 config: change block generation time from 2s to 10s
Some checks failed
Blockchain Synchronization Verification / sync-verification (push) Failing after 3s
Integration Tests / test-service-integration (push) Successful in 12s
Multi-Node Blockchain Health Monitoring / health-check (push) Successful in 3s
P2P Network Verification / p2p-verification (push) Successful in 2s
Python Tests / test-python (push) Successful in 10s
Security Scanning / security-scan (push) Successful in 26s
- Increase block_time_seconds from 2 to 10 seconds
- Reduces block generation frequency
- Helps with sync gap recovery by giving more time between blocks
2026-04-20 21:49:39 +02:00
aitbc
8ad3af7131 fix: handle closing parenthesis in gap size parsing
Some checks failed
Integration Tests / test-service-integration (push) Successful in 11s
Multi-Node Blockchain Health Monitoring / health-check (push) Successful in 3s
P2P Network Verification / p2p-verification (push) Successful in 3s
Python Tests / test-python (push) Successful in 11s
Security Scanning / security-scan (push) Successful in 35s
Blockchain Synchronization Verification / sync-verification (push) Failing after 2s
- Add .replace(")", "") to received_height parsing
- Fixes ValueError when parsing '9007)' as integer
- Auto sync was failing due to parsing bug in main.py
- Reason format: 'Gap detected (our height: 8175, received: 9007)'
2026-04-20 21:43:01 +02:00
aitbc
391ba4ca2e fix: add nosec comments for B104 in config.py
Some checks failed
Integration Tests / test-service-integration (push) Successful in 11s
Multi-Node Blockchain Health Monitoring / health-check (push) Successful in 2s
P2P Network Verification / p2p-verification (push) Successful in 2s
Python Tests / test-python (push) Successful in 10s
Security Scanning / security-scan (push) Successful in 21s
Blockchain Synchronization Verification / sync-verification (push) Failing after 5s
- Add nosec B104 comments for rpc_bind_host and p2p_bind_host
- These are intentional defaults for distributed blockchain
- P2P nodes need to accept connections from peers
- RPC needs to be accessible from other machines in cluster
- Suppresses Bandit security scan warnings
2026-04-20 21:23:10 +02:00
aitbc
ea12226a5d fix: exclude tests/production from integration-tests
All checks were successful
Integration Tests / test-service-integration (push) Successful in 11s
- Add --ignore=tests/production to pytest command
- Tests in production/ are localhost-backed integration tests
- Not suitable for CI environment
- Fixes AssertionError for missing /opt/aitbc/services/monitor.py
2026-04-20 21:21:47 +02:00
aitbc
29b6ee93bb fix: add aitbc-agent-coordinator to integration-tests workflow
Some checks failed
Integration Tests / test-service-integration (push) Failing after 17s
- Add aitbc-agent-coordinator to service start step
- Add aitbc-agent-coordinator to service status report
- Port 9001 is used by agent-coordinator service
- Fixes port 9001 not ready error in integration tests
2026-04-20 21:20:19 +02:00
aitbc
84b784fc2b fix: add port 9001 to integration-tests service readiness check
All checks were successful
Integration Tests / test-service-integration (push) Successful in 38s
- Add port 9001 to service readiness check in integration-tests.yml
- Fixes ConnectionError in test_agent_coordinator_api.py
- Test expects coordinator-api on port 9001 but workflow wasn't waiting for it
2026-04-20 21:18:39 +02:00
aitbc
f06bbff370 fix: add PyJWT to integration-tests extra-packages
Some checks failed
Integration Tests / test-service-integration (push) Failing after 24s
- Add PyJWT to --extra-packages in integration-tests.yml
- Fixes ModuleNotFoundError in test_jwt_authentication.py
- Test imports jwt at line 8 but package was missing from cached environment
2026-04-20 21:17:15 +02:00
aitbc
cdcca9852f fix: add sqlmodel to integration-tests extra-packages
Some checks failed
Integration Tests / test-service-integration (push) Failing after 25s
- Add sqlmodel to --extra-packages in integration-tests.yml
- Fixes ModuleNotFoundError in test_staking_lifecycle.py
- Test imports sqlmodel at line 20 but package was missing from cached environment
2026-04-20 21:16:02 +02:00
aitbc
c9ce95749a fix: add sqlalchemy to integration-tests extra-packages
Some checks failed
Integration Tests / test-service-integration (push) Failing after 23s
- Add sqlalchemy to --extra-packages in integration-tests.yml
- Fixes ModuleNotFoundError in test_staking_lifecycle.py
- Test imports sqlalchemy at line 18 but package was missing from cached environment
2026-04-20 21:14:22 +02:00
aitbc
4f157e21ee feat: implement automatic bulk sync for blockchain nodes
Some checks failed
Integration Tests / test-service-integration (push) Failing after 8s
Multi-Node Blockchain Health Monitoring / health-check (push) Successful in 2s
P2P Network Verification / p2p-verification (push) Successful in 2s
Python Tests / test-python (push) Successful in 17s
Security Scanning / security-scan (push) Failing after 37s
Blockchain Synchronization Verification / sync-verification (push) Failing after 2s
- Add auto_sync_enabled, auto_sync_threshold, auto_sync_max_retries config
- Add min_bulk_sync_interval for rate limiting
- Implement gap detection in process_blocks() with automatic bulk sync trigger
- Add rate limiting to ChainSync.bulk_import_from() to prevent sync loops
- Automatic bulk sync triggers when gap > threshold (default 10 blocks)
- Retries block import after bulk sync completes
- Logs sync events for monitoring and debugging
2026-04-20 21:11:01 +02:00
aitbc
1053431ea6 fix: remove bc command dependency from stress test script
Some checks failed
Multi-Node Blockchain Health Monitoring / health-check (push) Successful in 6s
P2P Network Verification / p2p-verification (push) Successful in 3s
Blockchain Synchronization Verification / sync-verification (push) Failing after 2s
- Replace bc with integer comparison for wallet balance check
- Replace bc with integer calculation for TPS monitoring
- Replace bc with integer calculation for error rate
- Fixes 'bc: command not found' error in stress test workflow
2026-04-20 20:54:17 +02:00
aitbc
84cb5a3672 fix: simplify wallet address and balance CLI commands
Some checks failed
Blockchain Synchronization Verification / sync-verification (push) Failing after 3s
Multi-Node Blockchain Health Monitoring / health-check (push) Successful in 3s
P2P Network Verification / p2p-verification (push) Successful in 2s
- Remove JSON parsing from get_wallet_address function
- Remove JSON parsing from get_wallet_balance function
- Use direct CLI output instead of --output json parsing
- Fixes wallet address retrieval failure in cross-node transaction test
2026-04-20 20:52:48 +02:00
aitbc
f6074ec624 feat: add medium-priority multi-node blockchain testing workflows
Some checks failed
Blockchain Synchronization Verification / sync-verification (push) Failing after 3s
Multi-Node Blockchain Health Monitoring / health-check (push) Successful in 3s
P2P Network Verification / p2p-verification (push) Successful in 2s
- Add cross-node transaction testing workflow (manual dispatch)
- Add node failover simulation workflow (manual dispatch, check logic only)
- Add multi-node stress testing workflow (manual dispatch)
- All workflows use only RPC endpoints (no SSH access)
- All workflows run on manual dispatch only
- No remediation steps (monitoring/testing only)
- Cross-node transaction testing uses real transactions from test wallet
- Failover simulation uses check logic only (no actual shutdown)
- Stress testing generates real transactions with configurable count/rate
- Comprehensive logging to /var/log/aitbc/
- Proper wallet creation and cleanup
2026-04-20 20:48:10 +02:00
aitbc
6db8628c26 fix: correct chain ID parsing regex in sync verification
Some checks failed
Blockchain Synchronization Verification / sync-verification (push) Failing after 4s
Multi-Node Blockchain Health Monitoring / health-check (push) Successful in 3s
P2P Network Verification / p2p-verification (push) Successful in 3s
- Fix regex to extract actual chain ID value from supported_chains array
- Previously extracted 'supported_chains' field name instead of value
- Now correctly extracts chain ID from ["ait-devnet"] format
2026-04-20 20:35:18 +02:00
aitbc
9bc9cdefc8 refactor: remove SSH dependencies from P2P and sync verification scripts
Some checks failed
Blockchain Synchronization Verification / sync-verification (push) Failing after 3s
Multi-Node Blockchain Health Monitoring / health-check (push) Successful in 2s
P2P Network Verification / p2p-verification (push) Successful in 3s
- Remove SSH-based P2P peer checks and connectivity tests
- Remove SSH-based P2P log checks and remediation
- Remove SSH-based force sync remediation from sync verification
- P2P verification now only checks Redis gossip backend
- Sync verification skips remediation (requires SSH for chain.db copy)
- All scripts now use only RPC endpoints, no SSH access needed
2026-04-20 20:33:17 +02:00
aitbc
adb719efcc refactor: remove SSH dependencies from blockchain health check
Some checks failed
Blockchain Synchronization Verification / sync-verification (push) Failing after 3s
Multi-Node Blockchain Health Monitoring / health-check (push) Successful in 7s
P2P Network Verification / p2p-verification (push) Has been cancelled
- Remove SSH-based service status checks (use RPC health instead)
- Remove SSH-based resource usage checks
- Remove SSH-based remediation functions
- Remove ssh_exec function entirely
- Script now uses only RPC endpoints for health checks
- gitea-runner no longer needs SSH access to other nodes
2026-04-20 20:30:48 +02:00
aitbc
7d19ec110e fix: use IP address for local node detection in ssh_exec
Some checks failed
Blockchain Synchronization Verification / sync-verification (push) Failing after 3s
Multi-Node Blockchain Health Monitoring / health-check (push) Has been cancelled
P2P Network Verification / p2p-verification (push) Has been cancelled
- Compare node IP against local IP instead of hostname
- Fixes SSH permission issues when running on gitea-runner
- gitea-runner (10.1.223.98) should execute commands directly for aitbc2
2026-04-20 20:28:35 +02:00
aitbc
717fd4cb7c fix: handle local node execution without SSH in blockchain health check
Some checks failed
Blockchain Synchronization Verification / sync-verification (push) Failing after 2s
Multi-Node Blockchain Health Monitoring / health-check (push) Has been cancelled
P2P Network Verification / p2p-verification (push) Has been cancelled
- Detect when node is localhost or current hostname
- Execute commands directly on local node instead of using SSH
- Fixes SSH permission denied errors when checking services on local node
- gitea-runner runs the workflow, so it should check aitbc services directly
2026-04-20 20:26:04 +02:00
aitbc
5c8e2b379c fix: correct RPC endpoints in blockchain sync verification script
Some checks failed
Blockchain Synchronization Verification / sync-verification (push) Failing after 3s
Multi-Node Blockchain Health Monitoring / health-check (push) Has been cancelled
P2P Network Verification / p2p-verification (push) Has been cancelled
- Use /rpc/head endpoint for block height instead of /blockchain/height
- Use /health endpoint for chain ID instead of /blockchain/chain-id
- Use /rpc/blocks/{height} endpoint for block hash instead of /blockchain/block/{height}/hash
- Fixes workflow failure due to incorrect RPC endpoint paths
2026-04-20 20:25:13 +02:00
aitbc
c5525d7345 feat: add multi-node blockchain monitoring workflows for 3-node network
Some checks failed
Blockchain Synchronization Verification / sync-verification (push) Failing after 9s
P2P Network Verification / p2p-verification (push) Has been cancelled
Multi-Node Blockchain Health Monitoring / health-check (push) Has been cancelled
- Create multi-node blockchain health monitoring workflow
- Create P2P network verification workflow for all 3 nodes
- Create blockchain synchronization verification workflow
- Update blockchain-communication-test.sh to include aitbc2 (gitea-runner)
- Add shared scripts directory with health check, P2P verification, and sync verification scripts
- All workflows trigger on git push to main/develop branches
- Workflows run on gitea-runner (has SSH access to all nodes)
- Include automatic remediation for failed services and sync issues
- Sync threshold set to 10 blocks
- Logging to /var/log/aitbc/ and alerts in Gitea UI
2026-04-20 20:22:28 +02:00
aitbc
b656a26017 Merge dependabot pull request
Some checks failed
JavaScript SDK Tests / test-js-sdk (push) Successful in 12s
Package Tests / Python package - aitbc-agent-sdk (push) Successful in 19s
Package Tests / Python package - aitbc-core (push) Successful in 21s
Package Tests / Python package - aitbc-crypto (push) Successful in 10s
Package Tests / Python package - aitbc-sdk (push) Successful in 15s
Package Tests / JavaScript package - aitbc-sdk-js (push) Successful in 6s
Package Tests / JavaScript package - aitbc-token (push) Successful in 16s
Security Scanning / security-scan (push) Successful in 51s
Smart Contract Tests / test-solidity (map[name:aitbc-token path:packages/solidity/aitbc-token]) (push) Successful in 19s
Smart Contract Tests / lint-solidity (push) Successful in 11s
Integration Tests / test-service-integration (push) Failing after 13m54s
2026-04-20 20:04:08 +02:00
Andreas Michael Fleckl
b8364f3467 Merge pull request #68 from oib/dependabot/npm_and_yarn/contracts/npm_and_yarn-84d155bf99
build(deps): bump the npm_and_yarn group across 3 directories with 4 updates
2026-04-20 17:02:16 +02:00
aitbc
d7d15c34b5 fix: add package name to contracts/package-lock.json
Added missing "name": "contracts" field to package-lock.json root object to properly identify the package in the lockfile.
2026-04-20 16:59:08 +02:00
aitbc
3c464d9fec docs: add Git Setup Configuration section with placeholder tokens
- Documented Gitea remote setup with HTTP token authentication
- Added credential storage and authentication method documentation
- Used placeholder variables instead of actual tokens
- Added security notes about token management
- Never commit actual tokens to version control
2026-04-20 16:51:12 +02:00
dependabot[bot]
452a692f2d build(deps): bump the npm_and_yarn group across 3 directories with 4 updates
Bumps the npm_and_yarn group with 2 updates in the /contracts directory: [lodash](https://github.com/lodash/lodash) and [cookie](https://github.com/jshttp/cookie).
Bumps the npm_and_yarn group with 1 update in the /packages/js/aitbc-sdk directory: [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite).
Bumps the npm_and_yarn group with 1 update in the /packages/solidity/aitbc-token directory: [lodash](https://github.com/lodash/lodash).


Updates `lodash` from 4.17.21 to 4.18.1
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/compare/4.17.21...4.18.1)

Removes `cookie`

Updates `undici` from 5.29.0 to 6.25.0
- [Release notes](https://github.com/nodejs/undici/releases)
- [Commits](https://github.com/nodejs/undici/compare/v5.29.0...v6.25.0)

Updates `undici` from 5.29.0 to 6.25.0
- [Release notes](https://github.com/nodejs/undici/releases)
- [Commits](https://github.com/nodejs/undici/compare/v5.29.0...v6.25.0)

Updates `vite` from 8.0.3 to 8.0.9
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v8.0.9/packages/vite)

Updates `lodash` from 4.17.23 to 4.18.1
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/compare/4.17.21...4.18.1)

Updates `lodash` from 4.17.23 to 4.18.1
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/compare/4.17.21...4.18.1)

---
updated-dependencies:
- dependency-name: lodash
  dependency-version: 4.18.1
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: cookie
  dependency-version: 
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: undici
  dependency-version: 6.25.0
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: undici
  dependency-version: 6.25.0
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: vite
  dependency-version: 8.0.9
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: lodash
  dependency-version: 4.18.1
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: lodash
  dependency-version: 4.18.1
  dependency-type: indirect
  dependency-group: npm_and_yarn
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-20 14:40:00 +00:00
aitbc
78fa196ef2 docs: update GitHub workflow to reflect actual Gitea domain and fix security issues
- Updated Gitea domain from gitea.keisanki.net to gitea.bubuit.net
- Fixed GitHub remote to remove exposed token from URL
- Updated Gitea remote to use SSH instead of HTTP with token
- Updated all web interface URLs to use correct domain
- Clarified authentication methods for both remotes
2026-04-20 16:33:37 +02:00
aitbc
715bf57a22 docs: update blockchain README with new node setup and sync documentation
All checks were successful
Documentation Validation / validate-docs (push) Successful in 5s
Documentation Validation / validate-policies-strict (push) Successful in 4s
- Updated metadata (last updated date, file counts)
- Replaced auto-generated structure with manual index
- Added links to gitea-runner third node setup guide and blockchain sync troubleshooting docs
- Updated category overview to reflect actual blockchain operations content
2026-04-20 16:24:53 +02:00
aitbc
92f175c54f docs: improve gitea-runner CI debug workflow with ripgrep and failure markers
- Added ripgrep (rg) usage notes and preference over grep for targeted searches
- Updated log discovery examples to use rg with --fixed-strings for workflow/job name searches
- Added failure-marker search pattern (|Traceback|FAILED|etc.) for quick issue identification
- Replaced grep with rg in runner health checks (dmesg, journalctl)
- Added failure marker search to quick-start one-liner
- Preserved awk usage for tab
2026-04-20 13:21:19 +02:00
aitbc
3d4300924e Revert systemd ExecStart paths to use central venv (/opt/aitbc/venv/bin/python)
All checks were successful
Systemd Sync / sync-systemd (push) Successful in 10s
2026-04-20 13:20:23 +02:00
aitbc
456ba8ce9b fix: systemd ExecStart paths to use app-specific venvs
All checks were successful
Systemd Sync / sync-systemd (push) Successful in 4s
2026-04-20 13:10:28 +02:00
aitbc
e3804f84e4 feat: add app/data directory with consumer_gpu_profiles
All checks were successful
API Endpoint Tests / test-api-endpoints (push) Successful in 1m22s
Integration Tests / test-service-integration (push) Successful in 2m9s
Python Tests / test-python (push) Successful in 11s
Security Scanning / security-scan (push) Successful in 30s
2026-04-20 13:06:49 +02:00
aitbc
ca8b201f64 fix: coordinator-api systemd ExecStart path to use app-specific venv
All checks were successful
Systemd Sync / sync-systemd (push) Successful in 6s
2026-04-20 13:04:37 +02:00
aitbc
7a5f3487f3 ci: add job logging initialization to all remaining workflow files
All checks were successful
API Endpoint Tests / test-api-endpoints (push) Successful in 8s
CLI Tests / test-cli (push) Successful in 4s
Documentation Validation / validate-docs (push) Successful in 6s
Documentation Validation / validate-policies-strict (push) Successful in 2s
Integration Tests / test-service-integration (push) Successful in 2m9s
JavaScript SDK Tests / test-js-sdk (push) Successful in 7s
Package Tests / Python package - aitbc-agent-sdk (push) Successful in 10s
Package Tests / Python package - aitbc-core (push) Successful in 11s
Package Tests / Python package - aitbc-crypto (push) Successful in 7s
Package Tests / Python package - aitbc-sdk (push) Successful in 12s
Package Tests / JavaScript package - aitbc-sdk-js (push) Successful in 5s
Package Tests / JavaScript package - aitbc-token (push) Successful in 12s
Python Tests / test-python (push) Successful in 8s
Rust ZK Components Tests / test-rust-zk (push) Successful in 31s
Security Scanning / security-scan (push) Successful in 28s
Smart Contract Tests / test-solidity (map[name:aitbc-token path:packages/solidity/aitbc-token]) (push) Successful in 18s
Smart Contract Tests / lint-solidity (push) Successful in 9s
Added setup-job-logging.sh initialization step to api-endpoint-tests.yml, cli-level1-tests.yml, docs-validation.yml (both jobs), integration-tests.yml, js-sdk-tests.yml, package-tests.yml (both jobs), python-tests.yml, rust-zk-tests.yml, security-scanning.yml, and smart-contract-tests.yml (both jobs) to ensure consistent logging across all CI workflows.
2026-04-20 12:16:45 +02:00
aitbc
d546932b2d ci: add python-dotenv dependency and improve agent coordinator startup validation in production tests
All checks were successful
Production Tests / Production Integration Tests (push) Successful in 33s
- Added python-dotenv to --extra-packages in production-tests.yml venv setup
- Added PYTHONUNBUFFERED=1 to agent coordinator uvicorn startup for immediate log output
- Added startup validation check after 2-second sleep to detect early coordinator exits
- Display coordinator logs and fail job if process exits during startup
2026-04-20 12:10:03 +02:00
aitbc
3df724d9fc docs: add gitea-runner SSH-based CI log debugging skill and workflow
Added comprehensive documentation for autonomous investigation of failed Gitea Actions runs via SSH access to gitea-runner host. Includes log location mapping, classification heuristics for distinguishing workflow/dependency/application/service/infrastructure failures, and evidence-based debug suggestion templates. Provides read-only investigation sequences with safety constraints to prevent conflating application failures with runner inst
2026-04-20 12:05:31 +02:00
aitbc
eb51363ea9 ci: add job logging initialization to production and staking workflows and fix systemd-sync script paths
Some checks failed
Production Tests / Production Integration Tests (push) Failing after 1m8s
Staking Tests / test-staking-service (push) Successful in 4s
Systemd Sync / sync-systemd (push) Successful in 5s
Staking Tests / test-staking-integration (push) Successful in 2s
Staking Tests / test-staking-contract (push) Successful in 1m17s
Staking Tests / run-staking-test-runner (push) Successful in 9s
- Added setup-job-logging.sh initialization step to production-tests.yml, all staking-tests.yml jobs, and systemd-sync.yml
- Removed redundant agent-coordinator package installation from production-tests.yml (already included in extra-packages)
- Fixed systemd-sync.yml to use relative paths (scripts/utils/link-systemd.sh) instead of absolute paths (/opt/aitbc/scripts/utils/link-systemd.sh)
2026-04-20 12:00:06 +02:00
aitbc
482e0be438 refactor: implement lazy loading for coordinator-api service imports
All checks were successful
API Endpoint Tests / test-api-endpoints (push) Successful in 13s
Integration Tests / test-service-integration (push) Successful in 2m17s
Python Tests / test-python (push) Successful in 8s
Security Scanning / security-scan (push) Successful in 55s
Replaced eager imports with lazy loading using __getattr__ to defer service module imports until first access. Added module mapping dictionary and dynamic import logic to reduce initial import overhead while maintaining the same public API.
2026-04-20 11:11:12 +02:00