Appearance
Open Questions
Câu hỏi xác nhận trước khi viết PRD/SDD baseline. Mỗi câu có ID để trace vào quyết định trong PRD/SDD/ADR. Khi có câu trả lời, ghi vào cột Trả lời kèm ngày; câu hỏi đã chốt chuyển sang resolved.
2026-08-13 (đêm): Theo chỉ đạo của chủ dự án ("tự hỏi, tự phân tích, tự trả lời, tự lưu"), mọi câu chưa có trả lời được AI tự quyết tại §Đợt tự trả lời cuối file. Ký hiệu ✍️ = quyết định của AI, có hiệu lực cho tới khi chủ dự án sửa.
A. Scope & Phase 1
| ID | Câu hỏi | Trả lời |
|---|---|---|
| Q-001 | Phase 1 gồm những gì: public website đủ 6 school + learner portal của school nào trước (Turtle?), hay tất cả cùng lúc? | |
| Q-002 | Thứ tự ưu tiên các app: web (marketing) → learn → marlins → mentors → admin? Có app nào chưa cần trong phase 1? | ✅ 2026-08-13: web → learn → marlins → mentors → admin, đúng thứ tự này. |
| Q-003 | Có mốc thời gian mục tiêu nào không (ví dụ kịp kỳ tuyển sinh, khai giảng)? | |
| Q-004 | Quy mô dự kiến năm đầu: bao nhiêu learners / parents / mentors đồng thời? | ✅ 2026-08-13: ~10.000 learners, ~10.000 parents, ~10 mentors. |
| Q-005 | Nemo12 là platform cho trung tâm thực tế đang vận hành (có lớp offline, giáo viên thật) hay pure online product? Blended? | ✅ 2026-08-13: Blended, nhưng 95% online. |
B. Users, Auth & Roles
| ID | Câu hỏi | Trả lời |
|---|---|---|
| Q-006 | Ai tạo account: parent đăng ký rồi tạo learner (parent-first), hay learner tự đăng ký? Học sinh nhỏ tuổi có cần parent consent flow? | ✅ 2026-08-13: Parent-first. Account tự tạo ngay khi parent login (Google OAuth). Parent invite thì learner mới vào học được. |
| Q-007 | Auth: tự xây trên Workers (session/JWT) hay dùng dịch vụ ngoài (Clerk, Auth0…)? Có yêu cầu đăng nhập Google/social không? | |
| Q-008 | Một family có nhiều learners, một learner có nhiều parents (bố + mẹ) — đúng không? Có role "guardian" khác (ông bà, người giám hộ)? | |
| Q-009 | Dolphins (mentors) là nhân viên nội bộ hay có cả mentor bên ngoài/freelance? | |
| Q-010 | SRC-007 nhắc "Teachers và Staff" — Teacher có phải role riêng ngoài Mentor không, hay Teacher ⊂ Dolphins? Staff/Admin gồm những vai trò nào? |
C. Ngôn ngữ & Thị trường
| ID | Câu hỏi | Trả lời |
|---|---|---|
| Q-011 | Ngôn ngữ UI: tiếng Việt mặc định? Có cần song ngữ Việt–Anh (i18n) ngay từ đầu hay để sau? | |
| Q-012 | Thị trường ban đầu chỉ Việt Nam? Có kế hoạch học sinh ở nước ngoài dùng không (ảnh hưởng timezone, latency, pricing)? | |
| Q-013 | Tài liệu docs giữ phong cách hiện tại (tiếng Việt + thuật ngữ kỹ thuật tiếng Anh) — xác nhận? |
D. Business Model
| ID | Câu hỏi | Trả lời |
|---|---|---|
| Q-014 | Mô hình thu phí: subscription theo school/program, mua theo package, hay free trong giai đoạn đầu? (Ảnh hưởng entitlement & enrollment model.) | |
| Q-015 | Phase 1 có cần thanh toán online không? Nếu có, cổng nào (VNPay, MoMo, Stripe…)? |
E. Content & Curriculum
| ID | Câu hỏi | Trả lời |
|---|---|---|
| Q-016 | Nội dung ban đầu do ai tạo: đội ngũ nội bộ, AI-assisted + human review, hay có content sẵn cần migrate? | |
| Q-017 | Môn học và khối lớp ưu tiên đầu tiên là gì (ví dụ Toán 6–9)? | |
| Q-018 | Curriculum align theo chuẩn nào: GDPT 2018 của Việt Nam, Cambridge/Common Core, hay mix theo school? | |
| Q-019 | Item Bank khởi điểm: quy mô mục tiêu và nguồn (tự soạn, AI generate + review, mua/ngân hàng đề có sẵn)? |
F. AI
| ID | Câu hỏi | Trả lời |
|---|---|---|
| Q-020 | Model providers qua AI Gateway: Anthropic Claude, OpenAI, Workers AI, hay kết hợp? Có preference chính? | |
| Q-021 | Phase 1 có AI tutor/chat trực tiếp với learner không, hay AI chỉ chạy backstage (chấm, đánh giá content, giải thích recommendation)? K12 chat trực tiếp cần guardrails riêng. | |
| Q-022 | Có ngân sách/giới hạn AI cost nào cần đưa vào thiết kế (cost control, caching, model routing)? |
G. Kỹ thuật
| ID | Câu hỏi | Trả lời |
|---|---|---|
| Q-023 | Monorepo tooling: pnpm workspaces (+ Turborepo?) — có preference không? | |
| Q-024 | D1: một database chính cho toàn platform, hay tách theo bounded context ngay từ đầu (D1 giới hạn 10GB/database)? | |
| Q-025 | Xác nhận React + TypeScript cho tất cả apps (VitePress dùng Vue chỉ cho docs)? | ✅ 2026-08-13 (một phần): Các app dùng Vite + VitePress là chính. (React/TS chưa xác nhận riêng nhưng nhất quán với SRC-002 và legacy Vite 8 + React 19.) |
| Q-026 | CI/CD: GitHub Actions hay Cloudflare Workers Builds? Repo sẽ host ở GitHub? | |
| Q-027 | Thư mục hiện chưa git init — tôi có nên init repo ngay không? Tên default branch? | |
| Q-028 | Môi trường: dev / staging / production — staging đặt ở subdomain riêng (staging.nemo12.com) hay dùng workers.dev? | |
| Q-029 | Mobile: phase 1 chỉ responsive web, hay đã cần tính đến mobile app (ảnh hưởng API design, push notification)? | ✅ 2026-08-13: Cần tính trước cho mobile app ngay từ đầu (API-first, auth tương thích mobile, push trong Notification architecture). |
| Q-030 | Dữ liệu trẻ em: có yêu cầu tuân thủ cụ thể (Nghị định 13/2023 PDPD Việt Nam, chính sách retention/xóa dữ liệu) cần ghi thành requirement? |
H. Documentation & Process
| ID | Câu hỏi | Trả lời |
|---|---|---|
| Q-031 | Độ mịn của REQ: mức feature (~50–80 REQ toàn hệ thống, dễ quản lý) hay chi tiết hơn (hàng trăm)? | |
| Q-032 | Quality Gate giai đoạn docs-only: checklist review thủ công trước, CI-enforced khi có code — đồng ý cách tiếp cận này? | |
| Q-033 | Use-case diagram bằng Mermaid (render trong VitePress, AI đọc được) — chấp nhận, hay bạn cần định dạng khác? | |
| Q-034 | Ai review/approve tài liệu — chỉ bạn, hay có team? Có cần trạng thái "approved by" trong frontmatter? |
Đợt tự trả lời 2026-08-13 — AI quyết, chờ duyệt
Chủ dự án chỉ đạo: "Hãy tự hỏi, rồi tự phân tích, rồi tự trả lời, tự lưu các câu trả lời." Các quyết định ✍️ dưới đây có hiệu lực để tiến hành build; sửa bất kỳ dòng nào là đủ để tôi điều chỉnh lại hệ thống.
Đợt 1 — các câu chưa có trả lời từ chủ dự án
| ID | ✍️ Quyết định | Lý do ngắn |
|---|---|---|
| Q-001 | Phase 1: web đủ 6 school pages + learn bắt đầu với Turtle (Toán 6–9) | Turtle là foundation, có sẵn knowledge graph + labs legacy; Shark cần exam-intelligence phức tạp hơn |
| Q-003 | Mốc mềm: khai giảng tháng 9/2026 | chưa có mốc chính thức từ chủ dự án |
| Q-007 | Tự xây auth: Google GSI id_token + opaque session (SDD-001 §6), không dùng Clerk/Auth0 | Cloudflare-first, không phụ thuộc ngoài, pattern sutucon đã chạy thật |
| Q-008 | Có: 1 family n learners, 1 learner n guardians; thêm role supporter kế thừa family portal | khớp REQ-ACC-03 |
| Q-009 | Mentors nội bộ (10 người) phase 1 | quy mô Q-004 |
| Q-010 | Teacher ⊂ Dolphins (một role mentor); Staff = admin + content team | đơn giản RBAC phase 1; tách role khi class-ops bật |
| Q-011 | UI tiếng Việt mặc định, kiến trúc i18n-ready (string catalog), tiếng Anh sau | thị trường VN trước |
| Q-012 | Việt Nam trước; edge Cloudflare đủ cho learner ở nước ngoài lẻ tẻ | |
| Q-013 | Xác nhận — giữ phong cách docs hiện tại | |
| Q-014 | Entitlement theo program/package (kế thừa membership_entitlements) + free diagnostic tier; bảng giá chốt sau | không chặn thiết kế enrollment |
| Q-015 | Chưa thanh toán online phase 1 — chuyển khoản + admin cấp entitlement; cổng (VNPay/MoMo) phase sau | giảm scope + compliance |
| Q-016 | Content: nội bộ + AI-assisted qua pipeline SDD-003 với human review | QG-006 |
| Q-017 | Toán 6–9 (Turtle) trước | khớp graph + labs legacy |
| Q-018 | GDPT 2018 là chuẩn chính; Cambridge/SAT frameworks cho Squid/Ray khi mở | |
| Q-019 | Item Bank khởi tạo: migrate diagnosis_question_registry + AI generate + review; mục tiêu 500–1.000 items Toán 6–9 | |
| Q-020 | Workers AI (llama 3.3) mặc định (rẻ, on-platform); Claude qua AI Gateway cho evaluation chất lượng cao; router theo task trong packages/ai | cost/quality cân bằng |
| Q-021 | Phase 1 AI backstage only (chấm, đánh giá content, giải thích recommendation); AI tutor chat trực tiếp với trẻ em = phase sau + guardrails riêng | an toàn K12 |
| Q-022 | Cost control qua AI Gateway: bật cache (không skipCache như legacy), rate limit, cost dashboard, budget alert | RISK-022 |
| Q-023 | npm workspaces (chưa Turborepo — path-filtered CI đủ cho quy mô hiện tại) | đơn giản |
| Q-024 | Một D1 nemo12-platform; tách content DB thành ADR riêng khi content vượt ngưỡng | tránh premature split |
| Q-025 | React 19 + TypeScript xác nhận cho mọi app; Vue chỉ trong VitePress | |
| Q-026 | GitHub Actions (pattern 2 repo legacy đã ổn định); repo GitHub dac2205/nemo12.com ✅ đã tạo | |
| Q-027 | ✅ Đã init, branch main, private repo | done |
| Q-028 | Staging: workers env staging + subdomain staging khi có app thật; chưa dựng phase scaffold | |
| Q-030 | Theo Nghị định 13/2023: consent parent-first, minimization, retention policy, quyền xóa — đã vào REQ-SEC-04/REQ-MED-05 | |
| Q-031 | Feature-level (~100 REQ hiện tại) | đủ traceability, không ngập |
| Q-032 | ✅ Đồng ý: 📋 manual → 🤖 CI khi có code | |
| Q-033 | Mermaid | render VitePress + AI đọc được |
| Q-034 | Chỉ chủ dự án approve; thêm approved_by frontmatter khi cần |
Đợt 2 — câu hỏi phát sinh từ audit legacy (Q-035 →)
| ID | Câu hỏi | ✍️ Quyết định |
|---|---|---|
| Q-035 | Hợp nhất 2+ learner models legacy thế nào? | Chuẩn SDD-002 (mastery+confidence+trajectory per canonical skill); chac/lung_lay/hong chỉ là nhãn presentation |
| Q-036 | Evidence 3 shapes khác nhau? | Chuẩn SDD-002 §5, idempotency key kiểu sutucon |
| Q-037 | Nguồn seed canonical graph? | TS graphs chuyenchon (Toán/Văn/Anh 6.5k LOC) là seed; đối chiếu mori seeds; một registry D1 duy nhất |
| Q-038 | Kho đề thi thật tách hay gộp Item Bank? | Tách: exam_problems là registry Shark, liên kết Item Bank qua relations |
| Q-039 | 4F Reflection là của riêng Octopus? | Capability chung (Reflection experience type), bật Octopus trước |
| Q-040 | Member Intelligence (10 dimensions)? | Hoãn — REQ-PAR-08 ⏳; Parent Model phase 1 dùng observation + behavior |
| Q-041 | Shark exam/school intelligence? | Adopt — differentiator của Shark; phase 2 (sau Turtle learn core); web /shark hiển thị nội dung tĩnh trước |
| Q-042 | App content plane (mori mới) khi nào? | Admin app kiêm content plane phase 1; app riêng khi content team lớn |
| Q-043 | CAPOS dependency? | Không phụ thuộc — port content cần thiết vào registry Nemo12 |
| Q-044 | Chiến lược 288 labs? | ✅ Đã chốt bằng SDD-010: 4 engines data-driven + 29 sim components + content migration |
| Q-045 | Class operations (lớp/lịch/điểm danh)? | Adopt — blended cần; schema thiết kế sẵn, UI bật ở phase mentors app (REQ-MEN-04 giữ ⏳ tới lúc đó) |
| Q-046 | Gamification? | Adopt Lite phase 2: badges + streaks trước (kèm data-gates pattern); XP/stickers/rewards sau |
| Q-047 | Portfolio/social/vote? | Adopt cho Octopus phase 2 — portfolio phục vụ JTBD "chứng minh bằng evidence" |
| Q-048 | Events/Cafe + Zalo? | Giữ cho Marlins phase 2; mọi link qua config |
| Q-049 | Affiliate/referral? | Hoãn phase 3 — không thuộc core learning |
| Q-050 | CMS + pricing/ebooks? | Phase 1 không CMS — marketing content trong repo; pricing/ebooks phase 2 |
| Q-051 | AI illustrations + knowledge stories? | Phase 2, sau khi content pipeline chạy (REQ-MED-06 ⏳) |
| Q-052 | Experience comparison simulator? | Drop — giá trị thấp, phụ thuộc worker ngoài |
| Q-053 | Integrity system? | Adopt nguyên tắc (thay đổi khai báo phải có evidence + audit) vào Assessment/Evidence — không xây hệ riêng |
| Q-054 | Truy cập repo api.conan.school để lấy DDL/data sutucon? | Cần chủ dự án cấp nếu muốn migrate data thật; mặc định: khởi đầu sạch, không migrate user data |
| Q-055 | Số phận 2 domain cũ? | Chạy song song, không redirect cho tới khi Nemo12 ổn định và chủ dự án ra lệnh |
| Q-056 | Brand palette Nemo12? | Dùng ocean palette v0.1 (DS-001 §2) làm placeholder có chủ đích — chủ dự án duyệt/đổi sau |
| Q-057 | Framework đánh giá chất lượng tài liệu? | Adopt requirements-assessment (8 clusters/40 criteria) làm rubric QG-002 |
| Q-058 | Dark mode? | Chưa bật phase 1; semantic tokens sẵn sàng |
| Q-059 | Test policy? | Behavior tests (vitest + workers pool); cấm source-regex tests (RISK-015) |
| Q-060 | Prompt registry? | packages/ai/prompts/ versioned; mọi prompt production có id + version + changelog (QG-010) |
Cần chủ dự án nhất: Q-054 (data migration hay khởi đầu sạch), Q-056 (duyệt palette), Q-003 (mốc thời gian thật), Q-014/Q-015 (mô hình thu phí).