Skip to content

Audit NEMO GRAMMAR 12.10.2026 (SRC-1373) ​

Phạm vi. Toàn bộ danh mục packages/grammar-catalog/catalog.json trên main ngày 12.10.2026: 5 level, 29 unit, 115 bài, 3.155 câu hỏi trong apps/grammar/src/content/. Đo bằng script trên mọi file; nội dung câu được đọc mẫu, không soát ngữ pháp từng câu.

Thước đo. Hai chuẩn đã có, audit này không đặt chuẩn mới:

  1. Chuẩn ngữ pháp CEFR (SRC-1318): mỗi level gồm chủ điểm nào.
  2. PRD-008 §14: một bài đạt chuẩn khi có 35 câu (Quick 5, Practice 10, Mastery 20), lời giải ít nhất 40 ký tự nói vì sao; một unit đạt chuẩn khi có thêm Unit review 20 câu.

1. Kết luận ​

  1. Khung CEFR đã đúng. Mọi chủ điểm A1-C1 của chuẩn đều có bài, không bài nào sai level; test cefrStandard.test.ts gác điều này. Không cần làm lại phần "tiêu chuẩn là gì".
  2. Nửa dưới đạt, nửa trên mỏng. A1, A2, B1: 82/82 bài và 18/18 unit đạt §14. B2: 3/14 bài, C1: 1/19 bài, 0/11 unit. Phần lớn bài B2 và C1 chỉ có 5 câu Quick.
  3. Chỗ mỏng trùng đúng chỗ IELTS cần. IELTS GRA band 5.5-6.5 ứng với B2, band 7-8 ứng với C1. Learner nhắm band 6 trở lên học đúng hai level đang thiếu bài nhất.
  4. Learner chưa có cách biết mình "đạt A2". Bài kiểm tra xếp level trên trang chủ Grammar còn ghi "coming soon", và không có bài kiểm tra cuối level. Chuẩn nói một level gồm gì, nhưng sản phẩm chưa đo learner theo chuẩn đó.
  5. Bài tập chỉ đo nhận biết và điền dạng. 3.155 câu đều là choice hoặc gap. Không có câu nào bắt learner tự viết câu, sửa lỗi hay viết lại câu, trong khi CEFR mô tả năng lực bằng "làm được gì".

2. Số liệu theo level ​

LevelCEFRUnitBàiBài đạt §14Unit đạt §14Câu hỏiTỉ lệ gapLời giải dưới 40 ký tựBài có video
StarterA1627276/694541%014
ElementaryA2628286/698043%015
IntermediateB1627276/694547%09
Upper-intermediateB251430/516044%48 (30%)3
AdvancedC161910/612542%90 (72%)0
Tổng291158618/293.15513841

Nguồn: npm run grammar:coverage --workspace @nemo12/learn cho hai cột "đạt §14"; script đọc trực tiếp file nội dung cho các cột còn lại. Video tính theo trường video_id trong file bài.

3. Phát hiện ​

#MứcPhát hiệnBằng chứng
F1Cao11/14 bài B2 và 18/19 bài C1 chưa có Practice và Mastery; 11 unit B2-C1 chưa có Unit review§2; PRD-008 §14d dừng ở lượt 3 (Intermediate)
F2Cao138 lời giải ở B2-C1 ngắn dưới 40 ký tự, chỉ gọi tên luật, không nói vì saoVí dụ advanced/as-if-and-as-though: "Mẫu as if.", "Không có thật: were."
F3Trung bìnhChưa có bài xếp level đầu vào và bài kiểm tra cuối levelGrammarApp.tsx: "A 10-question placement test is coming soon"
F4Trung bìnhChỉ hai kiểu câu (choice, gap); chưa đo được learner tự dùng cấu trúc3.155/3.155 câu
F5Trung bình41/115 bài có video; C1 không có video nào; đa số video là 36 video cũ của khu IELTS Grammar đã gỡTrường video_id; tools/videos/registry.json
F6Thấp4 câu trùng nguyên văn giữa hai bài khác nhau (ví dụ "We ___ English on Mondays." ở cả starter/i-work-she-works và elementary/present-simple-or-continuous)So prompt trên toàn kho; không tính các câu dẫn chung kiểu "Which sentence is correct?"
F7ThấpChuẩn chỉ liệt kê chủ điểm, chưa ghi learner cần chính xác tới đâu ở mỗi level, nên chưa có ngưỡng "đạt level"cefr-standard.ts chỉ có topic, vi, lessons

Không phải phát hiện: C2 chưa mở là quyết định có ghi ở chuẩn (Core Inventory không có đồng thuận cho C2).

4. Đề xuất, theo thứ tự làm ​

  1. Lượt 4 và 5 của PRD-008 §14d (F1, F2): Practice + Mastery cho 11 bài B2 và 18 bài C1, Unit review cho 11 unit, viết lại 138 lời giải ngắn. Khối lượng khoảng 29 × 30 + 11 × 20 = 1.090 câu mới. Làm B2 trước vì nó ứng với band IELTS phụ huynh hay đặt nhất.

  2. Ngưỡng đạt level (F7, F3): thêm vào chuẩn một dòng "đạt level" cho mỗi level, ví dụ đúng ít nhất 80% một bài kiểm tra cuối level rút từ Mastery của mọi bài trong level. Từ đó dựng bài kiểm tra cuối level, rồi bài xếp level đầu vào 10 câu đang hứa trên trang chủ.

  3. Thêm một kiểu câu sửa lỗi (F4): learner thấy một câu sai, gõ lại câu đúng. Máy chấm được như gap (so với answer và accept), và lấy nguyên liệu sẵn từ 3 pitfalls của mỗi bài. Viết câu tự do để sau, khi có chấm bằng AI.

  4. Video (F5): ưu tiên B2 và C1, mỗi level 5 bài quan trọng nhất trước, theo luật render tiết kiệm. Tiến độ 12.10.2026. Bước 1 xong (115/115 bài, 29/29 unit đạt §14). Bước 2 xong: Level test và Placement test chạy được; điểm lưu ở máy chủ (bảng grammar_test_results). Bước 3 xong ở dạng Fix it dựng từ pitfalls. Bước 4 (video) chưa làm: theo luật render tiết kiệm, cần chủ dự án chọn 5 bài đầu tiên.

  5. Dọn 4 câu trùng (F6) trong lượt sửa kế tiếp của level tương ứng.