DataTalksClub / DataTalksClub/website
CI container smoke: GET /unified/ 500, sqlite unable to open database file
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 0
- Forks
- 0
- PR merge metrics
- No merged PRs in 30d
Description
Plan context: discovered while observing the CI run for #332 (D0.1a). Not caused by it.
Symptom
The container job of the CI workflow fails at the step "Smoke-test liveness without publishing": /health/live passes with the exact release identity, but GET /unified/ returns 500:
sqlite3.OperationalError: unable to open database file
django.db.utils.OperationalError: unable to open database file
File "/app/core/views.py", line 79, in home
events = event_groups()
Exit code 22; the ci-gate job then marks the run failed and fail-fast cancels quality/django/playwright.
Evidence
- Run 34181931902 (commit f8f68c46, D0.1a merge): container job failed as above.
- Run 34176630561 (parent commit ca49f1bf, merge of #324): failed identically before being cancelled by the next push.
- No CI run on main has reached completion since 2026-09-05, so the matrix (quality/django/playwright) has produced no main evidence across the recent merges.
Expected
The smoke test serves GET /unified/ from the runtime image without a database error, and the CI container job completes so the full matrix runs.
Suspected direction
The smoke container appears to hit a sqlite database path that cannot be opened (missing or not writable for the runtime user). Recent merges (#321-#325, content_sync and database-wall work) are the likely window; bisect by running the same smoke step against earlier commits if needed.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the container CI job and its "Smoke-test liveness without publishing" step, then inspect the database configuration used by core/views.py at line 79 and the runtime image's SQLite path and permissions. Reproduce the GET /unified/ request against the container and compare it with earlier commits if needed. Done means the request succeeds without a database error and the container job completes so the full matrix runs.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- django, python, sqlite
- Domain
- ci-cd, database
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 68/100