cocottetech/@platform/codebase/@features/platform-api/src/app.module.ts
natalie 1b719e1fd7 chore(bootstrap): initial V4 commit
Clean successor to V3 (forge: lilith/atlilith). Seeded from local Mac
working tree at ~/Code/@projects/@cocottetech/. node_modules and build
artifacts excluded via .gitignore.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-18 08:11:41 -07:00

38 lines
1.5 KiB
TypeScript

import { Module } from '@nestjs/common';
import { ConfigModule } from '@nestjs/config';
import { APP_GUARD } from '@nestjs/core';
import { TypeOrmModule } from '@nestjs/typeorm';
import { AuthModule } from './auth/auth.module.js';
import { QuinnSsoGuard } from './auth/quinn-sso.guard.js';
import { CacheInvalidateModule } from './common/cache-invalidate.module.js';
import { databaseConfig } from './config/database.config.js';
import { HealthModule } from './health/health.module.js';
import { AgentActionsModule } from './modules/agent-actions/agent-actions.module.js';
import { ContentPlansModule } from './modules/content-plans/content-plans.module.js';
import { ContentPostsModule } from './modules/content-posts/content-posts.module.js';
@Module({
imports: [
ConfigModule.forRoot({
isGlobal: true,
cache: true,
envFilePath: ['.env.local', '.env'],
}),
TypeOrmModule.forRootAsync(databaseConfig),
CacheInvalidateModule,
AuthModule,
HealthModule,
// V4 domain modules — add new modules here as they land.
// P0 ships content-plans + content-posts + agent-actions (the verification-gate trio).
// P1+ adds: users, orgs, personas, content-assets, engagement-events.
ContentPlansModule,
ContentPostsModule,
AgentActionsModule,
],
providers: [
// Global auth guard. Federates against quinn.sso (v2). Bypassed by @Public()-decorated routes.
{ provide: APP_GUARD, useClass: QuinnSsoGuard },
],
})
export class AppModule {}