docs: registra el deploy a produccion de v1.7.0 (invitar por correo)

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Milton Gonzalez
2026-09-09 23:56:19 -05:00
parent d7478d0f21
commit 38c31057c8
+20
View File
@@ -201,6 +201,26 @@ iRedMail):
- Sin migracion nueva (la columna `role_in_project` ya existia desde el MVP). Redeploy solo
backend+frontend; PID confirmado distinto en ambos servicios.
## Actualizacion v1.7.0 (2026-09-10) — invitar a un proyecto por correo
- Migracion `004_project_member_invite.sql` aplicada sobre `.32`: agrega el status `invited` al
enum de `users`.
- Agregar miembro a un proyecto ahora acepta un correo que todavia no es usuario: crea una cuenta
`invited` (nombre/clave placeholder) y manda un correo con un enlace de un solo uso
(`/aceptar-invitacion`, vence 7 dias) para que la persona elija su nombre y clave. Nuevos
endpoints publicos `GET /api/auth/invite` y `POST /api/auth/accept-invite`.
- Verificado de punta a punta en dev con curl + Playwright: invitar por correo nuevo -> correo
logueado (modo dev) -> `GET /api/auth/invite` devuelve el email -> `POST /api/auth/accept-invite`
crea la cuenta, la activa y devuelve sesion iniciada -> aparece como miembro del proyecto sin
pasos adicionales -> login normal con la clave elegida funciona -> reusar el mismo token una
segunda vez falla (un solo uso). Tambien: invitar un correo ya existente simplemente lo agrega
como miembro directo (`invited:false`), sin crear nada nuevo ni mandar correo. Sin errores de
consola.
- Redeploy a produccion: migracion aplicada, backend y frontend reconstruidos y reiniciados (PID
confirmado distinto en ambos), verificado contra `https://project.linkedcorp.net` (`GET
/api/auth/invite` sin token responde `400` de validacion, no `401` — confirma que quedo publico
como se espera; `/aceptar-invitacion` carga con `200`).
## Comandos utiles
```bash