D5.3b Adopt shared curriculum projection behind existing reader contracts
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 35/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- python
- Ambito
- backend-api-design, testing, web-dev
Direzione di ricerca
First read DTC AGENTS, _docs/PROCESS.md, _docs/specs/, docs/plan/STATUS.md, the course route contracts, and D5.3a's accepted policy matrix. Then inventory shared_course, curriculum_flow, and course_context callers and their existing tests, alongside D5.1 and D7.3 evidence. Done means existing route, API, access, navigation, Studio, empty/error, and presentation contracts remain intact, with independent QA and deployment evidence recorded.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Plan issue D5.3b, phase 5 of the community-base unification plan; child milestone of DTC #436.
Authority: D5.3b in the reviewed docs/plan/phase-5.md sequencing correction tracked by community-base #348. Implementation waits for that plan change and this milestone’s prerequisites. docs/plan/STATUS.md remains the source of truth.
Process and boundaries
DTC AGENTS.md, _docs/PROCESS.md, _docs/specs/ and coding-standard govern implementation, verification, independent QA and PM acceptance. Use an isolated worktree; preserve other sessions' work. Package changes must be tagged before site dependency adoption. No live source conversion, database reset or production operation is authorized by this issue. No visible UI change or feature removal is allowed.
Spec
Repository: DataTalksClub/website. Depends on: D5.1, D7.3. Freeze required: no.
Goal: consume the package curriculum tree/projection behind existing DTC routes and templates,
with the site policy contract proved by D5.3a and package rows imported through D7.3.
Read first
- DTC AGENTS, process, spec 04, course route contracts and D5.3a's accepted policy matrix.
- D5.1 target-model evidence, D7.3 ingest/caller inventory, shared CourseTree/projection APIs.
- Current shared_course, curriculum_flow and course_context callers and their existing tests.
Steps and acceptance criteria
- Use CourseTree/shared projection for generic hierarchy and ordered traversal; remove the
replaced site projection bodies after full caller inventory. Keep DTC URL/policy mapping. - Existing flat public HTML and API shapes, canonical/compatibility routes, query context,
access and publication/retirement filtering, empty/error behavior and Studio remain equal. - Previous/next remains within published lessons of the current module where that is today's
contract. Do not substitute the package's whole-course neighbor policy. - Flat, nested, mixed and one-unit module fixtures resolve to real supported destinations;
preserve section/bonus metadata, project references and explicit homework bindings. - Repeated sync and moves preserve selected-mode data/link guarantees through actual site
callers. Use D5.1 data evidence, adding the reader-specific checks rather than claiming a
second independent full migration. - Independent QA verifies route/API semantics and desktop/mobile presentation on the selected
development target with synthetic learners. Current visible UI is unchanged. If exposing
new hierarchy cannot fit that contract, record the concrete product decision before edits. - Package/site evidence and deployment verdicts are recorded separately; no adoption claim
rests only on generic package template tests or generated links that were never resolved.
Verification
- Run the maintained DTC verification plan, including affected reader/API/route/Studio tests
and desktop/mobile evidence; resolve generated destinations through real site views. - Check representative flat before/after HTML/API contracts, module-local neighbors and
query counts. Prove nested/mixed and one-unit destinations with approved source fixtures. - Record independent QA/PM acceptance and green selected development deployment. Scratch-source
evidence does not complete D7.4 or authorize a live-source switch.
Docs: DTC course/spec/route-policy documentation; STATUS here. No generic package templates or
route mounting replaces DTC presentation. No source conversion or parser duplication.
Browser and operations scenarios
Use the existing route inventory and the acceptance journeys above: a learner follows current module-local neighbors and retains cohort/access context; a learner opens valid nested/mixed and homework destinations through site-owned URLs; staff retain the existing Studio workflow. Cover existing empty/error/denial states and desktop/mobile presentation through independent QA. Do not invent new URL patterns or replace site templates with the package’s generic views. The versioned site verification plan owns exact routes, scenarios and screenshot evidence.
Sequencing references
- Source/policy proof: D5.3a / #446.
- Storage and single source-writer activation: D5.1 / #414.
- Reader projection: D5.3b / #447.
- Full preservation acceptance: D5.3 / #436.
- Coordinated course cutover: D5.2 / #415.
- Plan sequencing correction: community-base #348; its phase-5/phase-7 and generated STATUS update must merge before these revised dependencies govern implementation. No milestone is completed by this grooming.
- Package conversion semantics: C7.12b / community-base #347. Package capability, donor compatibility and site adoption remain separate gates.
- Lingua principale
- Python
- Stelle
- 0
- Fork
- 0
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
- Include un Dockerfile o un file Docker Compose
- Nessun modello di pull request
- Nessuna guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di DataTalksClub/website
-
bug infra operations P1 testing
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
DataTalksClub/website#329 ·
-
bug content data-migration documentation events operations P1
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
DataTalksClub/website#327 ·
-
bug frontend P0 testing
Difficoltà 2/5 1-3 ore Idoneità per principianti 90/100
DataTalksClub/website#300 · 7 commenti ·
-
bug data-migration events P0 testing
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
DataTalksClub/website#295 · 6 commenti ·
-
bug infra needs grooming
Difficoltà 2/5 1-3 ore Idoneità per principianti 50/100
DataTalksClub/website#459 ·
Tutte le issue di DataTalksClub/website
Issue simili
-
Difficoltà 1/5 1-3 ore Idoneità per principianti 88/100
gradio-app/gradio#13964 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 93/100
BSData/horus-heresy-3rd-edition#3232 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
jbacalso24/mimry#123 ·
I maintainer di solito rispondono entro 1 giorno
-
p:3-mid pydanty:bug pydanty:is-working
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
pydantic/pydantic-ai#10153 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
good first issue priority: medium size: S testing
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
cubrid-lab/cubrid-cookbook-python#316 ·
I maintainer di solito rispondono entro 1 giorno