WF-06m — Mentor (Dolphin) Observation
Portal dolphin.nemo12.com cho Dolphins (mentors) theo sát learners được giao. Mentor đồng hành, không kiểm soát (SRC-001).
Actor & Authz
Mentor = user có role_assignments.role='mentor'. Chỉ xem learner có trong mentor_assignments (mentor_user_id, learner_id, status='active') (REQ-SEC-02). canAccessLearner mở rộng: self · guardian · mentor được giao.
Luồng
mermaid
flowchart TD
A[Mentor đăng nhập Google tại dolphin.nemo12.com] --> R{Có role mentor?}
R -- không --> X[Thông báo: chưa được cấp quyền mentor]
R -- có --> L[Dashboard: danh sách learners được giao<br/>+ readiness, hoạt động gần đây, gap chính]
L --> D[Chọn 1 learner → quan sát]
D --> V[Cockpit / Toàn cảnh / Tiến độ của learner<br/>dùng chung endpoint REQ-VIS]
V --> N[Ghi mentor note nội bộ<br/>visibility internal_staff/mentor_team → learner không thấy]
N --> E[Note quan trọng → evidence MentorObservation]API
GET /v1/mentor/learners— learners được giao + tóm tắt (readiness môn chính, last activity).- Dùng lại
GET /v1/learners/:id/{cockpit,overview,progress}(authz mở rộng cho mentor). POST /v1/learners/:id/mentor-notes {content, visibility}+GET— interactions target_type=learner, visibility mặc địnhinternal_staff(learner không thấy — SDD-005 §4).- Note đánh dấu evidence →
learner_evidence(sourcementor_observation, reliability 0.75) — REQ-MEN-03.
Cấp quyền mentor (ops)
Phase 1 (~10 mentors nội bộ): admin/script cấp role_assignments role='mentor' + mentor_assignments. Admin UI để giao learner là phase sau.
Trace
REQ-MEN-01→authz+dashboard · REQ-MEN-02→notes visibility · REQ-MEN-03→evidence · REQ-MEN-06→observe views.