feat(api): master-login stub + WorkspacePrismaPool (Frente E)
- Prisma 7: prisma.config.ts com datasource.url (API correta); schema gerado em CJS - WorkspacePrismaPool: LRU cache (max 10) de PrismaClient por workspace (ADR 0006) PrismaPg adapter + pg.Pool por workspace; getOrCreate/health/onModuleDestroy - JwtAuthGuard: global APP_GUARD, jose HS256, popula CLS com workspace_id/userId/prisma @Public() decorator marca ping/health/dev-auth como rotas abertas - DevAuthController: POST /auth/dev/token — emite JWT dev (404 em produção) - AuthTokenResponseSchema + DevTokenRequestSchema em @sar/api-interface - WorkspacePoolHealthIndicator: health/ready reporta amostra LRU top-3 (nunca O(N)) - .npmrc: hoist @prisma/client-runtime-utils (requerido pelo Prisma 7 isolated mode) Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -1,9 +1,12 @@
|
||||
import { Module } from '@nestjs/common';
|
||||
import { TerminusModule } from '@nestjs/terminus';
|
||||
import { WorkspaceModule } from '../workspace/workspace.module';
|
||||
import { HealthController } from './health.controller';
|
||||
import { WorkspacePoolHealthIndicator } from './workspace-pool.health-indicator';
|
||||
|
||||
@Module({
|
||||
imports: [TerminusModule],
|
||||
imports: [TerminusModule, WorkspaceModule],
|
||||
controllers: [HealthController],
|
||||
providers: [WorkspacePoolHealthIndicator],
|
||||
})
|
||||
export class HealthModule {}
|
||||
|
||||
Reference in New Issue
Block a user