feat: import job runner in-memory

- Añade ImportRunner en memoria con concurrencia configurable
- Tests TDD para enqueue, concurrencia y comportamiento tras stop
- Actualiza /api/import/scan para encolar jobs y registrar errores
- Ajusta tsconfig.json para incluir tests en comprobaciones de tipo
This commit is contained in:
2026-02-08 22:24:56 +01:00
parent 1a42422c7e
commit 4298b003d9
20 changed files with 696 additions and 1 deletions

View File

@@ -3,6 +3,7 @@ import cors from '@fastify/cors';
import helmet from '@fastify/helmet';
import rateLimit from '@fastify/rate-limit';
import healthRoutes from './routes/health';
import importRoutes from './routes/import';
export function buildApp(): FastifyInstance {
const app: FastifyInstance = Fastify({
@@ -13,6 +14,7 @@ export function buildApp(): FastifyInstance {
void app.register(helmet);
void app.register(rateLimit, { max: 1000, timeWindow: '1 minute' });
void app.register(healthRoutes, { prefix: '/api' });
void app.register(importRoutes, { prefix: '/api' });
return app;
}