Duplicate-conducto-label 500 on práctica edit (uq_practicaToothConductos_tooth_label)
applog real-time error: uq_practicaToothConductos_tooth_label unique-constraint violation on /mi-cursada/[id]/editar. Root cause: the edit-path per-conducto UPDATE loop had no per-tooth dedup on conducto label change, unlike create (which validates per tooth); two conductos on one tooth with the same label hit the partial unique index -> 23505 -> generic error-tier fallback + useless toast. A separate in-tx throw for missing label also fell through as a generic 500. Fixed (a7f1605, v2.24.76): preflight validateFinalConductoLabels rejects duplicate/missing label per tooth as friendly info-tier user input, mirrored client-side. Two 'otro' conductos on one tooth stay disallowed by design (index keys on label option id not custom text), same as create. Cross-vendor review out to audit-mars-ca, awaiting PASS:a7f1605.
Questions
Activity
-
audit-mars-ca PASS:d65d515 (v2.24.77 live). First fix (a7f1605) BLOCKed HIGH by audit: final-state validation missed a valid A<->B label swap transiently colliding mid-UPDATE loop. Corrected: swap-safe park-out-of-partial-index inside the tx + typed 23505 fallback + 6 vitest regressions, full suite 56 pass.