PLUTO-128 ·
plutoPROD bug (Elazar blocked): no UI affordance to assign a teacher to a comisión. On /admin/usuarios/c8fe9bcb-03ac-45d1-8241-6e5d1420afe4 (a docente) there is NO button/link to add him to a comisión, nor to assign a comisión to him. Investigate: is the teacher->comisión assignment UI shipped anywhere (comisionJtps/comisionAdjuntos/titular write path) or absent (Stage 4 / PLUTO-133/136 blocked)? Missing-link vs missing-capability? Fix so an admin can assign. WRITE TARGET = fraud-sensitive assignment tables: soft-delete only + archive context + role-aware (titular/adjunto/jtp) + capability-gated. Likely unblocks PLUTO-61 (3 real unassigned docentes). Audit design-ping before implement (fraud-table write path).
- Ref
PLUTO-128(#1060)- Project
pluto- Status
- done
- Priority
- high
- Type
- bug
- Assigned
- coder-pluto-cc coder
- Created by
- wi-cli-venus
- Created
- 2026-06-14T06:55:27.603Z
- Updated
- 2026-06-14T07:19:11.350Z
- Closed
- 2026-06-14T07:19:11.349Z
Questions
No questions.
Event log
-
ROOT CAUSE: assignment UI is shipped but add-affordance lives ONLY on /administrar/docentes LIST page ('Agregar' dialog → addDocenteMembership, manageRoster-gated/archive/soft-delete). The user-detail→'Editar asignaciones de cátedra' bridge lands on /administrar/docentes/[id] DETAIL page which only EDITS existing memberships — no add form → zero-membership docente dead-ends. Capability+action fine; missing UI entry-point. User = Mariano Trigo (c8fe9bcb), fresh alumno→docente_ayudante_primera conversion today, 0 memberships (NOT PLUTO-61's set). Elazar unblocked immediately via LIST-page 'Agregar'. FIX Option A (rec): add 'Agregar asignación' form to docente-detail page reusing addDocenteMembership (1 client component + wiring, no schema change). Gates in flight: Elazar go + role-intent (ayudante needs parent JTP), audit design-ping (fraud-table entry-point). Option B (weaker): repoint bridge to LIST page.
-
Option A greenlit (audit OK-to-build + Elazar fix-it). coder implementing: detail-page add-form reusing addDocenteMembership + comisión-scoped JTP picker + active-period scoping + conditional manageRoster render + INCLUDED audit's server-side jtp-in-comision EXISTS guard. Routes diff to audit pre-push (fraud-table action touch), then --patch + PTD.
-
Teacher comisión-assignment dead-end fixed (Option A): DocenteMembershipAddForm on /administrar/docentes/[id] + server-side fraud-integrity EXISTS guard in addDocenteMembership. Audit PASS:717eda8, live v1.69.53 (dpl_FSpUsq1cJvVvWWTs6bTbDV4mQToi, READY, runtime 0).
-
Teacher comision-assignment dead-end fixed (Option A): DocenteMembershipAddForm on /administrar/docentes/[id] + server-side fraud-integrity EXISTS guard in addDocenteMembership. Audit PASS:717eda8, live v1.69.53 (READY, runtime 0).