Skip to content

Data Dictionary · Onboarding & Models ​

⚙️ Trang này sinh tự động từ source code bằng scripts/gen-reference.mjs — đừng sửa tay, sửa code rồi chạy npm run gen:reference.

Thuộc Data Dictionary. 4 bảng, learner_context_models tới school_enrollments.

learner_context_models ​

Learner Context Model — SDD-002 §3, SDD-007 §6. Trạng thái ngắn hạn/hoàn cảnh.

migration: 0003_onboarding_models.sql

CộtKiểuRàng buộc / ghi chú
learner_idTEXTPRIMARY KEY REFERENCES learners(id)
active_school_codeTEXT—
current_gradeINTEGER—
current_schoolTEXT—
goal_blueprint_idTEXT—
deadlineTEXT—
available_minutes_per_weekINTEGER—
energyTEXT—
updated_atTEXTNOT NULL DEFAULT (strftime('%Y-%m-%dT%H:%M:%fZ','now'))

Khóa ngoại: learner_id → learners

learner_exam_targets ​

Shark exam targets — REQ-ONB-07, SDD-011 §2b. Nhiều trường / nhiều lịch thi.

migration: 0003_onboarding_models.sql

CộtKiểuRàng buộc / ghi chú
idTEXTPRIMARY KEY
learner_idTEXTNOT NULL REFERENCES learners(id)
target_school_idTEXT—
target_school_nameTEXTNOT NULL
provinceTEXT—
specialist_subjectTEXTNOT NULL
non_specialist_subjects_jsonTEXT—
exam_date_approxTEXT—
priorityINTEGERNOT NULL DEFAULT 1
statusTEXTNOT NULL DEFAULT 'active' CHECK (status IN ('active','dropped'))
created_atTEXTNOT NULL DEFAULT (strftime('%Y-%m-%dT%H:%M:%fZ','now'))
target_kindTEXTNOT NULL DEFAULT 'school' — thêm ở 0010_target_kinds_whale_stories.sql
target_scoreTEXT— thêm ở 0010_target_kinds_whale_stories.sql
exam_subjects_jsonTEXT— thêm ở 0072_exam_target_subjects.sql

Khóa ngoại: learner_id → learners

Index: idx_exam_targets_learner(learner_id)

learner_models ​

Learner Model (versioned) — SDD-002 §2/§16. Trạng thái tính toán, khởi tạo trước diagnosis.

migration: 0003_onboarding_models.sql

CộtKiểuRàng buộc / ghi chú
learner_idTEXTNOT NULL REFERENCES learners(id)
versionINTEGERNOT NULL DEFAULT 1
algorithm_versionTEXTNOT NULL DEFAULT 'v1'
generated_atTEXTNOT NULL DEFAULT (strftime('%Y-%m-%dT%H:%M:%fZ','now'))
evidence_cutoffTEXT—
summary_jsonTEXT—
—table constraintPRIMARY KEY (learner_id, version)

Khóa ngoại: learner_id → learners

school_enrollments ​

Learner enroll vào (nhiều) school — REQ-ONB-01. School là context, không phải DB riêng.

migration: 0003_onboarding_models.sql

CộtKiểuRàng buộc / ghi chú
learner_idTEXTNOT NULL REFERENCES learners(id)
school_codeTEXTNOT NULL CHECK (school_code IN ('turtle','shark','octopus','squid','ray','whale'))
statusTEXTNOT NULL DEFAULT 'active' CHECK (status IN ('active','paused','left'))
created_atTEXTNOT NULL DEFAULT (strftime('%Y-%m-%dT%H:%M:%fZ','now'))
—table constraintPRIMARY KEY (learner_id, school_code)

Khóa ngoại: learner_id → learners