From 6c7b56e086354d56df24f0dbd2d4e3585df0ca65 Mon Sep 17 00:00:00 2001 From: aitbc1 Date: Fri, 27 Mar 2026 20:43:27 +0100 Subject: [PATCH] fix: add missing dependencies and improve import path resolution IMPORT FIX: Add sqlmodel and comprehensive PYTHONPATH setup Issues identified from test run: - ModuleNotFoundError: No module named 'sqlmodel' - ModuleNotFoundError: No module named 'src' (agent-protocols) - ModuleNotFoundError: No module named 'aitbc' (blockchain-node) Solutions applied: 1. Add missing dependencies: - sqlmodel (for blockchain-node database) - sqlalchemy (for sqlmodel dependency) 2. Improve PYTHONPATH with specific paths: - /opt/gitea-runner/workspace/repo/apps/agent-protocols/src - /opt/gitea-runner/workspace/repo/apps/blockchain-node/src - /opt/gitea-runner/workspace/repo/apps/coordinator-api/src - /opt/gitea-runner/workspace/repo/cli - /opt/gitea-runner/workspace/repo/packages/py/aitbc-crypto/src - /opt/gitea-runner/workspace/repo/packages/py/aitbc-sdk/src 3. Applied to both jobs (test and test-specific) Expected results: - sqlmodel import errors resolved - src imports resolved for agent-protocols - aitbc imports resolved for blockchain-node - Better import resolution across all apps - More tests should be able to run successfully This addresses the specific import errors seen in the test run and provides comprehensive import path coverage for the complex project structure. --- .gitea/workflows/python-tests.yml | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/.gitea/workflows/python-tests.yml b/.gitea/workflows/python-tests.yml index 62b2247f..9006b08b 100644 --- a/.gitea/workflows/python-tests.yml +++ b/.gitea/workflows/python-tests.yml @@ -93,14 +93,20 @@ jobs: echo "=== ADDITIONAL DEPENDENCIES ===" # Install missing dependencies that cause import errors echo "Installing additional test dependencies..." - venv/bin/pip install pydantic-settings + venv/bin/pip install pydantic-settings sqlmodel sqlalchemy echo "=== PYTHON PATH SETUP ===" - # Set up comprehensive Python path + # Set up comprehensive Python path for complex import patterns export PYTHONPATH="/opt/gitea-runner/workspace/repo:$PYTHONPATH" export PYTHONPATH="/opt/gitea-runner/workspace/repo/src:$PYTHONPATH" export PYTHONPATH="/opt/gitea-runner/workspace/repo/apps:$PYTHONPATH" export PYTHONPATH="/opt/gitea-runner/workspace/repo/apps/*/src:$PYTHONPATH" + export PYTHONPATH="/opt/gitea-runner/workspace/repo/apps/agent-protocols/src:$PYTHONPATH" + export PYTHONPATH="/opt/gitea-runner/workspace/repo/apps/blockchain-node/src:$PYTHONPATH" + export PYTHONPATH="/opt/gitea-runner/workspace/repo/apps/coordinator-api/src:$PYTHONPATH" + export PYTHONPATH="/opt/gitea-runner/workspace/repo/cli:$PYTHONPATH" + export PYTHONPATH="/opt/gitea-runner/workspace/repo/packages/py/aitbc-crypto/src:$PYTHONPATH" + export PYTHONPATH="/opt/gitea-runner/workspace/repo/packages/py/aitbc-sdk/src:$PYTHONPATH" echo "=== PYTEST INSTALLATION ===" echo "Installing pytest with test dependencies..." @@ -172,12 +178,18 @@ jobs: python3 -m venv venv && source venv/bin/activate $POETRY_CMD install --no-root - venv/bin/pip install pydantic-settings pytest pytest-cov pytest-mock + venv/bin/pip install pydantic-settings sqlmodel sqlalchemy pytest pytest-cov pytest-mock export PYTHONPATH="/opt/gitea-runner/workspace/repo:$PYTHONPATH" export PYTHONPATH="/opt/gitea-runner/workspace/repo/src:$PYTHONPATH" export PYTHONPATH="/opt/gitea-runner/workspace/repo/apps:$PYTHONPATH" export PYTHONPATH="/opt/gitea-runner/workspace/repo/apps/*/src:$PYTHONPATH" + export PYTHONPATH="/opt/gitea-runner/workspace/repo/apps/agent-protocols/src:$PYTHONPATH" + export PYTHONPATH="/opt/gitea-runner/workspace/repo/apps/blockchain-node/src:$PYTHONPATH" + export PYTHONPATH="/opt/gitea-runner/workspace/repo/apps/coordinator-api/src:$PYTHONPATH" + export PYTHONPATH="/opt/gitea-runner/workspace/repo/cli:$PYTHONPATH" + export PYTHONPATH="/opt/gitea-runner/workspace/repo/packages/py/aitbc-crypto/src:$PYTHONPATH" + export PYTHONPATH="/opt/gitea-runner/workspace/repo/packages/py/aitbc-sdk/src:$PYTHONPATH" echo "=== RUNNING SPECIFIC TEST MODULES ===" # Try specific test modules that are likely to work