---
url: https://docs.nemo12.com/product/prd-001-nemo12-platform.md
description: >-
  Mục lục danh mục REQ của PRD-001: luật viết REQ, nghĩa Priority/Status, và
  nhóm REQ nào nằm ở mảnh nào dưới prd-001/req/.
---

# PRD-001 — Nemo12 Platform

> **Core job:** "Nemo12 liên tục hiểu learner đang ở đâu, tìm ra điều đang cản learner tiến lên, rồi giúp learner và gia đình biết chính xác nên làm gì tiếp theo."

Trang này là mục lục của **§5 Requirement Catalog**, sổ REQ chung mà các cổng kiểm đọc; các bảng REQ nằm ở các mảnh dưới `prd-001/req/` (SRC-1322). Tầm nhìn, persona, user story, độ phủ và bản đồ màn hình đã tách sang [mục lục PRD-001](./prd-001/index.md) (SRC-1322, 10.10.2026); các tham chiếu §1 tới §4 và §6 tới §8 trong các mảnh trỏ tới những trang đó.

## 5. Requirement Catalog

Priority: **M** = MUST, **S** = SHOULD, **C** = COULD — **không có mức mơ hồ** ("M?" đã bị loại bỏ 2026-08-15, xem §7 và [open-questions Đợt 9](../open-questions/index.md)).
Status: **✔** active · **🔵** đang code · **⏳** `pending-confirm` (chưa implement) · **🗄️** superseded (giữ ID cho khỏi gãy tham chiếu, nội dung đã chuyển sang REQ khác).

Quy tắc viết REQ (QG-002): mỗi REQ phải **phán quyết đúng/sai được bằng quan sát** — cấm "tốt", "nhanh", "dễ dùng", "thân thiện", "đẹp", "tối ưu"; thay bằng ngưỡng số, tên màn hình, hoặc hành vi nhìn thấy được.
Mỗi REQ ✔ phải có SDD + QG; xem tổng hợp tại [traceability.md](../traceability.md). Mọi REQ **⏳/🔵 đều có lý do + ngày ở §7**; phủ US/WF của REQ MUST ở §6; bản đồ màn hình đang chạy ↔ persona ↔ REQ ở §8.

### Mảnh REQ

| Mảnh | Nhóm REQ |
| --- | --- |
| [Tài khoản, web công khai, lịch, học thử](./prd-001/req/access-web.md) | `REQ-ACC`, `REQ-BRD`, `REQ-CAL`, `REQ-TRI` |
| [Learner: trải nghiệm, overview, UI/UX](./prd-001/req/learner.md) | `REQ-LRN`, `REQ-VIS`, `REQ-UX` |
| [Gia đình và mentor: Marlins, Dolphins, Dory, Anchor, Portrait](./prd-001/req/family.md) | `REQ-PAR`, `REQ-MEN`, `REQ-DOR`, `REQ-ANC`, `REQ-POR` |
| [Trường, nội dung, đề, lab, Coral](./prd-001/req/content.md) | `REQ-SCH`, `REQ-ORC`, `REQ-KNW`, `REQ-INX`, `REQ-EXAM`, `REQ-PED`, `REQ-CNT`, `REQ-MED`, `REQ-LAB`, `REQ-ART` |
| [Learner Intelligence, onboarding, adaptive](./prd-001/req/intelligence.md) | `REQ-INT`, `REQ-ONB`, `REQ-ADAPT` |
| [Nền tảng, độ tin cậy, bảo mật, tài liệu](./prd-001/req/platform.md) | `REQ-PLT`, `REQ-NFR`, `REQ-SEC`, `REQ-DOC` |
| [SAT, Journey, Gull, app IELTS](./prd-001/req/programs.md) | `REQ-SAT`, `REQ-JRN`, `REQ-GUL`, `REQ-MOB` |
| [Cụm chờ xác nhận: GAM, COM, GRW, TRU](./prd-001/req/pending.md) | `REQ-GAM`, `REQ-COM`, `REQ-GRW`, `REQ-TRU` |

### Thêm REQ mới

1. Tìm mảnh của nhóm trong bảng trên (máy đọc cùng thông tin ở `scripts/lib/req-ledger.mjs`, `SHARDS`).
2. CHÈN một dòng vào bảng `### REQ-XXX` của nhóm trong mảnh đó bằng Edit, số kế tiếp trong nhóm; không đọc cả file rồi ghi đè (`check-no-clobber` so cả sổ với HEAD).
3. Nhóm mới: thêm vào `SHARDS` trong `req-ledger.mjs`, thêm heading `### REQ-XXX` vào mảnh, thêm vào bảng trên. Mảnh nào quá 40 KB thì tách thêm mảnh.
4. Link trong dòng REQ viết tương đối từ `docs/product/prd-001/req/` (ví dụ `../../../architecture/sdd-0NN-x.md`).
