Model/.devcontainer/backend/requirements.txt
Khalim Conn-Kowlessar 246834fac0 Map shard rows to HistoricEpc field-by-field so every column is pyright-checked 🟩
The row→domain mapper now names all 93 constructor arguments explicitly
instead of splatting a lowercased dict, takes a plain Mapping (a
DataFrame.to_dict("records") row) instead of a pandas Series, and ignores
columns the domain type doesn't know. A missing/renamed CSV column fails
loudly as a KeyError at the row. Both iterrows() call sites move to
to_dict("records") — pandas-stubs types iterrows' Series unparameterized,
which strict mode rejects. pandas-stubs + boto3-stubs[s3] make the stack
check clean: pyright strict is now 0 errors across the PR's files.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-04 14:58:09 +00:00

36 lines
799 B
Text

fastapi==0.115.2
sqlalchemy==2.0.36
pydantic-settings==2.6.0
psycopg2-binary==2.9.10
python-jose==3.3.0
cryptography==43.0.3
mangum==0.19.0
playwright==1.58.0
pymupdf
# AWS
boto3==1.35.44
# Data
openpyxl==3.1.5
# Basic
pytz
msal
uvicorn[standard]
sqlmodel
# Testing
pytest==9.0.2
pytest-cov==7.0.0
ipykernel>=6.25,<7
dotenv
psycopg[binary]
pytest-postgresql
moto[s3,sqs]==5.0.28 # mock_aws (moto 5.x) for S3/SQS in orchestration tests
# Formatting
black==26.1.0
boto3-stubs[s3] # typed boto3.client("s3") for the S3 repositories
openai
# Type checking — strict pyright gate (CLAUDE.md). The pip `pyright` wrapper uses
# the container's Node. pandas-stubs lets pandas-typed modules check cleanly
# (CLAUDE.md: add pandas-stubs when introducing pandas to a module).
pyright==1.1.411
pandas-stubs