pluto
PLUTO-147
Disable never-logged-in students (year-end) so they drop from reports + regular screens
Done normal
unassigned
Questions
No questions.
Activity
-
COUNT CORRECTED 61→10 via gmail canonicalization check (PM-added pre-apply guard). 51 of 61 had auth.users rows matching only under canonicalizeEmail (imported dotless e.g. julisueldojs@gmail.com vs Google-dotted julisueldo.js@gmail.com) — they DID log in; the lower(trim) join missed them. True never-logged-in = 10, all createdVia=migration: mnmoreno796, renatalarocca1903, augustomontoni21, yazminpaz02, gonzalovelazquez1239, zaravillafane, kelly93bc, aaraa27, florenciabelparra, lucianasoria2299 (all @gmail.com). Revised draft = canonicalizeEmail join + explicit 10-id list. Restore handle = usersArchive WHERE archiveReason='system:PLUTO-147-dormant-disable' (durable, no timestamp window). Pending audit PASS on the 10-row draft → PM apply greenlight.
-
FINAL SET = 10 (not 12). Audit caught: veronica1994rios@gmail.com + ale98gaete@gmail.com have auth.users rows (attempted OAuth) but unlinked authId — they're PLUTO-152 dotted-email-bug victims bounced to /solicitar-acceso, NOT never-engaged dormant. Soft-deleting them = latent lockout (preRegistered deletedAt IS NULL guard blocks onboarding even post-152-fix). Excluded + routed to PLUTO-152. Disable set = 10 truly-dormant (authId NULL AND no auth.users row), all migration-origin. Apply HELD for: (a) studentAssignments check on the 10, (b) coder screen→view trace — vActiveRoster does NOT gate student deletedAt, so if the 10 have active assignments the txn needs a companion studentAssignments soft-delete to actually drop them from roster screens. Assemble ONE complete txn, not partial.
-
Cohort narrows 10→9. db's práctica moot-check found 1 hit: Kelly Johanna BAUTISTA CAPOTE (kelly93bc@gmail.com) is asistente on real práctica ee684347 (2026-06-17, operador Tamara Torres). Never logged in but actively assigned to recent clinical work by a JTP → not dormant; excluded by the same 'system actively engages them' logic as the 2 PLUTO-152 victims. Predicate tightened to: authId NULL AND no active práctica participation (NOT EXISTS operador/asistente) → cohort = 9 truly-dormant, guards rebaselined to =9. Audit re-PASSing the 9-row two-leg draft; db applies on re-PASS. Kelly routed to Elazar as a separate decision (my rec: leave active — disabling would block a student a JTP is already scheduling, esp. with PLUTO-149 auth-gate live). The 9 do not wait on Kelly.
-
APPLIED 9/9. Disabled 9 truly-dormant students (never logged in [authId NULL] AND zero práctica participation across all 7 práctica→users FKs) via two-leg soft-delete: users=9 + companion studentAssignments=9, one txn, both RAISE guards passed, both trigger-archived. archiveReason='system:PLUTO-147-dormant-disable' (restore handle: SELECT rowBefore FROM usersArchive/studentAssignmentsArchive WHERE archiveReason=that). Drops them from /alumnos roster + /informes student list (vUsers-gated) + vActiveRoster KPI aggregates (studentAssignments leg). Excluded + routed onward: 2 PLUTO-152 onboarding-blocked victims + Kelly BAUTISTA CAPOTE (active asistente on práctica ee684347 2026-06-17 → Elazar decision, my rec leave-active). Cohort narrowed 62→61(persona)→12(authId)→10(−2 victims)→9(−Kelly). Audit PASS (pre-apply, exhaustive predicate incl complementadoPor + isDemo guard). No code deploy — DB op, verified via archive-table counts.
task
2026-06-19 by wi-cli-venus
6w ago
2026-06-20 02:01