mirror of
https://github.com/Xe138/AI-Trader.git
synced 2026-04-01 17:17:24 -04:00
feat: add prominent startup warning for DEV mode
Add comprehensive warning display when server starts in development mode to ensure users are aware of simulated AI calls and data handling. Changes: - Add log_dev_mode_startup_warning() function in deployment_config.py - Display warning on main.py startup when DEPLOYMENT_MODE=DEV - Display warning on API server startup (api/main.py) - Warning shows AI simulation status and data persistence behavior - Provides clear instructions for switching to PROD mode The warning is highly visible and informs users that: - AI API calls are simulated (no costs incurred) - Data may be reset between runs (based on PRESERVE_DEV_DATA) - System is using isolated dev database and paths Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -23,7 +23,7 @@ from api.simulation_worker import SimulationWorker
|
||||
from api.database import get_db_connection
|
||||
from api.price_data_manager import PriceDataManager
|
||||
from api.date_utils import validate_date_range, expand_date_range, get_max_simulation_days
|
||||
from tools.deployment_config import get_deployment_mode_dict
|
||||
from tools.deployment_config import get_deployment_mode_dict, log_dev_mode_startup_warning
|
||||
import threading
|
||||
import time
|
||||
|
||||
@@ -506,4 +506,8 @@ app = create_app()
|
||||
|
||||
if __name__ == "__main__":
|
||||
import uvicorn
|
||||
|
||||
# Display DEV mode warning if applicable
|
||||
log_dev_mode_startup_warning()
|
||||
|
||||
uvicorn.run(app, host="0.0.0.0", port=8080)
|
||||
|
||||
8
main.py
8
main.py
@@ -12,7 +12,8 @@ from prompts.agent_prompt import all_nasdaq_100_symbols
|
||||
from tools.deployment_config import (
|
||||
is_dev_mode,
|
||||
get_deployment_mode,
|
||||
log_api_key_warning
|
||||
log_api_key_warning,
|
||||
log_dev_mode_startup_warning
|
||||
)
|
||||
from api.database import initialize_dev_database
|
||||
|
||||
@@ -108,16 +109,13 @@ async def main(config_path=None):
|
||||
|
||||
# Initialize dev environment if needed
|
||||
if is_dev_mode():
|
||||
print("=" * 60)
|
||||
print("🛠️ DEVELOPMENT MODE ACTIVE")
|
||||
print("=" * 60)
|
||||
log_dev_mode_startup_warning()
|
||||
log_api_key_warning()
|
||||
|
||||
# Initialize dev database (reset unless PRESERVE_DEV_DATA=true)
|
||||
from tools.deployment_config import get_db_path
|
||||
dev_db_path = get_db_path("data/jobs.db")
|
||||
initialize_dev_database(dev_db_path)
|
||||
print("=" * 60)
|
||||
|
||||
# Get Agent type
|
||||
agent_type = config.get("agent_type", "BaseAgent")
|
||||
|
||||
@@ -119,6 +119,43 @@ def log_api_key_warning() -> None:
|
||||
print(" This is expected if you're testing dev mode with existing .env file")
|
||||
|
||||
|
||||
def log_dev_mode_startup_warning() -> None:
|
||||
"""
|
||||
Display prominent warning when server starts in DEV mode
|
||||
|
||||
Warns users that:
|
||||
- AI calls will be simulated/mocked
|
||||
- Data may not be retained between runs
|
||||
- This is a development environment
|
||||
"""
|
||||
if not is_dev_mode():
|
||||
return
|
||||
|
||||
preserve_data = should_preserve_dev_data()
|
||||
|
||||
print()
|
||||
print("=" * 70)
|
||||
print("⚠️ " + "DEVELOPMENT MODE WARNING".center(64) + " ⚠️")
|
||||
print("=" * 70)
|
||||
print()
|
||||
print(" 🚧 This server is running in DEVELOPMENT mode (DEPLOYMENT_MODE=DEV)")
|
||||
print()
|
||||
print(" 📌 IMPORTANT:")
|
||||
print(" • AI API calls will be SIMULATED (mock responses)")
|
||||
print(" • No real AI model costs will be incurred")
|
||||
if preserve_data:
|
||||
print(" • Dev data WILL BE PRESERVED between runs (PRESERVE_DEV_DATA=true)")
|
||||
else:
|
||||
print(" • Dev data WILL BE RESET on each startup (PRESERVE_DEV_DATA=false)")
|
||||
print(" • Using isolated dev database and data paths")
|
||||
print()
|
||||
print(" 💡 To use PRODUCTION mode:")
|
||||
print(" Set environment variable: DEPLOYMENT_MODE=PROD")
|
||||
print()
|
||||
print("=" * 70)
|
||||
print()
|
||||
|
||||
|
||||
def get_deployment_mode_dict() -> dict:
|
||||
"""
|
||||
Get deployment mode information as dictionary (for API responses)
|
||||
|
||||
Reference in New Issue
Block a user