Quality contract red on main: zip strict=, format drift, and typecheck narrowing (CI cancelled since 6db5c2b3)
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 30/100
- Issue type
- Bug
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- python
- Domain
- ci-cd, testing-qa, tooling
Research direction
Start with the listed locations: courses/tests/test_course_illustrations.py, the four files with format drift, and content/tests/test_faq.py plus courses/tests/test_course_family_landing.py. Run python -m ci.quality_contract --repository . after reviewing the existing narrowing pattern in content/tests/test_queries.py. Done means the quality contract passes all lint, format, typecheck, migration, deployment, and CI checks.
Written by the indexing model from the issue text.
Description
What happened
The push of d7e53f5f (merge of #382) went red:
- CI run 35010874544:
qualityjob failed; its fail-fast step cancelleddjango,playwright, andcontainer;ci-gatefailed → run cancelled. - Deploy Dev run 35010874633:
verify-ci(requires a green CI verdict for the exact SHA) failed →publish/deployskipped.
Main has therefore had no green release pipeline since the run for 55a400c7 (15:56Z); the intervening runs for b297191d and d7e53f5f died in the quality job.
Root causes (all in the versioned quality contract, target order)
lint— B905zip()without explicitstrict=atcourses/tests/test_course_illustrations.py:127, introduced by6db5c2b3(no issue reference).format-check(would have failed next) — drift incontent/sync_parsers/podcasts.pyandcontent/tests/test_sync_parsers.py(via the #382 merge) andcourses/tests/test_family_page_content.py.typecheck(would have failed next) — 3 mypy errors fromdict | Nonenot narrowed afterassertIsNotNoneincontent/tests/test_faq.py:405,417andcourses/tests/test_course_family_landing.py:425.
Fix (on-call, this issue)
strict=Trueon the flaggedzip(both iterables have length 3; mispairing would silently build wrong fixtures).ruff formatapplied to the four drifted files.- Bare
assert x is not Nonenarrowing lines added after the threeassertIsNotNonecalls (matches the existing pattern incontent/tests/test_queries.py).
Verified locally: python -m ci.quality_contract --repository . passes end-to-end (lint, format 832 files, typecheck, migrations, django-check, deployment-check, test-ci 671 passed).
Refs the introducing commit 6db5c2b3; also hardens files touched by #382.
- Dominant language
- Python
- Stars
- 0
- Forks
- 0
- PR merge metrics
- No merged PRs in 30d
Getting set up
- Ships a Dockerfile or Docker Compose file
- No pull request template
- No contributing guide
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.
More from DataTalksClub/website
-
bug infra operations P1 testing
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
DataTalksClub/website#329 ·
-
bug content data-migration documentation events operations P1
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
DataTalksClub/website#327 ·
-
bug frontend P0 testing
Difficulty 2/5 1-3 hours Newbie friendliness 90/100
DataTalksClub/website#300 · 7 comments ·
-
bug data-migration events P0 testing
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
DataTalksClub/website#295 · 6 comments ·
-
courses enhancement P2
Difficulty 4/5 3-5 days Newbie friendliness 35/100
DataTalksClub/website#455 · 6 comments ·
All issues in DataTalksClub/website
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
LearningCircuit/local-deep-research#7206 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
chingu-voyages/V62-tier3-team-33#285 ·
Maintainers usually reply within 1 day
-
Proxy drops log notifications from backends that don't send FastMCP's msg/extra dictPossibly taken @asasemahmed claimed this today. Openbug server
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
Maintainers usually reply within 1 day
-
[Bug]: Bedrock request metadata forwarding does not work for /embeddingsPossibly taken A pull request linked to this issue is open or already merged. Openbug llm translation
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day