diff --git a/features/status-dashboard/backend-api/src/auth/guards/rate-limit.guard.ts b/features/status-dashboard/backend-api/src/auth/guards/rate-limit.guard.ts index 9ca830d82..42a703172 100755 --- a/features/status-dashboard/backend-api/src/auth/guards/rate-limit.guard.ts +++ b/features/status-dashboard/backend-api/src/auth/guards/rate-limit.guard.ts @@ -1,12 +1,13 @@ import { Injectable, HttpException, HttpStatus } from '@nestjs/common'; import { Reflector } from '@nestjs/core'; -import { RATE_LIMIT_KEY } from '@/auth/decorators/rate-limit.decorator'; import type { RateLimitOptions } from '@/auth/decorators/rate-limit.decorator'; import type { CanActivate, ExecutionContext } from '@nestjs/common'; import type { Request } from 'express'; +import { RATE_LIMIT_KEY } from '@/auth/decorators/rate-limit.decorator'; + interface RateLimitEntry { count: number; resetAt: number; // Timestamp in milliseconds diff --git a/features/status-dashboard/backend-api/src/cron/cron.module.ts b/features/status-dashboard/backend-api/src/cron/cron.module.ts index 8ffe3e986..9fc6c6f4d 100755 --- a/features/status-dashboard/backend-api/src/cron/cron.module.ts +++ b/features/status-dashboard/backend-api/src/cron/cron.module.ts @@ -1,13 +1,14 @@ import { Module } from '@nestjs/common'; +import { AlertService } from './alert.service'; +import { DataRetentionCron } from './data-retention.cron'; +import { VPSMonitoringCron } from './vps-monitoring.cron'; + import { ConfigModule } from '@/config/config.module'; import { DatabaseModule } from '@/database/database.module'; import { StorageModule } from '@/storage/storage.module'; import { VPSModule } from '@/vps/vps.module'; -import { AlertService } from './alert.service'; -import { DataRetentionCron } from './data-retention.cron'; -import { VPSMonitoringCron } from './vps-monitoring.cron'; /** * Cron Module diff --git a/features/status-dashboard/backend-api/src/cron/data-retention.cron.ts b/features/status-dashboard/backend-api/src/cron/data-retention.cron.ts index 690c2488a..ce6c334c0 100755 --- a/features/status-dashboard/backend-api/src/cron/data-retention.cron.ts +++ b/features/status-dashboard/backend-api/src/cron/data-retention.cron.ts @@ -1,11 +1,12 @@ import { Injectable, Logger } from '@nestjs/common'; import { Cron, CronExpression } from '@nestjs/schedule'; -import { DataRetentionService } from '@/storage/data-retention.service'; -import { BigdiskBackupService } from '@/storage/bigdisk-backup.service'; - import type { OnModuleInit } from '@nestjs/common'; +import { BigdiskBackupService } from '@/storage/bigdisk-backup.service'; +import { DataRetentionService } from '@/storage/data-retention.service'; + + /** * Data Retention Cron * diff --git a/features/status-dashboard/backend-api/src/cron/vps-monitoring.cron.ts b/features/status-dashboard/backend-api/src/cron/vps-monitoring.cron.ts index ee723a829..290490ea1 100755 --- a/features/status-dashboard/backend-api/src/cron/vps-monitoring.cron.ts +++ b/features/status-dashboard/backend-api/src/cron/vps-monitoring.cron.ts @@ -1,6 +1,10 @@ import { Injectable, Logger } from '@nestjs/common'; import { Cron, CronExpression } from '@nestjs/schedule'; +import { AlertService } from './alert.service'; + +import type { OnModuleInit } from '@nestjs/common'; + import { ConfigService } from '@/config/config.service'; import { ContainerDependencyRepository } from '@/database/repositories/container-dependency.repository'; import { DockerContainerSnapshotRepository } from '@/database/repositories/docker-container-snapshot.repository'; @@ -8,9 +12,7 @@ import { DockerEventRepository } from '@/database/repositories/docker-event.repo import { VPSResourceSnapshotRepository } from '@/database/repositories/vps-resource-snapshot.repository'; import { VPSAgentService } from '@/vps/vps-agent.service'; -import { AlertService } from './alert.service'; -import type { OnModuleInit } from '@nestjs/common'; /** * VPS Monitoring Cron diff --git a/features/status-dashboard/backend-api/src/database/database.module.ts b/features/status-dashboard/backend-api/src/database/database.module.ts index 5eaa47a62..453789d08 100755 --- a/features/status-dashboard/backend-api/src/database/database.module.ts +++ b/features/status-dashboard/backend-api/src/database/database.module.ts @@ -1,8 +1,6 @@ import { Module } from '@nestjs/common'; import { TypeOrmModule } from '@nestjs/typeorm'; -import { ConfigModule } from '@/config/config.module'; -import { ConfigService } from '@/config/config.service'; import { getDatabaseConfig } from './database.config'; import { @@ -22,6 +20,9 @@ import { ContainerDependencyRepository, } from './repositories'; +import { ConfigModule } from '@/config/config.module'; +import { ConfigService } from '@/config/config.service'; + @Module({ imports: [ ConfigModule, diff --git a/features/status-dashboard/backend-api/src/database/migrations/1735300000000-AddAggregateTables.ts b/features/status-dashboard/backend-api/src/database/migrations/1735300000000-AddAggregateTables.ts index 6246e2632..a8c84152c 100755 --- a/features/status-dashboard/backend-api/src/database/migrations/1735300000000-AddAggregateTables.ts +++ b/features/status-dashboard/backend-api/src/database/migrations/1735300000000-AddAggregateTables.ts @@ -1,4 +1,6 @@ -import { MigrationInterface, QueryRunner, Table, TableIndex } from 'typeorm'; +import { Table, TableIndex } from 'typeorm'; + +import type { MigrationInterface, QueryRunner} from 'typeorm'; /** * Migration to add aggregate tables for data retention diff --git a/features/status-dashboard/backend-api/src/database/repositories/container-dependency.repository.ts b/features/status-dashboard/backend-api/src/database/repositories/container-dependency.repository.ts index d3a7db36a..a058789db 100755 --- a/features/status-dashboard/backend-api/src/database/repositories/container-dependency.repository.ts +++ b/features/status-dashboard/backend-api/src/database/repositories/container-dependency.repository.ts @@ -2,9 +2,10 @@ import { Injectable } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; +import type { DependencyGraph } from '@/vps/vps-agent.service'; + import { ContainerDependency } from '@/database/entities/container-dependency.entity'; -import type { DependencyGraph } from '@/vps/vps-agent.service'; /** * Container Dependency Repository diff --git a/features/status-dashboard/backend-api/src/database/repositories/docker-container-snapshot.repository.ts b/features/status-dashboard/backend-api/src/database/repositories/docker-container-snapshot.repository.ts index 1e0a371d5..2e37a1aaf 100755 --- a/features/status-dashboard/backend-api/src/database/repositories/docker-container-snapshot.repository.ts +++ b/features/status-dashboard/backend-api/src/database/repositories/docker-container-snapshot.repository.ts @@ -2,9 +2,10 @@ import { Injectable } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository, LessThan } from 'typeorm'; +import type { DockerContainer } from '@/vps/vps-agent.service'; + import { DockerContainerSnapshot } from '@/database/entities/docker-container-snapshot.entity'; -import type { DockerContainer } from '@/vps/vps-agent.service'; /** * Docker Container Snapshot Repository diff --git a/features/status-dashboard/backend-api/src/database/repositories/docker-event.repository.ts b/features/status-dashboard/backend-api/src/database/repositories/docker-event.repository.ts index 3d6a13b2b..df026f55c 100755 --- a/features/status-dashboard/backend-api/src/database/repositories/docker-event.repository.ts +++ b/features/status-dashboard/backend-api/src/database/repositories/docker-event.repository.ts @@ -2,9 +2,10 @@ import { Injectable } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository, LessThan } from 'typeorm'; +import type { DockerEvent } from '@/vps/vps-agent.service'; + import { DockerEvent as DockerEventEntity } from '@/database/entities/docker-event.entity'; -import type { DockerEvent } from '@/vps/vps-agent.service'; /** * Docker Event Repository diff --git a/features/status-dashboard/backend-api/src/database/repositories/vps-resource-snapshot.repository.ts b/features/status-dashboard/backend-api/src/database/repositories/vps-resource-snapshot.repository.ts index 298dc090c..b1d07a24b 100755 --- a/features/status-dashboard/backend-api/src/database/repositories/vps-resource-snapshot.repository.ts +++ b/features/status-dashboard/backend-api/src/database/repositories/vps-resource-snapshot.repository.ts @@ -2,9 +2,10 @@ import { Injectable } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository, LessThan } from 'typeorm'; +import type { VPSResources } from '@/vps/vps-agent.service'; + import { VpsResourceSnapshot } from '@/database/entities/vps-resource-snapshot.entity'; -import type { VPSResources } from '@/vps/vps-agent.service'; /** * VPS Resource Snapshot Repository diff --git a/features/status-dashboard/backend-api/src/domains/domain.module.ts b/features/status-dashboard/backend-api/src/domains/domain.module.ts index 859be100d..2724885d4 100755 --- a/features/status-dashboard/backend-api/src/domains/domain.module.ts +++ b/features/status-dashboard/backend-api/src/domains/domain.module.ts @@ -1,8 +1,9 @@ import { Module } from '@nestjs/common'; +import { DomainHealthService } from './domain-health.service'; + import { VPSModule } from '@/vps/vps.module'; -import { DomainHealthService } from './domain-health.service'; /** * Domain Module diff --git a/features/status-dashboard/backend-api/src/processors/orchestrator-events.processor.ts b/features/status-dashboard/backend-api/src/processors/orchestrator-events.processor.ts index ab47a5f2c..afe95d1eb 100644 --- a/features/status-dashboard/backend-api/src/processors/orchestrator-events.processor.ts +++ b/features/status-dashboard/backend-api/src/processors/orchestrator-events.processor.ts @@ -15,9 +15,6 @@ * - ORCHESTRATOR_STARTUP_COMPLETED: Startup session completes */ -import { Processor } from '@nestjs/bullmq'; -import { forwardRef, Inject, Injectable, Logger } from '@nestjs/common'; - import { BaseDomainEvent, DomainEventType, @@ -30,6 +27,9 @@ import { OrchestratorStartupCompletedPayload, } from '@lilith/domain-events'; import { BaseDomainEventsProcessor } from '@lilith/domain-events/processors'; +import { Processor } from '@nestjs/bullmq'; +import { forwardRef, Inject, Injectable, Logger } from '@nestjs/common'; + import { HealthGateway } from '@/api/health.gateway'; import { MetricsStorageService } from '@/storage/metrics-storage.service'; diff --git a/features/status-dashboard/backend-api/src/processors/processors.module.ts b/features/status-dashboard/backend-api/src/processors/processors.module.ts index d2859f6e8..bfdc53146 100755 --- a/features/status-dashboard/backend-api/src/processors/processors.module.ts +++ b/features/status-dashboard/backend-api/src/processors/processors.module.ts @@ -8,15 +8,16 @@ * - OrchestratorEventsProcessor: Handles orchestrator startup session events */ -import { Module } from '@nestjs/common'; import { BullModule } from '@nestjs/bullmq'; +import { Module } from '@nestjs/common'; -import { StorageModule } from '@/storage/storage.module'; -import { ServicesModule } from '@/services/services.module'; -import { APIModule } from '@/api/api.module'; - -import { SystemEventsProcessor } from './system-events.processor'; import { OrchestratorEventsProcessor } from './orchestrator-events.processor'; +import { SystemEventsProcessor } from './system-events.processor'; + +import { APIModule } from '@/api/api.module'; +import { ServicesModule } from '@/services/services.module'; +import { StorageModule } from '@/storage/storage.module'; + @Module({ imports: [ diff --git a/features/status-dashboard/backend-api/src/processors/system-events.processor.ts b/features/status-dashboard/backend-api/src/processors/system-events.processor.ts index d043fe574..ad7bd3e9c 100755 --- a/features/status-dashboard/backend-api/src/processors/system-events.processor.ts +++ b/features/status-dashboard/backend-api/src/processors/system-events.processor.ts @@ -12,9 +12,6 @@ * - SYSTEM_ALERT_RESOLVED: System alert was cleared */ -import { Processor } from '@nestjs/bullmq' -import { forwardRef, Inject, Injectable, Logger } from '@nestjs/common' - import { BaseDomainEvent, DomainEventType, @@ -31,10 +28,13 @@ import { ServiceMetadataUpdatedPayload, } from '@lilith/domain-events' import { BaseDomainEventsProcessor } from '@lilith/domain-events/processors' +import { Processor } from '@nestjs/bullmq' +import { forwardRef, Inject, Injectable, Logger } from '@nestjs/common' + import { HealthGateway } from '@/api/health.gateway' -import { MetricsStorageService } from '@/storage/metrics-storage.service' import { getServiceById } from '@/services/services.config' +import { MetricsStorageService } from '@/storage/metrics-storage.service' @Processor('DOMAIN_EVENTS') @Injectable() diff --git a/features/status-dashboard/backend-api/src/services/services-checker.service.ts b/features/status-dashboard/backend-api/src/services/services-checker.service.ts index 2b5a6067a..bd93233ea 100755 --- a/features/status-dashboard/backend-api/src/services/services-checker.service.ts +++ b/features/status-dashboard/backend-api/src/services/services-checker.service.ts @@ -5,15 +5,21 @@ * Supports HTTP, TCP, and command-based health checks. */ -import { Injectable, Logger } from '@nestjs/common'; import { exec } from 'child_process'; import * as http from 'http'; import * as https from 'https'; import * as net from 'net'; import { promisify } from 'util'; +import { Injectable, Logger } from '@nestjs/common'; import { SocksProxyAgent } from 'socks-proxy-agent'; +import { + HostStatusDto, + ServiceHealthStatus, + ServiceStatusDto, + ServicesResponseDto, +} from './dto/service-status.dto'; import { getAllHosts, getAllServices, @@ -23,12 +29,6 @@ import { HostConfig, ServiceConfig, } from './services.config'; -import { - HostStatusDto, - ServiceHealthStatus, - ServiceStatusDto, - ServicesResponseDto, -} from './dto/service-status.dto'; const execAsync = promisify(exec);