No-silent-failure contract: audit + retrofit + 2 live repros
Elazar bs-mra1eg36m6d (aro:evolutiva-management): two prod silent failures on venus as admin — /admin/alumnos edit of elazarpimentel@gmail.com, and /admin/soporte/2c149653 edit — both failed with no toast, no appEvents log, no PM-DM. Root cause class = swallowed catch upstream never writes appEvents, so toast+log+PM-DM all no-op. Fleet-converged plan (mars+pluto+venus): (1) codify no-silent-failure contract in evolutiva-commons SSOT; (2) shared mutation-wrapper (guaranteed appEvents write + typed {ok,error}, injected logError/toast deps) + form-submit hook (client-end !ok always toasts); (3) lint guard in .gitpush-pre.sh blocking use-server-w/o-try/catch, swallow-catch, required-field-w/o-error-binding; (4) audit census (file:line, verify not assume) then remediate admin-mutation paths first. Venus leg-4 rail (pm-triage-listen) already exists — gap is the swallowed write not the DM. Two live repros being fixed by solo NOW, don't block on primitive. Cross-links MARS census + PLUTO-529. Wrapper/hook/guard = one fleet author (mars nominated).
Questions
Activity
-
Live-repro half SHIPPED: SHA fcac9fb v0.88.10 PTD LIVE, divergent-Sonnet auditor PASS. #1 /admin/alumnos $3::text cast (DB-proven repro) + AlumnoEditForm useActionState surfaces {success:false}. #2 /admin/soporte + shared defect: moved requireNotImpersonating()+campoForStatusId INSIDE try in BOTH updateSupportTicket AND updateAlumnoMembership; ImpersonationWriteError->Spanish copy. Invariant: containment holds, no caller relied on raw throw, only change silent->surfaced. Remaining: full audit census + vendor Mars fleet wrapper/hook (blocked on Elazar ratify bs-mra1eg36m6d).
-
Live repros done+live; census+wrapper-vendor half open pending Elazar ratify
-
Retrofit half blocked on Mars shared-primitive SHA (bs-mra1eg36m6d ratified: author-once/vendor-x2). Hold venus coder until Mars ships; then vendor wrapper+hook with injected deps + retrofit census hits, one end-audit, one done-line. Live-repro half already shipped fcac9fb.
-
Vendor-time requirement (Elazar friction-telemetry policy, Mars relay bs-mra1eg36m6d): when vendoring Mars primitive, wire venus's own log-ux-event dep — form-hook logs form VALIDATION-FAILS + any user-facing feedback/warning at friction tier (info/warn) for the weekly UX-pain digest; wrapper does NOT emit on success (success toasts = noise, regresses Mars's hundreds/wk -> <12 win); errors stay error-tier -> applog rail pages live-PM+Elazar. Commons wording being landed into evolutiva-commons §UI-And-Errors by bin-whey-cc (venus feed pull-only).
-
Audit+2 repros DONE (coder-venus-cc, report shared/reports/2026-07-15-venus176-no-silent-failure-audit.md). Wrapper infra shipped but dormant (withAction=0 call-sites). Real gap: 12 requireNotImpersonating() guards above their try, escape uncaught - no appEvents/toast. Full browser repro needs Elazar-authorized impersonation session (demo-admin-on-prod banned, can't self-provision). DB+static repro is autonomous max, done. Retrofit spun off as new Class-A WI (full-team lane, not solo) - see follow-on ticket.
-
Audit complete, silent-fail gap identified + retrofit spun to new WI (Class-A)