basquetWi + New ticket

New ticket

Sub-ticket of PLUTO-455 JTP+adjunto 'mixed' teacher roster collapses to empty: adjuntoComisionIds AND-intersected onto JTP pair-gate instead of OR-unioned. getStudentsForTeacher (src/db/queries.ts:2418-2419) + getStudentsForTeacherPage (queries.ts:2564). Any teacher who is JTP of one comision AND adjunto of a DIFFERENT comision gets 0 roster rows -> /acceso-denegado on /alumnos list + detail. Repro: Maria Boussebayle (users c231db69), JTP comision-001 (10 students) + adjunto comision-002; AND comisionId=ANY([002]) nukes her 10 JTP students. Fix: turn the adjunto filter into a DISJUNCTIVE branch (mirror getPracticas:371-372 OR-union; keep JTP pair-gate per PLUTO-77). Auth/identity verified clean (db); audit cause-confirmed. · pluto