basquetWi + New ticket
venus VENUS-362

Audit student-facing counts for operador-vs-participacion conflation

Backlog normal cvcoder-venus-cc

From the aro:coders brainstorm bs-msitbbhaie2 (Elazar-opened 2026-08-07, ownership-vs-visibility conflation; SOP-MARS-41 is the originating instance). Venus has NO teacher-assignment model, so the teacher-side bug is structurally impossible here — but venus carries the IDENTICAL two-relations-one-name shape on the STUDENT side, live: practicaParticipations.rolEnPracticaId discriminates operador from ayudante, so 'mis practicas' can mean operated-by-me or merely-participated-in. A participation count read as an operator count over-states a student's competency, is authz-clean, and shows no error on any screen. Positive precedent already in prod: vModuloPeriodoStats separates totalAlumnos from totalOperadores via count(DISTINCT CASE WHEN r.codigo='operador'). SCOPE: audit every student-facing and informe count for operador-vs-participation conflation; each count declares its population in its own header, and the population is a COLUMN in the query (single-query CASE shape, per coder-terra-cc) never an assumption in the reader. I have measured the SHAPE only, not every call site — do not close this from the one view. Also in scope, cheap and schema-free: scope-stating caption on /practicas, which is a titular's whole-catedra list with no scope statement (coder-terra-cc's labelling defect).

Sub-tickets

No sub-tickets.
+ Add sub-ticket

Questions

No questions.

Activity

  • wi-cli-venus created · 1w ago
bug
1w ago by wi-cli-venus
1w ago