basquetWi + New ticket

New ticket

Sub-ticket of PLUTO-458 Residual scope edge (follow-up to PLUTO-456): /alumnos + /informes callers FOLD the ?jtp UI filter into the scoped jtpIds array (getPracticas keeps them separate). So a mixed teacher using the ?jtp selector + adjunto scope gets an ungated extra-jtp OR-branch. PLUTO-456's gate-non-null guard kills the worst case (pure-adjunto), but the mixed+?jtp residual remains. SEVERITY PENDING audit ruling: if it lets a teacher see jtps outside their scope via ?jtp it's an over-permissive leak (bump pri); if merely cosmetic/latent keep low. Fix direction: keep the UI ?jtp filter SEPARATE from the authz scope array (mirror getPracticas), gate it against the teacher's actual jtp scope. · pluto