This folder contains the executable backend package for the repository.
main.pycreates the FastAPI application and wires the public routers.api/holds the HTTP request layer, public schemas, and request-scoped dependencies.core/centralizes runtime settings and shared configuration.db/owns SQLAlchemy base/config wiring and the persisted job models.services/holds narrower backend helpers such as upload validation and local input storage.worker/owns asynchronous processing and has its own localized README.
src/app/ groups the backend runtime pieces in one place so readers can follow the code from application bootstrap into request handling, persistence, upload/storage helpers, and worker execution.
This README exists as a package map for onboarding into that layout. The root docs stay responsible for quickstart, system baseline, and contribution workflow, while this file shows where those concerns land in code.
main.py: start here for the FastAPI bootstrap and router wiring.core/settings.py: read this for the shared runtime configuration surface.db/models.py: use this to understand the persisted job and job-result shapes.services/uploads.py: read this for upload validation and local input-storage handling.api/routes/jobs.py: use this as the main public request-path anchor.worker/README.md: continue here for the worker-owned processing path.
- Quickstart and repository-level navigation belong to
README.md. - The full technical baseline and lifecycle explanation belong to
ARCHITECTURE.md. - Contribution workflow and validation baseline belong to
CONTRIBUTING.md. - The third-party inventory belongs to
THIRD_PARTY.md. - This package map should not turn into a second root README or a dump of unrelated helpers without clear package ownership.
Relevant validation here stays at the package-map level:
- Public API bootstrap and read-side checks:
tests/test_health.py,tests/test_job_upload_api.py, andtests/test_jobs_api.py. - Cross-boundary backend flow coverage:
tests/test_critical_flows.py. - Worker-owned processing depth is documented separately in
worker/README.mdand the worker-focused tests it points to.