fix: resolve remaining CI issues — services, hardhat, Rust, mypy
All checks were successful
API Endpoint Tests / test-api-endpoints (push) Successful in 38s
Integration Tests / test-service-integration (push) Successful in 43s
Package Tests / test-python-packages (map[name:aitbc-core path:packages/py/aitbc-core]) (push) Successful in 21s
Package Tests / test-python-packages (map[name:aitbc-agent-sdk path:packages/py/aitbc-agent-sdk]) (push) Successful in 36s
Package Tests / test-python-packages (map[name:aitbc-crypto path:packages/py/aitbc-crypto]) (push) Successful in 19s
Package Tests / test-python-packages (map[name:aitbc-sdk path:packages/py/aitbc-sdk]) (push) Successful in 20s
Package Tests / test-javascript-packages (map[name:aitbc-sdk-js path:packages/js/aitbc-sdk]) (push) Successful in 16s
Python Tests / test-python (push) Successful in 1m4s
Package Tests / test-javascript-packages (map[name:aitbc-token path:packages/solidity/aitbc-token]) (push) Successful in 1m13s
Rust ZK Components Tests / test-rust-zk (push) Successful in 44s
Security Scanning / security-scan (push) Successful in 42s
Smart Contract Tests / test-solidity (map[name:aitbc-token path:packages/solidity/aitbc-token]) (push) Successful in 39s
Smart Contract Tests / test-solidity (map[name:zk-circuits path:apps/zk-circuits]) (push) Successful in 44s
Smart Contract Tests / lint-solidity (push) Successful in 48s

Service health checks:
- Exchange API uses /api/health not /health — updated test script
  and workflow wait loops to check /api/health as fallback
- Increased wait time to 2s intervals, 15 retries for service readiness
- Performance tests now hit /health endpoints (not root /)

Hardhat compilation:
- aitbc-token was missing peer deps for @nomicfoundation/hardhat-toolbox
- Installed all 11 required peer packages (ethers, typechain, etc.)
- Contracts now compile (19 Solidity files) and all 17 tests pass

Rust workflow:
- Fixed HOME mismatch: gitea-runner HOME=/opt/gitea-runner vs
  euid root HOME=/root — explicitly set HOME=/root in all steps
- Set RUSTUP_HOME and CARGO_HOME for consistent toolchain location

Mypy type annotations (aitbc-agent-sdk):
- agent.py: narrow key types to RSA (isinstance check before sign/verify),
  fix supported_models Optional type, add __post_init__ return type
- compute_provider.py: add return types to all methods, declare
  pricing_model/dynamic_pricing attrs, rename register→create_provider
  to avoid signature conflict with parent, fix Optional safety
- swarm_coordinator.py: add return types to all 8 untyped methods
This commit is contained in:
aitbc1
2026-03-29 13:03:18 +02:00
parent 1f932d42e3
commit af34f6ae81
18 changed files with 317 additions and 221 deletions

View File

@@ -41,14 +41,15 @@ jobs:
run: |
echo "Waiting for AITBC services..."
for port in 8000 8001 8003 8006; do
for i in $(seq 1 10); do
if curl -sf "http://localhost:$port/" >/dev/null 2>&1 || \
curl -sf "http://localhost:$port/health" >/dev/null 2>&1; then
for i in $(seq 1 15); do
if curl -sf "http://localhost:$port/health" >/dev/null 2>&1 || \
curl -sf "http://localhost:$port/api/health" >/dev/null 2>&1 || \
curl -sf "http://localhost:$port/" >/dev/null 2>&1; then
echo "✅ Port $port ready"
break
fi
[ "$i" -eq 10 ] && echo "⚠️ Port $port not ready"
sleep 1
[ "$i" -eq 15 ] && echo "⚠️ Port $port not ready"
sleep 2
done
done

View File

@@ -56,12 +56,13 @@ jobs:
for port in 8000 8001 8003 8006; do
for i in $(seq 1 15); do
if curl -sf "http://localhost:$port/health" >/dev/null 2>&1 || \
curl -sf "http://localhost:$port/api/health" >/dev/null 2>&1 || \
curl -sf "http://localhost:$port/" >/dev/null 2>&1; then
echo "✅ Port $port ready"
break
fi
[ "$i" -eq 15 ] && echo "⚠️ Port $port not ready"
sleep 1
sleep 2
done
done

View File

@@ -30,29 +30,41 @@ jobs:
- name: Verify Rust toolchain
run: |
# Fix HOME mismatch (gitea-runner HOME vs euid root)
export HOME=/root
export RUSTUP_HOME="$HOME/.rustup"
export CARGO_HOME="$HOME/.cargo"
export PATH="$CARGO_HOME/bin:$PATH"
if ! command -v rustc >/dev/null 2>&1; then
echo "Installing Rust..."
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
source "$HOME/.cargo/env"
fi
source "$CARGO_HOME/env" 2>/dev/null || true
rustc --version
cargo --version
rustup component add rustfmt clippy 2>/dev/null || true
- name: Check formatting
run: |
export HOME=/root
export PATH="$HOME/.cargo/bin:$PATH"
source "$HOME/.cargo/env" 2>/dev/null || true
cd /var/lib/aitbc-workspaces/rust-zk-tests/repo/gpu_acceleration/research/gpu_zk_research
cargo fmt -- --check 2>/dev/null && echo "✅ Formatting OK" || echo "⚠️ Format warnings"
- name: Run Clippy
run: |
export HOME=/root
export PATH="$HOME/.cargo/bin:$PATH"
source "$HOME/.cargo/env" 2>/dev/null || true
cd /var/lib/aitbc-workspaces/rust-zk-tests/repo/gpu_acceleration/research/gpu_zk_research
cargo clippy -- -D warnings 2>/dev/null && echo "✅ Clippy OK" || echo "⚠️ Clippy warnings"
- name: Build
run: |
export HOME=/root
export PATH="$HOME/.cargo/bin:$PATH"
source "$HOME/.cargo/env" 2>/dev/null || true
cd /var/lib/aitbc-workspaces/rust-zk-tests/repo/gpu_acceleration/research/gpu_zk_research
cargo build --release
@@ -60,6 +72,8 @@ jobs:
- name: Run tests
run: |
export HOME=/root
export PATH="$HOME/.cargo/bin:$PATH"
source "$HOME/.cargo/env" 2>/dev/null || true
cd /var/lib/aitbc-workspaces/rust-zk-tests/repo/gpu_acceleration/research/gpu_zk_research
cargo test && echo "✅ Tests passed" || echo "⚠️ Tests completed with issues"