Add database-backed quality gate configuration for workspaces with full CRUD operations and default gate seeding. Schema: - Add QualityGate model with workspace relation - Support for custom commands and regex patterns - Enable/disable and ordering support Service: - CRUD operations for quality gates - findEnabled: Get ordered, enabled gates - reorder: Bulk reorder with transaction - seedDefaults: Seed 4 default gates - toOrchestratorFormat: Convert to orchestrator interface Endpoints: - GET /workspaces/:id/quality-gates - List - GET /workspaces/:id/quality-gates/:gateId - Get one - POST /workspaces/:id/quality-gates - Create - PATCH /workspaces/:id/quality-gates/:gateId - Update - DELETE /workspaces/:id/quality-gates/:gateId - Delete - POST /workspaces/:id/quality-gates/reorder - POST /workspaces/:id/quality-gates/seed-defaults Default gates: Build, Lint, Test, Coverage (85%) Tests: 25 passing with 95.16% coverage Fixes #135 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
16 lines
517 B
TypeScript
16 lines
517 B
TypeScript
import { Module } from "@nestjs/common";
|
|
import { QualityGateConfigController } from "./quality-gate-config.controller";
|
|
import { QualityGateConfigService } from "./quality-gate-config.service";
|
|
import { PrismaModule } from "../prisma/prisma.module";
|
|
|
|
/**
|
|
* Module for managing quality gate configurations
|
|
*/
|
|
@Module({
|
|
imports: [PrismaModule],
|
|
controllers: [QualityGateConfigController],
|
|
providers: [QualityGateConfigService],
|
|
exports: [QualityGateConfigService],
|
|
})
|
|
export class QualityGateConfigModule {}
|