fase(8): sqlite job queue system
This commit is contained in:
@@ -126,20 +126,20 @@ Spec: `.ralph/specs/phase-06-fuzzing-module.md`
|
||||
|
||||
---
|
||||
|
||||
## Phase 7: API Server Refactor + Composition Root [PENDIENTE]
|
||||
## Phase 7: API Server Refactor + Composition Root [COMPLETO]
|
||||
Spec: `.ralph/specs/phase-07-api-server.md`
|
||||
|
||||
- [ ] 7.1: Crear `src/api/middleware/errorHandler.ts` — AppError hierarchy (ValidationError, AuthenticationError, ForbiddenError, NotFoundError) + global error handler
|
||||
- [ ] 7.2: Crear `src/api/middleware/requestId.ts` — genera UUID por request, adjunta a req + pino child logger
|
||||
- [ ] 7.3: Crear `src/api/middleware/notFound.ts` — 404 handler para rutas no encontradas
|
||||
- [ ] 7.4: Crear `src/api/server.ts` — Express app con middleware stack: requestId → helmet → cors → rateLimit → bodyParser → routes → notFound → errorHandler
|
||||
- [ ] 7.5: Crear `src/api/router.ts` — registra routes de TODOS los módulos (crawling, findings, fuzzing)
|
||||
- [ ] 7.6: Crear `src/realtime/SocketGateway.ts` — socket.io server que subscribe a EventBus y emite a clientes
|
||||
- [ ] 7.7: Crear `src/main.ts` — composition root: load config → create logger → create db → run migrations → create event bus → create repositories → create use cases → subscribe handlers → create controllers → create Express → create socket.io → start listening
|
||||
- [ ] 7.8: Implementar graceful shutdown en main.ts: SIGTERM/SIGINT → stop accepting → close sockets → close db → flush logs → exit
|
||||
- [ ] 7.9: Health endpoints: GET /health/live (process alive), GET /health/ready (DB check)
|
||||
- [ ] 7.10: Verificar que TODOS los endpoints existentes siguen funcionando tras refactor
|
||||
- [ ] 7.11: Verificar build + commit: `fase(7): api server refactor with composition root`
|
||||
- [x] 7.1: Crear `src/api/middleware/errorHandler.ts` — AppError hierarchy (ValidationError, AuthenticationError, ForbiddenError, NotFoundError) + global error handler
|
||||
- [x] 7.2: Crear `src/api/middleware/requestId.ts` — genera UUID por request, adjunta a req + pino child logger
|
||||
- [x] 7.3: Crear `src/api/middleware/notFound.ts` — 404 handler para rutas no encontradas
|
||||
- [x] 7.4: Crear `src/api/server.ts` — Express app con middleware stack: requestId → helmet → cors → rateLimit → bodyParser → routes → notFound → errorHandler
|
||||
- [x] 7.5: Crear `src/api/router.ts` — registra routes de TODOS los módulos (crawling, findings, fuzzing)
|
||||
- [x] 7.6: Crear `src/realtime/SocketGateway.ts` — socket.io server que subscribe a EventBus y emite a clientes
|
||||
- [x] 7.7: Crear `src/main.ts` — composition root: load config → create logger → create db → run migrations → create event bus → create repositories → create use cases → subscribe handlers → create controllers → create Express → create socket.io → start listening
|
||||
- [x] 7.8: Implementar graceful shutdown en main.ts: SIGTERM/SIGINT → stop accepting → close sockets → close db → flush logs → exit
|
||||
- [x] 7.9: Health endpoints: GET /health/live (process alive), GET /health/ready (DB check)
|
||||
- [x] 7.10: Verificar que TODOS los endpoints existentes siguen funcionando tras refactor
|
||||
- [x] 7.11: Verificar build + commit: `fase(7): api server refactor with composition root`
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user