Description of the Bug
File: render.yaml (repo root)
render.yaml specifies startCommand: gunicorn app:app --bind 0.0.0.0:$PORT --workers 2, but there is no app.py or app:app import target anywhere in the repository — the actual FastAPI instance is app.main:app inside backend/app/main.py (confirmed by Dockerfile line 84: CMD ["uvicorn", "app.main:app", ...]). Additionally, buildCommand: pip install -r requirements.txt runs from the repo root, but requirements.txt lives at backend/requirements.txt; there is no root-level requirements.txt. The env var list also includes MONGO_URI, which is not referenced anywhere in backend/app/config.py (the app uses DATABASE_URL for SQLAlchemy/Postgres, not Mongo) — while genuinely required variables for production (DATABASE_URL, REDIS_URL/CELERY_BROKER_URL, JWT_ALGORITHM, CHROMA_PERSIST_DIR, UPLOAD_DIR, ALLOWED_EXTENSIONS) are absent.
Steps to Reproduce
Proposed fix approach: rewrite render.yaml to (1) set buildCommand: pip install -r backend/requirements.txt, (2) set startCommand: gunicorn app.main:app --bind 0.0.0.0:$PORT --workers 2 -k uvicorn.workers.UvicornWorker (gunicorn needs the uvicorn worker class for an ASGI app), (3) replace MONGO_URI with the actual required vars pulled from Settings in config.py, and (4) add a rootDir: backend or equivalent so relative paths resolve correctly.
Expected Behavior
A deploy from this file as-is would fail at build (missing requirements.txt) or, if that's worked around, fail at boot (gunicorn unable to locate app:app).
Screenshots / Logs
No response
Environment
Windows
GSSoC '26
Description of the Bug
File: render.yaml (repo root)
render.yamlspecifiesstartCommand: gunicorn app:app --bind 0.0.0.0:$PORT --workers 2, but there is noapp.pyorapp:appimport target anywhere in the repository — the actual FastAPI instance isapp.main:appinsidebackend/app/main.py(confirmed byDockerfileline 84:CMD ["uvicorn", "app.main:app", ...]). Additionally,buildCommand: pip install -r requirements.txtruns from the repo root, butrequirements.txtlives atbackend/requirements.txt; there is no root-levelrequirements.txt. The env var list also includesMONGO_URI, which is not referenced anywhere inbackend/app/config.py(the app usesDATABASE_URLfor SQLAlchemy/Postgres, not Mongo) — while genuinely required variables for production (DATABASE_URL,REDIS_URL/CELERY_BROKER_URL,JWT_ALGORITHM,CHROMA_PERSIST_DIR,UPLOAD_DIR,ALLOWED_EXTENSIONS) are absent.Steps to Reproduce
Proposed fix approach: rewrite render.yaml to (1) set
buildCommand: pip install -r backend/requirements.txt, (2) setstartCommand: gunicorn app.main:app --bind 0.0.0.0:$PORT --workers 2 -k uvicorn.workers.UvicornWorker(gunicorn needs the uvicorn worker class for an ASGI app), (3) replaceMONGO_URIwith the actual required vars pulled fromSettingsin config.py, and (4) add arootDir: backendor equivalent so relative paths resolve correctly.Expected Behavior
A deploy from this file as-is would fail at build (missing requirements.txt) or, if that's worked around, fail at boot (gunicorn unable to locate
app:app).Screenshots / Logs
No response
Environment
Windows
GSSoC '26