---
url: https://docs.nemo12.com/intake/src-0600-0624.md
description: >-
  Sổ tiếp nhận nguồn yêu cầu SRC-0600 tới SRC-0624: mỗi dòng một nguồn, ngày
  nhận, tài liệu canonical đã ghi và trạng thái.
---

# Sổ nguồn SRC-0600 tới SRC-0624

Một mảnh của [sổ tiếp nhận](../intake.md). Chỉ CHÈN dòng bằng `node scripts/src-new.mjs`, không ghi đè cả file.

| ID | Ngày nhận | Nguồn | Canonical hóa vào | Trạng thái |
| --- | --- | --- | --- | --- |
| SRC-600 | 2026-08-26 | Chủ dự án 2026-08-26: mọi hằng số và mọi slug trong code phải đặt tên tiếng Anh; nhãn hiển thị vẫn tiếng Việt | docs/engineering/coding-conventions.md | ✅ |
| SRC-601 | 2026-08-26 | Rà soát 2026-08-26: trả nốt nợ trong marlins-ia/index.md — ô Tuần này nên làm gì chưa gom việc cần làm của con; trang chi tiết một ô chỉ số nói lại bằng con số trần thay vì tiếp nối hình ở thẻ | Trang Tuần này nên làm gì trả lời trọn một câu, và trang chi tiết chỉ số nói tiếp bằng đúng hình của thẻ | ✅ |
| SRC-602 | 2026-08-26 | Chủ dự án, 2026-08-26: gửi email dùng Cloudflare Email Service, không dùng Resend | Thư tổng kết đi qua binding EMAIL của Cloudflare Email Service, không phụ thuộc nhà cung cấp ngoài | ✅ |
| SRC-603 | 2026-08-26 | Chủ dự án 2026-08-26: nâng cấp tài liệu — đo nợ canonical thật rồi dọn; dựng cổng REQ mồ côi (chiều ngược của check-docs mục 3, anh em của check-src-canonical); canonical hóa 92 quyết định kỹ thuật đang chỉ còn trong commit message vào 11 doc đích | [QG-013](../quality/quality-gates.md), `scripts/check-req-canonical.mjs`, [public-web-ia](../product/public-web-ia.md), [sổ sự cố](../engineering/incident-log/incidents-09-plus.md), + 9 doc canonical | ✅ |
| SRC-604 | 2026-08-26 | Chủ dự án, 2026-08-26: dùng 100% tiếng Anh cho code và text kỹ thuật (định danh, địa chỉ email, slug…), không dùng tiếng Việt không dấu kiểu khong-tra-loi@; trao đổi với chủ dự án vẫn bằng tiếng Việt | Mọi định danh kỹ thuật là tiếng Anh; địa chỉ gửi thư là no-reply@nemo12.com | ✅ |
| SRC-605 | 2026-08-26 | Chủ dự án, 2026-08-26: mọi email gửi đi phải là HTML đẹp theo phong cách thư thử 2/3 (nền biển sâu); dựng template trước rồi chèn dữ liệu, trong đó có báo cáo tình hình học tập theo tuần của mỗi bé gửi bố mẹ | Bộ template email HTML dùng chung một layout biển sâu; thư tuần theo từng con là template đầu bảng | 🔵 |
| SRC-606 | 2026-08-26 | Chỉ đạo: hệ thống cần lưu **tên gọi ở nhà** của các bé, và **hiển thị tên đó ra** | Migration `0083` thêm `learners.nickname` (kèm `photo_media_id` cho cả thành viên). **Phần chứa có sẵn nhưng KHÔNG màn nào hiện ra và không đâu sửa được** — cột và API đã viết, giao diện thì chưa; đây đúng loại nửa vời tệ hơn không có, vì người nhập thấy hệ không dùng tới thì thôi nhập. Nay hiện ở **ba chỗ**: cạnh tên đầy đủ trong cột trái hồ sơ gia đình (dạng “Bin”, không giấu trong tooltip — mentor cần biết gọi bé là gì TRƯỚC khi gọi điện), trên chip con ở danh sách gia đình (**ưu tiên tên gọi ở nhà** vì đó là cách cả nhà gọi), và trong ô chọn *note này về ai*. Sửa được ngay tại chỗ ở chế độ ✎. API `GET /v1/mentor/families` bổ sung `nickname` cho từng con — trước đó chỉ endpoint chi tiết trả về nên danh sách không thể hiện được. **Ghi chú phối hợp:** migration 0083 và phần hiển thị ở trang chi tiết do **một phiên khác viết song song** trong cùng cây làm việc; phiên này làm nốt phần còn thiếu và commit chung, không sửa nội dung của họ | ✅ |
| SRC-607 | 2026-08-26 | Chủ dự án, 2026-08-26 (ảnh dolphin.nemo12.com): nút I look after bị lỗi; tên con lặp hai lần; tag quá to phải siêu nhỏ và ẩn tới khi bấm; ưu tiên nội dung ghi chú mục tiêu gia đình; hiện ảnh cả nhà với placeholder và upload tại chỗ; bỏ dòng One real conversation; mỗi người một card; mỗi bé thêm tên gọi ở nhà | Trang gia đình của cổng mentor: mỗi thành viên một card có ảnh chân dung, ghi chú đặt nội dung lên đầu, tag thành siêu dữ liệu ẩn | ✅ |
| SRC-608 | 2026-08-26 | Chỉ đạo (ảnh chụp màn hình danh sách gia đình): mỗi family hiển thị **ảnh của con, tên ngay bên dưới**; **bố mẹ cũng ảnh trên tên dưới**; **bỏ hết nút** 'I look after' và 'Stop looking after'; và hiển thị **ảnh + tên của mentor** đang chăm sóc | Thẻ gia đình chuyển sang **ảnh trên, tên dưới** cho cả ba nhóm: bố mẹ · các con · mentor đang chăm. Một khuôn mặt nhận ra nhanh hơn một dòng chữ, mà đây đúng là màn mentor lướt qua hàng chục nhà. Ảnh lấy theo thứ tự **ảnh riêng → avatar tài khoản đã nối → chữ cái đầu**; cố ý KHÔNG để ô trống vì ô trống trông như ảnh hỏng, còn chữ cái vẫn phân biệt được người này với người kia. API `GET /v1/mentor/families` bổ sung `photo_media_id` cho con và bố mẹ, `avatar_url` cho bố mẹ đã nối tài khoản, và `photo_media_id` + `avatar_url` cho mentor. **Cái không làm theo nguyên văn, và vì sao:** bỏ hết nút trên thẻ thì mất luôn chỗ duy nhất để nhận/bỏ chăm sóc — mà **hai ô lọc ở đầu trang đọc thẳng từ đó**, nên bỏ hẳn là làm hỏng hai ô lọc. Nút chuyển sang **đầu trang chi tiết**, và **không nằm sau công tắc ✎** vì đây không phải sửa dữ liệu gia đình mà là việc riêng của mentor. Thẻ danh sách nay hoàn toàn read-only, đúng luật đã chốt | ✅ |
| SRC-609 | 2026-08-26 | Chỉ đạo 2026-08-26/27 (chuỗi thiết kế course): dựng tầng Course kiểu CEFR — level 1-5 thay khái niệm lớp, xếp lớp bằng bài đo; Toán 30 course (Số học 6 · Đại số 10 · Hình học 10 · Dữ liệu-Đo lường-Xác suất 4), Ngữ văn 15; mỗi course = chủ đề GDPT + Building 21 + AoPS + ≥3 competency; unit = Big Idea + Essential Question + 3-5 key concepts + 2 ngữ liệu + 2-3 khung tư duy; lesson = 1 Guiding Question; V8 Biện pháp tu từ soạn trọn làm mẫu; bảng MỚI TINH không đụng `courses` cũ; kèm skill chứa tiêu chuẩn soạn | [SDD-004 §19](../architecture/sdd-004-curriculum-storage.md), [course-design-standard](../reference/course-design-standard/index.md), [CS-10](../quality/content-standards.md), migration 0084, skill `/course-design` | ✅ |
| SRC-610 | 2026-08-26 | Chỉ đạo 2026-08-27: mỗi Unit thêm Unit Outcomes dạng I-will-be-able-to + Performance Task cuối Unit (làm PT mới được tính hoàn thành Unit); mỗi Lesson thêm Lesson Outcomes mức hiểu-concepts, cuối lesson có assessment vượt lesson, đầu lesson có học liệu trải nghiệm (YouTube/PDF/lab) và sau học liệu learner làm reflection/report | [course-design-standard](../reference/course-design-standard/foundations.md) CD-6/CD-7 + [CS-10](../quality/content-standards.md) + skill `/course-design` (chuẩn); schema + API + trang Courses thuộc bó SRC-611 phiên song song | ✅ |
| SRC-611 | 2026-08-26 | Chỉ đạo 2026-08-27 (cấp hộ phiên song song đang canonical hóa — migration 0085 và module curriculum trích dẫn số này): Unit Outcomes + Performance Task + Lesson Outcomes + học liệu/reflection + checks, kèm trang Courses trên learn (danh sách theo level, chi tiết course, nút Bắt đầu học, xem từng Unit/Lesson) | migration 0085, workers/api/src/modules/curriculum, apps/learn CourseCatalog/CourseDetail (bó phiên song song) | 🔵 |
| SRC-612 | 2026-08-26 | Chỉ đạo 2026-08-27: XOÁ khái niệm courses cũ (lớp học có lịch thu phí — SRC-550) khỏi hệ; trả bộ tên bảng chính courses cho tầng course curriculum vừa dựng (rename curriculum_courses → courses cùng các bảng con) | thi công sau khi bó SRC-611 vào main: gỡ module courses + UI Courses/CoursesPanel + migration drop courses/course_sessions/course_enrollments cũ và rename | 🔵 |
| SRC-613 | 2026-08-26 | Đặc tả Lesson (văn bản đầy đủ từ chủ dự án, tiếng Anh): 8 thành phần — Learning Objective, Knowledge & Skills, Success Criteria, Common Misconceptions, Common Errors, Learning Experiences, Formative Task, Intervention Strategies; vòng formative khép Teach → Task → Evidence → Interpretation → Next Action; Formative Task thiết kế quanh misconception chứ không phải điểm số; Lesson sinh formative evidence còn Unit sinh performance evidence | [course-design-standard](../reference/course-design-standard/lesson-unit-course.md) CD-8 | ✅ |
| SRC-614 | 2026-08-26 | Đặc tả Unit (văn bản đầy đủ từ chủ dự án): 10 thành phần — Purpose, Learning Outcomes (observable), Knowledge & Skills, Lessons (mỗi lesson một Formative Task), Prerequisites, Misconception Map xuyên Unit, Learning Progression (Prerequisite → Basic → Application → Integration), Performance Task bắt buộc, Rubric (criteria + evidence + achievement levels), Mastery/Readiness Criteria; ranh giới: Lesson quản learning, Unit quản integration, Performance Task chứng minh achievement | [course-design-standard](../reference/course-design-standard/lesson-unit-course.md) CD-9 | ✅ |
| SRC-615 | 2026-08-26 | Đặc tả Course (văn bản đầy đủ từ chủ dự án): Purpose (làm được gì mà trước đó chưa), Learning Outcomes observable + tạo evidence, Prerequisites, Units (mỗi unit kết bằng Performance Task), Learning Progression 5 chặng Prerequisite → Foundation → Development → Application → Integration, Assessment Strategy (Lesson→Formative, Unit→Performance, có thể thêm summative cuối course), Completion Criteria; Course Learning Loop: Teach → Practice → Formative Evidence → Adjust → Apply → Performance Evidence → Progress | [course-design-standard](../reference/course-design-standard/lesson-unit-course.md) CD-10 | ✅ |
| SRC-616 | 2026-08-26 | Mục tiêu 2026-08-27 (/goal): soạn TOÀN BỘ nội dung các course — Toán 30, Ngữ văn 15, Tin học lập trình thi đấu 10 (tạo mới), Tiếng Anh 15 (tạo mới); quy trình xoay vòng mỗi môn một course, audit chi tiết từng phần ≥90/100 rồi mới sang course kế; tự dựng trước công cụ tái dùng (rubric audit, generator seed, mở rộng schema spec) | [course-audit.md](../quality/course-audit.md) + `scripts/audit-course.mjs` + `scripts/course-content-to-sql.mjs` + migration 0086; chuỗi seed nội dung đang chạy theo rubric | ✅ |
| SRC-617 | 2026-08-26 | Chỉ đạo 2026-08-27: loại bỏ hoàn toàn khái niệm 'đường đi 9 ô (SDD-010 §9)' khỏi chuẩn thiết kế course — khó hiểu; lesson mô tả bằng chuỗi hoạt động thường: học liệu → giải thích/ví dụ/worked example → luyện tập → Formative Task | [course-design-standard](../reference/course-design-standard/index.md) v0.6 + skill `/course-design` | ✅ |
| SRC-618 | 2026-08-26 | Chủ dự án 2026-08-27: cổng readiness trước khi vào Unit/Module — thang sửa có ngân sách, lùi tối đa 2 lớp và 2 hop, không đệ quy vô hạn | docs/architecture/sdd-021-learning-entry-sequencing.md §14 | ✅ |
| SRC-619 | 2026-08-27 | Chỉ đạo 2026-08-27 (ảnh trang chi tiết course): nhãn tầng Course phải theo ngôn ngữ đang bật (Big Idea / Essential Question / Key Concepts); trang course chỉ hiện rất ít thông tin, mỗi unit một card, thông tin nhỏ trong card nhỏ; thêm trang riêng cho Unit / Lesson / Performance Task — không header, footer, left panel, chỉ một dropdown điều hướng; mỗi thứ một URL riêng | PRD-001 REQ-LRN (trang curriculum), apps/learn CourseDetail + CurriculumPages | ✅ |
| SRC-620 | 2026-08-27 | Chỉ đạo chủ dự án 2026-08-27 (ảnh chụp màn hình /families/fam-minh): chuyển Photos xuống đáy cột trái; mỗi người có màn riêng bấm icon mở ra — toàn bộ ghi chú về người đó + danh sách pains/JTBD/needs/beliefs; mỗi người 3-5 scorecard và cả nhà vài scorecard để Dolphin biết làm gì tiếp; ẩn dòng meta dưới mỗi ghi chú và ẩn ô Add a reply, bấm icon mới hiện | SDD-023 §5 + SDD-024 §7 | ✅ |
| SRC-621 | 2026-08-27 | Chỉ đạo chủ dự án 2026-08-27 (hai ảnh /families/fam-minh): card của bố biến mất phải hiện lại được; gom mentor đang follow vào một card riêng; bỏ label 'Nhà Trí Minh' thừa ở trên cùng; click cả card để mở chi tiết thay vì icon nhỏ ở góc; không lặp lại tên+vai trò ở cột giữa; thêm công tắc song ngữ EN-VI ở góc trên phải; mỗi card Pains/JTBD/Needs/Beliefs có dấu hỏi mở popover kèm ví dụ | SDD-023 §16 | ✅ |
| SRC-622 | 2026-08-27 | Chỉ đạo chủ dự án 2026-08-27 (ảnh /families/fam-minh, chế độ sửa): bỏ nút Archive; mọi nút Save phải có Cancel bên cạnh; click một cá nhân thì cột giữa có card thông tin cá nhân gồm link Facebook và các link khác, sở thích, lĩnh vực chuyên môn, và upload ảnh cũng ở cột giữa; cột trái CHỈ hiển thị, không sửa không upload | SDD-023 §17 | ✅ |
| SRC-623 | 2026-08-27 | Chỉ đạo chủ dự án 2026-08-28: đưa chọn ngôn ngữ lên header cổng; bỏ icon Back và icon edit family; thêm New Child ở left-panel; parent card ba dòng (tên / vai trò / chức danh); Save và Cancel phải cạnh nhau | SDD-023 §18 | ✅ |
| SRC-624 | 2026-08-27 | Báo lỗi chủ dự án 2026-08-28: không lưu và không hiển thị được thông tin sở thích — zod object loại bỏ key không khai báo TRƯỚC allow-list buildUpdate nên API trả 200 mà vứt dữ liệu; kèm splitLayers thiếu photo_media_id từ SRC-607 | SDD-023 §18.5 | ✅ |
