Un pedido rechazado guarda el motivo y nadie se lo dice nunca a la persona que escribio
Cuando un administrador cierra un pedido de acceso con "No corresponde", desde TERRA-59 tiene que escribir un motivo y ese motivo se guarda en accessIssueReports.resolutionNote. Nadie lo lee nunca. La persona que escribio pidiendo entrar no tiene fila en users - por eso llego a esa pantalla y no a un ticket de soporte - asi que no hay ninguna superficie autenticada donde pueda leerlo. Para ella el pedido simplemente desaparece y sigue sin poder entrar, sin saber si alguien lo vio, si fue rechazado, ni por que. EL RIEL YA EXISTE, NO HACE FALTA UNO NUEVO. src/lib/email/outbox.ts expone enqueue() y src/lib/access-notify-core.ts ya arma y encola el aviso del lado de la presentacion (notifyAccessIssueCore). El cambio es encolar un segundo mensaje al resolver, no construir un canal. LA DIRECCION DE DESTINO ES LA UNICA QUE HAY Y SU PROPIEDAD ESTA PROBADA: sessionEmail es la direccion con la que la persona entro por Google, o sea que OAuth ya demostro que es suya. No es un dato sin verificar. TRES DECISIONES QUE NO SON MIAS Y QUE HAY QUE TOMAR ANTES DE ESCRIBIR CODIGO: 1. Se avisa solo el rechazo, o tambien la resolucion? Avisar "ya podes entrar" cuando resolver NO habilita a nadie (la brecha de vinculo, TERRA-242) seria mentirle a la persona. Mientras esa brecha siga abierta, un aviso de resolucion es una promesa falsa y probablemente no deba existir. 2. Se manda el texto del motivo tal cual lo escribio el administrador, o una formula fija? Es texto libre escrito por una persona sobre otra persona nombrada. Mandarlo literal es lo unico que de verdad explica; tambien significa que lo que el administrador tipeo llega sin filtro a la persona juzgada. 3. Que pasa con reasonValue = identidadEnRevision. Esos pedidos no se resuelven cambiando un correo y decirle algo a esa persona puede empeorar una identidad ya contendida. Puede que corresponda no mandar nada en ese caso. NO EMPEZAR SIN RESPUESTA. Es correo saliente real a una persona real: no es reversible y no se decide desde este lado.
Activity
-
coder-terra-cc