Summary
Add a Routes-F CSV upload endpoint with validation.
Requirements
POST /api/routes-f/upload accepts CSV file.
- Validate required columns.
- Return parsed row count and errors.
Notes
- Parsing can be done in-memory.
Acceptance Criteria
- Invalid CSV returns
422 with errors.
- Tests cover valid and invalid CSVs.