feat: stabilize API startup and lifecycle management

- Refactor server initialization to separate concerns and improve error handling.
- Implement centralized environment validation using Zod.
- Introduce database, Redis, and queue lifecycle management.
- Add health check endpoints for liveness and readiness.
- Enhance error handling middleware for better response structure.
- Implement rate limiting for API endpoints.
- Add request ID middleware for traceability.
- Create Sequelize CLI configuration and baseline migration for schema management.
- Establish CI workflow with Gitea for testing and syntax checks.
- Document foundational changes and migration strategy in PHASE_0_FOUNDATION_STABILIZATION.md.
- Add Docker Compose configuration for local development and testing.
- Implement unit and integration tests for critical functionality.
This commit is contained in:
Sathira Sri Sathara
2026-09-03 13:33:26 +05:30
parent 624fce31c5
commit 267e80e2ec
40 changed files with 1682 additions and 261 deletions
+14
View File
@@ -0,0 +1,14 @@
process.env.NODE_ENV = "test";
process.env.PORT = "3070";
process.env.DB_HOST = "localhost";
process.env.DB_PORT = "3306";
process.env.DB_NAME = "zumri_test";
process.env.DB_USER = "zumri_test";
process.env.DB_PASSWORD = "test-only-password";
process.env.JWT_SECRET = "test-only-jwt-secret-value-32-characters";
process.env.REFRESH_TOKEN_SECRET = "test-only-refresh-secret-value-32-chars";
process.env.REDIS_HOST = "localhost";
process.env.REDIS_PORT = "6379";
process.env.FRONTEND_URL = "http://localhost:3000";
process.env.RUN_CRON = "false";
process.env.CACHE = "false";