From 04e4c1a4876be18bf668aab83a4adc7e32ccea21 Mon Sep 17 00:00:00 2001 From: shokollm <270575765+shokollm@users.noreply.github.com> Date: Thu, 9 Apr 2026 06:58:16 +0000 Subject: [PATCH] fix: validate chain is 'bsc' for BacktestCreate and SimulationCreate --- src/backend/app/db/schemas.py | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/src/backend/app/db/schemas.py b/src/backend/app/db/schemas.py index 051fe49..9a78d90 100644 --- a/src/backend/app/db/schemas.py +++ b/src/backend/app/db/schemas.py @@ -1,5 +1,5 @@ -from pydantic import BaseModel, EmailStr -from typing import Optional, List, Any +from pydantic import BaseModel, EmailStr, field_validator +from typing import Optional, List, Any, Dict from datetime import datetime @@ -69,6 +69,13 @@ class BacktestCreate(BaseModel): start_date: str end_date: str + @field_validator("chain") + @classmethod + def chain_must_be_bsc(cls, v: str) -> str: + if v != "bsc": + raise ValueError("Phase 1 only supports BSC (bnb chain)") + return v + class BacktestResponse(BaseModel): id: str @@ -90,6 +97,13 @@ class SimulationCreate(BaseModel): check_interval: int = 60 auto_execute: bool = False + @field_validator("chain") + @classmethod + def chain_must_be_bsc(cls, v: str) -> str: + if v != "bsc": + raise ValueError("Phase 1 only supports BSC (bnb chain)") + return v + class SimulationResponse(BaseModel): id: str -- 2.49.1