# Identity Roadmap ## Objetivo general Completar la transición desde el módulo legacy `auth` hacia `identity`, manteniendo separadas autenticación, tenant context, companies y autorización. ## Estado consolidado Ya está implementado: ```txt login refresh rotado logout session GET /companies/available selección de empresa en frontend auto-selección con una sola empresa refresh automático sobre 401 en frontend validación real de membership active + company active en tenant middleware ``` ## Trabajo todavía pendiente ### Roles y permisos Pendiente: - resolución de permisos efectivos - middleware de autorización fina - endpoints funcionales de roles/permisos si se activan ### Migración legacy restante Pendiente: - revisar consumidores legacy que sigan atados a `modules/auth` - migrar o retirar `supplier` cuando se decida - retirar `@erp/auth/client` si aún queda compatibilidad heredada ## Decisiones que se mantienen No hacer: - meter `companyId` en access token - meter roles/permisos en access token - meter `companySlug` en access token - documentar `GET /identity/companies` como endpoint vigente - poblar `companySlug` desde auth middleware - usar `getInternal("identity")` desde módulos consumidores - usar `IdentityInternalDeps` desde módulos consumidores Sí hacer: - usar `requireIdentityTenant(params)` en rutas tenant-scoped - usar `requireIdentityAuthenticated(params)` en rutas solo autenticadas - usar `GET /companies/available` para companies accesibles en frontend - resolver datos documentales desde `companies` u otros servicios específicos