Ir al contenido

ADR-003 — Production Stack (Out-of-Scope MVP)

ADR-003 — Production Stack (Out-of-Scope MVP)

Sección titulada «ADR-003 — Production Stack (Out-of-Scope MVP)»

Accepted

The MVP does not deploy to production, but the code must be compatible with the target AWS topology from the start. Development decisions that ignore production constraints generate costly rework.

The production topology is:

ServiceProviderRole
Frontend hostingAWS AmplifyBuild + CDN + SPA routing
Backend computeAWS App RunnerDjango container (auto-scaling)
DatabaseAWS RDS PostgreSQL 16Managed DB
Object storageAWS S3Media, static fallback
AuthSimpleJWT (dev) / AWS Cognito (staging + prod)See [[adr-008-authentication

Specific sub-decisions in [[adr-003-a-backend-prod-stack|ADR-003-a]] (backend) and [[adr-003-b-frontend-prod-stack|ADR-003-b]] (frontend).

  • [[adr-003-a-backend-prod-stack|ADR-003-a]] — Backend Production Stack. Documents the App Runner + RDS + Cognito + WhiteNoise topology and the constraints the MVP Docker image must respect from day one.
  • [[adr-003-b-frontend-prod-stack|ADR-003-b]] — Frontend Production Stack. Documents the Amplify hosting, SPA rewrite rule, build command, and Cognito auth integration for the Angular CSR app.
  • The backend Dockerfile must produce a valid image for App Runner from the MVP onward.
  • Sensitive environment variables never go in the repository — AWS Secrets Manager / Amplify Environment Variables in prod.
  • The SimpleJWT to Cognito switch requires no changes in Angular; the auth interceptor is provider-agnostic ([[adr-008-authentication|ADR-008]]).