Onboarding y usuarios
Mentat es de acceso por invitación: no hay registro público. El ingeniero (o el admin del cliente) crea las cuentas y asigna roles. Mientras no exista un panel de admin, esto se hace con scripts.
Sembrar la organización + el primer admin
Una org nueva y su primer admin se crean con bootstrap-prod-admin.mjs (usa ADC;
idempotente; exige --confirm):
ADMIN_EMAIL=admin@cliente.com ORG_ID=cliente ORG_NAME="Cliente SA" \
ADMIN_PASSWORD=... \
node scripts/admin/bootstrap-prod-admin.mjs --confirmDeja: usuario Auth (creado o existente) + /users/{uid} active con membership +
/organizations/{orgId} + el member doc con rol admin.
Agregar miembros (editor / operator / viewer)
Para sumar al resto del equipo a una org ya existente, con un rol no-admin:
MEMBER_EMAIL=ana@cliente.com ORG_ID=cliente ROLE=operator \
MEMBER_PASSWORD=Temp1234! \
node scripts/admin/add-org-member.mjs --confirmIdempotente, preserva las memberships del usuario en otras orgs. Para admin usá
el bootstrap.
Los roles
| Rol | Puede |
|---|---|
admin | todo, incluida la gestión de usuarios |
editor | Ontología, ActionTypes, DataSources (no usuarios) |
operator | ejecutar Actions y modificar datos operacionales |
viewer | solo lectura |
La autorización se resuelve en el backend leyendo el member doc de la org
(/organizations/{orgId}/members/{uid}) — sin custom claims.
El flujo de solicitud de acceso
La pantalla /login tiene un modo “solicitar acceso” para personas sin cuenta. Una
solicitud queda en /accessRequests (con rate-limit por IP) y dispara un email al
admin. El admin revisa y crea la cuenta (hoy con los scripts de arriba).
El estado del usuario pasa por invited → active. Hoy la activación la hacen los
scripts; la transición automática al primer login es deuda técnica conocida.
Emails a usuarios reales: para que la notificación/invitación llegue (no caiga en spam), el dominio de envío tiene que estar verificado en Resend. Ver Notificaciones.
Multi-organización
Un usuario puede pertenecer a varias organizaciones con distintos roles (útil para un consultor de Dawoork que opera en varios clientes). El aislamiento entre tenants lo garantizan las Security Rules.