mars
MARS-22
· child of MARS-21 JTP/Ayudante live-vs-snapshot: reporting/drill/notifications must read CURRENT assignment not creation snapshot; null same-person backfill (ayudante=jtp); add both-roles guard Done
student-assignment-tcm.ts peer-inference fallback (L188-234) seeds a NULL SA from OTHER students' practicas.jtpUserId/ayudanteUserId snapshot; TCM-gated (deletedAt IS NULL + role-matched) so stale teachers rejected — NOT a rule-(b) violation, low risk. Tighten to prefer live peer SA over práctica snapshot.
Backlog low
pmpm-mars-cc
Questions
No questions.
Activity
-
parent=#684
-
Scope narrowed by ddcb448 (SOP-MARS-41, 2026-08-07): the AYUDANTE half of the peer-inference fallback was deleted outright, not tightened - the cascade no longer reads peers' practicas.ayudanteUserId at all, and SA.ayudanteUserId is now human-set or NULL. Remaining scope is JTP-ONLY: peer practicas.jtpUserId still seeds a NULL SA.assignedTeacherUserId (now at student-assignment-tcm.ts :274-300 after the rewrite; the L188-234 line refs in the title are stale). The 'prefer live peer SA over práctica snapshot' tightening is still open for the JTP side. Verified by coder02-mars-cc during the SOP-MARS-41 design review.
task
2026-06-05 by wi-cli-venus
6w ago