feat(api): return warnings in /simulate/status response

Parse and return job warnings from database.

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2025-11-02 00:13:39 -04:00
parent 139a016a4d
commit a42487794f
2 changed files with 38 additions and 1 deletions

View File

@@ -384,5 +384,32 @@ class TestAsyncDownload:
assert response.status_code == 200
assert "job_id" in response.json()
def test_status_endpoint_returns_warnings(self, api_client):
"""Test that /simulate/status returns warnings field."""
from api.database import initialize_database
from api.job_manager import JobManager
# Create job with warnings
db_path = api_client.db_path
job_manager = JobManager(db_path=db_path)
job_id = job_manager.create_job(
config_path="config.json",
date_range=["2025-10-01"],
models=["gpt-5"]
)
# Add warnings
warnings = ["Rate limited", "Skipped 1 date"]
job_manager.add_job_warnings(job_id, warnings)
# Get status
response = api_client.get(f"/simulate/status/{job_id}")
assert response.status_code == 200
data = response.json()
assert "warnings" in data
assert data["warnings"] == warnings
# Coverage target: 90%+ for api/main.py