Saltar a contenido

Avisos

kubelatch avisa a cada persona antes de que termine uno de sus permisos, para que nadie se quede sin acceso a mitad de una tarea sin verlo venir. El aviso llega donde trabaja: en la salida de kubectl, en su agente de IA, en la campanita y por correo. Todo funciona en Free.

Cuándo llega cada aviso

Los momentos dependen de lo que dura el permiso, desde que se concede hasta que termina:

Dónde Un permiso de 4 horas o más Uno más corto
kubectl y cualquier cliente de Kubernetes La última hora El último cuarto de su duración
El agente de IA de la persona La última hora El último cuarto de su duración
La campanita Las últimas 24 horas Las últimas 24 horas, así que casi desde el principio
Correo Se envía
Un permiso de más de dos días 24 horas antes del final
Un permiso de dos días o menos Un cuarto de su duración antes del final: 2 horas antes, en uno de 8 horas

No avisan:

  • un permiso sin fecha de caducidad;
  • un permiso cubierto por otro del mismo rol, cluster y ámbito que termina más tarde o no termina. Los avisos llegan solo cuando está a punto de acabar el último.

Cuando un administrador amplía un permiso de grupo, sus miembros reciben el aviso de nuevo en su nueva ventana.

En kubectl

Durante la ventana del aviso, cada respuesta del cluster lleva una cabecera Warning. kubectl, helm y cualquier cliente hecho con client-go la escriben en la salida de error:

Warning: kubelatch: your access to prod as developer on namespace apps ends in 42 min (14:05 UTC)

Una petición lleva como mucho tres de estos avisos, los de los permisos que terminan antes. La línea está siempre en inglés, como los mensajes del propio kubectl. Los rechazos de kubelatch no la llevan, porque ya dicen el motivo.

En el agente de IA

Las herramientas del servidor MCP añaden la misma frase al final de su respuesta cuando un permiso que el agente usa en ese cluster está en su ventana, para que el agente se lo diga a su persona. Cuando lo que termina antes es la sesión del agente, la frase lo dice:

kubelatch: this agent session ends in 20 min (09:30 UTC); reconnect and consent again to carry on

En la campanita

La campanita de la barra superior enseña los permisos de la persona que terminan en menos de 24 horas, con un enlace a «Inicio», donde ve todos sus accesos. Los enseña a todo el mundo, sea administrador o no, y vuelve a mirar cada minuto.

Por correo

El correo necesita el correo configurado en el servidor: la misma clave de Resend que envía las invitaciones (Invitaciones por correo). Sin ella, kubelatch no envía nada, y los demás avisos siguen funcionando.

  • Cada permiso envía un solo correo, a la dirección de la cuenta, en el idioma que la persona eligió en kubelatch (inglés si nunca eligió). Los bots nunca reciben correos.
  • Si Resend no responde, o rechaza la clave, kubelatch vuelve a intentarlo al cabo de 1 minuto, 5 minutos, 30 minutos, 2 horas y 6 horas, sin enviar nunca dos veces el mismo correo. Un correo que Resend rechaza por sí mismo (una dirección mal formada, por ejemplo) no se reintenta; el registro del servidor lo dice en la línea notify: e-mail not sent.
  • Si el permiso termina, se revoca o cambia su final antes de que salga el correo, el correo no sale.

Cada persona puede apagar estos correos en «Mi cuenta» → «Preferencias» → «Avisarme por correo antes de que caduque un permiso». La campanita y el aviso de kubectl siguen. El cambio queda en la auditoría como user.notifications.

kubelatch guarda un registro de cada correo durante 8 días, sea cual sea la edición, para no enviar nunca el mismo dos veces. No forma parte de la auditoría.