diff --git a/.gitea/workflows/python-tests.yml b/.gitea/workflows/python-tests.yml index eb94c9f7..91455ad0 100644 --- a/.gitea/workflows/python-tests.yml +++ b/.gitea/workflows/python-tests.yml @@ -100,6 +100,7 @@ jobs: echo "=== PYTHON PATH SETUP ===" # Set up comprehensive Python path for complex import patterns export PYTHONPATH="/opt/gitea-runner/workspace/repo:$PYTHONPATH" + export PYTHONPATH="/opt/gitea-runner/workspace/repo/aitbc:$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" @@ -238,6 +239,7 @@ jobs: venv/bin/pip install pydantic-settings sqlmodel sqlalchemy requests slowapi pytest pytest-cov pytest-mock export PYTHONPATH="/opt/gitea-runner/workspace/repo:$PYTHONPATH" + export PYTHONPATH="/opt/gitea-runner/workspace/repo/aitbc:$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" diff --git a/apps/blockchain-node/src/aitbc_chain/models.py b/apps/blockchain-node/src/aitbc_chain/models.py index a3efe3c9..ffd40739 100755 --- a/apps/blockchain-node/src/aitbc_chain/models.py +++ b/apps/blockchain-node/src/aitbc_chain/models.py @@ -74,7 +74,7 @@ class Block(SQLModel, table=True): class Transaction(SQLModel, table=True): __tablename__ = "transaction" - __table_args__ = (UniqueConstraint("chain_id", "tx_hash", name="uix_tx_chain_hash"),) + __table_args__ = (UniqueConstraint("chain_id", "hash", name="uix_transaction_chain_hash"), {"extend_existing": True}) id: Optional[int] = Field(default=None, primary_key=True) chain_id: str = Field(index=True) @@ -116,7 +116,7 @@ class Transaction(SQLModel, table=True): class Receipt(SQLModel, table=True): __tablename__ = "receipt" - __table_args__ = (UniqueConstraint("chain_id", "receipt_id", name="uix_receipt_chain_id"),) + __table_args__ = (UniqueConstraint("chain_id", "receipt_id", name="uix_receipt_chain_id"), {"extend_existing": True}) id: Optional[int] = Field(default=None, primary_key=True) chain_id: str = Field(index=True) @@ -158,6 +158,7 @@ class Receipt(SQLModel, table=True): class Account(SQLModel, table=True): __tablename__ = "account" + __table_args__ = {"extend_existing": True} chain_id: str = Field(primary_key=True) address: str = Field(primary_key=True) @@ -167,6 +168,7 @@ class Account(SQLModel, table=True): class Escrow(SQLModel, table=True): __tablename__ = "escrow" + __table_args__ = {"extend_existing": True} job_id: str = Field(primary_key=True) buyer: str = Field(foreign_key="account.address") provider: str = Field(foreign_key="account.address")