D5.3b Adopt shared curriculum projection behind existing reader contracts
还没有人认领这个 Issue。
评估
- 难度
- 5/5
- 预计耗时
- 一周以上
- 新手友好度
- 35/100
- Issue 类型
- 功能
- 描述清晰度
- 基本清楚
- 活跃度
- 活跃
- 技术栈
- python
调研方向
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.
由索引模型根据 Issue 内容生成。
描述
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.
- 主要语言
- Python
- 星标
- 0
- 派生
- 0
- PR 合并指标
- 30 天内没有已合并 PR
环境准备
- 提供 Dockerfile 或 Docker Compose 文件
- 没有 Pull Request 模板
- 没有贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
DataTalksClub/website 的其他 Issue
-
bug infra operations P1 testing
难度 2/5 1-3 小时 新手友好度 72/100
DataTalksClub/website#329 ·
-
bug content data-migration documentation events operations P1
难度 2/5 1-3 小时 新手友好度 84/100
DataTalksClub/website#327 ·
-
bug frontend P0 testing
难度 2/5 1-3 小时 新手友好度 90/100
DataTalksClub/website#300 · 7 条评论 ·
-
bug data-migration events P0 testing
难度 2/5 1-3 小时 新手友好度 72/100
DataTalksClub/website#295 · 6 条评论 ·
-
auth bug human integration P1 security
难度 5/5 一周以上 新手友好度 35/100
DataTalksClub/website#449 · 10 条评论 ·
查看 DataTalksClub/website 的全部 Issue
相似的 Issue
-
repo-audit
难度 2/5 1-3 小时 新手友好度 75/100
scverse/repo-health#20 ·
维护者通常 1 天内回复
-
/context/prime scope override double-prefixes an entity-ref project and drops its scoped memories未关闭
难度 2/5 1-3 小时 新手友好度 85/100
phasespace-labs/palinode#232 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 82/100
collective/icalendar#1858 · 1 条评论 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 68/100
维护者通常 1 天内回复
-
bug
难度 2/5 1-3 小时 新手友好度 78/100
langflow-ai/langflow#15496 ·
维护者通常 1 天内回复